<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mw.dampfgemeinschaft.de/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Seberoth</id>
	<title>Modding Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://mw.dampfgemeinschaft.de/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Seberoth"/>
	<link rel="alternate" type="text/html" href="https://mw.dampfgemeinschaft.de/index.php/Special:Contributions/Seberoth"/>
	<updated>2026-06-17T10:10:26Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.42.3</generator>
	<entry>
		<id>https://mw.dampfgemeinschaft.de/index.php?title=Cyberpunk_2077:meshMeshParamCloth&amp;diff=11</id>
		<title>Cyberpunk 2077:meshMeshParamCloth</title>
		<link rel="alternate" type="text/html" href="https://mw.dampfgemeinschaft.de/index.php?title=Cyberpunk_2077:meshMeshParamCloth&amp;diff=11"/>
		<updated>2025-02-23T09:31:59Z</updated>

		<summary type="html">&lt;p&gt;Seberoth: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==File Structure==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| lodChunkIndices || uint16[][] || First dimension = lod, second dimension = corresponding chunk.&lt;br /&gt;
|-&lt;br /&gt;
| chunks || meshPhxClothChunkData[] || See specification of [[#meshPhxClothChunkData|meshPhxClothChunkData]] below.&lt;br /&gt;
|-&lt;br /&gt;
| drivers || uint16[][][] || Unknown.&lt;br /&gt;
|-&lt;br /&gt;
| capsules || handle:physicsclothClothCapsuleExportData || Unknown. Capsules used for collision checks?&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===meshPhxClothChunkData===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| positions || DataBuffer || Array of (VEC3, FLOAT)&lt;br /&gt;
|-&lt;br /&gt;
| indices || DataBuffer || Array of uint16[3]&lt;br /&gt;
|-&lt;br /&gt;
| skinWeights || DataBuffer || Array of (VEC4, FLOAT)&lt;br /&gt;
|-&lt;br /&gt;
| skinIndices || DataBuffer || Array of (VEC4, UNSIGNED_BYTE)&lt;br /&gt;
|-&lt;br /&gt;
| skinWeightsExt || DataBuffer || Array of (VEC4, FLOAT)&lt;br /&gt;
|-&lt;br /&gt;
| skinIndicesExt || DataBuffer || Array of (VEC4, UNSIGNED_BYTE)&lt;br /&gt;
|-&lt;br /&gt;
| cookedData || DataBuffer || WIP. See [[#cookedData|cookedData]] below.&lt;br /&gt;
|-&lt;br /&gt;
| normals || DataBuffer || Array of (VEC3, FLOAT)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===cookedData===&lt;br /&gt;
ImHex pattern&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
struct vec4 {&lt;br /&gt;
    float x;&lt;br /&gt;
    float y;&lt;br /&gt;
    float z;&lt;br /&gt;
    float w;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct header {&lt;br /&gt;
    char magic[4];&lt;br /&gt;
    u32 tableOffset;&lt;br /&gt;
    u32 dataOffset;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct table {&lt;br /&gt;
    u32 positionCount;&lt;br /&gt;
    u32 positionOffset;&lt;br /&gt;
    u32 unknown1Count;&lt;br /&gt;
    u32 unknown1Offset1; // 20bytes&lt;br /&gt;
    u32 unknown1Offset2; // size depends on what???&lt;br /&gt;
    u32 unknown1Offset3; // size depends on what???&lt;br /&gt;
    u32 unknown1Offset4; // size depends on what???&lt;br /&gt;
    u32 unknown1Offset5; // size depends on what???&lt;br /&gt;
    u32 unknown2Count;&lt;br /&gt;
    u32 unknown2Offset1; // unknown size&lt;br /&gt;
    u32 unknown3Count;&lt;br /&gt;
    u32 unknown3Offset1; // 4bytes&lt;br /&gt;
    u32 unknown4Count;&lt;br /&gt;
    u32 unknown4Offset1; // 4bytes&lt;br /&gt;
    u32 unknown5Count;&lt;br /&gt;
    u32 unknown5Offset1; // 4bytes&lt;br /&gt;
    u32 unknown6Count;&lt;br /&gt;
    u32 unknown6Offset1; // unknown size&lt;br /&gt;
    u32 unknown7Count;&lt;br /&gt;
    u32 unknown7Offset1; // 4bytes&lt;br /&gt;
    u32 unknown8Count;&lt;br /&gt;
    u32 unknown8Offset1; // 4bytes&lt;br /&gt;
    u32 unknown9Count;&lt;br /&gt;
    u32 unknown9Offset1; // 4bytes&lt;br /&gt;
    u32 indexCount;&lt;br /&gt;
    u32 indexOffset; // 12bytes&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct unknown1_1Struct {&lt;br /&gt;
    vec4 vec;&lt;br /&gt;
    u16 unknown1;&lt;br /&gt;
    u16 unknown2;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct main {&lt;br /&gt;
    header header;&lt;br /&gt;
    table table;&lt;br /&gt;
    u8 unknown[124];&lt;br /&gt;
    vec4 positions[table.positionCount] @table.positionOffset;&lt;br /&gt;
    unknown1_1Struct unknown1_1[table.unknown1Count] @table.unknown1Offset1;&lt;br /&gt;
    u8 unknown1_2[table.unknown1Count * 82] @table.unknown1Offset2; // size depending on context???&lt;br /&gt;
    u8 unknown1_3[table.unknown1Count * 82] @table.unknown1Offset3; // size depending on context???&lt;br /&gt;
    u8 unknown1_4[table.unknown1Count * 82] @table.unknown1Offset4; // size depending on context???&lt;br /&gt;
    u8 unknown1_5[table.unknown1Count * 82] @table.unknown1Offset5; // size depending on context???&lt;br /&gt;
    u8 unknown2_1[table.unknown2Count] @table.unknown2Offset1; // size unknown&lt;br /&gt;
    u32 unknown3_1[table.unknown3Count] @table.unknown3Offset1;&lt;br /&gt;
    u32 unknown4_1[table.unknown4Count] @table.unknown4Offset1;&lt;br /&gt;
    float unknown5_1[table.unknown5Count] @table.unknown5Offset1;&lt;br /&gt;
    u32 unknown6_1[table.unknown6Count] @table.unknown6Offset1; // size unknown&lt;br /&gt;
    u32 unknown7_1[table.unknown7Count] @table.unknown7Offset1;&lt;br /&gt;
    u32 unknown8_1[table.unknown8Count] @table.unknown8Offset1;&lt;br /&gt;
    float unknown9_1[table.unknown9Count] @table.unknown9Offset1;&lt;br /&gt;
    u32 indices[table.indexCount * 3] @table.indexOffset;&lt;br /&gt;
    // padding?&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct main2 {&lt;br /&gt;
    header header;&lt;br /&gt;
    table table;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
main main @0x0;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Seberoth</name></author>
	</entry>
	<entry>
		<id>https://mw.dampfgemeinschaft.de/index.php?title=Cyberpunk_2077:meshMeshParamCloth_Graphical&amp;diff=10</id>
		<title>Cyberpunk 2077:meshMeshParamCloth Graphical</title>
		<link rel="alternate" type="text/html" href="https://mw.dampfgemeinschaft.de/index.php?title=Cyberpunk_2077:meshMeshParamCloth_Graphical&amp;diff=10"/>
		<updated>2025-02-23T09:27:30Z</updated>

		<summary type="html">&lt;p&gt;Seberoth: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==File Structure==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| lodChunkIndices || uint16[][] || First dimension = lod, second dimension = corresponding chunk.&lt;br /&gt;
|-&lt;br /&gt;
| chunks || meshGfxClothChunkData[] || See specification of [[#meshGfxClothChunkData|meshGfxClothChunkData]] below.&lt;br /&gt;
|-&lt;br /&gt;
| latchers || uint16[][][] || Unknown.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===meshGfxClothChunkData===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| positions || DataBuffer || Array of (VEC3, FLOAT)&lt;br /&gt;
|-&lt;br /&gt;
| indices || DataBuffer || Array of uint16[3]&lt;br /&gt;
|-&lt;br /&gt;
| skinWeights || DataBuffer || Array of (VEC4, FLOAT)&lt;br /&gt;
|-&lt;br /&gt;
| skinIndices || DataBuffer || Array of (VEC4, UNSIGNED_BYTE)&lt;br /&gt;
|-&lt;br /&gt;
| skinWeightsExt || DataBuffer || Array of (VEC4, FLOAT)&lt;br /&gt;
|-&lt;br /&gt;
| skinIndicesExt || DataBuffer || Array of (VEC4, UNSIGNED_BYTE)&lt;br /&gt;
|-&lt;br /&gt;
| simulation || uint16 || Array of vertices which should be simulated &lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seberoth</name></author>
	</entry>
	<entry>
		<id>https://mw.dampfgemeinschaft.de/index.php?title=Cyberpunk_2077:meshMeshParamCloth&amp;diff=9</id>
		<title>Cyberpunk 2077:meshMeshParamCloth</title>
		<link rel="alternate" type="text/html" href="https://mw.dampfgemeinschaft.de/index.php?title=Cyberpunk_2077:meshMeshParamCloth&amp;diff=9"/>
		<updated>2025-02-23T09:27:01Z</updated>

		<summary type="html">&lt;p&gt;Seberoth: Created page with &amp;quot;==File Structure== {| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot; ! width=&amp;quot;20%&amp;quot; | Name ! width=&amp;quot;20%&amp;quot; | Type/Size ! width=&amp;quot;60%&amp;quot; | Info |- | lodChunkIndices || uint16[][] || First dimension = lod, second dimension = corresponding chunk. |- | chunks || meshPhxClothChunkData[] || See specification of meshPhxClothChunkData below. |- | drivers || uint16[][][] || Unknown. |- | capsules || handle:physicsclothClothCapsuleExportData || Unknown. Capsules used for coll...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==File Structure==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| lodChunkIndices || uint16[][] || First dimension = lod, second dimension = corresponding chunk.&lt;br /&gt;
|-&lt;br /&gt;
| chunks || meshPhxClothChunkData[] || See specification of [[#meshPhxClothChunkData|meshPhxClothChunkData]] below.&lt;br /&gt;
|-&lt;br /&gt;
| drivers || uint16[][][] || Unknown.&lt;br /&gt;
|-&lt;br /&gt;
| capsules || handle:physicsclothClothCapsuleExportData || Unknown. Capsules used for collision checks?&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===meshPhxClothChunkData===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| positions || DataBuffer || Array of (VEC3, FLOAT)&lt;br /&gt;
|-&lt;br /&gt;
| indices || DataBuffer || Array of uint16[3]&lt;br /&gt;
|-&lt;br /&gt;
| skinWeights || DataBuffer || Array of (VEC4, FLOAT)&lt;br /&gt;
|-&lt;br /&gt;
| skinIndices || DataBuffer || Array of (VEC4, UNSIGNED_BYTE)&lt;br /&gt;
|-&lt;br /&gt;
| skinWeightsExt || DataBuffer || Array of (VEC4, FLOAT)&lt;br /&gt;
|-&lt;br /&gt;
| skinIndicesExt || DataBuffer || Array of (VEC4, UNSIGNED_BYTE)&lt;br /&gt;
|-&lt;br /&gt;
| cookedData || DataBuffer || WIP. See [[#cookedData|cookedData]] below.&lt;br /&gt;
|-&lt;br /&gt;
| normals || DataBuffer || Array of (VEC3, FLOAT)&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seberoth</name></author>
	</entry>
	<entry>
		<id>https://mw.dampfgemeinschaft.de/index.php?title=Cyberpunk_2077:meshMeshParamCloth_Graphical&amp;diff=8</id>
		<title>Cyberpunk 2077:meshMeshParamCloth Graphical</title>
		<link rel="alternate" type="text/html" href="https://mw.dampfgemeinschaft.de/index.php?title=Cyberpunk_2077:meshMeshParamCloth_Graphical&amp;diff=8"/>
		<updated>2025-02-23T08:46:20Z</updated>

		<summary type="html">&lt;p&gt;Seberoth: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==File Structure==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| lodChunkIndices || uint32[][] || First dimension = lod, second dimension = corresponding chunk.&lt;br /&gt;
|-&lt;br /&gt;
| chunks || meshGfxClothChunkData[] || See specification of [[#meshGfxClothChunkData|meshGfxClothChunkData]] below.&lt;br /&gt;
|-&lt;br /&gt;
| latchers || uint16[][][] || Unknown.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===meshGfxClothChunkData===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| positions || DataBuffer || Array of (VEC3, FLOAT)&lt;br /&gt;
|-&lt;br /&gt;
| indices || DataBuffer || Array of uint16[3]&lt;br /&gt;
|-&lt;br /&gt;
| skinWeights || DataBuffer || Array of (VEC4, FLOAT)&lt;br /&gt;
|-&lt;br /&gt;
| skinIndices || DataBuffer || Array of (VEC4, UNSIGNED_BYTE)&lt;br /&gt;
|-&lt;br /&gt;
| skinWeightsExt || DataBuffer || Array of (VEC4, FLOAT)&lt;br /&gt;
|-&lt;br /&gt;
| skinIndicesExt || DataBuffer || Array of (VEC4, UNSIGNED_BYTE)&lt;br /&gt;
|-&lt;br /&gt;
| simulation || uint16 || Array of vertices which should be simulated &lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seberoth</name></author>
	</entry>
	<entry>
		<id>https://mw.dampfgemeinschaft.de/index.php?title=Cyberpunk_2077:meshMeshParamCloth_Graphical&amp;diff=7</id>
		<title>Cyberpunk 2077:meshMeshParamCloth Graphical</title>
		<link rel="alternate" type="text/html" href="https://mw.dampfgemeinschaft.de/index.php?title=Cyberpunk_2077:meshMeshParamCloth_Graphical&amp;diff=7"/>
		<updated>2025-02-23T08:45:55Z</updated>

		<summary type="html">&lt;p&gt;Seberoth: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==File Structure==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| lodChunkIndices || uint32[][] || First dimension = lod, second dimension = corresponding chunk.&lt;br /&gt;
|-&lt;br /&gt;
| chunks || meshGfxClothChunkData[] || See specification of [[#meshGfxClothChunkData|meshGfxClothChunkData]] below.&lt;br /&gt;
|-&lt;br /&gt;
| latchers || uint16[][][] || Unknown.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===meshGfxClothChunkData===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| positions || DataBuffer || Array of (VEC3, FLOAT)&lt;br /&gt;
|-&lt;br /&gt;
| indices || DataBuffer || Array of uint16[3]&lt;br /&gt;
|-&lt;br /&gt;
| skinWeights || DataBuffer || Array of (VEC4, FLOAT)&lt;br /&gt;
|-&lt;br /&gt;
| skinIndices || DataBuffer || Array of (VEC4, UNSIGNED_BYTE)&lt;br /&gt;
|-&lt;br /&gt;
| skinWeightsExt || DataBuffer || Array of (VEC4, FLOAT)&lt;br /&gt;
|-&lt;br /&gt;
| skinIndicesExt || DataBuffer || Array of (VEC4, UNSIGNED_BYTE)&lt;br /&gt;
|-&lt;br /&gt;
| simulation || uint16 || Array of indices which should be simulated &lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seberoth</name></author>
	</entry>
	<entry>
		<id>https://mw.dampfgemeinschaft.de/index.php?title=Cyberpunk_2077:meshMeshParamCloth_Graphical&amp;diff=6</id>
		<title>Cyberpunk 2077:meshMeshParamCloth Graphical</title>
		<link rel="alternate" type="text/html" href="https://mw.dampfgemeinschaft.de/index.php?title=Cyberpunk_2077:meshMeshParamCloth_Graphical&amp;diff=6"/>
		<updated>2025-02-23T08:45:29Z</updated>

		<summary type="html">&lt;p&gt;Seberoth: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==File Structure==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| lodChunkIndices || uint32[][] || First dimension = lod, second dimension = corresponding chunk.&lt;br /&gt;
|-&lt;br /&gt;
| chunks || meshGfxClothChunkData[] || See specification of [[#meshGfxClothChunkData|meshGfxClothChunkData]] below.&lt;br /&gt;
|-&lt;br /&gt;
| latchers || uint16[][][] || Unknown.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===meshGfxClothChunkData===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| positions || DataBuffer || Array of (VEC3, FLOAT)&lt;br /&gt;
|-&lt;br /&gt;
| indices || DataBuffer || Array of uint16[3]&lt;br /&gt;
|-&lt;br /&gt;
| skinWeights || DataBuffer || Array of (VEC4, FLOAT)&lt;br /&gt;
|-&lt;br /&gt;
| skinIndices || DataBuffer || Array of (VEC4, UNSIGNED_BYTE)&lt;br /&gt;
|-&lt;br /&gt;
| skinWeightsExt || DataBuffer || Array of (VEC4, FLOAT)&lt;br /&gt;
|-&lt;br /&gt;
| skinIndicesExt || DataBuffer || Array of (VEC4, UNSIGNED_BYTE)&lt;br /&gt;
|-&lt;br /&gt;
| simulation || uint16 || Array of vertices which should be simulated &lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seberoth</name></author>
	</entry>
	<entry>
		<id>https://mw.dampfgemeinschaft.de/index.php?title=Cyberpunk_2077:meshMeshParamCloth_Graphical&amp;diff=5</id>
		<title>Cyberpunk 2077:meshMeshParamCloth Graphical</title>
		<link rel="alternate" type="text/html" href="https://mw.dampfgemeinschaft.de/index.php?title=Cyberpunk_2077:meshMeshParamCloth_Graphical&amp;diff=5"/>
		<updated>2025-02-23T08:24:22Z</updated>

		<summary type="html">&lt;p&gt;Seberoth: Created page with &amp;quot;==File Structure== {| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot; ! width=&amp;quot;20%&amp;quot; | Name ! width=&amp;quot;20%&amp;quot; | Type/Size ! width=&amp;quot;60%&amp;quot; | Info |- | lodChunkIndices || uint32[][] || First dimension = lod, second dimension = corresponding chunk. |- | chunks || meshGfxClothChunkData[] || See specification of meshGfxClothChunkData below. |- | latchers || uint16[][][] || Unknown. |}&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==File Structure==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| lodChunkIndices || uint32[][] || First dimension = lod, second dimension = corresponding chunk.&lt;br /&gt;
|-&lt;br /&gt;
| chunks || meshGfxClothChunkData[] || See specification of [[#meshGfxClothChunkData|meshGfxClothChunkData]] below.&lt;br /&gt;
|-&lt;br /&gt;
| latchers || uint16[][][] || Unknown.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seberoth</name></author>
	</entry>
	<entry>
		<id>https://mw.dampfgemeinschaft.de/index.php?title=Cyberpunk_2077:Archive_File_Format&amp;diff=4</id>
		<title>Cyberpunk 2077:Archive File Format</title>
		<link rel="alternate" type="text/html" href="https://mw.dampfgemeinschaft.de/index.php?title=Cyberpunk_2077:Archive_File_Format&amp;diff=4"/>
		<updated>2024-10-07T08:30:38Z</updated>

		<summary type="html">&lt;p&gt;Seberoth: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==File Structure==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| Header || [[#Header|Header]] || See [[#Header|specification of Header]] below.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Header===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| fileId || char[4] || Constant: &amp;quot;RDAR&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| version || uint32 || Currently 12 (0x0C)&lt;br /&gt;
|-&lt;br /&gt;
| indexOffset || uint64 || Offset of beginning of file list&lt;br /&gt;
|-&lt;br /&gt;
| indexSize || uint32 || Size of the file list&lt;br /&gt;
|-&lt;br /&gt;
| debugOffset || uint64 || Always 0&lt;br /&gt;
|-&lt;br /&gt;
| debugSize || uint32 || Always 0&lt;br /&gt;
|-&lt;br /&gt;
| fileSize || uint64 || Size of file (excluding fileSize)&lt;br /&gt;
|-&lt;br /&gt;
| customDataLength || uint32 || When &amp;gt; 0: WolvenKit only. See [[#Extended Header|Extended Header]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Extended Header===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| fileId || char[4] || Constant: &amp;quot;LXRS&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| version || uint32 || Currently 1 (0x01)&lt;br /&gt;
|-&lt;br /&gt;
| size || int32 || Size of data&lt;br /&gt;
|-&lt;br /&gt;
| zSize || int32 || Size of compressed data&lt;br /&gt;
|-&lt;br /&gt;
| count || int32 || Number of entries in data&lt;br /&gt;
|-&lt;br /&gt;
| customData || buffer || Oodle compressed buffer of NullTerminated file paths&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===File Index List===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| fileTableOffset || uint32 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| fileTableSize || uint32 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| crc || uint64 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| fileEntryCount || uint32 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| fileSegmentCount || uint32 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| resourceDependencyCount || uint32 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| files || [[#File Entry|File Entry]][fileEntryCount] || TODO&lt;br /&gt;
|-&lt;br /&gt;
| fileSegments || [[#File Segment|File Segment]][fileSegmentCount] || TODO&lt;br /&gt;
|-&lt;br /&gt;
| resourceDependencies || uint64[resourceDependencyCount] || TODO&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===File Entry===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| nameHash || uint64 || FNV1A64 hash of the filename&lt;br /&gt;
|-&lt;br /&gt;
| timestamp || int64 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| numInlineBufferSegments || uint32 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| segmentStart || uint32 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| segmentEnd || uint32 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| resourceDependencyStart || uint32 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| resourceDependencyEnd || uint32 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| checksum || uint8[20] || SHA1 hash&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===File Segment===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| offset || uint64 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| zSize || uint32 || Size of compressed data&lt;br /&gt;
|-&lt;br /&gt;
| size || uint32 || Size of data&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seberoth</name></author>
	</entry>
	<entry>
		<id>https://mw.dampfgemeinschaft.de/index.php?title=Cyberpunk_2077:Archive_File_Format&amp;diff=3</id>
		<title>Cyberpunk 2077:Archive File Format</title>
		<link rel="alternate" type="text/html" href="https://mw.dampfgemeinschaft.de/index.php?title=Cyberpunk_2077:Archive_File_Format&amp;diff=3"/>
		<updated>2024-10-07T08:21:52Z</updated>

		<summary type="html">&lt;p&gt;Seberoth: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==File Structure==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| Header || [[#Header|Header]] || See [[#Header|specification of Header]] below.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Header===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| fileId || char[4] || Constant: &amp;quot;RDAR&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| version || uint32 || Currently 12 (0x0C)&lt;br /&gt;
|-&lt;br /&gt;
| indexOffset || uint64 || Offset of beginning of file list&lt;br /&gt;
|-&lt;br /&gt;
| indexSize || uint32 || Size of the file list&lt;br /&gt;
|-&lt;br /&gt;
| debugOffset || uint64 || Always 0&lt;br /&gt;
|-&lt;br /&gt;
| debugSize || uint32 || Always 0&lt;br /&gt;
|-&lt;br /&gt;
| fileSize || uint64 || Size of file (excluding fileSize)&lt;br /&gt;
|-&lt;br /&gt;
| customDataLength || uint32 || WolvenKit only&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===File Index List===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| fileTableOffset || uint32 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| fileTableSize || uint32 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| crc || uint64 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| fileEntryCount || uint32 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| fileSegmentCount || uint32 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| resourceDependencyCount || uint32 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| files || [[#File Entry|File Entry]][fileEntryCount] || TODO&lt;br /&gt;
|-&lt;br /&gt;
| fileSegments || [[#File Segment|File Segment]][fileSegmentCount] || TODO&lt;br /&gt;
|-&lt;br /&gt;
| resourceDependencies || uint64[resourceDependencyCount] || TODO&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===File Entry===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| nameHash || uint64 || FNV1A64 hash of the filename&lt;br /&gt;
|-&lt;br /&gt;
| timestamp || int64 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| numInlineBufferSegments || uint32 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| segmentStart || uint32 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| segmentEnd || uint32 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| resourceDependencyStart || uint32 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| resourceDependencyEnd || uint32 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| checksum || uint8[20] || SHA1 hash&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===File Segment===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| offset || uint64 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| zSize || uint32 || TODO&lt;br /&gt;
|-&lt;br /&gt;
| size || uint32 || TODO&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seberoth</name></author>
	</entry>
	<entry>
		<id>https://mw.dampfgemeinschaft.de/index.php?title=Cyberpunk_2077:Archive_File_Format&amp;diff=2</id>
		<title>Cyberpunk 2077:Archive File Format</title>
		<link rel="alternate" type="text/html" href="https://mw.dampfgemeinschaft.de/index.php?title=Cyberpunk_2077:Archive_File_Format&amp;diff=2"/>
		<updated>2024-10-06T12:43:45Z</updated>

		<summary type="html">&lt;p&gt;Seberoth: Created page with &amp;quot;==File Structure== {| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot; ! width=&amp;quot;20%&amp;quot; | Name ! width=&amp;quot;20%&amp;quot; | Type/Size ! width=&amp;quot;60%&amp;quot; | Info |- | Header || Header || See specification of Header below. |}  ===Header=== {| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%&amp;quot; ! width=&amp;quot;20%&amp;quot; | Name ! width=&amp;quot;20%&amp;quot; | Type/Size ! width=&amp;quot;60%&amp;quot; | Info |- | fileId || char[4] || Constant: &amp;quot;RDAR&amp;quot; |- | version || uint32 || Currently 12 (0x0C) |- | indexOffset || uint64 || Offset of beginning of fil...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==File Structure==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| Header || [[#Header|Header]] || See [[#Header|specification of Header]] below.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Header===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Name&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; | Type/Size&lt;br /&gt;
! width=&amp;quot;60%&amp;quot; | Info&lt;br /&gt;
|-&lt;br /&gt;
| fileId || char[4] || Constant: &amp;quot;RDAR&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| version || uint32 || Currently 12 (0x0C)&lt;br /&gt;
|-&lt;br /&gt;
| indexOffset || uint64 || Offset of beginning of file list&lt;br /&gt;
|-&lt;br /&gt;
| indexSize || uint32 || Size of the file list&lt;br /&gt;
|-&lt;br /&gt;
| debugOffset || uint64 || Always 0&lt;br /&gt;
|-&lt;br /&gt;
| debugSize || uint32 || Always 0&lt;br /&gt;
|-&lt;br /&gt;
| fileSize || uint64 || Size of file (excluding fileSize)&lt;br /&gt;
|-&lt;br /&gt;
| customDataLength || uint32 || WolvenKit only&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Seberoth</name></author>
	</entry>
</feed>