public structure_bsp_material_block() : base(28) { Add(Shader = new TI.TagReference(this, TagGroups.shdr)); Add(ShaderPermutation = new TI.ShortInteger()); Add(Flags = new TI.Flags(TI.FieldType.WordFlags)); Add(Surfaces = new TI.BlockIndex(TI.FieldType.LongBlockIndex)); Add(SurfaceCount = new TI.LongInteger()); Add(Centroid = new TI.RealPoint3D()); Add(AmbientColor = new TI.RealColor()); Add(DistantLightCount = new TI.ShortInteger()); Add(new TI.Pad(2)); Add(DistantLightColor1 = new TI.RealColor()); Add(DistantLightDirection1 = new TI.RealVector3D()); Add(DistantLightColor2 = new TI.RealColor()); Add(DistantLightDirection2 = new TI.RealVector3D()); Add(new TI.Pad(12)); Add(ReflectionTint = new TI.RealColor(TI.FieldType.RealArgbColor)); Add(ShadowVector = new TI.RealVector3D()); Add(ShadowColor = new TI.RealColor()); Add(Plane = new TI.RealPlane3D()); Add(BreakableSurface = new TI.ShortInteger()); Add(new TI.Pad(2 + 4)); Add(VerticesCount = new TI.LongInteger()); Add(VerticesStartIndex = new TI.LongInteger()); Add(new TI.Pad(8 + 4)); Add(LightmapVerticesCount = new TI.LongInteger()); Add(LightmapVerticesStartIndex = new TI.LongInteger()); Add(new TI.Pad(8)); Add(UncompressedVertices = new TI.Data(this, TI.DataType.Vertex)); Add(CompressedVertices = new TI.Data(this, TI.DataType.VertexCompressed)); }
public unknown_3C_block() : base(22) { Add(Unknown0 = new TI.Flags(TI.FieldType.ByteFlags)); Add(Unknown1 = new TI.Flags(TI.FieldType.ByteFlags)); Add(TI.Pad.Word); Add(Unknown4 = new TI.LongInteger()); Add(Block8 = new TI.Block <unknown_8_block>(this, 0)); Add(Unknown14 = new TI.LongInteger()); // unknown Add(Unknown18 = new TI.LongInteger()); // unknown Add(Unknown1C = new TI.StringId()); Add(Unknown20 = new TI.LongInteger()); // unknown Add(CuiScreen = new TI.TagReference(this, TagGroups.cusc)); Add(SoundResponse = new TI.TagReference(this, TagGroups.sgrp)); Add(Unknown44 = new TI.LongInteger()); // unknown Add(Unknown48 = new TI.LongInteger()); // unknown Add(Unknown4C = new TI.Flags(TI.FieldType.ByteFlags)); Add(TI.Pad.Byte); Add(Unknown4E = new TI.Flags(TI.FieldType.ByteFlags)); Add(TI.Pad.Byte); Add(Unknown50 = new TI.StringId()); Add(Unknown54 = new TI.LongInteger()); // unknown Add(CuiScreen2 = new TI.TagReference(this, TagGroups.cusc)); Add(Unknown68 = new TI.TagReference(this)); Add(Unknown78 = new TI.LongInteger()); // unknown }
public structure_bsp_breakable_surface_block() : base(4) { Add(Centroid = new TI.RealPoint3D()); Add(Radius = new TI.Real()); Add(CollisionSurfaceIndex = new TI.LongInteger()); Add(new TI.Pad(28)); }
public vertex_shader_group() : base(4) { Add(Platform = new TI.Enum()); Add(new TI.Pad(2)); Add(GeometryClassifications = new TI.Block<vertex_shader_classification_block>(this, (int)GeometryClassifcationNames.Count)); Add(OutputSwizzles = new TI.LongInteger()); }
//public TI.ShortInteger LowDetailMipmapCount; #endregion #region Ctor public bitmap_data_block() : base(14) { Add(Signature = new TI.Tag()); Add(Width = new TI.ShortInteger()); Add(Height = new TI.ShortInteger()); Add(Depth = new TI.ByteInteger()); Add(MoreFlags = new TI.Flags(BlamLib.TagInterface.FieldType.ByteFlags)); Add(Type = new TI.Enum()); Add(Format = new TI.Enum()); Add(Flags = new TI.Flags(BlamLib.TagInterface.FieldType.WordFlags)); Add(RegistrationPoint = new TI.Point2D()); Add(MipmapCount = new TI.ByteInteger()); Add(new TI.Skip(1 + //LowDetailMipmapCount? 1 + // (just interleaved?) resource index 1)); // //Add(LowDetailMipmapCount = new TI.ShortInteger()); Add(PixelsOffset = new TI.LongInteger()); Add(new TI.Skip(4 + // pixels size 4 + 4)); Add(new TI.LongInteger()); Add(new TI.Skip(4)); }
public block_4() : base(4) { Add(Unknown00 = new TI.LongInteger()); Add(Unknown04 = new TI.LongInteger()); Add(Unknown08 = new TI.LongInteger()); Add(Unknown0C = new TI.LongInteger()); }
public animation_block() : base(31) { Add(Name = new TI.String()); Add(Type = new TI.Enum()); Add(FrameCount = new TI.ShortInteger()); Add(FrameSize = new TI.ShortInteger()); Add(FrameInfoType = new TI.Enum()); Add(NodeListChecksum = new TI.LongInteger()); Add(NodeCount = new TI.ShortInteger()); Add(LoopFrameIndex = new TI.ShortInteger()); Add(Weight = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction)); Add(KeyFrameIndex = new TI.ShortInteger()); Add(SecondKeyFrameIndex = new TI.ShortInteger()); Add(NextAnimation = new TI.BlockIndex()); Add(Flags = new TI.Flags(BlamLib.TagInterface.FieldType.WordFlags)); Add(Sound = new TI.BlockIndex()); Add(SoundFrameIndex = new TI.ShortInteger()); Add(LeftFootFrameIndex = new TI.ByteInteger()); Add(RightFootFrameIndex = new TI.ByteInteger()); Add(new TI.Pad(2 + 4)); Add(FrameInfo = new TI.Data(this)); Add(NodeTransFlags1 = new TI.LongInteger()); Add(NodeTransFlags2 = new TI.LongInteger()); Add(new TI.Pad(8)); Add(NodeRotationFlags1 = new TI.LongInteger()); Add(NodeRotationFlags2 = new TI.LongInteger()); Add(new TI.Pad(8)); Add(NodeScaleFlags1 = new TI.LongInteger()); Add(NodeScaleFlags2 = new TI.LongInteger()); Add(new TI.Pad(4)); Add(OffsetToCompressedData = new TI.LongInteger()); Add(DefaultData = new TI.Data(this)); Add(FrameData = new TI.Data(this)); }
public shared_cache_block() : base(4) { Add(CachePath = new TI.String(TI.StringType.Ascii, 256)); Add(Unknown100 = new TI.ShortInteger()); Add(Flags = new TI.Flags(TI.FieldType.WordFlags)); Add(Unknown104 = new TI.LongInteger()); }
public s_tag_d3d_vertex_buffer() : base(4) { Add(VertexCount = new TI.LongInteger()); Add(VertxType = new TI.Enum()); Add(VertexSize = new TI.ShortInteger()); Add(VertexBuffer = new TI.Data(this)); }
public tag_database_entry_block() : base(4) { Add(Name = new TI.String(TI.StringType.Ascii, 256)); Add(GroupTag = new TI.Tag()); Add(Flags = new TI.LongInteger()); Add(ChildIds = new TI.Block <tag_database_entry_reference_block>(this, 65535)); }
public bitmap_data_block() : base(23) { Add(Signature = new TI.Tag()); Add(Width = new TI.ShortInteger()); Add(Height = new TI.ShortInteger()); Add(Depth = new TI.ByteInteger()); Add(MoreFlags = new TI.Flags(BlamLib.TagInterface.FieldType.ByteFlags)); Add(Type = new TI.Enum()); Add(Format = new TI.Enum()); Add(Flags = new TI.Flags(BlamLib.TagInterface.FieldType.WordFlags)); Add(RegistrationPoint = new TI.Point2D()); Add(MipmapCount = new TI.ShortInteger()); Add(LowDetailMipmapCount = new TI.ShortInteger()); Add(PixelsOffset = new TI.LongInteger()); Add(Offsets[0] = new TI.LongInteger()); Add(Offsets[1] = new TI.LongInteger()); Add(Offsets[2] = new TI.LongInteger()); Add(new TI.Skip(4 + 4 + 4)); Add(Sizes[0] = new TI.LongInteger()); Add(Sizes[1] = new TI.LongInteger()); Add(Sizes[2] = new TI.LongInteger()); Add(new TI.Skip(4 + 4 + 4)); Add(new TI.Skip( 4 + 4 + 4 // this is special... )); Add(OwnerTagIndex = new TI.LongInteger()); Add(new TI.Skip( 20 + 4 )); }
public gbxmodel_group() : base(21) { Add(Flags = new TI.Flags()); Add(NodeListChecksum = new TI.LongInteger()); Add(SuperHighDetailCutoff = new TI.Real()); Add(HighDetailCutoff = new TI.Real()); Add(MediumDetailCutoff = new TI.Real()); Add(LowDetailCutoff = new TI.Real()); Add(SuperLowDetailCutoff = new TI.Real()); Add(SuperHighDetailNodeCount = new TI.ShortInteger()); Add(HighDetailNodeCount = new TI.ShortInteger()); Add(MediumDetailNodeCount = new TI.ShortInteger()); Add(LowDetailNodeCount = new TI.ShortInteger()); Add(SuperLowDetailNodeCount = new TI.ShortInteger()); Add(new TI.Pad(2 + 8)); Add(BaseMapUScale = new TI.Real()); Add(BaseMapVScale = new TI.Real()); Add(new TI.Pad(116)); Add(Markers = new TI.Block <model_group.model_markers_block>(this, 256)); Add(Nodes = new TI.Block <model_group.model_node_block>(this, 64)); Add(Regions = new TI.Block <model_group.model_region_block>(this, 32)); Add(Geometries = new TI.Block <model_geometry_block>(this, 256)); Add(Shaders = new TI.Block <model_group.model_shader_reference_block>(this, 32)); }
public cache_file_sound_group() : base(17) { // 0x0 Add(Flags = new TI.Flags(TI.FieldType.WordFlags)); Add(SoundClass = new TI.Enum(TI.FieldType.ByteEnum)); Add(SampleRate = new TI.Enum(TI.FieldType.ByteEnum)); // 0x4 Add(Encoding = new TI.Enum(TI.FieldType.ByteEnum)); Add(CodecIndex = new TI.ByteInteger()); Add(PlaybackIndex = new TI.ShortInteger()); // 0x8 Add(Unknown08 = new TI.ShortInteger()); // TODO: UNKNOWN FIELD, index to something, but doesn't seem to be in the sound gestalt Add(Unknown0A = new TI.ShortInteger()); // TODO: UNKNOWN FIELD, maybe an index to the first block in the sound gestalt? or not a index... // 0xC Add(FirstPitchRangeIndex = new TI.ShortInteger()); Add(PitchRangeIndex = new TI.ByteInteger()); Add(ScaleIndex = new TI.ByteInteger()); // 0x10 Add(PromotionIndex = new TI.ByteInteger()); Add(CustomPlaybackIndex = new TI.ByteInteger()); Add(ExtraInfoIndex = new TI.ShortInteger()); // 0x14 Add(Unknown14 = new TI.LongInteger()); // TODO: UNKNOWN FIELD // 0x18 Add(ResourceIndex = new TI.LongInteger()); // 0x1C Add(MaximumPlayTime = new TI.LongInteger()); }
protected CacheFileLanguagePackResource() { Count = new TI.LongInteger(); Size = new TI.LongInteger(); OffsetReferences = new TI.LongInteger(); OffsetStrings = new TI.LongInteger(); }
public global_leaf_portal_block() : base(4) { Add(PlaneIndex = new TI.LongInteger()); Add(BackLeafIndex = new TI.LongInteger()); Add(FrontLeafIndex = new TI.LongInteger()); Add(Vertices = new TI.Block <field_block <TI.RealPoint3D> >(this, 64)); }
public unknown_4_block() : base(4) { Add(Flags = new TI.Flags(TI.FieldType.ByteFlags)); Add(TI.Pad._24); Add(Unknown4 = new TI.LongInteger()); // for multikills this is the count Add(Unknown8 = new TI.StringId()); // for multikills this is 'kill', so it's probably the incident filter }
public multiplayer_object_type_mapping_block() : base(7) { Add(TypeIndex = new TI.BlockIndex(TI.FieldType.LongBlockIndex)); Add(TI.Pad.DWord); // Only ever seen as zero. Probably an unused string id Add(Unknown10 = new TI.Real()); Add(Unknown14 = new TI.LongInteger()); }
public cache_file_resource_gestalt_64_block() : base(14) { Add(TI.UnknownPad.BlockHalo3); // 0x00 [4] // dword Add(TI.UnknownPad.BlockHalo3); // 0x0C unused? Add(TI.UnknownPad.BlockHalo3); // 0x18 [4] // dword Add(TI.UnknownPad.BlockHalo3); // 0x24 [4] // dword Add(Unknown030 = new TI.LongInteger()); // Resource location (page) offset Add(Unknown034 = new TI.LongInteger()); // '' Add(Unknown038 = new TI.LongInteger()); // '' Add(Unknown03C = new TI.LongInteger()); // '' Add(Unknown040 = new TI.LongInteger()); // '' Add(Unknown044 = new TI.LongInteger()); // '' Add(TI.UnknownPad.BlockHalo3); // 0x48 [0x14] bsp related? has same count has the bsp count for the cache // dword * 5 // I think the following two are inserted fields Add(TI.UnknownPad.BlockHalo3); // 0x54 ? Add(TI.UnknownPad.BlockHalo3); // 0x60 ? Add(TI.UnknownPad.BlockHalo3); // 0x6C [4] // dword Add(TI.UnknownPad.BlockHalo3); // 0x78 [4] // dword Add(TI.UnknownPad.BlockHalo3); // 0x84 unused? Add(new TI.UnknownPad(16)); // 0x90 ? }
public hs_scripts_block() : base(5) { Add(Name = new TI.StringId()); Add(ScriptType = new TI.Enum()); Add(ReturnType = new TI.Enum()); Add(RootExpressionIndex = new TI.LongInteger()); Add(Parameters = new TI.Block<H3.hs_scripts_block.hs_scripts_parameters_block>(this, 0)); }
public surfaces_block() : base(5) { Add(Plane = new TI.LongInteger()); Add(FirstEdge = new TI.LongInteger()); Add(Flags = new TI.Flags(TI.FieldType.ByteFlags)); Add(BreakableSurface = new TI.ByteInteger()); Add(Material = new TI.ShortInteger()); }
public hs_scripts_block() : base(5) { Add(Name = new TI.StringId()); Add(ScriptType = new TI.Enum()); Add(ReturnType = new TI.Enum()); Add(RootExpressionIndex = new TI.LongInteger()); Add(Parameters = new TI.Block <H3.hs_scripts_block.hs_scripts_parameters_block>(this, 0)); }
public cache_file_resource_gestalt_164_block() : base(5) { Add(Unknown00 = new TI.LongInteger()); Add(Unknown04 = new TI.LongInteger()); Add(Unknown08 = new TI.LongInteger()); Add(Unknown0C = new TI.LongInteger()); Add(Unknown10 = new TI.LongInteger()); }
public TI.LongInteger DatumIndexBlock24; // seems like only sounds use this... public page_segment_block() : base(5) { Add(RequiredPageIndex = new TI.BlockIndex()); Add(OptionalPageIndex = new TI.BlockIndex()); Add(RequiredSegmentOffset = new TI.LongInteger()); Add(OptionalSegmentOffset = new TI.LongInteger()); Add(DatumIndexBlock24 = new TI.LongInteger()); }
public sound_permutation_chunk_block() : base(5) { Add(FileOffset = new TI.LongInteger()); Add(SizeFlags = new TI.LongInteger()); Add(RuntimeIndex = new TI.LongInteger()); Add(Unknown0C = new TI.LongInteger()); // Only ever seen this eq '0' and '0x180'...may be an structure with bit encoded data Add(Unknown10 = new TI.LongInteger()); }
public scenario_structure_bsps_block() : base(4) { // Offset to this bsp's scenario_structure_bsps_header Add(Offset = new TI.LongInteger()); Add(Size = new TI.LongInteger()); Add(Data = new TI.Skip(4 // address + 4)); // pad Add(StructureBsp = new TI.TagReference(this, TagGroups.sbsp)); }
public edges_block() : base(6) { Add(StartVertex = new TI.LongInteger()); Add(EndVertex = new TI.LongInteger()); Add(ForwardEdge = new TI.LongInteger()); Add(ReverseEdge = new TI.LongInteger()); Add(LeftSurface = new TI.LongInteger()); Add(RightSurface = new TI.LongInteger()); }
public decorator_placement_block() : base(6) { Add(InternalData = new TI.LongInteger()); Add(CompressedPosition = new TI.LongInteger()); Add(TintColor = new TI.Color(TI.FieldType.RgbColor)); Add(LightmapColor = new TI.Color(TI.FieldType.RgbColor)); Add(CompressedLightDirection = new TI.LongInteger()); Add(CompressedLight2Direction = new TI.LongInteger()); }
public text_value_pair_reference_block() { Add(Flags = new TI.Flags(TI.FieldType.ByteFlags)); Add(Type = new TI.Enum(TI.FieldType.ByteEnum)); Add(TI.Pad.Word); Add(Integer = new TI.LongInteger()); Add(StringId = new TI.StringId()); Add(Name = new TI.StringId()); Add(Description = new TI.StringId()); }
public sound_permutations_block() : base(7) { Add(Name = new TI.StringId()); Add(SkipFraction = new TI.Real(TI.FieldType.RealFraction)); Add(Gain = new TI.Real()); Add(SamplesSize = new TI.LongInteger()); Add(RawInfo = new TI.BlockIndex()); Add(LanguageNeutralMilliseconds = new TI.ShortInteger()); Add(Chunks = new TI.Block <sound_permutation_chunk_block>(this, 32767)); }
public TI.LongInteger Offset; // ResourcePtr public geometry_block_resource_block() : base(8) { Add(Type = new TI.Enum(TI.FieldType.ByteEnum)); Add(AlignmentBit = new TI.ByteInteger()); Add(FieldOffset = new TI.ShortInteger()); Add(PrimaryLocater = new TI.ShortInteger()); Add(SecondaryLocater = new TI.ShortInteger()); Add(Size = new TI.LongInteger()); Add(Offset = new TI.LongInteger()); }
public text_value_pair_reference_block() : base(7) { Add(Flags = new TI.Flags(TI.FieldType.ByteFlags)); Add(TI.Pad._24); Add(Integer = new TI.LongInteger()); Add(Real = new TI.Real()); Add(StringId = new TI.StringId()); Add(Name = new TI.StringId()); Add(Description = new TI.StringId()); }
public sandbox_text_value_pair_reference_block() { Add(Flags = new TI.Flags(TI.FieldType.ByteFlags)); Add(Type = new TI.Enum(TI.FieldType.ByteEnum)); Add(TI.Pad.Word); Add(Integer = new TI.LongInteger()); Add(StringId = new TI.StringId()); Add(Name = new TI.StringId()); Add(Description = new TI.StringId()); }
public game_medal_globals_medals_block() : base(7) { Add(Name = new TI.StringId()); Add(Description = new TI.StringId()); Add(Unknown8 = new TI.Real()); Add(UnknownC = new TI.Real()); Add(Unknown10 = new TI.ShortInteger()); Add(Unknown12 = new TI.Flags(TI.FieldType.WordFlags)); Add(Unknown14 = new TI.LongInteger()); }
public multilingual_unicode_string_reference_block() : base(10) { Add(StringId = new TI.StringId()); LanguageOffsets = new TI.LongInteger[(int)LanguageType.kMax]; for (int x = 0; x < LanguageOffsets.Length; x++) { Add(LanguageOffsets[x] = new TI.LongInteger()); } }
public bitmap_texture_interop_resource() : base(4) { Add(BitmapData = new TI.Data(this)); Add(UnknownData = new TI.Data(this)); Add(Width = new TI.ShortInteger()); Add(Height = new TI.ShortInteger()); Add(Unknown2C = new TI.ByteInteger()); Add(Unknown2D = new TI.ByteInteger()); Add(Unknown2E = new TI.ByteInteger()); Add(Unknown2F = new TI.ByteInteger()); Add(Unknown30 = new TI.LongInteger()); }
public s_cache_language_pack(TI.Definition parent) { parent.Add(new TI.Pad( 4 // Index runtime hashing handle + 4 // Table runtime hashing handle )); parent.Add(Count = new TI.LongInteger()); parent.Add(Size = new TI.LongInteger()); parent.Add(OffsetIndex = new TI.LongInteger()); parent.Add(OffsetTable = new TI.LongInteger()); parent.Add(new TI.Skip(20)); // index SHA1 hash parent.Add(new TI.Skip(20)); // strings SHA1 hash parent.Add(new TI.Pad(1 + 3)); }
public bitmap_data_block() : base(14) { Add(Signature = new TI.Tag()); Add(Width = new TI.ShortInteger()); Add(Height = new TI.ShortInteger()); Add(Depth = new TI.ShortInteger()); Add(Type = new TI.Enum()); Add(Format = new TI.Enum()); Add(Flags = new TI.Flags(BlamLib.TagInterface.FieldType.WordFlags)); Add(RegistrationPoint = new TI.Point2D()); Add(MipmapCount = new TI.ShortInteger()); Add(new TI.Pad(2)); Add(PixelsOffset = new TI.LongInteger()); Add(new TI.Skip(12)); Add(HardwareFormat = new TI.LongInteger()); Add(BaseAddress = new TI.LongInteger()); }
/// <summary> /// Initialize the language pack to a tag definition or as a stand-alone /// </summary> /// <param name="parent"></param> public s_cache_language_pack(TI.Definition parent) { Count = new TI.LongInteger(); Size = new TI.LongInteger(); OffsetReferences = new TI.LongInteger(); OffsetStrings = new TI.LongInteger(); if (parent != null) { parent.Add(new TI.Pad(4 + 4)); // runtime pointers // s_cache_unicode_string_reference* references_buffer // byte* strings_buffer parent.Add(Count); parent.Add(Size); parent.Add(OffsetReferences); parent.Add(OffsetStrings); parent.Add(new TI.Pad(1 + 3)); } }
public hs_globals_block() : base(5) { Add(Name = new TI.String()); Add(Type = new TI.Enum()); Add(new TI.Pad(2 + 4)); Add(InitExpressionIndex = new TI.LongInteger()); Add(new TI.Pad(48)); }
public hs_scripts_block() : base(5) { Add(Name = new TI.String()); Add(ScriptType = new TI.Enum()); Add(ReturnType = new TI.Enum()); Add(RootExpressionIndex = new TI.LongInteger()); Add(new TI.Pad(52)); }
public move_positions_block() : base(8) { Add(Position = new TI.RealPoint3D()); Add(Facing = new TI.Real(BlamLib.TagInterface.FieldType.Angle)); Add(Weight = new TI.Real()); Add(Time = new TI.RealBounds()); Add(Animation = new TI.BlockIndex()); Add(SequenceID = new TI.ByteInteger()); Add(new TI.Pad(1 + 44)); Add(SurfaceIndex = new TI.LongInteger()); }
public sound_gestalt_permutations_block() : base(8) { Add(Name = new TI.BlockIndex()); // 1 sound_gestalt_import_names_block Add(EncodedSkipFraction = new TI.ShortInteger()); Add(EncodedGain = new TI.ByteInteger()); Add(PermutationInfoIndex = new TI.ByteInteger()); Add(LanguageNeutralTime = new TI.ShortInteger()); Add(SampleSize = new TI.LongInteger()); Add(FirstChunk = new TI.BlockIndex()); // 1 sound_permutation_chunk_block Add(ChunkCount = new TI.ShortInteger()); }
public cache_file_sound_group() : base(13) { Add(Flags = new TI.Flags(TI.FieldType.WordFlags)); Add(SoundClass = new TI.Enum(TI.FieldType.ByteEnum)); Add(SampleRate = new TI.Enum(TI.FieldType.ByteEnum)); Add(Encoding = new TI.Enum(TI.FieldType.ByteEnum)); Add(Compression = new TI.Enum(TI.FieldType.ByteEnum)); Add(PlaybackIndex = new TI.ShortInteger()); Add(FirstPitchRangeIndex = new TI.ShortInteger()); Add(PitchRangeIndex = new TI.ByteInteger()); Add(ScaleIndex = new TI.ByteInteger()); Add(PromotionIndex = new TI.ByteInteger()); Add(CustomPlaybackIndex = new TI.ByteInteger()); Add(ExtraInfoIndex = new TI.ShortInteger()); Add(MaximumPlayTime = new TI.LongInteger()); }
public cache_file_resource_gestalt_64_block() : base(14) { Add(TI.UnknownPad.BlockHalo3); // 0x00 [4] // dword Add(TI.UnknownPad.BlockHalo3); // 0x0C unused? Add(TI.UnknownPad.BlockHalo3); // 0x18 [4] // dword Add(TI.UnknownPad.BlockHalo3); // 0x24 [4] // dword Add(Unknown030 = new TI.LongInteger()); // Resource location (page) offset Add(Unknown034 = new TI.LongInteger()); // '' Add(Unknown038 = new TI.LongInteger()); // '' Add(Unknown03C = new TI.LongInteger()); // '' Add(Unknown040 = new TI.LongInteger()); // '' Add(Unknown044 = new TI.StringId()); // transition zone name related Add(TI.UnknownPad.BlockHalo3); // 0x48 [0x14] bsp related? has same count has the bsp count for the cache // dword * 5 Add(TI.UnknownPad.BlockHalo3); // 0x54 [4] // dword Add(TI.UnknownPad.BlockHalo3); // 0x60 [4] // dword Add(TI.UnknownPad.BlockHalo3); // 0x6C unused? }
public syntax_datum_block() : base(8) { Add(DatumHeader = new TI.ShortInteger()); Add(TypeUnion/*Script Index/Function Index/Constant Type Union*/= new TI.ShortInteger()); Add(Type = new TI.ShortInteger()); Add(Flags = new TI.ShortInteger()); Add(NextNodeIndex = new TI.LongInteger()); Add(Pointer = new TI.LongInteger()); Add(Data = new TI.LongInteger()); Add(LineNumber = new TI.ShortInteger()); Add(LineNumberPadding = new TI.ShortInteger()); }
public pathfinding_data_block() : base(13) { Add(Sectors = new TI.Block<sector_block>(this, 65534)); Add(Links = new TI.Block<sector_link_block>(this, 262144)); Add(Refs = new TI.Block<ref_block>(this, 131072)); Add(Bsp2dNodes = new TI.Block<sector_bsp2d_nodes_block>(this, 131072)); // no more surface flags block Add(Vertices = new TI.Block<sector_vertex_block>(this, 65535)); Add(ObjectRefs = new TI.Block<environment_object_refs>(this, 2000)); // i think max is just 1 now? Add(PathfindingHints = new TI.Block<pathfinding_hints_block>(this, 32767)); Add(InstancedGeometryRefs = new TI.Block<instanced_geometry_reference_block>(this, 1024)); Add(StructureChecksum = new TI.LongInteger()); Add(TI.UnknownPad.BlockHalo3); // ?? Add(TI.UnknownPad.BlockHalo3); // ?? Add(TI.UnknownPad.BlockHalo3); // [0xC] // tag block [0x4] long Add(new TI.UnknownPad(28)); // maybe 2 tag blocks plus 1 dword? }
public tag_database_entry_block() : base(4) { Add(Name = new TI.String(TI.StringType.Ascii, 256)); Add(GroupTag = new TI.Tag()); Add(Flags = new TI.LongInteger()); Add(ChildIds = new TI.Block<tag_database_entry_reference_block>(this, 65535)); }
public character_block() : base(9) { Add(Character = new TI.ShortInteger()); Add(CharacterWidth = new TI.ShortInteger()); Add(BitmapWidth = new TI.ShortInteger()); Add(BitmapHeight = new TI.ShortInteger()); Add(BitmapOriginX = new TI.ShortInteger()); Add(BitmapOriginY = new TI.ShortInteger()); Add(HardwardCharacterIndex = new TI.ShortInteger()); Add(new TI.Pad(2)); Add(PixelsOffset = new TI.LongInteger()); }
public scenario_structure_bsps_header() { Add(PtrBsp = new TI.LongInteger()); Add(new TI.Pad(16)); Add(Signature = new TI.Tag()); }
public scenario_structure_bsp_group() { Add(new TI.UnknownPad(12)); // dword (structure checksum?) // long? // dword Add(TI.UnknownPad.BlockHalo3); // [0x28] // unknown [0x10] (seems when this is zero, the first tag block is filled with NONE, and the second isnt even used) // tag block [0x4] // long // tag block [0x16] // long // real_point3d Add(TI.UnknownPad.BlockHalo3); // [0x4] // long (pretty sure block index) Add(CollisionMaterials = new TI.Block<structure_collision_materials_block>(this, 512)); Add(TI.UnknownPad.BlockHalo3); // tag block [0x1], Cluster Data? Add(/*World Bounds x = */ new TI.RealBounds()); Add(/*World Bounds y = */ new TI.RealBounds()); Add(/*World Bounds z = */ new TI.RealBounds()); Add(TI.UnknownPad.BlockHalo3); // tag block [0x4] // short // short // 0x60 Add(TI.UnknownPad.BlockHalo3); // [0x4] Surface References? // short // short // sound enviorn palette ref? Add(ClusterPortals = new TI.Block<structure_bsp_cluster_portal_block>(this, 512)); Add(TI.UnknownPad.BlockHalo3); // ?? Add(TI.UnknownPad.BlockHalo3); // [0x8] // fog related // string id // short // short Add(TI.UnknownPad.BlockHalo3); // camera fx // string id (name) // reference (cfxs, settings) // byte (enum?) // unknown [3] // real // dword (real?) // real // real // real // dword (real?) Add(TI.UnknownPad.BlockHalo3); // ?? Weather Polyhedra? // 0xA8 Add(TI.UnknownPad.BlockHalo3); // [0x34] Detail Objects (pretty sure) // unknown [0x34] (only seen it as zeros) Add(Clusters = new TI.Block<structure_bsp_cluster_block>(this, 512)); // 0xC0 Add(Materials = new TI.Block<global_geometry_material_block>(this, 1024)); Add(/*Sky Owner Cluster = */ new TI.Block<structure_bsp_sky_owner_cluster_block>(this, 32)); Add(TI.UnknownPad.BlockHalo3); // conveyor surfaces Add(TI.UnknownPad.BlockHalo3); // breakable surfaces // 0xF0 Add(/*Pathfinding Data = */ new TI.Block<pathfinding_data_block>(this, 16)); Add(TI.UnknownPad.BlockHalo3); // pathfinding edges Add(/*Sound Environment Palette = */ new TI.Block<structure_bsp_sound_environment_palette_block>(this, 64)); // 0x114 Add(new TI.UnknownPad(44)); // 1 tag data, 2 tag blocks but idk the order Add(/*Markers = */ new TI.Block<structure_bsp_marker_block>(this, 1024)); Add(TI.UnknownPad.BlockHalo3); // ?? Runtime Decals? Add(TI.UnknownPad.BlockHalo3); // [0x2] // short (block index?) // short (i think this is a index too) Add(/*Compression Infos = */ new TI.Block<global_geometry_compression_info_block>(this, 0)); // 0x170 Add(/*Environment Object Palette = */ new TI.Block<structure_bsp_environment_object_palette_block>(this, 100)); Add(/*Environment Objects = */ new TI.Block<structure_bsp_environment_object_block>(this, 16384)); Add(TI.UnknownPad.BlockHalo3); // Old Lightmaps Add(new TI.Pad(4)); Add(TI.UnknownPad.BlockHalo3); // Old Leaf Map Leaves Add(TI.UnknownPad.BlockHalo3); // Old Leaf Map Connections // 0x1B0 Add(InstancedGeometryInstances = new TI.Block<structure_bsp_instanced_geometry_instances_block>(this, 1024)); Add(/*Decorator Palette = */ new TI.Block<structure_decorator_palette_block>(this, 0)); Add(TI.UnknownPad.DWord); Add(new TI.UnknownPad(120)); Add(BspRenderResourcesIndex = new TI.LongInteger()); // resource id (render_geometry_api_resource_definition) Add(TI.UnknownPad.DWord); // 0x24C Add(TI.UnknownPad.BlockHalo3); // structure_bsp_sound_cluster_block (Ambience Sound Clusters?) Add(TI.UnknownPad.BlockHalo3); // structure_bsp_sound_cluster_block (Reverb Sound Clusters?) Add(TI.UnknownPad.BlockHalo3); // structure_bsp_sound_cluster_block (? Sound Clusters) // 0x270 Add(/*Transparent Planes = */ new TI.Block<transparent_planes_block>(this, 32768)); Add(TI.UnknownPad.BlockHalo3); // breakable_surface_key_table_block? Add(/*structure_physics = */ new TI.Struct<global_structure_physics_struct>(this)); Add(TI.UnknownPad.BlockHalo3); // [0x20] (i think this may be cluster related) // short (block index) // byte // byte // long // real bounds[3] (xyz bounds) Add(new TI.UnknownPad(24)); Add(TI.UnknownPad.DWord); // 0x2E4 Add(TI.UnknownPad.BlockHalo3); // tag block [0x4C] render_model_section_block Add(TI.UnknownPad.BlockHalo3); // tag block [0x2C] global_geometry_compression_info_block Add(TI.UnknownPad.BlockHalo3); // tag block [0x30] // unknown [0x10] // real[4] (might be a hkVector4 or just a real_point3d + real) // long (might byte 4 byte indexers) // real // real // real Add(TI.UnknownPad.BlockHalo3); // tag block [0x18] functions // string id (input) // mapping_function Add(TI.UnknownPad.BlockHalo3); // tag block [0x?] Add(TI.UnknownPad.BlockHalo3); // tag block [0x20] (count matches render_model_section_block) // tag data Add(TI.UnknownPad.BlockHalo3); // ? Add(TI.UnknownPad.BlockHalo3); // ? (should be a 0xC block) Add(TI.UnknownPad.BlockHalo3); // ? // 0x350 Add(TI.UnknownPad.BlockHalo3); // tag block [0x10] // 0x35C Add(new TI.UnknownPad(8 + 12)); // resource id (will point to a null item, render_geometry_api_resource_definition) // dword // tag block Add(TI.UnknownPad.BlockHalo3); // tag block? maybe this points to the structure_bsp_tag_resources block data in the zone tag Add(BspTagResourcesIndex = new TI.LongInteger()); // resource id (structure_bsp_tag_resources) Add(TI.Pad.DWord); Add(TI.Pad.DWord); }
public structure_bsp_instanced_geometry_definition_block() { Add(Unknown00 = new TI.LongInteger()); Add(BoundingSphereCenter = new TI.RealPoint3D()); Add(BoundingSphereRadis = new TI.Real()); Add(CollisionInfo = new TI.Struct<global_collision_bsp_struct>(this)); // collision_bsp_physics_struct Add(/*bsps = */ new TI.Block<global_collision_bsp_block>(this, 0)); Add(new TI.Block<mopp_code_block>(this, 0)); Add(TI.UnknownPad.BlockHalo3); // [0x?] (physics related) Add(Unknown98 = new TI.Block<block_98>(this, 0)); Add(UnknownA4 = new TI.Block<block_A4>(this, 0)); Add(UnknownB0 = new TI.ShortInteger()); Add(UnknownB2 = new TI.ShortInteger()); Add(UnknownB4 = new TI.Real()); }
public sound_permutation_chunk_block() : base(3) { Add(FileOffset = new TI.LongInteger()); Add(SizeFlags = new TI.LongInteger()); Add(RuntimeIndex = new TI.LongInteger()); }
public sound_permutations_block() : base(7) { Add(Name = new TI.StringId()); Add(SkipFraction = new TI.Real(TI.FieldType.RealFraction)); Add(Gain = new TI.Real()); Add(SamplesSize = new TI.LongInteger()); Add(RawInfo = new TI.BlockIndex()); Add(LanguageNeutralMilliseconds = new TI.ShortInteger()); Add(Chunks = new TI.Block<sound_permutation_chunk_block>(this, 32767)); }
public bitmap_cache_resource_data_block() { Add(ResourceIndex = new TI.LongInteger()); Add(new TI.Skip(4)); }