This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
76
Proposals / Weird stuff that works in GM but fails in ENIGMA
« on: January 02, 2013, 11:33:04 am »
Trying to compile an old GM editable of mine with enigma, I stumbled upon some problems. That is, stuff that GM is OK with but not ENIGMA.
1. Bogus for statment.
The generated C++ code was some weird crap like:
Anyway.
2. Checking for inequality with <>.
3. Giving a variable the name of a C++ data type or the name of a function.
I had a variable named int. Probably short for intelligence. The problem here is not that it doesn't work (because I guess it's only reasonable), but that ENIGMA didn't catch it at first, and it only became a problem during compilation.
A certain GML code looked like this:
(Also another variable named rand fucked things up too, apparently because it's the name of a function.)
4. Resources that would have the same name, if not for an asterisk one of them has.
e.g. sprCharacter and sprCharacter*. ENIGMA apparently removes the asterisk and ends up trying to define the same thing twice.
5. Other stuff you probably know about already.
dll functions (actually I'm using Linux so I'm not sure).
ini functions.
execute_string
variable_local_exists
user_event
event_inherited (why is this not implemented?)
sprite_create_from_screen
file_exists
And that's pretty much it. I'm posting because I thought this may be useful. Is it? Is there a specific place to put this stuff?
1. Bogus for statment.
Code: [Select]
for (i = 0; i < stuff; i += 1;) {}
(Note the third semicolon.)The generated C++ code was some weird crap like:
Code: [Select]
for ((i = 0; i < stuff; i += 1); ); {}
Don't know about you, but I find that hilarious.Anyway.
2. Checking for inequality with <>.
Code: [Select]
if (a <> b) {}
That is equal toCode: [Select]
if (a != b) {}
in GM. In ENIGMA, the generated C++ looks like this:Code: [Select]
if (a < > b) {}
and of course doesn't compile. I also find this hilarious, specially how ENIGMA sticks a space between the symbols.3. Giving a variable the name of a C++ data type or the name of a function.
I had a variable named int. Probably short for intelligence. The problem here is not that it doesn't work (because I guess it's only reasonable), but that ENIGMA didn't catch it at first, and it only became a problem during compilation.
A certain GML code looked like this:
Code: [Select]
alarm[0]=100-random(int);
and the resulting C++ was something likeCode: [Select]
alarm(0)= 100 - random;
(int);
and... yeah, I'm sorry but, that is, like, HILARIOUS. Console was all like "invalid operands of type 'int' and '<unresolved overloaded function type>' to binary 'operator-'".(Also another variable named rand fucked things up too, apparently because it's the name of a function.)
4. Resources that would have the same name, if not for an asterisk one of them has.
e.g. sprCharacter and sprCharacter*. ENIGMA apparently removes the asterisk and ends up trying to define the same thing twice.
5. Other stuff you probably know about already.
dll functions (actually I'm using Linux so I'm not sure).
ini functions.
execute_string
variable_local_exists
user_event
event_inherited (why is this not implemented?)
sprite_create_from_screen
file_exists
And that's pretty much it. I'm posting because I thought this may be useful. Is it? Is there a specific place to put this stuff?
78
Announcements / Re: Why does it look like nothing's happening?
« on: March 04, 2012, 10:05:30 pm »Ideka just suggested we switch to MercurialWut.
I didn't suggest that.
As IsmAvatar said, I was
Quote
just sharing a Svn-to-distributed ideology brain-unscrambling link.Though I mostly intended to explain to ugriffin why Git is better than SVN.
79
Announcements / Re: Main Progress [Stalled because we can't Git]
« on: March 03, 2012, 06:14:26 pm »Not sure why you guys insist on using Git. The company I work for makes me use git for source control, I hate it with a passion. To me, SVN simply works better (much less bull to deal with).Sort of late but, here, take a look at this: http://hginit.com/00.html
It's about mercurial instead of git, but a lot of stuff (if not everything) applies anyway.
80
Issues Help Desk / Re: Help getting ENIGMA to behave
« on: January 26, 2012, 03:29:47 pm »
I'm running Arch Linux and using no DE, just Awesome WM.
That Pulseaudio error just showed up that time it seems, as I'm not getting it now.
Also, setting the audio system to None doesn't help.
Thanks for your answers. I guess I'll just wait for the new parser.
That Pulseaudio error just showed up that time it seems, as I'm not getting it now.
Also, setting the audio system to None doesn't help.
Thanks for your answers. I guess I'll just wait for the new parser.
81
Issues Help Desk / Help getting ENIGMA to behave
« on: January 21, 2012, 09:33:39 pm »
I recently installed ENIGMA and LGM. I did so simply by running:
After that I opened LGM with
I was able to, but the game didn't work properly (the square just got stuck in (0,0)) and a lot of warnings and errors showed up in the terminal.
You can see the whole log here: http://pastebin.com/QDRxwfX7
Also if for some reason you want to see the editable of the game, you can find it here: http://linuxstupidity.com/test.egm
Any help is appreciated.
Code: [Select]
$ svn checkout https://enigma-dev.svn.sourceforge.net/svnroot/enigma-dev/trunk
$ cd trunk
$ make
Everything seemed to work with no errors.After that I opened LGM with
Code: [Select]
$ java -jar lgm16b4.jar
and tried to make a test game with only a white square that follows the mouse.I was able to, but the game didn't work properly (the square just got stuck in (0,0)) and a lot of warnings and errors showed up in the terminal.
You can see the whole log here: http://pastebin.com/QDRxwfX7
Also if for some reason you want to see the editable of the game, you can find it here: http://linuxstupidity.com/test.egm
Any help is appreciated.
82
General ENIGMA / Re: Builds, Packages, Releases, etc.
« on: May 31, 2011, 03:21:28 pm »
It seems that the Arch repository now provides Enigma only, with no LateralGM. Due to this, I've been unable to update the package for some time, as Pacman reported a missing dependency. But today I decided to try and update. To do it, I had to:
1) Uninstall enigma-dev-svn.
2) Install this.
3) Reinstall enigma-dev-svn.
4) cp /usr/share/java/lateralgm/lateralgm.jar to /opt/enigma.
5) And finally, chmod +x /usr/bin/lateralgm.
Now the thing seems to work, though I haven't tested much.
This process could, and I think it should, be a little more automatic.
And by the way, both lateralgm-svn (the AUR package) and enigma-dev-svn provide a different /usr/bin/lateralgm. The one that works best is the one provided by enigma-dev-svn, but I think it could use a small optimization. The file currently looks like this:
And even if I'm mistaken, I think PREVIOUS_DIR is still not necessary, as you can use OLDPWD.
That's all, thanks.
1) Uninstall enigma-dev-svn.
2) Install this.
3) Reinstall enigma-dev-svn.
4) cp /usr/share/java/lateralgm/lateralgm.jar to /opt/enigma.
5) And finally, chmod +x /usr/bin/lateralgm.
Now the thing seems to work, though I haven't tested much.
This process could, and I think it should, be a little more automatic.
And by the way, both lateralgm-svn (the AUR package) and enigma-dev-svn provide a different /usr/bin/lateralgm. The one that works best is the one provided by enigma-dev-svn, but I think it could use a small optimization. The file currently looks like this:
Code: [Select]
#!/bin/bash
# NOTE: forces Java into English locale because it breaks ENIGMA otherwise
PREVIOUS_DIR=`pwd`
cd /opt/enigma
LC_ALL=en_US.UTF-8 java -jar lateralgm.jar $@
cd $PREVIOUS_DIR
If I'm not mistaken, all scripts run on their own subshell, so the last line and the PREVIOUS_DIR variable aren't necessary.And even if I'm mistaken, I think PREVIOUS_DIR is still not necessary, as you can use OLDPWD.
That's all, thanks.
83
Issues Help Desk / Re: Unable to run a file
« on: April 27, 2011, 08:55:47 pm »hey everybody, just downloaded the program and I love the idea and concept. But, everytime I try to run/design a game, I get the error:Is that the whole error message? it seems to me like just a portion of it...
mingw32-make[1]: *** [link] Error 1
mingw32-make[1]: Leaving directory `c:/Users/*****/Desktop/ENIGMA-R4-r694-win/ENIGMAsystem/SHELL'
mingw32-make: *** [Game] Error 2
mingw32-make[1]: Leaving directory `c:/Users/*****/Desktop/ENIGMA-R4-r694-win/ENIGMAsystem/SHELL'
mingw32-make[1]: Leaving directory `c:/Users/*****/Desktop/ENIGMA-R4-r694-win/ENIGMAsystem/SHELL'
mingw32-make: *** [Game] Error 2
mingw32-make: *** [Game] Error 2
Any help would be greatly appreciated!
84
General ENIGMA / Re: Problem running Enigma
« on: April 23, 2011, 04:12:08 pm »
I see.
Anyways, that worked . I guess I'll just define an alias in my .bashrc, for now.
Thanks!
Anyways, that worked . I guess I'll just define an alias in my .bashrc, for now.
Thanks!
85
General ENIGMA / (Solved) Problem running Enigma
« on: April 23, 2011, 04:00:03 pm »
I use Arch Linux.
I installed Enigma through Pacman by following the instructions shown here: http://enigma-dev.org/forums/index.php?topic=669.0
It runs, but the following shows up on startup:
I suspect it has something to do with /opt/enigma/searchdirs.txt, which is supposed to contain the list of directories in which header files are found (?), but has this instead:
Halp?
I installed Enigma through Pacman by following the instructions shown here: http://enigma-dev.org/forums/index.php?topic=669.0
It runs, but the following shows up on startup:
Code: [Select]
ERROR: Invalid search directories returned. Start search string does not match a line.
Apart from that, everything seems to work fine, but when I try to run a game, this pops up:Code: [Select]
ENIGMA is not functional due to prior errors.
I suspect it has something to do with /opt/enigma/searchdirs.txt, which is supposed to contain the list of directories in which header files are found (?), but has this instead:
Code: [Select]
Usando especificaciones internas.
COLLECT_GCC=/usr/bin/gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-unknown-linux-gnu/4.6.0/lto-wrapper
Objetivo: x86_64-unknown-linux-gnu
Configurado con: /build/src/gcc-4.6-20110415/configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++ --enable-shared --enable-threads=posix --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-clocale=gnu --enable-gnu-unique-object --enable-linker-build-id --with-ppl --enable-cloog-backend=isl --enable-lto --enable-gold --enable-ld=default --enable-plugin --with-plugin-ld=ld.gold --disable-multilib --disable-libstdcxx-pch --enable-checking=release
Modelo de hilos: posix
gcc versión 4.6.0 20110415 (prerelease) (GCC)
COLLECT_GCC_OPTIONS='-E' '-v' '-mtune=generic' '-march=x86-64'
/usr/lib/gcc/x86_64-unknown-linux-gnu/4.6.0/cc1plus -E -quiet -v -D_GNU_SOURCE blank.txt -mtune=generic -march=x86-64
se descarta el directorio inexistente "/usr/lib/gcc/x86_64-unknown-linux-gnu/4.6.0/../../../../x86_64-unknown-linux-gnu/include"
la búsqueda de #include "..." inicia aquí:
la búsqueda de #include <...> inicia aquí:
/usr/lib/gcc/x86_64-unknown-linux-gnu/4.6.0/../../../../include/c++/4.6.0
/usr/lib/gcc/x86_64-unknown-linux-gnu/4.6.0/../../../../include/c++/4.6.0/x86_64-unknown-linux-gnu
/usr/lib/gcc/x86_64-unknown-linux-gnu/4.6.0/../../../../include/c++/4.6.0/backward
/usr/lib/gcc/x86_64-unknown-linux-gnu/4.6.0/include
/usr/local/include
/usr/lib/gcc/x86_64-unknown-linux-gnu/4.6.0/include-fixed
/usr/include
Fin de la lista de búsqueda.
# 1 "blank.txt"
# 1 "<interno>"
# 1 "<línea-de-orden>"
# 1 "blank.txt"
COMPILER_PATH=/usr/lib/gcc/x86_64-unknown-linux-gnu/4.6.0/:/usr/lib/gcc/x86_64-unknown-linux-gnu/4.6.0/:/usr/lib/gcc/x86_64-unknown-linux-gnu/:/usr/lib/gcc/x86_64-unknown-linux-gnu/4.6.0/:/usr/lib/gcc/x86_64-unknown-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-unknown-linux-gnu/4.6.0/:/usr/lib/gcc/x86_64-unknown-linux-gnu/4.6.0/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-unknown-linux-gnu/4.6.0/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-E' '-v' '-mtune=generic' '-march=x86-64'
Halp?