Pages: 1
  Print  
Author Topic: CLI and new IDE for Enigma  (Read 5200 times)
Offline (Unknown gender) ssss
Posted on: September 02, 2013, 09:15:19 PM
Member
Joined: Jun 2013
Posts: 24

View Profile
New IDE in development written in python.

http://tinypic.com/view.php?pic=345yofs&s=5


http://tinypic.com/view.php?pic=9u5jit&s=5


Requires Python 2.7 or 3 and PyQt4 installed on linux.

Download Instructions for Windows
download zip from here https://github.com/sssstest/GameEditor/archive/master.zip
or run
Code: [Select]
git clone https://github.com/sssstest/GameEditor.gitYou need python from http://python.org/download/ and you need PyQt4 from http://www.riverbankcomputing.com/software/pyqt/download
PyQt5 hasn't been tested and probably doesn't work yet.

Download Depenencies
x86
http://python.org/ftp/python/2.7.5/python-2.7.5.msi
http://sourceforge.net/projects/pyqt/files/PyQt4/PyQt-4.10.3/PyQt4-4.10.3-gpl-Py2.7-Qt4.8.5-x32.exe

x64
http://python.org/ftp/python/2.7.5/python-2.7.5.amd64.msi
http://sourceforge.net/projects/pyqt/files/PyQt4/PyQt-4.10.3/PyQt4-4.10.3-gpl-Py2.7-Qt4.8.5-x64.exe

Once you have python and PyQt4 installed you can run the GameEditor ide by running ide.py from windows explorer or from the command line.

Supports reading GameMaker and ENIGMA game formats:
GMK version 800+ (reading and writing), GMX, GMZ, EGM
Writing gmk is suppored but disabled for safety right now. You should keep backups just in case.

The command line interface cli.py is for converting and compiling games on the command line

Code: [Select]
usage: cli.py [-h] [-o WRITEFILE] [-c CODE] [-r] [-t] [FILE.GMK]

input file with no options builds in debug mode and runs game

positional arguments:
  FILE.GMK      read file (gmk gm81 egm gmx gmz formats)

optional arguments:
  -h, --help    show this help message and exit
  -o WRITEFILE  convert to output file and exit (gmk ggg formats)
  -c CODE       empty game with object create event code
  -r            run game emode

You can test GML code with the cli using
Code: [Select]
python GameEditor/cli.py -c 'show_message("test");game_end();'That will create a game with 1 room and 1 object and the code in an event create action. On the terminal it will show
show_message: test
« Last Edit: October 20, 2013, 03:35:54 PM by ssss » Logged
Offline (Male) Goombert
Reply #1 Posted on: September 02, 2013, 09:34:56 PM

Developer
Location: Cappuccino, CA
Joined: Jan 2013
Posts: 3107

View Profile
I want to post here the links to the repositories of our LGM rewrite headed by me.

LateralGM to C++ and Qt Framework, is the one that will be getting the most attention and actually eventually replace LGM. It is currently just a rewrite of the UI and can switch from MDI to Tabbed mode and other things, it also supports theming via cascading style sheets.
https://github.com/enigma-dev/RadialGM


LateralGM to C# and .NET Framework, this one was only a test and was only part of the UI, it will not be developed, we hate the .NET Framework here.
https://github.com/enigma-dev/SharpGM


And this last one is canthelp or user ssss on the forum, his port of my Qt/C++ GUI over to python, he already has GMK, GMX, and EGM loading.
https://github.com/sssstest/GameEditor.git
Logged
I think it was Leonardo da Vinci who once said something along the lines of "If you build the robots, they will make games." or something to that effect.

Offline (Male) Josh @ Dreamland
Reply #2 Posted on: September 02, 2013, 10:21:47 PM

Prince of all Goldfish
Developer
Location: Pittsburgh, PA, USA
Joined: Feb 2008
Posts: 2949

View Profile Email
Heheheheh... I am very curious as to how these IDEs will turn out. Our third contender is, of course, NaturalGM. The projects vary in projected capability; let me give my honest (and skeptical) opinion of each really quick.

Contender 1: canthelp's (ssss's) project, Game Editor
The pros:
Being written in Python, this IDE has grown up extremely quickly. It borrows code from LGM and ENIGMA's code bases, as well as from Robert's IDE's codebase. In addition to that, it is by far the most functional and quickest growing of these IDEs. It may come as a surprise that in general, the IDE performs better than LGM, which is powered by Swing rather than Qt. This IDE is also being tailored largely to the needs of ENIGMA, which means it is likely to have the new features we need.
The cons: Everything in this IDE kind of melts together. Plugins are doable only by virtue of python being a scripting language. The author will attest to the code being quite messy. The user has to install Python to be able to work with this IDE.

Contender 2: Robert's C++ LateralGM
The pros:
Being completely native and designed specifically with ENIGMA in mind makes this IDE an obvious choice for a new user. Thus, like canthelp's IDE, we're likely to see the resources we've planned out within a few releases. In addition to the speed problems, this IDE seeks to address the EGM/GMX loading issues from its Java predecessor.
The cons: While focus has gone into keeping the file readers and writers modular, not a lot of attention thus far has been paid to general modularity. The individual editor components are not themselves separate; there is a lot of interdependency that is unlikely to be sifted out. Maintaining this IDE will also take back seat, as Robert is generally preoccupied with other facets of ENIGMA.

Contender 3: DaSpirit's NaturalGM
The pros:
Spirit has taken care to ensure modularity of each component of the IDE. It is (as far as has been seen) possible to develop a resource plugin for NaturalGM without regard for other resource plugins in the system, which means the odds of us finally adding an overworld resource to the mix are great (we should be able to duplicate the path editor plugin and go from thereā€”its functional requirements of the remainder of the system are identical). Additionally, this should help ensure that users wishing to add their own resource types to ENIGMA are able to do so easily, as both IDE and engine will be able to accommodate them.
The cons: At this point in its development, I can't isolate any concrete issues with the software. That in itself is the only issue: at its present state, NGM is mostly backbone, but the backbone is shaping up comparatively well. The issues that I am able to foresee have all been addressed; only time will reveal any remaining problems as he starts on the concrete implementations.
« Last Edit: September 02, 2013, 10:25:15 PM by Josh @ Dreamland » Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Male) polygone
Reply #3 Posted on: September 02, 2013, 10:33:10 PM

Contributor
Location: England
Joined: Mar 2009
Posts: 803

View Profile
Contender 1 & 2 & 3
The pros:
No java
Logged
I honestly don't know wtf I'm talking about but hopefully I can muddle my way through.
Offline (Unknown gender) slojanko
Reply #4 Posted on: September 03, 2013, 09:18:51 AM
Member
Joined: May 2013
Posts: 7

View Profile
People seriously shouldn't post stuff that break your projects. Posting this was totally unnecessary.
Logged
Offline (Male) Goombert
Reply #5 Posted on: September 03, 2013, 09:23:31 AM

Developer
Location: Cappuccino, CA
Joined: Jan 2013
Posts: 3107

View Profile
Uhm, excuse me slojanko? How did you even run any of them, except of course ssss's, but even then, how the fuck did you of all people install python?
Logged
I think it was Leonardo da Vinci who once said something along the lines of "If you build the robots, they will make games." or something to that effect.

Offline (Male) time-killer-games
Reply #6 Posted on: September 03, 2013, 09:55:28 AM

Contributor
Location: Virginia Beach
Joined: Jan 2013
Posts: 1157

View Profile Email
Is the gmx reader and writer for the python IDE actually stable enough to work at all with certain projects? I'm gonna have some fun testing this baby out tonight. :-)
Logged
Offline (Unknown gender) ssss
Reply #7 Posted on: September 03, 2013, 04:56:59 PM
Member
Joined: Jun 2013
Posts: 24

View Profile
No sorry. The gmx reader works but the gmx writer isn't in there yet, only gmk writing. Cheeseboy made me fix it to work with python3 last night and the edc games I tested mostly worked on both python 2.7 and python3.
Logged
Offline (Male) time-killer-games
Reply #8 Posted on: September 11, 2013, 01:17:19 PM

Contributor
Location: Virginia Beach
Joined: Jan 2013
Posts: 1157

View Profile Email
That's okay, this is still a very nice project. One suggestion though, consider using PyInstaller to compile all your python scripts for this IDE to a standalone applications for Windows, Mac and Linux each. PyInstaller is free and open source but most important it works very well with seemingly zero bugs. It supports interpreting external modules such as Py game (which I have used in specific for my own personal needs). If you want I can compile this for you but I can only do it for windows and Linux with no Mac access.

Cheers, love the pure-code event system! :D
Logged
Offline (Unknown gender) ssss
Reply #9 Posted on: September 12, 2013, 03:33:31 AM
Member
Joined: Jun 2013
Posts: 24

View Profile
Thanks!  You're right I should package it into an .exe for Windows.
Logged
Offline (Unknown gender) x
Reply #10 Posted on: September 18, 2013, 12:17:42 AM

Member
Joined: Aug 2013
Posts: 19

View Profile
Looking good. I like the code folding!
I like the idea of ENIGMA supporting a host of IDEs, but wouldn't it be more efficient if all the IDE developing effort went into making one really awesome IDE?
Logged
x
Offline (Male) DaSpirit
Reply #11 Posted on: September 18, 2013, 08:05:37 AM

Member
Location: New York City
Joined: Mar 2013
Posts: 124

View Profile
Looking good. I like the code folding!
I like the idea of ENIGMA supporting a host of IDEs, but wouldn't it be more efficient if all the IDE developing effort went into making one really awesome IDE?
It would be more efficient. I keep asking them everyday to help me with mine, as mine has been written with Josh's ideas in mind.
Logged
Pages: 1
  Print