• You've discovered RedGuides, an EverQuest multi-boxing and scripting community 🧙‍♀️⚙️. We want you to play several EQ characters at once, come join us and say hello! 👋

  • A TLP without truebox has thawed (Very Vanilla ready)
    Frostreaver

Question - Functional difference of /vardata between MQ2 and Next

Joined
Sep 27, 2020
RedCents
6,554¢
I have a support issue with one of my macros that basically boils down to a difference in how /vardata is working under MQ2 and Next. I can't really see why this would be an issue, so I'm looking for insight. I'd like it to work under both (at least for the time being), but long-term it'll be Next only.

To replicate the problem, I've created a small macro (code below and also attached).

[CODE title="OwnerPetTest" highlight="16"]Sub Main
/echo owner.ID ${Me.ID}
/declare spawnId int local ${Me.ID}
/declare owner spawn local
/vardata owner Spawn[${spawnId}]
/echo owner: ${owner}
/echo owner.Pet: ${owner.Pet}
/echo owner.Pet.ID: ${owner.Pet.ID}

/if (!${owner.Pet.ID}) {
/echo ${owner.Name} does not have a pet out, skipping
/return FALSE
}

/declare targetPet spawn local
/vardata targetPet owner.Pet
/echo targetPet Type: ${targetPet}
/return[/CODE]

When running under Next, the output appears as

OwnerPetTest_Next.png

while under MQ2 it looks like

OwnerPetTest_MQ2.png
 

Attachments

In Next we added support for storing spawns via varset and vardata.

This is a new, highly requested feature from macro authors that MQ2 was unable to support due to huge flaws in its design and implementation.
 
spawn can be set via id as well, so if you have a spawn id stored as an int, you can vardata or varset that to a spawn type and it'll convert if its valid. Its a convenient way instead of ${Spawn[id #]}

We've done a lot of work to improve the usability of variables, but it isn't exhaustive. we fix things as we find it.

The issue with MQ2 was that a lot of things would appear to work, but would then just lead to unexplainable crashes later, or some things would flat out not work properly. We aim to fix those. If you encounter anything that doesn't work in MQnext we can investigate and see if its something we can fix or improve.
 
Yes, I'm aware I can use the spawn id in that way (and I do in my macro). I'm asking if spawn types are the only types which can be set via /vardata or can others be set as well (such as fellowship or race).
 
Question - Functional difference of /vardata between MQ2 and Next

Users who are viewing this thread

Back
Top
Cart