Author Topic: ITT Alice and Spectere discuss DMZX  (Read 17012 times)

Alice

  • B&!!!!1!!11`
  • Hero Member
  • *
  • Posts: 1665
  • the pinnacle of human emotion
    • View Profile
    • DigitalMZX
Re: ITT Alice and Spectere discuss DMZX
« Reply #15 on: December 13, 2010, 06:58:58 PM »
Here's an example of debytecode: http://pastebin.com/fyvyFw5T

Bobbias

  • #1 Poster
  • Hero Member
  • *****
  • Posts: 7210
  • 404 Avatar not found.
    • View Profile
    • Magnetic Architect
Re: ITT Alice and Spectere discuss DMZX
« Reply #16 on: December 13, 2010, 07:03:36 PM »
That is the most retarded comment system ever. Also that looks like a kinda crappy language, overall. Reminds me too much of Basic :<. If it was worse before debytecode that's ridiculous.
This is going in my sig. :)

BANNED FOR BAD PUNS X_x

Alice

  • B&!!!!1!!11`
  • Hero Member
  • *
  • Posts: 1665
  • the pinnacle of human emotion
    • View Profile
    • DigitalMZX
Re: ITT Alice and Spectere discuss DMZX
« Reply #17 on: December 13, 2010, 07:32:31 PM »
Sadly, as far as GCS scripting languages go, Robotic is probably the best :S

Spectere

  • \m/ (-_-) \m/
  • Administrator
  • Hero Member
  • *****
  • Posts: 5716
  • printf("%s\n", "Hi!");
    • View Profile
    • spectere.net
Re: ITT Alice and Spectere discuss DMZX
« Reply #18 on: December 14, 2010, 12:01:14 AM »
That is the most retarded comment system ever. Also that looks like a kinda crappy language, overall. Reminds me too much of Basic :<. If it was worse before debytecode that's ridiculous.

It's meant to be a very easy to learn and use language for a GCS; it was never ever intended to be used for general purpose stuff.  It worked exceedingly until people tried to make it operate more like an actual programming language.  Many of the kludges are a result of the language being stored in the world files as bytecode (with only a byte per instruction), hence the significance of debytecode.

Reason #1: Comments are now //
Reason #2: equation/counter/number differentiation are context sensitive now and have a degree of color coding
Reason #3: commands can be written in uppercase or have their first letter capitalized or whatever since the source is stored instead of bytecode.
Reason #4: Comments are now //
Reason #5: No more gigantic yellow mess of strings anymore (strings are still yellow, but equations are purple and counters are red)
Reason #6: Don't need quotes for fuckin' everything anymore
Reason #7: Comments are now //

:D :D :D

Yeah, I'll have to vomit out some code with it one of these days.  I need to stop failing at modern Robotic.  Most of my issues are that most of my Robotic experience comes from v1.0-v2.51s3 and that the kludgey syntax for the newer versions makes my head hurt.  Looks like debytecode is steadily fixing the latter issue.

I also have a nasty tendency to try and make constructs that make sense in an actual programming language but fall apart in MegaZeux due to the way code execution happens.  I would *love* to have support for libraries and real functions.

Also, I think Insidious wins the flake award.  Outside of webhosting, but he backed out from a PathFinder game he was running because he ran out of ideas.  Thing is, he didn't tell any of his players about it, and we were stuck waiting around for him to show up.

Ouch.

Yeah, not cool.

Also, the Exo's poetry thing where he threatened to pull hosting on Z2

I don't seem to recall that.  Linky?

At least throughout all of our various slap-fights these last few years I never threatened to pull your web space. ;P
"This is a machine for making cows."

Bobbias

  • #1 Poster
  • Hero Member
  • *****
  • Posts: 7210
  • 404 Avatar not found.
    • View Profile
    • Magnetic Architect
Re: ITT Alice and Spectere discuss DMZX
« Reply #19 on: December 14, 2010, 03:51:02 AM »
It's meant to be a very easy to learn and use language for a GCS; it was never ever intended to be used for general purpose stuff.  It worked exceedingly until people tried to make it operate more like an actual programming language.  Many of the kludges are a result of the language being stored in the world files as bytecode (with only a byte per instruction), hence the significance of debytecode.

Have I ever mentioned how much I HATE languages that do that? I mean, fuck, why not just re-implement Turing if you want an easy to learn language for something like that. At least Turing is a proper language. Plus, that shit's fucking ridiculously easy to learn (I literally opened the help file to look up functions names, and began programming...)
This is going in my sig. :)

BANNED FOR BAD PUNS X_x

Alice

  • B&!!!!1!!11`
  • Hero Member
  • *
  • Posts: 1665
  • the pinnacle of human emotion
    • View Profile
    • DigitalMZX
Re: ITT Alice and Spectere discuss DMZX
« Reply #20 on: December 14, 2010, 09:57:33 AM »
http://zzt.belsambar.net/zu/wiki/Exophase's_poetry

Also, Spectere: the first thing you should learn is WAIT/CYCLE 1 in loops :-*
Read the review that I wrote, don't bother with the actual game

I think real function support is somewhere on Exo's roadmap.

And you totally did threaten my webspace, back in 2007 or 2008.  I had ceresius.zakamiro.net ready with my website backed up just in case you actually did. :D
« Last Edit: December 14, 2010, 10:05:40 AM by Alice »

Spectere

  • \m/ (-_-) \m/
  • Administrator
  • Hero Member
  • *****
  • Posts: 5716
  • printf("%s\n", "Hi!");
    • View Profile
    • spectere.net
Re: ITT Alice and Spectere discuss DMZX
« Reply #21 on: December 14, 2010, 10:37:43 AM »
http://zzt.belsambar.net/zu/wiki/Exophase's_poetry

lol

Also, Spectere: the first thing you should learn is WAIT/CYCLE 1 in loops :-*
Read the review that I wrote, don't bother with the actual game

Yeah, using WAIT 1s at the end of a robot's cycle is something that I've definitely gotten used to doing now that cycles aren't limited to 50 instructions.  It was pretty easy to get used to, actually, since that's something you have to do in .NET languages to allow the WinForms display to update in the middle of a busy loop if you aren't multithreading (Application.DoEvents()).

The part that annoys me are things like the syntax for copying things between the vlayer.  I always mess that up because it just feels so weird. :x  Oh, and expressions used to drive me crazy, but it seems as though they fixed that.

I think real function support is somewhere on Exo's roadmap.

;D

And you totally did threaten my webspace, back in 2007 or 2008.  I had ceresius.zakamiro.net ready with my website backed up just in case you actually did. :D

I don't recall that.  If I did, I was talking out of my ass; I had no intention of cutting you off (mostly because that would be a very lame thing to do).
"This is a machine for making cows."

Alice

  • B&!!!!1!!11`
  • Hero Member
  • *
  • Posts: 1665
  • the pinnacle of human emotion
    • View Profile
    • DigitalMZX
Re: ITT Alice and Spectere discuss DMZX
« Reply #22 on: December 14, 2010, 01:19:19 PM »
Yeah, using WAIT 1s at the end of a robot's cycle is something that I've definitely gotten used to doing now that cycles aren't limited to 50 instructions.  It was pretty easy to get used to, actually, since that's something you have to do in .NET languages to allow the WinForms display to update in the middle of a busy loop if you aren't multithreading (Application.DoEvents()).
Alas, as soon as you've gotten used to WAIT 1s like everybody else, Wervyn shows up and begins trying to get everybody to use CYCLE 1 instead.  It actually doesn't matter at all unless you're sending subroutines to other robots -- if you send a subroutine to a robot that's WAIT 1ing, then when it finishes the subroutine, it executes the WAIT 1 again.

Quote
The part that annoys me are things like the syntax for copying things between the vlayer.  I always mess that up because it just feels so weird. :x
You mean "COPY [OVERLAY] BLOCK x y w h #vx #vy"?  Exophase's roadmap thankfully gets rid of those for proper COPY VLAYER BLOCK ... [TO BOARD/OVERLAY] and COPY [OVERLAY] BLOCK ... TO VLAYER commands AFAIK. I've been pestering AJS to add bch(x),(y) and och(x),(y) sorts of stuff to match up with the vlayer equivilents, since BOARD_X and BOARD_Y are so unwieldy.

Quote
Oh, and expressions used to drive me crazy, but it seems as though they fixed that.
Just when I'd gotten entirely used to a o x, it finally gets changed to & | ^.  Also no more fucking apostrophes :D

Quote
I don't recall that.  If I did, I was talking out of my ass; I had no intention of cutting you off (mostly because that would be a very lame thing to do).
The thread might not be around on this iteration of s.net forums, but I'll go look for it.

Alice

  • B&!!!!1!!11`
  • Hero Member
  • *
  • Posts: 1665
  • the pinnacle of human emotion
    • View Profile
    • DigitalMZX
Re: ITT Alice and Spectere discuss DMZX
« Reply #23 on: December 14, 2010, 02:38:30 PM »
Oh, and for people other than Pancake and Spectere, this is what MZX looks like





http://www.youtube.com/watch?v=UGBofm4zR9I
« Last Edit: December 14, 2010, 02:43:38 PM by Alice »

Bobbias

  • #1 Poster
  • Hero Member
  • *****
  • Posts: 7210
  • 404 Avatar not found.
    • View Profile
    • Magnetic Architect
Re: ITT Alice and Spectere discuss DMZX
« Reply #24 on: December 14, 2010, 04:24:14 PM »
I checked out MZX once.... I think whatever I tried had ASCII graphics :/
This is going in my sig. :)

BANNED FOR BAD PUNS X_x

Alice

  • B&!!!!1!!11`
  • Hero Member
  • *
  • Posts: 1665
  • the pinnacle of human emotion
    • View Profile
    • DigitalMZX
Re: ITT Alice and Spectere discuss DMZX
« Reply #25 on: December 14, 2010, 04:56:17 PM »
Well, I made everything in those screenshots with 96 different 8x14 1bpp tiles and 12 colors (the train engine and rail split swap back and forth because they both use like a third of them, and the video uses a different tileset and palette).  Really, you'd have 256 of those tiles and 16 colors at a time in a game but I'm working with restrictions by the lead developer on the game.  A lot of older stuff, and a few more recent games, like to use the default ASCII graphics, but they're easily changeable.  Once you get used to the environment, you can figure out ways to make the limitations less noticeable though :p

In the near future, hopefully MegaZeux is moving away from some of the worst restrictions (the palette, the weird tile size, the restricted 80x25 tile window size), but the scripting language seems to be the main focus at the moment.

Spectere

  • \m/ (-_-) \m/
  • Administrator
  • Hero Member
  • *****
  • Posts: 5716
  • printf("%s\n", "Hi!");
    • View Profile
    • spectere.net
Re: ITT Alice and Spectere discuss DMZX
« Reply #26 on: December 14, 2010, 07:54:42 PM »
Alas, as soon as you've gotten used to WAIT 1s like everybody else, Wervyn shows up and begins trying to get everybody to use CYCLE 1 instead.  It actually doesn't matter at all unless you're sending subroutines to other robots -- if you send a subroutine to a robot that's WAIT 1ing, then when it finishes the subroutine, it executes the WAIT 1 again.

Ah, yeah.  This is true.

Does doing that still bring MegaZeux to a screeching halt if you aren't careful?

You mean "COPY [OVERLAY] BLOCK x y w h #vx #vy"?  Exophase's roadmap thankfully gets rid of those for proper COPY VLAYER BLOCK ... [TO BOARD/OVERLAY] and COPY [OVERLAY] BLOCK ... TO VLAYER commands AFAIK. I've been pestering AJS to add bch(x),(y) and och(x),(y) sorts of stuff to match up with the vlayer equivilents, since BOARD_X and BOARD_Y are so unwieldy.

OhmigawdYES.

Just when I'd gotten entirely used to a o x, it finally gets changed to & | ^.  Also no more fucking apostrophes :D

Yeah, I'm more used to & | ^, so this is going to be lovely. :D
"This is a machine for making cows."

Bobbias

  • #1 Poster
  • Hero Member
  • *****
  • Posts: 7210
  • 404 Avatar not found.
    • View Profile
    • Magnetic Architect
Re: ITT Alice and Spectere discuss DMZX
« Reply #27 on: December 14, 2010, 07:58:27 PM »
My god, they used a o and x?? That is quite possibly the most retarded thing I've heard so far :/ I mean, every other language I know of that has and or and xor built in uses & | and ^ (actually, I think I saw one that used something other than ^ for xor, but I can't remember what)
This is going in my sig. :)

BANNED FOR BAD PUNS X_x

Spectere

  • \m/ (-_-) \m/
  • Administrator
  • Hero Member
  • *****
  • Posts: 5716
  • printf("%s\n", "Hi!");
    • View Profile
    • spectere.net
Re: ITT Alice and Spectere discuss DMZX
« Reply #28 on: December 14, 2010, 10:11:05 PM »
Dude, they didn't have a choice.

Like I said, the language got kludgey when people started adding things.
"This is a machine for making cows."

Alice

  • B&!!!!1!!11`
  • Hero Member
  • *
  • Posts: 1665
  • the pinnacle of human emotion
    • View Profile
    • DigitalMZX
Re: ITT Alice and Spectere discuss DMZX
« Reply #29 on: December 15, 2010, 12:38:15 AM »
Ah, yeah.  This is true.

Does doing that still bring MegaZeux to a screeching halt if you aren't careful?
Sure does :D
I stopped using "set commands (-1>>1)" and started using "set commands (10000000)" to try making it less awful.

My god, they used a o and x?? That is quite possibly the most retarded thing I've heard so far :/ I mean, every other language I know of that has and or and xor built in uses & | and ^ (actually, I think I saw one that used something other than ^ for xor, but I can't remember what)
Exo had a reason --  & was already used for variable evaluation by the time he added expressions AFAIK.