Code: Select all
14 Apr 2004 by Lax:
- Fixed MQ2KeyBinds
- Fixed MQ2ChatWnd.iniModerator: MacroQuest Developers
Code: Select all
14 Apr 2004 by Lax:
- Fixed MQ2KeyBinds
- Fixed MQ2ChatWnd.iniCode: Select all
15 Apr 2004 by Lax:
- Fixed /destroy crash
- Fixed "random" crash on zoning with MQ2Map loaded, due to a bug in the recently revised ConColor
- Fixed /cast issue casting "Bane" instead of "Bane of Nife" etc
- Fixed spell manager structure
- Fixed /doortarget id #, which would invariably crash
- Fixed and changed /keypress so that it also accepts key combinations, and will not crash no matter how hard you try.
/keypress with key combinations will have the same effect as /keypress using the command name, it will not
type the key into the chat window. If you need to type into a window specifically (chat windows, social edit, etc)
/keypress <key> chat
example: /keypress e chat
Note that you cannot use both hold and chat, and chat is only valid for the key not a command name.
** /sendkey and /press will give a warning the first time per session they are used that they are
now completely obsolete and you should switch to /keypress. they will be removed soon.
- Fixed and tested "heading" type's "To String"
- /newif will no longer quietly execute the "false" branch when it fails to parse the conditions. The conditions
after parsing MQ2Data/MQ2Parm will be displayed in an error message, and the macro will end.
- Other minor issues fixedCode: Select all
17 Apr 2004 by Lax:
- Fixed "window" data type's "To String"
- Fixed all VC6 project files so PDB/MAP files are produced for debugging
- New MQ2Data type
invslot - Inventory slot (not necessarily "in your inventory", this may be in merchant window, bank, etc)
see reference for current list of members.
- Added/changed MQ2Data members
invslot item.InvSlot: Inventory slot for this item
- New MQ2Data Top-Level Objects
invslot InvSlot[name]: Inventory slot by name
invslot InvSlot[#]: Inventory slot by number
item FindItem[name]: Find item on character by partial name match. FindItem[=name] will find exact
item FindItemBank[name]: Find item in bank by partial name match. FindItem[=name] will find exact
item SelectedItem: When using a merchant, etc. this is the selected itemCode: Select all
19 Apr 2004 by Lax:
- ** MQ2DATA PHASE TWO ** If something is missing from MQ2Data it's because you never opened
your damn mouth. If you need something in MQ2Data whether it was previously available or
not, speak up. You're on your own if you want to figure out how to enable MQ2Parm at this
point, good luck (I'm making it difficult on you so you will get your ass in gear)! The
readme is not yet updated.
- Fixed alerts being missing from SpawnMatchesSearch. They worked in some spawn searches but
not others.
- character.Inventory now uses the same numbering as InvSlot
- Added/changed MQ2Data members
invslot invslot.Pack: Container that must be opened to access the slot with /itemnotify
int invslot.Slot: Slot # inside that pack
string invslot.Name: For inventory slots not inside packs, the slot name
string spawn.ConColor: GREEN, LIGHT BLUE, BLUE, WHITE, YELLOW, RED
int character.PetBuff[name]: Finds slot with this spell name
spell character.PetBuff[n]: The spell in this slot (1-29)
int character.GroupLeaderExp: Group leadership exp
int character.GroupLeaderPoints: Group leadership points
int character.RaidLeaderExp: Raid leadership exp
int character.RaidLeaderPoints: Raid leadership points
int character.Platinum: Platinum
int character.Gold: Gold
int character.Silver: Silver
int character.Copper: Copper
int character.PlatinumBank: Platinum in bank
int character.GoldBank: Gold in bank
int character.SilverBank: Silver in bank
int character.CopperBank: Copper in bank
- New MQ2Data Top-Level Objects
int FindItemCount[name]: Count of items on character by partial name match. FindItemCount[=name] will find exact
- MQ2FPS plugin now adds these Top-Level Objects (these are NOT in the reference because they
are from a plugin not built in):
float FPS - Current frames per second
int MaxFPS - Current max frames per second
bool Foreground - Is this session in the foreground?Code: Select all
20 Apr 2004 by Lax:
- /if is now GONE. /if is now the same as what /newif was. /newif is aliased to /if.
- /sendkey and /press are now GONE. Please update to /keypress, which as of 15 Apr 2004 allows
pressing key combinations as well as the actual command. Example: /keypress alt+f
- /filter macros will now hide the output of /endmacro (if successful) and /zapvars (always)
- MQ2Labels updated for MQ2Data
- Fixed time.Year and time.Date
- Fixed charm invslot (number 0)
- Fixed ${If[]} handling of conditions
- Fixed FindItemCount to give the number of individual items rather than stacks
- MQ2EQIM plugin (which notifies you when someone on your EQIM buddy list changes) now keeps
track of your buddy list and adds a MQ2Data type and Top-Level Objects:
** buddy type
Members:
...string Name: Buddy's name (may be fennin.Name or just Name, depending on how you added them)
...string Status: "Removed from list", "Offline", "EQIM", "EQIM (AFK)", "Unknown Status(4)", "Playing", "Playing (AFK)"
...int StatusID: Numeric representation of the above (0,1,2,3,4,5,6)
To String: Same as Name
** Top-Level Objects
buddy Buddy[name]: Info on buddy with this name
buddy Buddy[n]: Buddy with this index number in the system
int Buddies: Size of the buddy index (will not necessarily be equal to the number of buddies, but n in Buddy[n] will never exceed this number)
- Added Top-Level Object:
int FindItemBankCount[name]: Count of items in bank by partial name match. FindItemBankCount[=name] will find exact
- Changed "character" member "PlatShared" to "PlatinumShared"Code: Select all
21 Apr 2004 by Lax:
- Fixed if/newifCode: Select all
22 Apr 2004 by Lax:
- Readme.html has been removed from the zip by request of its author. It is being worked on
and will return.
- /selectitem GONE
- /finditem GONE
- /click functionality has been SEVERELY reduced. It will now function given an x,y,
and on an item or spawn (target). Upgrade to /notify for UI interaction.
/notify <window> <button screen id> <notification>
example:
/notify LootWnd DoneButton leftmouseup
Window names and control ScreenID's are found in the XML files, and are NOT screwed up
by custom interfaces (unless your UI does not have the button)
- Fixed item slot name discrepancies. What was previously "primary" and "secondary" is
"mainhand" and "offhand". It was one thing in some places, but not in others. Should
be all the same now.
- Underscores(_) are again valid in variable names
- Added "STUN" to spawn.State
- Fixed Ini Top-Level Object
- ** Added/changed MQ2Data type members
string macroquest.Error: Last normal error message (replaces $getlasterror but will NOT have the old values!)
string macroquest.SyntaxError: Last syntax error message (usage: /blahblah)
string macroquest.MQ2DataError: Last MQ2Data parsing error message
spawn spawn.TargetOfTarget: Target of target (May only work in "Me": ${Me.TargetOfTarget.PctHps}, etc)
int item.BuyPrice: Price to buy this item at this merchant
int item.SellPrice: Price to sell this item at this merchant
item merchant.Item[name]: Finds an item by partial name at this merchant (use merchant.Item[=name] for exact)
item corpse.Item[name]: Finds an item by partial name in this corpse (use corpse.Item[=name] for exact)
float character.PctGroupLeaderExp: Group leadership exp as a %
float character.PctRaidLeaderExp: Raid leadership exp as a %- bool character.Stunned: Stunned?
bool spawn.Sitting: Sitting?
bool spawn.Standing: Standing?
bool spawn.Ducking: Ducking?
bool spawn.Binding: Binding wounds?
bool spawn.Feigning: Feigning?
bool spawn.Invited: Invited to group?
bool class.PetClass: Pet class? (shaman, necromancer, mage, beastlord)
bool class.PureCaster: Pure caster? (can gate!)
bool class.CanCast: Can usually cast? (not melee only)
bool class.DruidType: Druid/Ranger?
bool class.ShamanType: Shaman/Beastlord?
bool class.NecromancerType: Necromancer/Shadowknight?
bool class.ClericType: Cleric/Paladin?
float math.Sqrt[formula]: The square root of formula
- New MQ2Data type "plugin"
- New TLOs
plugin Plugin[name]: Finds plugin by name
plugin Plugin[n]: Plugin by number, starting with 1 and stopping whenever the list runs out of plugins.
- Fixed LastSpawn[n] and LastSpawn[-n], also added them to reference.
- New command: /combine <pack> - hits combine on this container
- New command: /drop - drops item on cursor
- New command: /clearerrors - clears each of the "last errors"
Code: Select all
23 Apr 2004 by Lax:
- Changed top #turbo to 40, still defaults to 20
- Fixed Ini Top-Level Object again
- Fixed "enviro" slots so that they work for enviro1-10 not just 1-8Code: Select all
23 Apr 2004 by Lax (more):
- Added MQ2Data Type:
skill (see reference for members)
- Added MQ2Data Top-Level Objects:
string GroupLeaderName: group leader's name (works even if they are out of zone)
spawn GroupLeader: group leader (only works if they are in zone)
skill Skill[n]: Skill by number
skill Skill[name]: Skill by name
- Added/Changed MQ2Data Members:
spawn spawn.NearestSpawn[search]: Find the nearest spawn matching this search, to this spawn (most efficient on yourself)
spawn spawn.NearestSpawn[n,search]: Find the nth nearest spawn matching this search, to this spawn (most efficient on yourself)
string window.List[n]: Get the first-column text for the nth item in a list box. Example: ${Window[TradeskillWnd].Child[RecipeList].List[1]}
int window.List[text]: Find an item in a list box by partial match (use window.List[=text] for exact) Example: ${Window[TradeskillWnd].Child[RecipeList].List[=Inky Shadow Silk]}
int string.Count[char]: Count the number of occurrences of a particular character in the string
bool window.Checked: Checked? (useful for buttons)
string string.Left[-length]: The left ("all but" length) of the string.. Left[-1] of "Left" will be "Lef"
string string.Right[-length]: The right ("all but" length) of the string.. Right[-1] of "Left" will be "eft"
bool character.RangedReady: Ranged attack ready?
bool character.AltTimerReady: Alternate timer ready? (Bash/Slam/Frenzy/Backstab. Note that AbilityReady works fine with most of these)
int macroquest.Running: Running time of current MQ2 session, in milliseconds
- Fixed AbilityReady for the alternate timer abilities (Bash, Slam, Frenzy, Backstab, possibly others)
- Fixed /ctrlkey /shiftkey and /altkey. They would sometimes "stick" the key down.
- Added a notification to /notify "listselect", used to select the nth item in a list box.
Example: /notify TradeskillWnd RecipeList listselect 1
Use 0 to clear your selection.
- ${Group[0]} is now the same as ${Me}. Group members are still 1-5.
- Added command to MQ2FPS:
/render <fg|bg> <#|~#>
Sets the foreground or background rendering rate. This is how many out of n frames MQ2FPS
will allow to be drawn. You keep moving full speed, the client responds to mouse or keys,
the UI is still drawn... but, the world itself will not be drawn as often.
Use with ~ to draw n-1 out of n frames, or without to draw 1 out of n frames.
e.g. /render bg ~3 will draw 2 out of 3 frames. /render bg 3 will draw 1 out of 3 frames.Code: Select all
25 Apr 2004 by Lax:
- Fixed once and for all the /itemnotify and /notify crashes
- Fixed the rendering rate defaults (will no longer flicker like a strobe light ;)Code: Select all
25 Apr 2004 by Lax (more):
- Fixed spawn.NearestSpawn
- Changed buff.ID so that it gives the song # or buff # instead of the spell's IDCode: Select all
25 Apr 2004 by Lax (even more):
- Hopefully fixed crash caused by fixing the "LastCommand" stuff...
- Added MQ2Data Members:
int character.MaxEndurance: Max endurance
int character.PctEndurance: Percent enduranceCode: Select all
25 Apr 2004 by Lax (revision C changes):
- Fixed merchant.Item[=name] and corpse.Item[=name]
- Fixed character.PctEndurance
- Fixed problems with tabs in macros, and also with leading and trailing whitespace
- MQ2DataVars is READY. Keep an eye out for important announcements about this!
- Added MQ2Data types for MQ2DataVars: array, timerCode: Select all
26 Apr 2004 by Lax:
- Various error messages have been updated to be more specific.
- Fixed "outer" scope not being cleared by /endmacro. Removed /zapvars in MQ2DataVars
since all it did was clear the outer scope. It's no longer needed because the old global
scope is separated into two scopes in MQ2DataVars.
- Fixed FindInvSlotForContents function (used in item.InvSlot. item.InvSlot will no longer
give NULL for valid items in your inventory/bank)
- Sub parameters (including those for events) are now allowed to have a type other than
string, when MQ2DataVars is enabled, like so:
Sub MySub(int A, string B, float C)
- Fixed out-of-bounds by 1 crash in MQ2DataVar arrays
- MQ2FPS now allows you to disable the framerate display with /fps off (/fps on to enable again)
- MQ2EQIM feature set adjusted. Now keeps your list of buddies (per character) and the last
time they were seen online or on eqim (by any character). Your friends list is automatically
added as buddies. A member was also added to the "buddy" type EQIM adds, time buddy.LastSeen.
- ${Ini} will allow either relative or absolute paths. Also slightly modified what it gives
you when you try to get a list of keys and supply a default (previously it would ignore
the default and give NULL if there was no list).
- Improved parsing of " and ] within MQ2Data indexing.
${String["hi"]}: hi
${String["hi","hi"]}: hi,hi
${String[""hi""]}: "hi"
${String[hi"hi"hi]}: hi"hi"hi
${String[[MQ2] - Hi]}: [MQ2] - Hi
${String["""]}: "
- MQ2BzSrch plugin is now updated for MQ2Data.
MQ2Data reference for MQ2BzSrch (because it's a plugin, not in main reference)
-------
Types added- bazaar, bazaaritem
TLO's added- bazaar Bazaar: Bazaar search info
---
bazaar
Members:
...bool Done: Search complete?
...int Count: Result count
...bazaaritem Item[n]: Result info by index (1-based)
To String: Same as Done
---
bazaaritem
Members:
...string Name: Item name
...spawn Trader: The guy selling it
...int Price: Price the guy is selling it for
...int Quantity: Number of this item this guy has
...int ItemID: The item's ID number
...int Value: Value of the item?
To String: Same as Name
-------Code: Select all
27 Apr 2004 by Lax:
- spawn.MaxRange now uses the proper melee range algorithm
- Fixed a crash bug in the Ini TLO
- Added proper relative/absolute path detection to /ini
- Fixed window.Checked
- Added MQ2Data members:
int window.Style: Window style code
bool window.Enabled: Enabled?
bool window.Highlighted: Highlighted/mouse over?