Open egore opened 3 years ago
@niftools/pyffi-reviewers
Opening any .NIF file in blender from https://archive.org/details/SpellbinderTheNexusConflictDemo fails.
2.2.4.dev3
Linux 5.10.9-arch1-1 #1 SMP PREEMPT Tue, 19 Jan 2021 22:06:06 +0000 x86_64 GNU/Linux
niftools:INFO:Importing /home/.wine/drive_c/mythic/spellbinder/figures/Fem1.NIF niftools:INFO:NIF file version: 2030000 niftools:INFO:Reading file pyffi.nif.data:DEBUG:Reading header at 0x00000000 pyffi.nif.data:DEBUG:Version 0x02030000 pyffi.nif.data.struct:DEBUG:Array:copyright pyffi.nif.data.array:DEBUG:Reading array of size 3 pyffi.nif.data:DEBUG:Reading NiMaterialProperty block at 0x0000009A pyffi.nif.data.struct:DEBUG:* NiMaterialProperty.name = b'' : type <class 'pyffi.formats.nif.NifFormat.string'> at 0x0000009A offset 154 - pyffi.nif.data.struct:DEBUG:* NiMaterialProperty.has_old_extra_data = False : type <class 'pyffi.formats.nif.NifFormat.bool'> at 0x0000009E offset 158 - pyffi.nif.data.struct:DEBUG:* NiMaterialProperty.unknown_byte = 0 : type <class 'pyffi.object_models.common.UByte'> at 0x000000A2 offset 162 - pyffi.nif.data.struct:DEBUG:Color3:ambient_color pyffi.nif.data.struct:DEBUG:* Color3.r = 0 : type <class 'pyffi.object_models.common.Float'> at 0x000000A3 offset 163 - pyffi.nif.data.struct:DEBUG:* Color3.g = 0 : type <class 'pyffi.object_models.common.Float'> at 0x000000A7 offset 167 - pyffi.nif.data.struct:DEBUG:* Color3.b = 0 : type <class 'pyffi.object_models.common.Float'> at 0x000000AB offset 171 - pyffi.nif.data.struct:DEBUG:Color3:diffuse_color pyffi.nif.data.struct:DEBUG:* Color3.r = 0 : type <class 'pyffi.object_models.common.Float'> at 0x000000AF offset 175 - pyffi.nif.data.struct:DEBUG:* Color3.g = 0 : type <class 'pyffi.object_models.common.Float'> at 0x000000B3 offset 179 - pyffi.nif.data.struct:DEBUG:* Color3.b = 0 : type <class 'pyffi.object_models.common.Float'> at 0x000000B7 offset 183 - pyffi.nif.data.struct:DEBUG:Color3:specular_color pyffi.nif.data.struct:DEBUG:* Color3.r = 0 : type <class 'pyffi.object_models.common.Float'> at 0x000000BB offset 187 - pyffi.nif.data.struct:DEBUG:* Color3.g = 0 : type <class 'pyffi.object_models.common.Float'> at 0x000000BF offset 191 - pyffi.nif.data.struct:DEBUG:* Color3.b = 0 : type <class 'pyffi.object_models.common.Float'> at 0x000000C3 offset 195 - pyffi.nif.data.struct:DEBUG:Color3:emissive_color pyffi.nif.data.struct:DEBUG:* Color3.r = 0 : type <class 'pyffi.object_models.common.Float'> at 0x000000C7 offset 199 - pyffi.nif.data.struct:DEBUG:* Color3.g = 0 : type <class 'pyffi.object_models.common.Float'> at 0x000000CB offset 203 - pyffi.nif.data.struct:DEBUG:* Color3.b = 0 : type <class 'pyffi.object_models.common.Float'> at 0x000000CF offset 207 - pyffi.nif.data.struct:DEBUG:* NiMaterialProperty.glossiness = 0 : type <class 'pyffi.object_models.common.Float'> at 0x000000D3 offset 211 - pyffi.nif.data.struct:DEBUG:* NiMaterialProperty.alpha = 0 : type <class 'pyffi.object_models.common.Float'> at 0x000000D7 offset 215 - pyffi.nif.data:DEBUG:Reading NiClod block at 0x000000E9 pyffi.nif.data.struct:DEBUG:* NiClod.name = b'' : type <class 'pyffi.formats.nif.NifFormat.string'> at 0x000000E9 offset 233 - pyffi.nif.data.struct:DEBUG:* NiClod.has_old_extra_data = False : type <class 'pyffi.formats.nif.NifFormat.bool'> at 0x000000FA offset 250 - pyffi.nif.data.struct:DEBUG:* NiClod.unknown_byte = 0 : type <class 'pyffi.object_models.common.UByte'> at 0x000000FE offset 254 - pyffi.nif.data.struct:DEBUG:Vector3:translation pyffi.nif.data.struct:DEBUG:* Vector3.x = 0 : type <class 'pyffi.object_models.common.Float'> at 0x000000FF offset 255 - pyffi.nif.data.struct:DEBUG:* Vector3.y = 0 : type <class 'pyffi.object_models.common.Float'> at 0x00000103 offset 259 - pyffi.nif.data.struct:DEBUG:* Vector3.z = 0 : type <class 'pyffi.object_models.common.Float'> at 0x00000107 offset 263 - pyffi.nif.data.struct:DEBUG:Matrix33:rotation pyffi.nif.data.struct:DEBUG:* Matrix33.m_11 = 1.0 : type <class 'pyffi.object_models.common.Float'> at 0x0000010B offset 267 - pyffi.nif.data.struct:DEBUG:* Matrix33.m_21 = 0.0 : type <class 'pyffi.object_models.common.Float'> at 0x0000010F offset 271 - pyffi.nif.data.struct:DEBUG:* Matrix33.m_31 = 0.0 : type <class 'pyffi.object_models.common.Float'> at 0x00000113 offset 275 - pyffi.nif.data.struct:DEBUG:* Matrix33.m_12 = 0.0 : type <class 'pyffi.object_models.common.Float'> at 0x00000117 offset 279 - pyffi.nif.data.struct:DEBUG:* Matrix33.m_22 = 1.0 : type <class 'pyffi.object_models.common.Float'> at 0x0000011B offset 283 - pyffi.nif.data.struct:DEBUG:* Matrix33.m_32 = 0.0 : type <class 'pyffi.object_models.common.Float'> at 0x0000011F offset 287 - pyffi.nif.data.struct:DEBUG:* Matrix33.m_13 = 0.0 : type <class 'pyffi.object_models.common.Float'> at 0x00000123 offset 291 - pyffi.nif.data.struct:DEBUG:* Matrix33.m_23 = 0.0 : type <class 'pyffi.object_models.common.Float'> at 0x00000127 offset 295 - pyffi.nif.data.struct:DEBUG:* Matrix33.m_33 = 1.0 : type <class 'pyffi.object_models.common.Float'> at 0x0000012B offset 299 - pyffi.nif.data.struct:DEBUG:* NiClod.scale = 1.0 : type <class 'pyffi.object_models.common.Float'> at 0x0000012F offset 303 - pyffi.nif.data.struct:DEBUG:Vector3:velocity pyffi.nif.data.struct:DEBUG:* Vector3.x = 0 : type <class 'pyffi.object_models.common.Float'> at 0x00000133 offset 307 - pyffi.nif.data.struct:DEBUG:* Vector3.y = 0 : type <class 'pyffi.object_models.common.Float'> at 0x00000137 offset 311 - pyffi.nif.data.struct:DEBUG:* Vector3.z = 0 : type <class 'pyffi.object_models.common.Float'> at 0x0000013B offset 315 - pyffi.nif.data.struct:DEBUG:* NiClod.num_properties = 0 : type <class 'pyffi.object_models.common.UInt'> at 0x0000013F offset 319 - pyffi.nif.data.struct:DEBUG:Array:properties pyffi.nif.data.array:DEBUG:Reading array of size 1 pyffi.nif.data.struct:DEBUG:Array:unknown_1 pyffi.nif.data.array:DEBUG:Reading array of size 4 pyffi.nif.data.struct:DEBUG:* NiClod.unknown_2 = 0 : type <class 'pyffi.object_models.common.UByte'> at 0x00000157 offset 343 - pyffi.nif.data.struct:DEBUG:* NiClod.data = None : type <class 'pyffi.formats.nif.NifFormat.Ref'> at 0x00000158 offset 344 - Python: Traceback (most recent call last): File "/home/.config/blender/2.91/scripts/addons/io_scene_niftools/operators/nif_import_op.py", line 121, in execute return NifImport(self, context).execute() File "/home/.config/blender/2.91/scripts/addons/io_scene_niftools/nif_import.py", line 74, in execute self.load_files() # needs to be first to provide version info. File "/home/.config/blender/2.91/scripts/addons/io_scene_niftools/nif_import.py", line 144, in load_files NifData.init(NifFile.load_nif(NifOp.props.filepath)) File "/home/.config/blender/2.91/scripts/addons/io_scene_niftools/file_io/nif.py", line 64, in load_nif data.read(nif_stream) File "/home/.config/blender/2.91/scripts/addons/io_scene_niftools/dependencies/pyffi/formats/nif/__init__.py", line 1318, in read top_level_str.read(stream, data=self) File "/home/.config/blender/2.91/scripts/addons/io_scene_niftools/dependencies/pyffi/object_models/common.py", line 667, in read raise ValueError('string too long (0x%08X at 0x%08X)' ValueError: string too long (0xB6C4523E at 0x00000160) location: <unknown location>:-1
@niftools/pyffi-reviewers
Issue Overview
Opening any .NIF file in blender from https://archive.org/details/SpellbinderTheNexusConflictDemo fails.
Version Information
Pyffi Version Info
2.2.4.dev3
Platform information
Linux 5.10.9-arch1-1 #1 SMP PREEMPT Tue, 19 Jan 2021 22:06:06 +0000 x86_64 GNU/Linux
Steps to Reproduce
Logs and Files