Pages: 1
  Print  
Author Topic: Hi there, I am new to ENIGMA  (Read 6841 times)
Offline (Male) zesterer
Posted on: January 18, 2013, 04:59:20 pm

Member
Location: Mars
Joined: Jan 2013
Posts: 16

View Profile Email
I use linux Ubuntu 12.10.

When I try to install ENIGMA, I install it to a location in my documents. I have to download the lgm16b4.jar into the directory, as install.py seemingly does very little, if anything. I then run it, and LateralGM works. But there is no run/compile menu/button etc. Its like it cant find the ENIGMA plugin. How can I fix this?

I am good with computers, but please simple terms because I have been using Ubuntu for less than 4 months, and I am 100% new to ENIGMA.

Thanks  to anybody who answers :) ,

Barry Smith
Software Dev
Logged
Offline (Male) Josh @ Dreamland
Reply #1 Posted on: January 18, 2013, 10:33:54 pm

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

View Profile Email
Are you certain it is finding the ENIGMA plugin? It's quite possible it isn't. Or, it's not finding JNA. Both are necessary.
The output from the terminal might help; open the ENIGMA directory in your terminal and run LGM manually with [snip]java -jar lgm16b4.jar[/snip]. Just copy the contents here on the forum or to pastebin so we can see what's going on.

If plugins/shared/jna.jar is missing, there's your problem. Also, if it failed to build compileEGMf.so, there's your problem. The latter shouldn't be your problem, though, since the menus would still appear in LGM.

If you are running the jar by double clicking it, it is quite possible LGM is being run from the wrong path, in which case running it from the console will fix your issue. That's a bug with your file manager's Java launcher; I'm not sure how to fix it.
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 (Unknown gender) forthevin
Reply #2 Posted on: January 19, 2013, 05:00:46 am

Contributor
Joined: Jun 2012
Posts: 167

View Profile
Does running the following commands work?

Code: [Select]
sudo su
apt-get install git build-essential default-jre freeglut3-dev zlib1g-dev libalure-dev libdumb1-dev libvorbis-dev
exit
mkdir Enigma
cd Enigma
git clone https://github.com/enigma-dev/enigma-dev.git
cd enigma-dev
python install.py
make
java -jar lgm16b4.jar

Else, try to follow Josh's instructions. You wrote that install.py did not do much. Did you run it like [snip]python install.py[/snip]? If not, that could be the cause of it not doing anything, including downloading lgm16b4.jar. I also think that install.py downloads plugins/shared/jna.jar, which fits with JNA missing being the problem.
« Last Edit: January 19, 2013, 05:19:45 am by forthevin » Logged
Offline (Male) zesterer
Reply #3 Posted on: January 19, 2013, 02:59:20 pm

Member
Location: Mars
Joined: Jan 2013
Posts: 16

View Profile Email
Well doing:
Code: [Select]
makereturns loads of errors in the console (although I did all of the commands correctly). If it matters, I am using Ubuntu 12.10, and I have heard that it behaves a little weirdly on Ubuntu...

I then ran LateralGM with the Java command, tried opening and running a .gm81, and go this:
Code: [Select]
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007f400a7e7e3a, pid=19864, tid=139913046079232
#
# JRE version: 7.0_09-b30
# Java VM: OpenJDK 64-Bit Server VM (23.2-b09 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C  [libcompileEGMf.so+0xf9e3a]  lang_CPP::compile_writeRoomData(EnigmaStruct*, parsed_object*)+0x1b7a
#
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /home/joshua/Enigma/enigma-dev/hs_err_pid19864.log
#
# If you would like to submit a bug report, please include
# instructions on how to reproduce the bug and visit:
#   https://bugs.launchpad.net/ubuntu/+source/openjdk-7/
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
Aborted
Any ideas? :S

I tried running a different .gm81, and it worked. However, when I tried compiling to something else such as Android Simulator, I get:
Code: [Select]
Universal_System/Extensions/DataStructures/data_structures.cpp:1907:33: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
make[1]: *** No rule to make target `Audio_Systems/AndroidAudio/Makefile'.  Stop.
make[1]: Leaving directory `/home/joshua/Enigma/enigma-dev/ENIGMAsystem/SHELL'
make: *** [Game] Error 2

Thanks,

Barry Smith
« Last Edit: January 19, 2013, 03:05:46 pm by zesterer » Logged
Offline (Male) Josh @ Dreamland
Reply #4 Posted on: January 19, 2013, 04:32:04 pm

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

View Profile Email
If it only does that for one particular game file, it's probably a problem parsing or building that particular file. It would be useful if you could try to narrow a test case down for us to fix. Otherwise, just post the game that breaks it and we'll have a look.
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) zesterer
Reply #5 Posted on: January 19, 2013, 05:33:06 pm

Member
Location: Mars
Joined: Jan 2013
Posts: 16

View Profile Email
Its literally just a test game. One sprite, one object, one room. The sprite is 64x64, and the objects has:

Creation Event
Code: [Select]
angle=0
Step event
Code: [Select]
x=room_width/2+lengthdir_x(64,angle)
y=room_height/2+lengthdir_y(64,angle)
angle+=1

As you can see, nothing complex. Just a picture that spins to test framerate, graphics rendering, and maths functions such as trig. And yet it fails to compile... :(

I am using LateralGM and ENIGMA because its the only linux alternative, and compiling to C++ is kinda useful, but its not working too well for me atm... is it possible just to build a single install script that will install everything, plus dependencies, so that it just works? I'm not exactly a techno-phobic, I use computers a lot and understand them quite well, but getting this thing running can be confusing. However, from what has been working so far, it looks like a good project. There are just a *few* things that need to be ironed out I think...

Thanks,

Barry Smith
Logged
Offline (Unknown gender) Lemon Pie
Reply #6 Posted on: January 19, 2013, 06:12:32 pm
Member
Joined: Mar 2012
Posts: 9

View Profile
Your variable needs a semi-colon during the initialization in the create event. Your initializing it script local, rather than object local.
Logged
Offline (Male) zesterer
Reply #7 Posted on: January 19, 2013, 06:21:04 pm

Member
Location: Mars
Joined: Jan 2013
Posts: 16

View Profile Email
I added the semi-colon, but LateralGM keeps on crashing during the ENIGMA Run. I don't know why, its the same error as I told you earlier.

Any ideas? I hope to move almost completely to LateralGM and ENIGMA in the future, but its not working well enough atm...

Thanks,

Barry Smith
Logged
Offline (Unknown gender) TheExDeus
Reply #8 Posted on: January 19, 2013, 08:32:58 pm

Developer
Joined: Apr 2008
Posts: 1860

View Profile
Lemon, semicolons don't matter. They are optional in both GML and EDL.
It does seem you have problem with libcompileEGMf.so, but I don't know how to fix it as I use windows.
Logged
Offline (Unknown gender) forthevin
Reply #9 Posted on: January 20, 2013, 03:33:40 am

Contributor
Joined: Jun 2012
Posts: 167

View Profile
I tried to compile your example code, and it worked when compiling for the target "GNU GCC G++", but when compiling for the target "Android Simulator", I got the same error as you got. Compilation for Android is currently experimental. Can you confirm that it works when compiling for "GNU GCC G++"? If so, I believe you have everything set up correctly.

The JRE crash that you got before that with the first .gm81, were you compiling for the target "GNU GCC G++"? If yes, it sounds like the issue is caused by the specific file you loaded into LateralGM, possibly something to do with rooms based off the error text from the JRE.
« Last Edit: January 20, 2013, 03:40:17 am by forthevin » Logged
Offline (Male) zesterer
Reply #10 Posted on: January 20, 2013, 06:17:38 am

Member
Location: Mars
Joined: Jan 2013
Posts: 16

View Profile Email
Well, that particular .gm81 crashes regardless - I have not yet got it to compile in any way (I have tried all compile options). I don't know why, but if it makes a difference, it was entirely created in LateralGM, not GameMaker. With some other .gm81s I can compile, but its a little touch-and-go as to whether they will work, and sometimes they don't work correctly. For example: I am currently developing a Tower Defense game which uses a much faster algorithm than the standard instance_nearest() method, mainly based on arrays and a small amount of pre-loaded data. However, the towers don't shoot in ENIGMA, despite adjusting the code and finding other methods to code it, although they do in GameMaker.

Thanks for your help you guys, I really appreciate it.

Thanks,

Barry Smith
Logged
Offline (Unknown gender) TheExDeus
Reply #11 Posted on: January 20, 2013, 01:04:07 pm

Developer
Joined: Apr 2008
Posts: 1860

View Profile
Wait, so it works in some cases, but crashes JAVA on others? Does the crash happen when compiling the script based on arrays? There is a bug, where a certain code crashes the whole thing and it involves arrays. Here is a sample code that will crash:
Code: [Select]
local int intensity_res=32,
intmap_w=int(room_width/intensity_res),
intmap_h=int(room_height/intensity_res);
local int intensity_map[];
for (int i=0; i<=intmap_w; i++){
    for (int c=0; c<=intmap_h; i++){
        intensity_map[i,c]=0;
    }
}
Can you show us your code?
Logged
Pages: 1
  Print