lasa01 / Plumber

A Blender addon for importing Source 1 engine maps, models, materials and textures. This addon makes it possible to import full CS:GO, TF2, CS:S or other Source 1 game maps into Blender.
MIT License
395 stars 29 forks source link

vdf.parse: unclosed parenthasis or quotes (EOF) #87

Closed SamSWAT911 closed 2 years ago

SamSWAT911 commented 3 years ago

Yo, this is an error I get with some vmt files in which the last line looks like this: image If I change it like this, the error goes away: image It's not a big deal because I only had to change 5-10 files, but still. Thanks a lot for your work btw

Python: Traceback (most recent call last):
  File "C:\Users\SamSWAT\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\io_import_vmf\__init__.py", line 748, in execute
    importer.load(self.filepath, context, self.map_data_path)
  File "C:\Users\SamSWAT\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\io_import_vmf\import_vmf.py", line 148, in load
    self._stage_solid(solid)
  File "C:\Users\SamSWAT\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\io_import_vmf\import_vmf.py", line 483, in _stage_solid
    if self.skip_tools and all(self._vmt_importer.is_nodraw(material, getter) for material, getter in materials):
  File "C:\Users\SamSWAT\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\io_import_vmf\import_vmf.py", line 483, in <genexpr>
    if self.skip_tools and all(self._vmt_importer.is_nodraw(material, getter) for material, getter in materials):
  File "C:\Users\SamSWAT\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\io_import_vmf\import_vmt.py", line 1120, in is_nodraw
    builder = _MaterialBuilder(self._vtf_importer, truncated_name, vmt_data(),
  File "C:\Users\SamSWAT\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\io_import_vmf\deps\vmfpy\__init__.py", line 672, in get_material
    return VMT(vmt_f, self.fs, allow_patch=allow_patch)
  File "C:\Users\SamSWAT\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\io_import_vmf\deps\vmfpy\vmt.py", line 132, in __init__
    vdf_dict: dict = vdf.load(file, escaped=False)
  File "C:\Users\SamSWAT\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\io_import_vmf\deps\vdf\__init__.py", line 208, in load
    return parse(fp, **kwargs)
  File "C:\Users\SamSWAT\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\io_import_vmf\deps\vdf\__init__.py", line 181, in parse
    raise SyntaxError("vdf.parse: unclosed parenthasis or quotes (EOF)",
  File "D:\Games\Downloads\1858789063_yantar_clear_sky\Yantar\maps\decompiled\rp_yantar_d\materials\z-o-m-b-i-e\STALKER\wood\wood_collect.vmt", line 16
    }
SyntaxError: vdf.parse: unclosed parenthasis or quotes (EOF)
lasa01 commented 2 years ago

This is fixed in Plumber 1.0.0 beta versions, you can try the latest version here.