ENIGMA's Progress: Parser, Resources

Posted by JoshDreamland on Oct. 22, 2007, 7:18 p.m.

Dylan and I have remained at work on our ENIGMA (It's the new Game Maker, for those who don't frequent my blogs).

<script type="text/javascript"> obj = document.getElementsByTagName('span'); ind2 = -1; for (i=0;i<obj.length;i++) { if (obj.innerHTML.indexOf("JoshDreamland's") != -1) { ind2 = obj; i = obj.length; } } if (ind2 != -1) { ind2.innerHTML = ind2.innerHTML.replace("JoshDreamland's","Josh @ Dreamland's"); } </script>

So far, a lot of progress has been made. Great leaps, imo.

Dylan has a nice looking interface, kinda exactly like GM so far. I made the background for it, as well as a logo.

Screenshot:

<a href="http://www.willhostforfood.com/files/168143/ENIGMA_Interface.PNG.png"><img src="http://www.willhostforfood.com/files/168143/ENIGMA_Interface.PNG.png" width=640>

[Click for bigger image]</a> (no additional load time)

Also, the hugeass logo render is here:

<a href="http://www.willhostforfood.com/files/91087/ENIGMAlogo.PNG.png">[click for logo]</a>

Dylan has also implemented the Sprite, Background, Sound, and Font classes, and is currently going for objects. Go Dylan!

What was I doing while Dylan was getting all this done?

From what I have to show you, nothing.

What I have is called a parser. For those who don't know, it takes GML of even the crappiest kind, reads through it, and outputs it as more C++ friendly code. For example,

if a=0instance_destroy()

parses right into:

if (a=0)
instance_destroy();

Pure. Unadulterated. Win.

Of course, that example took me an hour to finish the framework for. I had it working at one point, but it stopped. But now, it works again.

Also for example, the draw code to my Metroid game.

<a href="http://www.willhostforfood.com/files/214/UNPARSED.TXT.txt">Unparsed code</a>

<a href="http://www.willhostforfood.com/files/28338/PARSED.txt">Parsed code</a>

So as you can see, we have been busy.

If you have any large codes for me to try my parser on, PLEASE gimme a link. To a text file.

Or if it's a small ugly one like my first example, just post it.

That is all.

Opinions/Comments/Questions welcome.

END [hc=14444]

Comments

JoshDreamland 17 years, 2 months ago

Bendodge–

Sure, let's see what you got. [;)]

bendodge 17 years, 2 months ago

Here's the few that I came up with so far. It's not very much at all, but I hope to do some more soon.

http://bsgprogrammers.com/gmc/enigma_icons.png

(Yeah, the compile one is lame.)

HeroofTime55 17 years, 2 months ago

Double "==" when doing comparisons or whatever the proper term is. Otherwise it won't work in C++.

shad0w 17 years, 2 months ago

Quote: Parsed
if (i!=(-1));

{
Ouch, error! :P

bendodge 17 years, 2 months ago

Yeah, that was my code's fault. (See above.)

JoshDreamland 17 years, 2 months ago

I actually like the compile one. ;)

Hero–

Aware, should be fixing that for me…

PY 17 years, 2 months ago

Heh, I love the way it says 'ENIGMA' in the BG!

Will ENIGMA be able to handle other languages?

Like, you create a peice of code, define the language it's in, and write?

s 17 years, 2 months ago

I think they just plan to have a GML like language that converts to C,really doesn't need to bloat with language packs and the like.Besides,that's just extra work