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 / Progress report, again
« on: May 08, 2008, 04:27:58 PM »
Just for regular visitors' info:

ENIGMA R3 is ready. This is labeled as the official "alpha" release, and is what I would have liked for you guys to have seen in the very alpha releases one and two.

However, I figure I may as well chalk it with some last minute goodies and general goodness. I have some giant surprises in store for release 3, assuming I can depend on the work and words of three or four individuals.

So get ready. R3 is looking stable, and on the way.

Teamwork / Re: Dev Team
« on: May 08, 2008, 02:44:36 PM »
I'll program the behind-the-scenes high level functions to make C++ behave like GML. I can prolly get a parser working to make GML-like code into C++...

Function Peer Review / Re: GML?
« on: May 08, 2008, 02:43:06 PM »
It isn't actually called GML, as that'd be copyright infringement.

It is unofficially EDL, but has no official name.

Announcements / Update
« on: May 05, 2008, 05:12:34 AM »
Just trying to keep you people informed for now.

Progress is slowly kicking back in as I get deeper into some of the hidden problems. I had to rewrite var in its entirety to remove the segfault on cleanup.... That is no small task. Rest assured, however. I've learned a lot between writing it the first time and rewriting it now.

The old var boasted 5x faster than GM... This one boasts 10. I'm sure you're wondering how ENIGMA could get much faster. Or maybe you're not. But yeah, it just did. It's also more stable... Old var didn't like being a member of a struct that was dynamically allocated. I don't think this one really cares.

So yes... Enigma isn't canceled just because I can't show you progress like before, so no need to go from forum to forum talking about its imminent failure again.

I'll be working on object's cleanup next. This'll be even more difficult than var, I'm afraid...

Off-Topic / Re: Postponement
« on: May 02, 2008, 02:28:33 PM »
Sure are. ENIGMA is definitely not canceled.

I need to talk to Luda about his... project.

But the instance problem is being remedied now that I'm making my own map.

Announcements / Postponement
« on: April 23, 2008, 07:01:16 PM »
A few of you were probably looking for the release last weekend, which was *scheduled* for Sunday night release. However, I detected a segfault in instance_destroy(). And I'm not releasing R3 until I fix it.

Rest assured. R3 is even more special now, and I have a very nice treat in store for you guys, courtesy of ludamad.

R3 will have some organizational issues fixed, making the code more friendly to help.  It's only managed to further cripple GDB so far, but whatever. That program was pretty useless anyway.

Anyway. Point is.

Release three is everything you wish you saw in Release 1, but didn't because beta isn't until Release 4 anyway.

I'll be working.

Announcements / ENIGMA Release 2a
« on: April 14, 2008, 04:46:37 PM »
That's right! ENIGMA is now on release two, faithful fans. And as was intended, the alpha revealed all I needed to know about it, and now according to my testers, it is all working.

So to the really faithful fans who were here the first minute to download the new release, I'd like to apologize. The new release has been uploaded as ENIGMA-r2a. However, don't think you have to download all 20MB again. For those who downloaded the flawed alpha version, here is a patch:

ENIGMA Patch 2a

The patch is all of two lines that need replaced.
Thanks a ton to Chiken, who I sent some ten versions of the same exe until I knew where the error was and fixed it. (If I had the error, I would not have distributed)

As for the rest of you, all you have to do is download it from the downloads page.

Unfortunately, you will have to download the entirety of the new release, as the version of GCC that came with the first release is prone to failure. Just delete the old directory entirely, please.

What's new in Release 2a?

Basically all the bugs from Release one are corrected.
  • LGM can communicate with ENIGMA now.
  • The code editor only displays functions that are implemented.
  • Lengthdir now accepts integers as arguments without rounding.
  • The default draw color is black.
  • Division works like GM's.
  • There is no parse iteration error.
  • Withs are corrected, as far as I can see.
I have also added some things since Release one.
  • Both sprite_add and in-game sprites work from what I can tell. (They are still primitive, so try not to overdo it yet.)
  • A keyword "localv" has been added. It will tell ENIGMA that you are declaring the variable, but it is meant to be instance-local, not codepiece-local.
  • The keyword "new" has been added to the parser. It is for C++ experts only.
Note: localv and new were not yet added to the syntax highlighting.

Also, for the time being, all ENIGMA games need to be under the GNU General Public license. IE, open source. This was an accident, which will be corrected in Version 1.0. However, for this series of alpha releases, it is actually a safety precaution as well.

Do not worry though. Just include the GM6 of the thing in the folder and we'll let everything else slide. I will be very lenient about this, especially as it is temporary. But it IS a safety precaution and WILL be treated as such if necessary. Keep that in mind, those who this concerns.

Thanks for reading guys, and enjoy the new release. Please report any and all bugs or suggestions in the enigma bug forum in the community. I will deal with them as rapidly as possible.

This release was about a week after Release 1. I do intend to keep a nice quick pace like that.

-Josh @ Dreamland

One more note concerning ENIGMA and LGM.
I refer to ENIGMA as an `IDE' simply because it is not a `compiler.' It actually just reads your game and intelligently decides how to code it. (More intelligently in the future though, I hope.)

The code it generates is passed to GCC (the MinGW distribution), a freeware compiler available here.

The IDE itself, that is, the interface you use to write code and put together files for ENIGMA to compile, is LateralGM. It is a project by an independent team, whose progress you can follow around their forums here.
Note that the version of LGM that comes with Enigma is a special build made specifically to accomodate Enigma, and not an official build, although it does give you a small sneak peak of the upcoming LGM version, 1.6.

Issues Help Desk / Re: Alternates to these functions?
« on: April 13, 2008, 09:25:20 AM »
window_set_caption should work... I've had no problem with it.

General ENIGMA / Re: GM+
« on: April 12, 2008, 03:58:00 PM »

Announcements / Release 1
« on: April 06, 2008, 03:34:58 PM »
That's right. I decided to make the release today since a lot of you have been waiting to see what it's made of.

NOTE: This is Alpha. 'Pre-beta.' Almost-not-functional.

Only meant for testing the code features. 10% of all scripting is done, and rising. String functions are under development. Try not to abuse those. In fact, avoid using them.

Sprites were planned in this release... but I have some bad news.

LGM and ENIGMA have some communication errors at the moment. You will have to manually activate the ENIGMA exe, then the game exe, which is always game.exe. This will be fixed in the next release, which is also soon.
>>To clarify on that, you must hit "compile with enigma" in LGM. Then open its directory, and double click
>>"compileEGMf.exe". This will do the rest for you and produce "game.exe".

Version one will be a totally operable Game Maker replacement, we hope.

To be on the safe side, save all the LGM things before hitting compile. This was all done very quickly to get a demo out.

So for now, no sprites, unless sprite_add still works.

All the DND stuff is just for show. Scripts, Objects, and Rooms are it. Explore a bit, but don't expect it to compile an entire game just yet.

For those who don't like to read a lot:
Basically, do as follows.
  • Open LateralGM.jar.
  • Add scripts, objects, and/or rooms with whatever code.
  • Save it and close out of all the resources.
  • Hit compile with Enigma.
  • Close LGM.
  • Open its directory.
  • Double click CompileEGMf.exe.
    • It should export Game.exe if you didn't use unimplemented functions.
    • Run game.exe, it's yours.
    If your game does not compile:
    Make sure you aren't using functions that are not yet implemented.

    IE, draw_sprite without calling sprite_add. The current LGM -> Game sprite loader is broke. Sorry.
    Show_message is dispstr(string,string or real), or MessageBox(0,Text,Caption,0) if that works for you.

    If your game does not draw:
    •   Tip: draw_set_color() is your friend. All colors default to white.
    •   Sprites are not loaded from exe yet.

    And I know there are lots of errors. Please compile them in this topic post them in the bug report section and they will be dealt with on a Can-This-Be-Corrected-Without-Disrupting-Anything basis.


    General ENIGMA / Re: Shiny header
    « on: April 06, 2008, 06:49:03 AM »
    Shiny makes the world go round. Like me finding this last undefined reference and releasing enigma.

    General ENIGMA / Re: This program is everything I could ever want
    « on: April 05, 2008, 09:16:25 PM »
    I'll add a tag to the parser to return immediately, effectively enabling C++.

    Done. Start your code with
    Code: [Select]
    And it'll leave it raw. Note I have no syntax checking yet. So use wisely.

    General ENIGMA / Re: Speed improvements.
    « on: April 05, 2008, 09:11:15 PM »
    When it finally functions together as a system, yes.

    The improvements are about 5x immediate improvement for variables. 2x for most graphics or more.

    With custom optimization, you can increase variables 250x, and graphics more than 10x, depending.

    Announcements / Upcoming Release
    « on: April 02, 2008, 08:55:44 PM »
    Yes, there was a release planned for yesterday, actually. But due to some difficulties, it's been delayed slightly. I'm still and always hoping for "tomorrow."

    The current problem is simply some nulls that pop up in the output files before compile. The team is trying to find the cause and iron it out. (Dev's debugger is not a prize winner.)

    Either way, from what I can tell the rest is working or easily fixable.


    Rusky Edit:
    Got my dad's help, we found some weird problems, we're trying to pinpoint their causes. Maybe done sometime tomorrow (as always XD) but AFAIK Josh won't be able to do much.

    Rules up. Read to avoid being b&.

    Announcements / Update
    « on: March 15, 2008, 08:51:50 PM »
    I really don't feel like editing any of the pages right now, so I'll just make a newspost.

    Anyway, objects are fully functional now. Here's a demonstration.

    Please note: Some serious optimization is to be done on the newly completed object code. I have no intention of being within 30 fps of GM when this is done.

    Game Maker


    And to answer a recent yet recurring question, ENIGMA's point is to allow backwards compatibility with Game Maker, while extending its possibilities into a lower level language. (C++)