majimboo / mviewer

Reverse Engineer MView 3D File Format
256 stars 71 forks source link

TypeError: unsupported operand type(s) for <<: 'str' and 'int' #5

Open danexpo opened 6 years ago

danexpo commented 6 years ago

Getting a failure running the batch file/extract_mview.py. If I try Noesis plugin, only half the model renders correctly, the rest is jumbled vertices. Python 3.6.1 on Windows 10.

Console output: ('thumbnail.jpg', 'image/jpeg') Traceback (most recent call last): File "C:\mviewer\extract_mview.py", line 117, in main(sys.argv[1]) File "C:\mviewer\extract_mview.py", line 26, in main data = decompress(data, e) File "C:\mviewer\extract_mview.py", line 58, in decompress p = (m << 4 | n >> 4) if r & 1 else ((m & 15) << 8 | n) TypeError: unsupported operand type(s) for <<: 'str' and 'int'

cronos45 commented 5 years ago

Same issue!!

/Volumes/Pennyworth1/do3d\ fileupdate/mviewer-1.0/extract_mview.py /Volumes/Pennyworth1/do3d\ fileupdate/mviewer-1.0/test_data/test_file1.mview ('thumbnail.jpg', 'image/jpeg') Traceback (most recent call last): File "/Volumes/Pennyworth1/do3d fileupdate/mviewer-1.0/extract_mview.py", line 117, in main(sys.argv[1]) File "/Volumes/Pennyworth1/do3d fileupdate/mviewer-1.0/extract_mview.py", line 26, in main data = decompress(data, e) File "/Volumes/Pennyworth1/do3d fileupdate/mviewer-1.0/extract_mview.py", line 58, in decompress p = (m << 4 | n >> 4) if r & 1 else ((m & 15) << 8 | n) TypeError: unsupported operand type(s) for <<: 'str' and 'int'

gormlykeep commented 5 years ago

same issue...uninstalled and reinstaller...tried everything I can think of

C:\mview\windows\Fury.mview ('thumbnail.jpg', 'image/jpeg') Traceback (most recent call last): File "C:\mview\windows\extract_mview.py", line 117, in main(sys.argv[1]) File "C:\mview\windows\extract_mview.py", line 26, in main data = decompress(data, e) File "C:\mview\windows\extract_mview.py", line 58, in decompress p = (m << 4 | n >> 4) if r & 1 else ((m & 15) << 8 | n) TypeError: unsupported operand type(s) for <<: 'str' and 'int'

spAnser commented 5 years ago

You can fix this by opening extract_mview.py

edit lines 56-57

        m = ord(a[n + 1])
        n = ord(a[n])

I added the ord to turn char into integers