MQ Changes

A forum for the general posts relating to MacroQuest. *DEPRECATED: This forum is no longer in public use, but remains here for your reading pleasure. Enjoy

Moderator: MacroQuest Developers

zedisdeadbaby
a ghoul
a ghoul
Posts: 83
Joined: Sun Nov 03, 2002 4:24 pm

Post by zedisdeadbaby » Sun Oct 12, 2003 6:20 am

I like the change too. I'm a lazy programmer and I've had a few hard to find bugs before due to mis-spelled variables. That, and the way is was before was pretty wacky.

I would prefer a COM object, complete with events for chat, char being hit, someone making a trade, etc.., which I could use for an interface to eqlib from visual basic (censor: i'm an idiot; please ignore me). But I don't think anything is going to put that together anytime soon.
8)
Plazmic wrote:So far it seems the vocal people like the change... how many of the quiet don't like it? and if they don't like it so much, why have they been quiet for the last 2 weeks?

Mckorr
Developer
Developer
Posts: 2326
Joined: Fri Oct 18, 2002 1:16 pm
Location: Texas

Post by Mckorr » Sun Oct 12, 2003 8:09 am

I can understand both points of view. Converting hundreds of macros is a chore.... especially for those script kiddies that didn't write them themselves. And before you jump on me I'll state straight out I didn't write most of my macros.

I didn't write them BECAUSE I had so much trouble with the old variable format. That mess of v's, p's, t's, etc. was a major pain to read and learn, especially with a heavy use of include files. My macros tend to be modular, using several include files so I don't have to cut and paste between files, and yes, that meant variable conflicts.

Don't get me started on arrays :) I never did figure those out.

The new variable format makes sense (well, I'm still figuring out when to use @ and when not to, and if I still need to do things like /if n @variable instead of /in @variable). To make things easy on myself I just converted the two macros I use constantly, deleted the rest, and started rewriting from the ground up.

Amazingly enough, it's easy :D No more cryptic letters and numbers. No more wondering if I have a(#,#) set up correctly, or if I'm changing the first # when I should be changing the second.

Sure, a lot of people are unhappy with the change. A lot of people want "plug and play MQ", and a lot of very smart folks who wrote wonderful macros in the old format don't want to have to rewrite them. People are being forced to relearn the language, and people resist change.

But for the folks who are just learning to write macros the changes are a godsend. For those who integrate others work into their own partial macros (me for one) the ability to easily avoid variable conflicts is a blessing. And for all those old-timer wizard macro writers... thanks for your hard work, and sorry if the variable change is giving you headaches.

Now if only Plaz would give me my n-dimensional arrays... or arrays of arrays... :D
MQ2: Think of it as Evolution in action.

blakbelt
a lesser mummy
a lesser mummy
Posts: 70
Joined: Wed Aug 27, 2003 12:40 pm
Location: Scotland UK

Post by blakbelt » Sun Oct 12, 2003 10:32 am

I like the changes and think once everyone gets to grip with them they will be a huge improvement. However, this is (without documentation) too much for my poor lame brain to convert.

It would help if one of you large cranium types could put something down in writing as to how we use this new language or syntax.

Thanks
Blakbelt

FlashG
Contributing Member
Contributing Member
Posts: 104
Joined: Thu Jul 11, 2002 6:38 pm

like

Post by FlashG » Sun Oct 12, 2003 11:34 am

I Like the changes. It is a step closer to 'conventional' programming rules, which in the long run will make codeing faster.

In the short term it is a hasle to redo the macros and it DIDN'T do what I was hoping. I was Hoping that it would reduce 'case sensitivity' and misspelling of varible names. As a example I was re-doing my Muse.mac and had a Misspelled ToBeParsed as TobeParsed. This took ALONG time to catch and debug. Also, putting a misspelled Varible in a 'little used' bit of code could be disasterious. As as Example, under the old code I had code that Feigned Death and did some life saving maneuvers when summoned or near death. Well, the only way to debug it was tried to get killed. AFTER getting killed is not the time to find out a misspelling.

Flash

Plazmic
The One
The One
Posts: 800
Joined: Fri Jun 14, 2002 12:31 am
Contact:

Post by Plazmic » Sun Oct 12, 2003 4:01 pm

My changes a couple weeks ago should have made debugging stuff like that easier...

The stack trace of what sub/line it was on and how the macro got there does help.

I want to know what the most annoying macro error is to people...

Mine is: varcalc encountered a '
- Plazmic

Nanan
orc pawn
orc pawn
Posts: 29
Joined: Wed Jun 25, 2003 6:21 pm

Post by Nanan » Sun Oct 12, 2003 6:22 pm

All in all you did an amazing job plaz with a roll out smoother then the crap SoE gives us.

The only error that drives me up the wall is the "this var has already been declared" error. A small change to my code fixed it but it was not something I had expected at first.

in_training
Craptastic
Posts: 115
Joined: Fri Oct 10, 2003 8:25 am

Post by in_training » Sun Oct 12, 2003 6:34 pm

In regards to FlashG.

I don't know of any languages that are not case-sensitive. As you might know, computers think in 1's and 0's. an 'A' is NOT = an 'a', because of the ASCII chart. Most debugging is just what you had to do, a misspelled (or in this case, a mis-types) cariable. It's tedious and time comsuming, but over-all, it will allow the people that aren't 'Script-kiddies' to write marcos that will do anything that you can think of in EQ. IMHO, it's a great step in the right direction. Make it more like C, C++, or c#, and it'll give us more freedom to allow for a much broader array of possibilities.

I am new to MQ, yes however, I am a programmer, and I plan on writing macroed until you all are sick of seeing my name on these boards......


....Now, to figure out why my C complier is taking a poo on this new compile...

User avatar
ap50
a snow griffon
a snow griffon
Posts: 425
Joined: Sun Aug 18, 2002 2:29 pm

Post by ap50 » Sun Oct 12, 2003 7:55 pm

in_training wrote:Most debugging is just what you had to do, a misspelled (or in this case, a mis-types) cariable.
I do love it when something meant to be serious turns into a funny. :twisted:
[color=yellow][size=92][b]Just because you're paranoid, it doesn't mean everyone isn't out to get you![/b][/size][/color]

MajikL_p00p
orc pawn
orc pawn
Posts: 25
Joined: Sat Aug 31, 2002 1:57 am

Post by MajikL_p00p » Sun Oct 12, 2003 9:22 pm

I was still trying to learn to write macros the old way and I was close to actually being good, now im going to suck again and all my macros won't work now. Can anyone link me to a thread that explains the changes and how to convert old macros, if there is a thread like that?

User avatar
auth
a ghoul
a ghoul
Posts: 84
Joined: Sun Apr 13, 2003 12:47 am

Why me?

Post by auth » Sun Oct 12, 2003 10:56 pm

In regards to in_training:

In regards to FlashG.

I don't know of any languages that are not case-sensitive. As you might know, computers think in 1's and 0's. an 'A' is NOT = an 'a', because of the ASCII chart. Most debugging is just what you had to do, a misspelled (or in this case, a mis-types) cariable. It's tedious and time comsuming, but over-all, it will allow the people that aren't 'Script-kiddies' to write marcos that will do anything that you can think of in EQ. IMHO, it's a great step in the right direction. Make it more like C, C++, or c#, and it'll give us more freedom to allow for a much broader array of possibilities.

I am new to MQ, yes however, I am a programmer, and I plan on writing macroed until you all are sick of seeing my name on these boards......
You are a programmer and can't think of any languages that aren't case sensitive, everyone on this board is a programmer now? Don't try to be someone you're not, if you have schooled for more than two languages, you know there are langauges that aren't case sensitive (Cobol, RPG (which are still in use in over 50 percent of businesses today for the 'real programmers')) and while I realize that html is not a ... language per-say... I do know that it is one of the entries into the interest of programming, and it is easy enough to use. Before you go bombing on flash g, you need to step off of your high horse and realize that not everyone is a l33t pr0gr4mm3r l1k3 y0u (in my eyes claim to be). case sensitivity is not the issue however, I just wanted to point out your mistakes while you were pointing out others' mistakes.

The changes are good in the long run, but you must remember talking to your elders (especially grandparents) from when you were younger... Life was different then, everyone agrees. The true veterans will normally resist change, but will accept it over time. While I think the change will be better in the long run, it will cause much headache temporarilly (remember computers a long time ago?)

If people want to complain, let them complain without you complaining about their complaints. This board is a place to vent, not be put on a hot plate. If you want to attack people, go to play eq on a pvp server (sullon zek lets lvl 6 wizards try to kill 65 bards, try that one). If you want to be helpful, why not put some info on the board and help them in converting macros. Not to be a hypocrit(sp?), but in_training as a programmer should at least be able to make a parser to take in code and make output based on input. BTW: the people most of you end-users flame, are usually the ones who are up at 3am on september 9th patch, october 10th patch, and waiting for servers to come back up on to test their changes.

Kudos to the developers whom help in macroquest (I try to throw my two cents in when school and life aren't in the way), and to the flamers, get the hell off of these boards. Take a bath in gasoline before you visit these boards again, maybe that will make you think twice before you light up.

/kneel devs, offsetters, and testers.
Auth - "If it isn't broke, let VI patch it"

FlashG
Contributing Member
Contributing Member
Posts: 104
Joined: Thu Jul 11, 2002 6:38 pm

case

Post by FlashG » Sun Oct 12, 2003 11:41 pm

Yes, Varibles are often case sentsitive, BUT the IDE/Editor/Compiler tells the programmer what varibles have yet to be defined, or flags them a different color. In VB there is an option to set this, in NI-LW C++ is standard. I dont pretend to be a super programmer, but finding out a misspelled key word or varible name during execution is my least loved error.

Flash

[40oz]
a hill giant
a hill giant
Posts: 156
Joined: Tue Nov 12, 2002 12:14 pm

Post by [40oz] » Mon Oct 13, 2003 2:23 am

The worst part of the new macro system (and the old one, for that matter) is how strings both with and without spaces are handled.

For example:


Code: Select all

Sub MySub
   /declare myString local
   /varset myString @Param0
   /echo "@Param0"
/return
If I were to /call MySub "Hello World!" this is what the output would be:

Hello

However, if you recode the sub and put quotes around @Param0 in the /varset line, you would get the full output "Hello World!"

And theres all kinds of other nuiances with variables that contain character information that I can't recall out of my head.

My guess is this is because the scripting language doesn't make us decide types of variables; strings and numbers go in the same variables.

Having coded tons of standard C and C++, it's a bit annoying to transition to this, where knowning whats IN the variable is what decides your syntax. Of course, these are simple scripts. It's not like I'm going through link lists of structs of all different types and it's more important to keep my types of variables straight, because I only know what KIND of data is going to be in it, not what's actually going to be in it.

Then again, it has a problem with spaces in other places too. For example:

Code: Select all

$target(distance, nopredict)

... will not run correctly, however take out the space before nopredict, and it will.

I don't know if my blabber makes sense, but thats the only annoying nuiance, to me at least, the MQ scripting language has in it. After coding for 2 or 3 years for MQ, and programming since I was in 6th grade hooking it up in QBASIC omg omg, you'd think I'd catch the nuiances of the spaces in this script language. But when it comes to both spaces and string manipulation in this scripting language, I never seem to get it right the first try and it's pretty annoying.

in_training
Craptastic
Posts: 115
Joined: Fri Oct 10, 2003 8:25 am

Post by in_training » Mon Oct 13, 2003 5:21 am

Auth,

At my school, we either have to take COBOL or C. I never took COBOL, because I despise it. I like working with strings, COBOL sucks for that, so I avoided it.

I didn't mean to flame at all, and if you took it as a flame I am sorry. I just think this is a good change.

FlashG, I am sorry if I offended, I meant no harm.

Plaz,
I didn't even see those errors, thanks for pointing them out. =)

I really never mean anyone offence, sorry if it sounded like an offensive post.

Plazmic
The One
The One
Posts: 800
Joined: Fri Jun 14, 2002 12:31 am
Contact:

Re: Why me?

Post by Plazmic » Mon Oct 13, 2003 10:59 am

auth wrote:
...Cobol, RPG...
I thought Cobol was manditory all uppercase? ;)
Someone besides me knows what RPG is? Any chance you own your own AS/400? And I thought RPG4 was going case sensitive when it dropped the fixed format... haven't looked at it in 4 years though ;(
- Plazmic

cantrememberusername
decaying skeleton
decaying skeleton
Posts: 4
Joined: Tue Sep 30, 2003 9:44 am

Change for the good!

Post by cantrememberusername » Mon Oct 13, 2003 2:15 pm

Just wanted to voice that this is a change for the good! No, better then good, great!

I have about 8 HUGE macros I use, converting them took less than an hour, and the ability to declare array made rewriting part of them a breeze!

Side note, I have 2 AS/400 as end tables on my game room... They rank up the with the pacman head-2-head table arcade game for conversation pieces.