Closed Brottweiler closed 9 years ago
Python 2 is required. Try virtualenv2
.
Yeah, you're right.
Just gonna use this issue to ask about pygame. As the readme sais, if you get errors with pygame just install from binary. I installed the pygame package, but get this still:
$ python2 mcedit.py
Running in fixed mode. Support files are in your Documents folder.
Traceback (most recent call last):
File "mcedit.py", line 13, in <module>
import splash
File "/home/brott/Downloads/MCEdit-Unified/splash.py", line 10, in <module>
import pygame
File "/home/brott/.local/lib/python2.7/site-packages/pygame/__init__.py", line 95, in <module>
from pygame.base import *
ImportError: No module named base
Is it a 32-bit/64-bit mismatch? You installed a 64-bit pygame, so run python2
and check if it's 64-bits or 32-bits.
Remove (or move) the directory python
from /home/brott/.local/lib/python2.7/site-packages
and retry running MCEdit.
It looks like your pygame was not properly installed there. (It can happen if you don't have all the Pygame dependencies on your system when installing MCEdit.)
python2
doesn't really give me any information about 32/64bit, but you might be right that there is a mismatch.
@LaChal There is no python
directory inside site-packages
.
Try python2 -c "import platform; print platform.architecture()"
64bit
The AUR package installs pygame to /usr/lib
. If you didn't do anything special to install it to ~/.local/lib
, then remove ~/.local/lib/python2.7/site-packages/pygame
.
Otherwise, reinstall pygame, and verify that ~/.local/lib/python2.7/site-packages/pygame/base.so
exists.
The AUR package is python-pygame
, the repo one is python2-pygame
. Doesn't seem to work regardless which one I install, and it doesn't install to .local
obviously. I could just install from source within the virtualenv I guess, right? But not sure how to do that actually.
Disgredard that. I tried to run MCEdit after installing python2-pygame
while still in the virtualenv. It works now.
Using this issue again for more issues:
Starting MCEdit gives this
[ ERROR][ pymclevel.nbt.py:639]:Failed to import Cythonized nbt file. Running on (very slow) pure-python nbt fallback.
[ ERROR][ pymclevel.nbt.py:640]:(Did you forget to run 'setup.py build_ext --inplace'?)
[ ERROR][ pymclevel.nbt.py:641]:No module named _nbt
Then, selecting a world crashes MCEdit:
[ ERROR][ root.py:776]:MCEdit version Unified v1.4.0.1 for Minecraft 1.8/1.9
Traceback (most recent call last):
File "mcedit.py", line 815, in <module>
main(sys.argv)
File "mcedit.py", line 774, in main
MCEdit.main()
File "mcedit.py", line 629, in main
rootwidget.run()
File "/home/brott/Downloads/MCEdit-Unified/albow/root.py", line 168, in run
self.run_modal(None)
File "/home/brott/Downloads/MCEdit-Unified/albow/root.py", line 233, in run_modal
self.gl_draw_all(self, (0, 0))
File "/home/brott/Downloads/MCEdit-Unified/albow/widget.py", line 786, in gl_draw_all
subwidget.gl_draw_all(root, suboffset)
File "/home/brott/Downloads/MCEdit-Unified/albow/widget.py", line 786, in gl_draw_all
subwidget.gl_draw_all(root, suboffset)
File "/home/brott/Downloads/MCEdit-Unified/albow/widget.py", line 786, in gl_draw_all
subwidget.gl_draw_all(root, suboffset)
File "/home/brott/Downloads/MCEdit-Unified/albow/widget.py", line 786, in gl_draw_all
subwidget.gl_draw_all(root, suboffset)
File "/home/brott/Downloads/MCEdit-Unified/albow/widget.py", line 783, in gl_draw_all
self.gl_draw_self(root, offset)
File "/home/brott/Downloads/MCEdit-Unified/albow/openglwidgets.py", line 22, in gl_draw_self
self.gl_draw_viewport()
File "/home/brott/Downloads/MCEdit-Unified/albow/openglwidgets.py", line 28, in gl_draw_viewport
self.gl_draw()
File "/home/brott/Downloads/MCEdit-Unified/viewports/camera.py", line 1828, in gl_draw
self.render()
File "/home/brott/Downloads/MCEdit-Unified/viewports/camera.py", line 1871, in render
t.drawToolMarkers()
File "/home/brott/Downloads/MCEdit-Unified/editortools/player.py", line 810, in drawToolMarkers
self.markerList.call(self._drawToolMarkers)
File "/home/brott/Downloads/MCEdit-Unified/glutils.py", line 163, in call
self.makeList(drawFunc)
File "/home/brott/Downloads/MCEdit-Unified/glutils.py", line 142, in makeList
drawFunc()
File "/home/brott/Downloads/MCEdit-Unified/editortools/player.py", line 1019, in _drawToolMarkers
self.drawCage(x, y, z)
File "/home/brott/Downloads/MCEdit-Unified/editortools/player.py", line 1028, in drawCage
cageTexVerts *= pixelScale
TypeError: Cannot cast ufunc multiply output from dtype('float64') to dtype('uint16') with casting rule 'same_kind'
==================================
MCEdit has crashed
==================================
Press the Enter key to close this window
What Numpy version do you have? Might not be related, though
Not sure how to check, but I installed it via pip today so...
Hmmm...
Concerning the first error (the _nbt one), it's more a warning than a strict error. Look at the Linux doc (inside MCEdit directory) to have more details. But, basicaly, the full Python NBT support is used if the binary one (a .so file) is not found. And you'll need Cython to build the binary support.
Concerning the other issue, as said Naor, it can be related to a Python dependency.
You can run the installer again (the install.sh
file in MCEdit directory) and accept the dependency check. You'll have a summary about the (non-)compliant Python library installed on you system.
However, it's not sure that the actual installer can install the required library version for MCEdit.
Note that the installer tries to install the Python dependencies for the user only( in ~/.local sub folders
), and from sources.
If some dependencies can't be installed by the installer, install them with you package manager.
If that does not work, please, open another issue, and join the console output and the mcedit.log file you can find in the MCEdit directory.
Leaking few stuff, I confess the binaries for NBT and Pocket Edition worlds can work on some .deb
and .rpm
based Linuxes without recompilation on the user's machine. And a future version of the installer will be smarter concerning dependencies...
I followed this when installing, so no install.sh
was used. Where can I find it?
I did notice I had the python2-numpy
package installed, so I uninstalled the one that I installed via pip. But it didn't make a difference.
Eh, right, you're running from source. (Read you first post, but I guess I was tired at this time...)
The install.sh
file is available when using the .run
file provided in the releases.
You can download the MCEdit.v1.4.0.1.Lin.Universal.run
file and run it. A mcedit
directory will be created alongside the .run
and the installer started automatically. Just answer 'no' to all questions, except on the disclaimer screen and the one which ask you to start the first step of installation (the dependecy check). This will show you a list of installed/missing/uncompliant dependencies.
I've also remarked that some Python packages may not install well when using pip/easy_install. You may prefer to use your package manager to install them.
Posting log again since it looks different but might be the same thing. This is not running from source but from the mcedit.sh
from the release version.
Starting MCEdit...
Running in fixed mode. Support files are in your Documents folder.
Splash load...
[ ERROR][ pymclevel.nbt.py:639]:Failed to import Cythonized nbt file. Running on (very slow) pure-python nbt fallback.
[ ERROR][ pymclevel.nbt.py:640]:(Did you forget to run 'setup.py build_ext --inplace'?)
[ ERROR][ pymclevel.nbt.py:641]:No module named _nbt
*** MCEDIT DEBUG: file_dialog: /home/brott/Downloads/mcedit/albow/file_dialogs.pyc
*** MCEDIT DEBUG: directory: /home/brott/Downloads/mcedit/albow
*** MCEDIT DEBUG: current directory: /home/brott/Downloads/mcedit
*** Xlib version 0.14 found in user's libraries.
Minecraft_Server.jar storage initialized.
Each server is stored in a subdirectory of /home/brott/.mcedit/MCEdit/ServerJarStorage named with the server's version number
Cached servers: []
Xlib.protocol.request.QueryExtension
[ ERROR][ root.py:776]:MCEdit version Unified v1.4.0.1 for Minecraft 1.8/1.9
Traceback (most recent call last):
File "../bin3/mcedit/mcedit.py", line 815, in <module>
File "../bin3/mcedit/mcedit.py", line 774, in main
File "../bin3/mcedit/mcedit.py", line 629, in main
File "../bin3/mcedit/albow/root.py", line 168, in run
File "../bin3/mcedit/albow/root.py", line 233, in run_modal
File "../bin3/mcedit/albow/widget.py", line 786, in gl_draw_all
File "../bin3/mcedit/albow/widget.py", line 786, in gl_draw_all
File "../bin3/mcedit/albow/widget.py", line 786, in gl_draw_all
File "../bin3/mcedit/albow/widget.py", line 786, in gl_draw_all
File "../bin3/mcedit/albow/widget.py", line 783, in gl_draw_all
File "../bin3/mcedit/albow/openglwidgets.py", line 22, in gl_draw_self
File "../bin3/mcedit/albow/openglwidgets.py", line 28, in gl_draw_viewport
File "../bin3/mcedit/viewports/camera.py", line 1818, in gl_draw
File "../bin3/mcedit/viewports/camera.py", line 1861, in render
File "../bin3/mcedit/editortools/player.py", line 810, in drawToolMarkers
File "../bin3/mcedit/glutils.py", line 163, in call
File "../bin3/mcedit/glutils.py", line 142, in makeList
File "../bin3/mcedit/editortools/player.py", line 1019, in _drawToolMarkers
File "../bin3/mcedit/editortools/player.py", line 1028, in drawCage
TypeError: Cannot cast ufunc multiply output from dtype('float64') to dtype('uint16') with casting rule 'same_kind'
==================================
MCEdit has crashed
==================================
Press the Enter key to close this window
Press any key to close.
The traceback starts when MCEdit crashes when I select a world.
Thank you for the update. Same file, same line, same error.
I guess your numpy version is too high. According to numpy documentation: "Default casting for inplace operations will change to ‘same_kind’ in Numpy 1.10.0. This will certainly break some code that is currently ignoring the warning."
Please downgrade your numpy to 1.9 or lower (but not below 1.6.2). This shall fix your issue.
To install a specific module version, you can use setuptools easy_install
utility:
easy_install2.7 <package_name>==<version>
.
If you don't want to override your system installed packages, you can install for the user only using: easy_install2.7 --user <package_name>==<version>
. Generaly, the packages will be installed in ~/.local/lib/python2.7/site-package
.
I installed it. pip freeze
sais numpy==1.9.0
. MCEdit still crashes. :confused:
MCEdit still crashes. :/
With the same error, I guess.
What says the dependencies check in the installer?
Yes, with same error. I will post the log here anyway to make sure:
Running in fixed mode. Support files are in your Documents folder.
Splash load...
[ ERROR][ pymclevel.nbt.py:639]:Failed to import Cythonized nbt file. Running on (very slow) pure-python nbt fallback.
[ ERROR][ pymclevel.nbt.py:640]:(Did you forget to run 'setup.py build_ext --inplace'?)
[ ERROR][ pymclevel.nbt.py:641]:No module named _nbt
*** MCEDIT DEBUG: file_dialog: /home/brott/Downloads/MCEdit-Unified/albow/file_dialogs.pyc
*** MCEDIT DEBUG: directory: /home/brott/Downloads/MCEdit-Unified/albow
*** MCEDIT DEBUG: current directory: /home/brott/Downloads/MCEdit-Unified
*** Xlib version 0.14 found in user's libraries.
Minecraft_Server.jar storage initialized.
Each server is stored in a subdirectory of /home/brott/.mcedit/MCEdit/ServerJarStorage named with the server's version number
Cached servers: []
Xlib.protocol.request.QueryExtension
[ ERROR][ root.py:776]:MCEdit version Unified v1.4.0.1 for Minecraft 1.8/1.9
Traceback (most recent call last):
File "mcedit.py", line 815, in <module>
main(sys.argv)
File "mcedit.py", line 774, in main
MCEdit.main()
File "mcedit.py", line 629, in main
rootwidget.run()
File "/home/brott/Downloads/MCEdit-Unified/albow/root.py", line 168, in run
self.run_modal(None)
File "/home/brott/Downloads/MCEdit-Unified/albow/root.py", line 233, in run_modal
self.gl_draw_all(self, (0, 0))
File "/home/brott/Downloads/MCEdit-Unified/albow/widget.py", line 786, in gl_draw_all
subwidget.gl_draw_all(root, suboffset)
File "/home/brott/Downloads/MCEdit-Unified/albow/widget.py", line 786, in gl_draw_all
subwidget.gl_draw_all(root, suboffset)
File "/home/brott/Downloads/MCEdit-Unified/albow/widget.py", line 786, in gl_draw_all
subwidget.gl_draw_all(root, suboffset)
File "/home/brott/Downloads/MCEdit-Unified/albow/widget.py", line 786, in gl_draw_all
subwidget.gl_draw_all(root, suboffset)
File "/home/brott/Downloads/MCEdit-Unified/albow/widget.py", line 783, in gl_draw_all
self.gl_draw_self(root, offset)
File "/home/brott/Downloads/MCEdit-Unified/albow/openglwidgets.py", line 22, in gl_draw_self
self.gl_draw_viewport()
File "/home/brott/Downloads/MCEdit-Unified/albow/openglwidgets.py", line 28, in gl_draw_viewport
self.gl_draw()
File "/home/brott/Downloads/MCEdit-Unified/viewports/camera.py", line 1828, in gl_draw
self.render()
File "/home/brott/Downloads/MCEdit-Unified/viewports/camera.py", line 1871, in render
t.drawToolMarkers()
File "/home/brott/Downloads/MCEdit-Unified/editortools/player.py", line 810, in drawToolMarkers
self.markerList.call(self._drawToolMarkers)
File "/home/brott/Downloads/MCEdit-Unified/glutils.py", line 163, in call
self.makeList(drawFunc)
File "/home/brott/Downloads/MCEdit-Unified/glutils.py", line 142, in makeList
drawFunc()
File "/home/brott/Downloads/MCEdit-Unified/editortools/player.py", line 1019, in _drawToolMarkers
self.drawCage(x, y, z)
File "/home/brott/Downloads/MCEdit-Unified/editortools/player.py", line 1028, in drawCage
cageTexVerts *= pixelScale
TypeError: Cannot cast ufunc multiply output from dtype('float64') to dtype('uint16') with casting rule 'same_kind'
==================================
MCEdit has crashed
==================================
Press the Enter key to close this window
Well I guess that explains it, how do I remove the old version? :confounded:
The dependency check says your numpy is still 1.10.0...
If you run in a virtualenv, make sure that the right version of numpy is installed in. Otherwise, check that you system numpy version using a Python 2 console:
>>> import numpy
>>> numpy.version.version
I've used the . ENV/bin/activate
when installing the dependencies, but when I run python2 mcedit.py
while in the virtualenv I get this
Running in fixed mode. Support files are in your Documents folder.
Traceback (most recent call last):
File "mcedit.py", line 13, in <module>
import splash
File "/home/brott/Downloads/MCEdit-Unified/splash.py", line 10, in <module>
import pygame
ImportError: No module named pygame
When I launch MCEdit without the virtualenv, then it launches, but then I get that other crash. It seems like inside the virtualenv I have 1.9, outside of it 1.10.
Edit: Wasn't able to install pygame in the virtualenv, so I installed the package for my distro, but it only works outside of virtualenv it seems.
The traceback says that pygame isn't installed. Do you have it installed outside a virtualenv? If no, you will have to install it in the virtualenv you uses for MCEdit.
Another option is to downgrade the numpy otuside you virtualenv, but this can break other programs on you system...
You can also install the right version for the user only using:
easy_install2.7 --user numpy==1.9.0
As I said earlier, this will install the package in ~/.local/lib/python2.7/site-packages
. MCEdit is able to see packages installed there before the other ones.
Yeah, in my edit (which was too late) I mentioned that I could not install pygame.
Collecting pygame
Could not find a version that satisfies the requirement pygame (from versions: )
Some externally hosted files were ignored as access to them may be unreliable (use --allow-external pygame to allow).
No matching distribution found for pygame
Hmmm...
So, you may want to try one of the solution in may last post.
By the way, did you try to use the --allow-external
option to install pygame?
$ pip install pygame
Collecting pygame
Could not find a version that satisfies the requirement pygame (from versions: )
Some externally hosted files were ignored as access to them may be unreliable (use --allow-external pygame to allow).
No matching distribution found for pygame
$ pip install pygame --allow-external pygame
Collecting pygame
Could not find a version that satisfies the requirement pygame (from versions: )
Some insecure and unverifiable files were ignored (use --allow-unverified pygame to allow).
No matching distribution found for pygame
$ pip install pygame --allow-external pygame --allow-unverified pygame
Collecting pygame
pygame is potentially insecure and unverifiable.
HTTP error 400 while getting http://www.pygame.org/../../ftp/pygame-1.6.2.tar.bz2 (from http://www.pygame.org/download.shtml)
Could not install requirement pygame from http://www.pygame.org/../../ftp/pygame-1.6.2.tar.bz2 because of error 400 Client Error: Bad Request
Could not install requirement pygame from http://www.pygame.org/../../ftp/pygame-1.6.2.tar.bz2 because of HTTP error 400 Client Error: Bad Request for URL http://www.pygame.org/../../ftp/pygame-1.6.2.tar.bz2 (from http://www.pygame.org/download.shtml)
Pygame 1.6.2 ??? This version is quite outdated... (And may be no more available.)
If you can, specify 1.9.1 as pygame version. This is the one used by MCEdit.
pip install pygame==1.9.1release --allow-external pygame --allow-unverified pygame
starts downloading it and then it fails with this:
src/camera.h:42:32: fatal error: linux/videodev.h: No such file or directory
compilation terminated.
error: command 'gcc' failed with exit status 1
----------------------------------------
Failed building wheel for pygame
Failed to build pygame
src/camera.h:42:32: fatal error: linux/videodev.h: No such file or directory
compilation terminated.
error: command 'gcc' failed with exit status 1
----------------------------------------
Command "/home/brott/Downloads/MCEdit-Unified/ENV/bin/python2 -c "import setuptools, tokenize;__file__='/tmp/pip-build-A8gsO5/pygame/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-1KvP_f-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/brott/Downloads/MCEdit-Unified/ENV/include/site/python2.7/pygame" failed with error code 1 in /tmp/pip-build-A8gsO5/pygame
I was also annoyed with this bug during pygame installation.
Check is you have libv4l1-videodev.h
in /usr/include
or elsewere on your system.
For the following stuff, you'll need to use root privileges:
/usr/include
create a folder called linux
if not already existent.sudo ln -s /usr/include/libv4l1-videodev.h /usr/include/linux/videodev.h
.Then, retry to install pygame in your virtualenv.
Yeah, I googled about it and found that was the most common solution. Everything works now. I go into the git folder, run . ENV/bin/activate
then python2 mcedit.py
. Everything works. Thanks for your help.
Heh, except Importing schematics. Pressing the Import button in the "hotbar" makes it crash:
Traceback (most recent call last):
File "mcedit.py", line 815, in <module>
main(sys.argv)
File "mcedit.py", line 774, in main
MCEdit.main()
File "mcedit.py", line 629, in main
rootwidget.run()
File "/home/brott/Downloads/MCEdit-Unified/albow/root.py", line 168, in run
self.run_modal(None)
File "/home/brott/Downloads/MCEdit-Unified/albow/root.py", line 271, in run_modal
mouse_widget.handle_mouse('mouse_down', event)
File "/home/brott/Downloads/MCEdit-Unified/albow/widget.py", line 399, in handle_mouse
self.call_handler(name, event)
File "/home/brott/Downloads/MCEdit-Unified/albow/widget.py", line 481, in call_handler
return method(*args)
File "/home/brott/Downloads/MCEdit-Unified/leveleditor.py", line 3400, in mouse_down
self.selectTool(toolNo)
File "/home/brott/Downloads/MCEdit-Unified/leveleditor.py", line 3428, in selectTool
self.parent.currentTool.toolSelected()
File "/home/brott/Downloads/MCEdit-Unified/editortools/clone.py", line 1217, in toolSelected
clipFilename = mcplatform.askOpenFile(title='Import a schematic or level...', schematics=True, suffixes=["bo2"])
File "/home/brott/Downloads/MCEdit-Unified/mcplatform.py", line 222, in askOpenFile
filename = _askOpen(suffixes)
File "/home/brott/Downloads/MCEdit-Unified/mcplatform.py", line 220, in _askOpen
return request_old_filename(suffixes=_suffixes, directory=initialDir)
File "/home/brott/Downloads/MCEdit-Unified/albow/file_dialogs.py", line 494, in request_old_filename
dlog = FileOpenDialog(suffixes=suffixes)
File "/home/brott/Downloads/MCEdit-Unified/albow/file_dialogs.py", line 313, in __init__
self.directory = os.getcwdu()
File "/home/brott/Downloads/MCEdit-Unified/albow/file_dialogs.py", line 331, in set_directory
self.list_box.update()
File "/home/brott/Downloads/MCEdit-Unified/albow/file_dialogs.py", line 97, in update
for a, dirnames, filenames in content:
File "/home/brott/Downloads/MCEdit-Unified/ENV/lib/python2.7/os.py", line 286, in walk
if isdir(join(top, name)):
File "/home/brott/Downloads/MCEdit-Unified/ENV/lib/python2.7/posixpath.py", line 73, in join
path += '/' + b
UnicodeDecodeError: 'ascii' codec can't decode byte 0xff in position 1: ordinal not in range(128)
==================================
MCEdit has crashed
==================================
Press the Enter key to close this window
This is an issue with character encoding.
The fat is MCEdit has its own 'file explorer'. It is used on OSX as a workarround for bugs in the OSX one. This internal 'file exploere' has been activated on Linux too for debugging and testing purpose, but hasn't been unactivated in the 1.4.0.1 release... So I guess you are running from the sources of the latest release.
But it is unactivated in the actual sources.
I propose you two options:
If you choose the second option, open the file mcplatform.py
and change the line 71 from platChooser = sys.platform in ('linux2', 'darwin')
to platChooser = sys.platform == 'darwin'
.
Run from the latest sources.
I run from latest git commit... Is this what you mean? Or do you mean latest release?
If you use git clone
(or git pull
if you already have cloned the Git repo), you shall have the latest commit (0bbc61b8a45b905b70199c5c24c3e778c58ec18a). If you don't use Git client, the .zip
you can donwload on the repo main page is up to date with this commit.
Please, verify the line I mentionned in my last post.
If it contains only darwin
, please look for mcedit.log
(in MCEdit directory), post the *** Platform information
part and the output of the python sys.getfilesystemencoding()
output.
Line 71 and 72 looks like this
#platChooser = sys.platform in ('linux2', 'darwin')
platChooser = sys.platform == 'darwin'
Hmmm... It's up to date.
But the UnicodeDecodeError
shall not happend, since the internal 'file explorer' is not called on Linux.
By the way, are you running Linux or OSX? (I feel a bit stupid with this question. I guess it's Linux, but it wasn't asked before...)
Yeah I'm using Linux. :stuck_out_tongue:
Thanks :) Something sure is better than something guessed.
Please, consider to provide the log file part and the python output I mentionned. It will help to reproduce and track the bug.
Anyway, thank you for your patience (and answering to the silly questions :p)
Should I make a new issue? Here it is, anyway
Log: https://gist.github.com/ac0dca91a4ae1ad9cff2
Crash:
Running in fixed mode. Support files are in your Documents folder.
Splash load...
[ ERROR][ pymclevel.nbt.py:639]:Failed to import Cythonized nbt file. Running on (very slow) pure-python nbt fallback.
[ ERROR][ pymclevel.nbt.py:640]:(Did you forget to run 'setup.py build_ext --inplace'?)
[ ERROR][ pymclevel.nbt.py:641]:No module named _nbt
*** MCEDIT DEBUG: file_dialog: /home/brott/Downloads/MCEdit-Unified/albow/file_dialogs.pyc
*** MCEDIT DEBUG: directory: /home/brott/Downloads/MCEdit-Unified/albow
*** MCEDIT DEBUG: current directory: /home/brott/Downloads/MCEdit-Unified
*** Xlib version 0.14 found in user's libraries.
Minecraft_Server.jar storage initialized.
Each server is stored in a subdirectory of /home/brott/.mcedit/MCEdit/ServerJarStorage named with the server's version number
Cached servers: []
Xlib.protocol.request.QueryExtension
[ ERROR][ root.py:776]:MCEdit version Unified v1.4.0.1 for Minecraft 1.8/1.9
Traceback (most recent call last):
File "mcedit.py", line 815, in <module>
main(sys.argv)
File "mcedit.py", line 774, in main
MCEdit.main()
File "mcedit.py", line 629, in main
rootwidget.run()
File "/home/brott/Downloads/MCEdit-Unified/albow/root.py", line 168, in run
self.run_modal(None)
File "/home/brott/Downloads/MCEdit-Unified/albow/root.py", line 271, in run_modal
mouse_widget.handle_mouse('mouse_down', event)
File "/home/brott/Downloads/MCEdit-Unified/albow/widget.py", line 399, in handle_mouse
self.call_handler(name, event)
File "/home/brott/Downloads/MCEdit-Unified/albow/widget.py", line 481, in call_handler
return method(*args)
File "/home/brott/Downloads/MCEdit-Unified/leveleditor.py", line 3400, in mouse_down
self.selectTool(toolNo)
File "/home/brott/Downloads/MCEdit-Unified/leveleditor.py", line 3428, in selectTool
self.parent.currentTool.toolSelected()
File "/home/brott/Downloads/MCEdit-Unified/editortools/clone.py", line 1217, in toolSelected
clipFilename = mcplatform.askOpenFile(title='Import a schematic or level...', schematics=True, suffixes=["bo2"])
File "/home/brott/Downloads/MCEdit-Unified/mcplatform.py", line 222, in askOpenFile
filename = _askOpen(suffixes)
File "/home/brott/Downloads/MCEdit-Unified/mcplatform.py", line 220, in _askOpen
return request_old_filename(suffixes=_suffixes, directory=initialDir)
File "/home/brott/Downloads/MCEdit-Unified/albow/file_dialogs.py", line 494, in request_old_filename
dlog = FileOpenDialog(suffixes=suffixes)
File "/home/brott/Downloads/MCEdit-Unified/albow/file_dialogs.py", line 313, in __init__
self.directory = os.getcwdu()
File "/home/brott/Downloads/MCEdit-Unified/albow/file_dialogs.py", line 331, in set_directory
self.list_box.update()
File "/home/brott/Downloads/MCEdit-Unified/albow/file_dialogs.py", line 97, in update
for a, dirnames, filenames in content:
File "/home/brott/Downloads/MCEdit-Unified/ENV/lib/python2.7/os.py", line 286, in walk
if isdir(join(top, name)):
File "/home/brott/Downloads/MCEdit-Unified/ENV/lib/python2.7/posixpath.py", line 73, in join
path += '/' + b
UnicodeDecodeError: 'ascii' codec can't decode byte 0xff in position 1: ordinal not in range(128)
==================================
MCEdit has crashed
==================================
Press the Enter key to close this window
The internal 'file explorer' is used because you system (Arch Linux?) doesn't have the requiered Gtk environment that is needed to use the system one. But his is not the problem.
You may have accented/asian/special characters in the names of the files you want to load. Renaming these files shall fix this issue.
It can be usefull if you mind to provide the list of these files, and the Python 2 output of sys.gefilesystemencoding()
.
I am swedish, so there is possible there are filenames with åäö
, but I usually don't use those characters in filenames. What is the directory that the file explorer starts in, so I can check it for weird characters?
I also have non-english characters, but I don't experience this issue.
I used åäö
in a file name. No error...
The file explorer start directory depend on what you want to load and on the MCEdit install type.
If your install type is 'Fixed' the Import
tool points to ~/.mcedit/MCEdit/Schematics
. In Portable
mode, it points to a Schematics
directory alongside MCEdit one.
The Quick Load
, Open...
and Save As
dialogs point to ~/.minecraft/saves
.
Well, .mcedit/MCEdit/Schematics/
is empty...
You shall have two directories in there: Mobs in Jars
and Spawner
. You can find them in the stock-schematic
directory within MCEdit one.
Don't you have a Schematics
directory alongside MCEdit one?
Is your install type Fixed
or Portable
? You can verify in the Options
panel.
It's Fixed
.
I did have a MCEdit-schematics
and schematics
which I think I used in older versions of MCEdit. I moved them to see if MCEdit was using them and maybe it would create a fresh folder. It didn't. I remade them and made them empty, still crashes.
@Brottweiler, any news?
I didn't realise you pushed a new commit that was gonna fix this issue, so I just git pull
and tried again, and it still crashes.
Traceback (most recent call last):
File "mcedit.py", line 815, in <module>
main(sys.argv)
File "mcedit.py", line 774, in main
MCEdit.main()
File "mcedit.py", line 629, in main
rootwidget.run()
File "/home/brott/Downloads/MCEdit-Unified/albow/root.py", line 168, in run
self.run_modal(None)
File "/home/brott/Downloads/MCEdit-Unified/albow/root.py", line 271, in run_modal
mouse_widget.handle_mouse('mouse_down', event)
File "/home/brott/Downloads/MCEdit-Unified/albow/widget.py", line 399, in handle_mouse
self.call_handler(name, event)
File "/home/brott/Downloads/MCEdit-Unified/albow/widget.py", line 481, in call_handler
return method(*args)
File "/home/brott/Downloads/MCEdit-Unified/leveleditor.py", line 3400, in mouse_down
self.selectTool(toolNo)
File "/home/brott/Downloads/MCEdit-Unified/leveleditor.py", line 3428, in selectTool
self.parent.currentTool.toolSelected()
File "/home/brott/Downloads/MCEdit-Unified/editortools/clone.py", line 1217, in toolSelected
clipFilename = mcplatform.askOpenFile(title='Import a schematic or level...', schematics=True, suffixes=["bo2"])
File "/home/brott/Downloads/MCEdit-Unified/mcplatform.py", line 233, in askOpenFile
filename = _askOpen(suffixes)
File "/home/brott/Downloads/MCEdit-Unified/mcplatform.py", line 231, in _askOpen
return request_old_filename(suffixes=_suffixes, directory=iDir)
File "/home/brott/Downloads/MCEdit-Unified/albow/file_dialogs.py", line 494, in request_old_filename
dlog = FileOpenDialog(suffixes=suffixes)
File "/home/brott/Downloads/MCEdit-Unified/albow/file_dialogs.py", line 313, in __init__
self.directory = os.getcwdu()
File "/home/brott/Downloads/MCEdit-Unified/albow/file_dialogs.py", line 331, in set_directory
self.list_box.update()
File "/home/brott/Downloads/MCEdit-Unified/albow/file_dialogs.py", line 97, in update
for a, dirnames, filenames in content:
File "/home/brott/Downloads/MCEdit-Unified/ENV/lib/python2.7/os.py", line 286, in walk
if isdir(join(top, name)):
File "/home/brott/Downloads/MCEdit-Unified/ENV/lib/python2.7/posixpath.py", line 73, in join
path += '/' + b
UnicodeDecodeError: 'ascii' codec can't decode byte 0xff in position 1: ordinal not in range(128)
Trying to run from source, but
virtualenv ENV
gives me trouble:What is up?