ENIGMA's lookings

Posted by JoshDreamland on Nov. 20, 2007, 6:24 p.m.

Well, yet another blog about ENIGMA for you. Shit, my hamsters are asleep. *wakes up*

<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>

Anyway, ENIGMA.

Thanks to obe for the pwnsome logo.

And TM for the secksy banner.

And C-Ator9 for the secksy ambigram in the secksy banner.

<img src="http://64digits.com/users/JoshDreamland/ENIGMA_hr.PNG">

I could tell you the parser was completely done as of the 31st day of work on it. But that is, as a matter of fact, subject to change. So far it will put the nastiest GML into format with semicolons and proper spacing/newlines, as I've said time and time again. It also adds parenthesis where needed. And colons.

And now, there's more. You see, unfortunately, C++ doesn't have Switch() {}. Well, it does, but it doesn't work like GM's… in the sense that it only allows for

<b>case</b> [CONSTANT INTEGER: {…-3, -2, -1, 0, 1, 2, 3…}]

Meaning that

<b>switch</b> (<font color="red">"hello"</font>) <b>{</b>

is a big no-no. However, the parser takes care of that too, converting to a sequence of <b>if</b>s. If I set up the enabler correctly, it will function just like GM. (and also be customizable, like everything else in Enigma. We're gonna have to be choosy about options, and have options about options to have. XD )

<img src="http://64digits.com/users/JoshDreamland/ENIGMA_hr.PNG">

Dylan has found a way to make functions, without overloading, take roughly anything as an argument. We are pushing it back and fourth some, but I wanna allow for ~32 arguments. I'll look further into macros once more, rather, I'll make Noodle do that if he isn't sick of me. Depending on how far we can push this, some functions may have vast numbers of arguments after all.

Also thanks to Dylan, I don't have to write something huge to handle repeat, as he defined that in C. Thus, repeat will work in ENIGMA's language, as well as C/C++. Whichever of those we wind up using.

<img src="http://64digits.com/users/JoshDreamland/ENIGMA_hr.PNG">

Unfortunately, as time goes on, we are popping ideas in and out. I have some pretty nice things planned for the testing and developing of games that have turned out to look easier for me lately, but…

Here's the deal. Dylan and I have found a wall. Sorta. We don't know where to go for cross-platform-ability. We need an expert, either to join the team or advise us when we need it. If you want to help, and you know about Mac/Linux programming, please let us know.

Another thing; we hate SDL. It's turning out to look scarier than it may be. So if you know that… You could throw us some tidbits of info or some reassuring words. <b>We're not hell bent on using it</b>, so if you have something to recommend to us instead, we're here.

Comments

s 17 years, 1 month ago

That way involves the removal of your bladder and the deletion of SYSTEM32

JoshDreamland 17 years, 1 month ago

G3D–

lol, we're going to have to do that for things like debug mode.

PY 17 years, 1 month ago

@serprex; Right, I've taken out my bladder (oh, the pain), and deleted system32, do I have ENGIMA now?

JoshDreamland 17 years, 1 month ago

O_o

*works like a maniac on the project before mass suicide happens*

a2h 17 years, 1 month ago

Just wondering: Will action_*(); functions be supported? (And if they will, will they be DOCUMENTED?)

JoshDreamland 17 years, 1 month ago

I didn't plan on doing those, no.

Since I have something really awesome planned for DnD, we might do those in another optional part, but I'll need a list of them or something.

s 17 years, 1 month ago

You can find them in the SCRIPTS>BuiltInFunctions

But I'd suggest against them, since they're all basically just another part of GML. I really don't know why they're there in the first place

JoshDreamland 17 years, 1 month ago

Thank you serpy. :3

a2h 17 years, 1 month ago

Quote:
You can find them in the SCRIPTS>BuiltInFunctions

But I'd suggest against them, since they're all basically just another part of GML. I really don't know why they're there in the first place
They do tend to be, in some cases, a convenient way to reduce the amount of lines a lot (action_bounce, anyone?), at least, in my opinion. Although I AM aware a lot of the action_ GML codes are useless…

s 17 years, 1 month ago

action_bounce seems to be covered with direction+=180 and direction*=-1