public void FileRead(MpqFileStream stream, long offset)
 {
     stream.Position = offset + 12;
     Field0 = stream.ReadValueS32();
     stream.Position = offset + 16;
     CollisionMeshCount = stream.ReadValueS32();
     stream.Position = offset + 20;
     serCollisionMeshes = new SerializeData();
     serCollisionMeshes.FileRead(stream, stream.Position);
     stream.Position = offset + 32;
     //still checking variablearrays
     CollisionMeshes = new List<CollisionMesh>();
     for(int i = 0; i < (int)(serCollisionMeshes.Field1 / 136); i++)
     {
     stream.Position = serCollisionMeshes.Field0 + 16 + (136*i) ;
         CollisionMesh temp12_CollisionMeshes;
         temp12_CollisionMeshes = new CollisionMesh();
         temp12_CollisionMeshes.FileRead(stream, stream.Position);
         _CollisionMeshes.Add(temp12_CollisionMeshes);
     }
     stream.Position = offset + 44;
     Field4 = stream.ReadString(256);
     stream.Position = offset + 300;
     Field5 = stream.ReadString(256);
     stream.Position = offset + 40;
     Field6 = stream.ReadValueS32();
 }