MU Soapbox

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Muxify
    • Mustard

    Digger: A graphic room editor for MUX/MUSH

    How-Tos
    editor
    5
    20
    5852
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • P
      Peppel last edited by

      Hi, I'm currently developing a graphic tool for designing MUSH/MUX rooms and exporting them to code. It's written in Python so it will work on any sistem (Haven't tried on Mac).

      You can quickly link rooms and run custom code for each of them. You can change the color and size of rooms if you need so.

      Here is the GitHub page if you want to check it out, please report any bugs, and suggestions are welcome 🙂 Thanks in advance

      1 Reply Last reply Reply Quote 0
      • krmbm
        krmbm Banned last edited by

        Similar to MUSHroom?

        http://ansiart.com/Info/Utilities

        P 1 Reply Last reply Reply Quote 0
        • P
          Peppel @krmbm last edited by

          @krmbm It's similar to MUSHRoom, however, I want an editor that would work under Linux, and I needed to add some features that I find useful.

          1 Reply Last reply Reply Quote 1
          • Rook
            Rook last edited by

            A plea: please add to your export options a JSON option. XML is dying (in the eyes of most) and JSON is seeming to be the new standard. It is much more consumable by, for instance, web services.

            A few Nice-To-Haves that most game builders will want:

            • Report on completeness of Rooms and Exits.
              • Configurable attributes to check for (osucc, odrop, desc, flags, etc)
              • Badge/flag rooms with certain Flags set (such as unapproved flags)
            • Configurable to use different server codebase (MUX, Penn, Rhost, at minimum)
            • While doing the above, you might consider making the commands ran very configurable.
            1 Reply Last reply Reply Quote 2
            • Thenomain
              Thenomain last edited by

              Latest version of macOS, check.
              Latest version of Xcode, check.
              Installed and/or updated Homebrew, check.
              brew install pyqt which installs python3 as a dependency, check.

              Let's do this.

              digger-master$ python3 main.py 
                File "main.py", line 159
                  raise ValueError, "not a Digger XML file"
                                  ^
              SyntaxError: invalid syntax
              

              “If you wish to make an apple pie from scratch, you must first invent the universe.”
              ― Carl Sagan, Cosmos

              P 1 Reply Last reply Reply Quote 0
              • P
                Peppel @Thenomain last edited by

                @Thenomain At the moment, you need python2 to run Digger, that's why you're getting the syntax error.

                Thenomain 1 Reply Last reply Reply Quote 0
                • Thenomain
                  Thenomain @Peppel last edited by

                  @Peppel

                    File "main.py", line 159
                      raise ValueError, "not a Digger XML file"
                                                              ^
                  IndentationError: unindent does not match any outer indentation level
                  

                  I was warned that Python had indent issues, but this is the first time I've seen it.

                  “If you wish to make an apple pie from scratch, you must first invent the universe.”
                  ― Carl Sagan, Cosmos

                  P 1 Reply Last reply Reply Quote 0
                  • G
                    golgoth last edited by

                    Yeah, the standard is spacebars. However, if this gets up and running all nice-like, I'll be excited!

                    1 Reply Last reply Reply Quote 0
                    • P
                      Peppel @Thenomain last edited by

                      @Thenomain Hmm, that's weird, it runs fine for me.

                      Thenomain 1 Reply Last reply Reply Quote 0
                      • Thenomain
                        Thenomain @Peppel last edited by

                        @Peppel said in Digger: A graphic room editor for MUX/MUSH:

                        @Thenomain Hmm, that's weird, it runs fine for me.

                        Yeah, but I was offering testing, as per the original post:

                        @Peppel said in Digger: A graphic room editor for MUX/MUSH:

                        (Haven't tried on Mac).

                        I am not a Python coder by even the slightest stretch, so I don't know how to debug this.

                        “If you wish to make an apple pie from scratch, you must first invent the universe.”
                        ― Carl Sagan, Cosmos

                        G 1 Reply Last reply Reply Quote 0
                        • G
                          golgoth last edited by

                          Runs fine on my end, too. Double checking, it looks like that error only comes up in python 3.x

                          1 Reply Last reply Reply Quote 0
                          • G
                            golgoth @Thenomain last edited by golgoth

                            @Thenomain said in Digger: A graphic room editor for MUX/MUSH:

                            @Peppel said in Digger: A graphic room editor for MUX/MUSH:

                            @Thenomain Hmm, that's weird, it runs fine for me.

                            Yeah, but I was offering testing, as per the original post:

                            @Peppel said in Digger: A graphic room editor for MUX/MUSH:

                            (Haven't tried on Mac).

                            I am not a Python coder by even the slightest stretch, so I don't know how to debug this.

                            I'll see if I can't get this running in python3, in the meantime, try executing this by typing python2 main.py

                            Edit: Looks like I can get it all the way down to needing qt4. Looks like I cannot replicate this issue with the current version of python 2.7.x

                            Thenomain 1 Reply Last reply Reply Quote 0
                            • Thenomain
                              Thenomain @golgoth last edited by

                              @golgoth

                              Here's the deets, after deleting and re-downloading the .zip from GitHub:

                              digger-master$ python2 main.py 
                              -bash: python2: command not found
                              digger-master$ python --version
                              Python 2.7.10
                              digger-master$ python main.py 
                                File "main.py", line 159
                                  raise ValueError, "not a Digger XML file"
                                                                          ^
                              IndentationError: unindent does not match any outer indentation level
                              

                              macOS: 10.12.4 (16E195)

                              Darwin: Darwin rrcs-24-123-229-3.central.biz.rr.com 16.5.0 Darwin Kernel Version 16.5.0: Fri Mar 3 16:52:33 PST 2017; root:xnu-3789.51.2~3/RELEASE_X86_64 x86_64

                              Xcode: Version 8.3.2 (8E2002)

                              That's all I got.

                              “If you wish to make an apple pie from scratch, you must first invent the universe.”
                              ― Carl Sagan, Cosmos

                              1 Reply Last reply Reply Quote 0
                              • G
                                golgoth last edited by

                                I'll head home and look at this again. I might pop a VM with that version of python. I'm working with 2.7.13

                                1 Reply Last reply Reply Quote 0
                                • G
                                  golgoth last edited by

                                  Try commenting out lines 159 and 160 for me. I'm stuck helping cook real quick.

                                  Thenomain 1 Reply Last reply Reply Quote 0
                                  • Thenomain
                                    Thenomain @golgoth last edited by Thenomain

                                    @golgoth

                                    Oh fuck me.

                                    I deleted and replaced the folder in the macOS GUI, but didn't re-enter the folder in shell. Starting from scratch, I no longer get the indentation error.

                                    I am getting an error finding PyQT4, but I'm checking out some possible solutions from Stack Overflow. I will post when I find the best Mac install solution for this.

                                    --

                                    edit: Here's the error. I think the Homebrew package sets itself up for Python3, not 2.

                                    Traceback (most recent call last):
                                      File "main.py", line 7, in <module>
                                        from PyQt4 import QtCore, QtGui
                                    ImportError: No module named PyQt4
                                    

                                    --

                                    edit edit: No, the Homebrew package for PyQT4 says it will install for both Python2 and Python3. Will need to dig deeper.

                                    “If you wish to make an apple pie from scratch, you must first invent the universe.”
                                    ― Carl Sagan, Cosmos

                                    G 1 Reply Last reply Reply Quote 1
                                    • G
                                      golgoth @Thenomain last edited by

                                      @Thenomain I got that error from running in python3. The other one you have been getting, I can't repeat. The only thing I can think of is that the author used tabs rather than spaces, which doesn't apparently translate well to your editor.

                                      Thenomain 1 Reply Last reply Reply Quote 0
                                      • Thenomain
                                        Thenomain @golgoth last edited by

                                        Ongoing Adventures In Hobby Developers Doing Professional Development
                                        (macOS Sierra Edition)

                                        So the fun of package managers that are not baked into the operating system is that they like putting things in their own little world. Because Homebrew bottled its own Python3, it knew where to put PyQt5 (and yes, it's 5). Because Apple's Xcode installed its own version of Python2, then Homebrew didn't clobber Apple's installation.

                                        $ cd /usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages
                                        $ ls
                                        PyQt5					pkg_resources				sipconfig.py
                                        __pycache__				setuptools				sipdistutils.py
                                        easy_install.py				setuptools-32.2.0-py3.6.egg-info	sitecustomize.py
                                        pip					sip.pyi					wheel
                                        pip-9.0.1-py3.6.egg-info		sip.so					wheel-0.29.0-py3.6.egg-info
                                        

                                        Yup, there it is. But there is pip, too, so if I try to use pip to install PyQt it will just go into the Python3 repository.

                                        So let's ignore Xcode and install our own Python 2:

                                        ==> Caveats
                                        Pip and setuptools have been installed. To update them
                                          pip install --upgrade pip setuptools
                                        
                                        You can install Python packages with
                                          pip install <package>
                                        
                                        They will install into the site-package directory
                                          /usr/local/lib/python2.7/site-packages
                                        
                                        See: http://docs.brew.sh/Homebrew-and-Python.html
                                        

                                        This says something disturbing...

                                        site-packages and the PYTHONPATH
                                        The site-packages is a directory that contains Python modules (especially bindings installed by other formulae). Homebrew creates it here:

                                        $(brew --prefix)/lib/pythonX.Y/site-packages
                                        So, for Python 2.7.x, you’ll find it at /usr/local/lib/python2.7/site-packages.

                                        Cool!

                                        $ cd /usr/local/lib/python2.7/site-packages
                                        $ pwd
                                        /usr/local/lib/python2.7/site-packages
                                        $ ls
                                        appdirs-1.4.3.dist-info		pip				setuptools-35.0.2.dist-info	six-1.10.0.dist-info
                                        appdirs.py			pip-9.0.1-py2.7.egg-info	sip.pyi				six.py
                                        appdirs.pyc			pkg_resources			sip.so				six.pyc
                                        easy_install.py			pyparsing-2.2.0.dist-info	sipconfig.py			wheel
                                        easy_install.pyc		pyparsing.py			sipdistutils.py			wheel-0.29.0-py2.7.egg-info
                                        packaging			pyparsing.pyc			sitecustomize.py
                                        packaging-16.8.dist-info	setuptools			sitecustomize.pyc
                                        

                                        Where the hell is PyQt? Maybe if I run it from the Homebrew install location:

                                        $ cd /usr/local/Cellar/python/2.7.13/bin
                                        $ ./pip install pyqt4
                                        Collecting pyqt4
                                          Could not find a version that satisfies the requirement pyqt4 (from versions: )
                                        No matching distribution found for pyqt4
                                        $ ./pip search pyqt4 
                                        [...]
                                        PyQt4 (4.11.4)          - Python bindings for the Qt cross platform GUI toolkit
                                        

                                        Not sure what to do at this point. Will continue to prod and grind.

                                        “If you wish to make an apple pie from scratch, you must first invent the universe.”
                                        ― Carl Sagan, Cosmos

                                        1 Reply Last reply Reply Quote 0
                                        • G
                                          golgoth last edited by

                                          /usr/lib/python2.7/dist-packages

                                          I should probably find a MacOS VM and see if that's the issue. I did a find for PyQt4

                                          Thenomain 1 Reply Last reply Reply Quote 0
                                          • Thenomain
                                            Thenomain @golgoth last edited by Thenomain

                                            @golgoth said in Digger: A graphic room editor for MUX/MUSH:

                                            /usr/lib/python2.7/dist-packages

                                            /usr/local/lib/python2.7/site-packages/

                                            --

                                            I went into the 'site-packages' directory for Python3 and copied PyQt5/ to Python2's. Hey, at least it's now failing creatively:

                                            $ python main.py 
                                            Traceback (most recent call last):
                                              File "main.py", line 8, in <module>
                                                from PyQt5 import QtCore, QtGui
                                            ImportError: dlopen(/usr/local/lib/python2.7/site-packages/PyQt5/QtCore.so, 2): Symbol not found: _PyBytes_AsString
                                              Referenced from: /usr/local/lib/python2.7/site-packages/PyQt5/QtCore.so
                                              Expected in: flat namespace
                                             in /usr/local/lib/python2.7/site-packages/PyQt5/QtCore.so
                                            

                                            I have tried and failed to install PyQt4 from the official site, as it complains that it can't find qmake, and I can't find an install for qmake except via the qt-devel library. Until I become a more capable developer, I will now leave this in the hands of other people, and let this thread get back on track.

                                            --

                                            For those now afraid to try out Digger, I am only having these issues on macOS. Try it out!

                                            “If you wish to make an apple pie from scratch, you must first invent the universe.”
                                            ― Carl Sagan, Cosmos

                                            1 Reply Last reply Reply Quote 0
                                            • 1 / 1
                                            • First post
                                              Last post