Show Posts

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.

Messages - Josh @ Dreamland

Announcements / Re: ENIGMA R4
« on: September 08, 2010, 03:08:07 pm »
I've updated Can someone confirm it fixes Java path issues?

Announcements / Re: ENIGMA R4
« on: September 08, 2010, 07:06:45 am »
Great, that's just what I need is the official MinGW installer failing me. What was the error?

Announcements / Re: ENIGMA R4
« on: September 08, 2010, 06:20:08 am »
Fair enough. Yeah, I think I'll head to bed now; let the community stir for a few hours. Wake up to five questions.

Announcements / Re: ENIGMA R4
« on: September 08, 2010, 05:48:35 am »
I see g++ compiler on that list...
Just install that, and you'll be fine.
If GDB isn't on there, so be it.

Announcements / Re: ENIGMA R4
« on: September 08, 2010, 05:15:55 am »
Polygone: Care to screenshot your list? They may be checked by default, or burried in the tree.

Announcements / Re: ENIGMA R4
« on: September 08, 2010, 05:09:00 am »
Oh, and if you get past the installer, and it gripes about OpenAL missing, blame Dazappa and run Autoconf/oalinst.exe from ENIGMA's directory. It was dazappa's idea to just include the DLLs where the game runs instead of forcing its install, so blame him. :P

...I intend to replace OpenAL on Windows, anyway.

Announcements / Re: ENIGMA R4
« on: September 08, 2010, 04:44:25 am »
When the dust settles from the installer, we will begin the function submission phase. I will make another newspost and a new board on the matter.

TGMG: When you wake, please edit the above post with a link to the ENIGMA for Mac installer.
RetroX: Seeing how the Windows system works, make sure you are happy with your packages, and post the links there as well. If you aren't allowed to edit admin posts, post a new message and one of us will add the links in.
a2h: A download page that looks like my testing page I showed you a few days ago wouldn't hurt. You know, with the OS logos.

Announcements / ENIGMA R4
« on: September 08, 2010, 04:38:46 am »
The contents/links of this page may be outdated. We have instead starting hosting our installation links and directions on the wiki:

It's been a long road. So much has come and gone, and even just changed slightly, since the release of R3 near the end of 2008. R3, as most of you know, was basically a proof-of-concept. It demonstrated that with a little effort, it is possible to take something like Game Maker and compile it for a number of advantages. Since then, ENIGMA's philosophy has changed by leaps and bounds. What started only as a spite-fueled attempt to compile GML has evolved into a nonstop effort to develop the better scripting language.

R3 brought most of GM's language functionality to the compiled world, and with some limitations, most of C++'s as well. R4, however, has shattered the boundary between the two.

With R4's new setup, the system is astoundingly extensible, and even faster and more efficient than ever before. The newly designed instance system functions like a dream, handling the more thought-consuming concepts such as heredity automatically, by nature of its design.

C++ functions and containers are available to anyone who wants to #include them in the new resource, so far called "Definitions." By that mechanism, anyone can create C++ structures and functions for use in ENIGMA games. Even with a (constantly shrinking) list of missing features from R3, ENIGMA has never been in a better condition.

That said, as has been hinted, there is much left to do. The main system is in place and has undergone basic testing. But this release marks the public beta of the final product. Please report any and all errors you encounter immediately.

The first challenge on our list of things to work out in the beta is actually getting ENIGMA to install on all operating systems. The most anticipated release package--a simple zip file for windows--I present now, without further adieu:
ENIGMA R4 install-ready zip, for Windows
ENIGMA R4 install-ready zip, for Mac (mac sdk has to be preinstalled)
For this phase of the testing period, please unpack the zip and run ENIGMA.exe. It should take care of the rest for you, provided you have Java installed.

When the MinGW installer gives installation choices, just make sure G++ is checked in addition to the default.
When LGM prompts you to fetch libraries, leave the default selection of Stable as your choice, and choose Yes. This will start the installation process. Depending on your internet connection (which will need to remain up for install), this may take upwards of two minutes. It is a one-time install. Your first compile will complete the installation, and depending on your processor, can take the same amount of time. Use only "Run" for now, if you would.

Let me know how the installer treats you. Post any problems with installation here, and any other bugs on the tracker.

The reason for the delay is the amount of effort that went into setting up an update system and the user-defined functions system. Everyone who likes those features owes IsmAvatar a huge "thank you." I personally believe she did an outstanding job on the matter.
For now, C++ Definitions are persistent throughout all games, but can be saved or loaded. We'll get around to fixing them to be game-local eventually.
Happy coding, and I sincerely hope you enjoy the release.

Issues Help Desk / Re: Needed ENIGMA functions
« on: September 07, 2010, 02:36:03 pm »
Just wait a bit; I'll get that implemented once I decide what I'm doing with sprite and object info.

General ENIGMA / Re: GML
« on: September 07, 2010, 01:58:58 pm »
I wish I could have finished that C parser a bit faster.
Anyway, watch what happens next, Game_boy. Don't blink.

Issues Help Desk / Re: Needed ENIGMA functions
« on: September 07, 2010, 11:59:16 am »
Luis: The beauty of the new instance system is that none of the engine functions require an object_get_parent().
Regarding your syntax error; if you open the file it mentions and press the syntax check button, it will highlight the place it occurs as well as print the line number and such in the status bar.

This is an implementation of instance_position, returning the first instance AT x,y.

Code: (C++) [Select]
// Copyright Josh Ventura, etc.
int instance_place(int x,int y,int obj)
  for (enigma::inst_iter *it = enigma::fetch_inst_iter_by_int(obj); it != NULL; it = it->next)
    if (x == ((enigma::object_planar*)it->inst)->x
    and y == ((enigma::object_planar*)it->inst)->y)
      return it->inst->id;

  return noone;

I've already added it, of course. Look for it in the next revision.

Announcements / Re: Where do we stand?
« on: September 06, 2010, 10:05:54 pm »
polygone: I've been riding Ism for weeks about implementing saving one resource so we can release with a clean conscious, but she's still not done it. As soon as she's done with that, I'm releasing.

Tips, Tutorials, Examples / Re: Which should I use?
« on: September 05, 2010, 09:00:09 pm »
Yes, I suppose if you take all optimizations away, and are using a non-scalar object, then yes, a pre-increment is more efficient.

General ENIGMA / Re: GML
« on: September 05, 2010, 08:28:59 pm »
ENIGMA supports all of that, Luis.

Tips, Tutorials, Examples / Re: Which should I use?
« on: September 05, 2010, 09:55:16 am »
Moreover, some people suggest ++i instead of i++. Does the same thing, but is more efficient,
and is safer for recursive functions.

I'm getting a bit tired of that myth.

int i = 0;
cout << i++ << endl;
cout << ++i << endl;

The above prints 0 2. If we were to look at the micro operations, i++ would send to RAM, then increment; ++i would increment, then send to RAM. I.e., the same process, but with the order changed. Neither is more efficient. I've never heard that one is safer than the other for recursive functions. It's a matter of understanding which one will behave in the best manner for the current algorithm.