AC Tool 5 © Copyright 2000-2004 Cameron Scott Cole
[email protected] - EMail Address http://www.cameroncole.com/actool.html - AC Tool Page http://www.cameroncole.com/actoolfaq.html - AC Tool FAQ ============================================================================= Thanks everyone for helping me get this out the door. So many people contributed the ideas and all I did was wrap them up inside an EXE. My thanks and I hope you enjoy our efforts. CONTENTS * Release Notes * Contributions * History * Liability * Development Stuff * Bug/Enhancement Submission ============================================================================= RELEASE NOTES Well here is a couple of passes at this utility since the betas. Just read over this document before before installing and running this utility. That's it... Enjoy! - When reporting bugs and enhancements please include the completed report sheet at the bottom of this doc. - The source code to this program is available on my webpage. - If you have any problems with AC Tool, do the following: 1. Read the Help! 2. Read the FAQ! 3. Go to the AC Tool message board at http://wwww.cameroncole.net/actool.html and post your question on the board ----------------------------------------------------------------------------CONTRBUTIONS I have resisted asking for contributions since I wanted the ability to drop AC Tool whenever it became inconvinient. Well that just isn't going to happen. I will be keeping this website and forums indefinately. With that in mind, I have decided to ask for PayPal donations. Many of you have already been kind enough to place money in my PayPal account without being prompted and it has been much appreciated. You DO NOT have to contribute anything in order to use AC Tool. This isn't a requirement and I will NEVER charge for the product so don't feel obligated. If however you want to support AC Tool, you can send me whatever amount you feel is fair. My paypal account is
[email protected] and that is where contributions should be sent. Thanks, Cameron. ----------------------------------------------------------------------------HISTORY 5.4.0 - 07/12/2006 - This is the IPA Alpha 8 release recompiled which is an update to get Decal working with AC Tool - Two new variables created {MMFName} and {MMFSize} which contains the name and size of the AC Tool Memory Mapped File - New Asheron's Call command called UstSalvage which salvages the UST 5.3.0 - 03/29/2005 - Removed _killmsg decal variable because it did nothing - wObject X, Y reversed - Attempted to fix the blank internal bitmap from OBJLOADWINDOW 5.2.2 - 02/13/2005 - Fixed an access violation when compiling a CASE statement in a complex macro 5.2.1 - 02/13/2005 - Fixed a bug with Decal Datasets not working - Fixed a bug with the OBJLoadWindow. Problem is I slowed it down so only use it if you are performing a lot of scans or need a static canvas to do color testing - AC Tool now accepts a /TITLE:XXX parameter which allows you to change the name of the AC Tool task. By using this, renaming the EXE and using an EXE compression program like UPX it may be possible to defeat certain game protections 5.2.0 - 02/12/2005 - MoveFile, CopyFile and DeleteFile now accept wildcards - CopyFile now accepts an optional third param (TRUE or FALSE) for overwriting - Fixed a bug with CopyFile where it would not accept a directory as the Copy To parameter - New command for faster OBJECT processing. Calling OBJLOADWINDOW takes a snapshot of the desktop or active window. All OBJECT processing is then done against that object until OBJRELEASE is called. OBJLOADWINDOW // Stores the desktop for processing OBJLOADWINDOW TRUE // Stores the active window for processing OBJRELEASE // reverts back to the old object processing logic NOTE: This command also affect LoadRGB - Calling OBJLOADFILE loads a bitmap from a file for all OBJECT processing. This is done against that bitmap until OBJRELEASE is called. OBJLOADFILE c:\your.bmp // Loads a bitmap for processing OBJRELEASE // reverts back to the old object processing logic NOTE: This command also affect LoadRGB - Calling OBJRELEASE returns processing from an OBJLOADFILE or an OBJLOADWINDOW to normal. OBJLOADFILE c:\your.bmp // Loads a bitmap for processing OBJRELEASE // reverts back to the old object processing logic NOTE: This command also affect LoadRGB - Horizontal scroll bar on the editor now shows up whenver needed - Added the following lists which contains the names of datasets, constructs, lists, etc. RuntimeTypeList RuntimeTypeDataset RuntimeTypeForm RuntimeTypeFile RuntimeTypeProcedure RuntimeTypeEvent RuntimeTypeFunction RuntimeTypeObject RuntimeTypewObject - Added RuntimeTypeConst internal dataset which contains constants and their value - Fixed an access violation that occured on some machines - Updated the help file with all the new commands - New AC Tool versioning structure. 5.2.0 and future versions translates into Year.Month.Release count that month. 5.1.0 - 02/11/2005 - MoveFile command added that moves a file from one location to another. This command can also be used to rename files. MoveFile c:\1.txt, c:\2.txt, FALSE // will not replace 2.txt MoveFile c:\1.txt, c:\2.txt, TRUE // will replace 2.txt MoveFile c:\1.txt, c:\test, TRUE // will move to another directory - DirCreate creates a new directory DirCreate C:\ACToolTest - DirList lists the contents of a directory into a list DirList ListName, C:\*.* // adds all files DirList ListName, C:\*. // adds only files without an extension - DirDelete deletes a directory and all its contents DirDelete C:\ACToolTest - DirSize returns the size in bytes of a directory and all its contents DirSize constant = C:\ACToolTest - New DISKINDRIVE keyword added to the IF statement if DISKINDRIVE A SayPaste We have a Disk! end - FileSize returns the size in bytes of a file FileSize constant = C:\test.txt i loop $i SendText 13.FileAttrList returns a list of file attributes in a list. no end NOTE: Expressions must be encapsulated in compound brackets <<Your Expression>>.txt .Updated the help file with all the new commands 5. lst[{loopno}] end NOTE: Expressions must be encapsulated in compound brackets <<Your Expression>>. See Regular Expressions under help for . . Send an integer into the command to set the Attribute.Archive.SystemFile. 3 //makes the file readonly and hidden . Attributes are : Directory..0 .Volume ID.02/10/2005: . <<a>>. Here is the attribute matrix: 1 2 4 8 16 32 64 71 Read-only files Hidden files System files Volume ID Directory files Archive files Symbolic link Any file FileAttrList c:\test.ReadOnly. Uses the new regular expression parser to split a constant into a list constructs lst=List end constants i=0 end RegExSplit lst. that is a great feature ListCount lst. c:\test.Fixed the inserting of a CASE statement from the Commands and Macros list . See Regular Expressions under help for more information .RegExSplit command added.txt.0.RegExMatch keyword added to IF statement.CASE $I WHEN 0 DOSOMETHING END did not work. yes else SendText 13. Uses the new regular expression parser to match a regular expression against a constant if <<\d{3}-\d{4}>> regexmatch 123-4561 SendText 13.Hidden FileAttrList YourList.AnyFile.FileAttrSet sets the attributes for a file.Fixed the AC Tool Beautify function to work with the CASE statement . 09/02/2004: . I don't know what y or i is END // alternate usage CASE $i WHEN 0 SendText 13. See Regular Expressions under help for more information .6.6.2 . RightMouseDown and RightMouseUp .6 . $i NOTE: Expressions must be encapsulated in compound brackets <<Your Expression>>.more information .1 .RegExReplace command added. i is 0 WHEN $y = 0 SendText 13. $$1 SendText 13. y is 0 and i is not 0 ELSE SendText 13. The case statement may provide a readable alternative to deeply nested if conditionals constants i=1 y=1 end CASE WHEN $i = 0 SendText 13. LeftMouseUp.08/27/2004: . LeftMouseDown.Inverted the {IRCState} so that it properly reflected the current .08/23/2004: . i is 0 WHEN 1 SendText 13.work.Added code to resolve problems on Win95 machines erroring when starting a macro 4.*) \->>. did + not .*) \+ (. but it should be mostly up-to-date 4.Added ALT and CONTROL parameters to LeftMouseClick.LoadDecal datasets commands have been fixed 4. It isn't perfect.Updated the help file to be current with all commands.New CASE conditional structure added. Uses the new regular expression parser to search and replace items in a constant constants i= end RegExReplace i = <<(. I don't know what i is END . RightMouseClick. i is 1 ELSE SendText 13. New command called FindModuleBaseAddr used to find the base address of a DLL. Cancel when in the query mode .Float.CURRENT_USER.state .ACTool\Test.Cam BOOLEAN.ReloadDSWindow command resets the DSACTIVEWINDOWS dataset .Added a View Layout menu option to see the CDS design .Added and internal dataset DSACTIVEWINDOWS that contains and ID and NAME field for every visible window in MS Windows DSFirst DSActiveWindows SayPaste DSActiveWindows[Name] . StdOutFile ExecProgram cmd. 4 . Params. ExecProgram EXEName. Very untested! Built for FFXiMain. FLOAT.ACTool\Test.12.{MouseX} and {MouseY} return the current position of the mouse on the screen .True FLOAT.Query mode now selects an entire row .5 INTEGER.String.CURRENT_USER. Post.Bool. c:\test.CDS to cast spells.Added a menu option to add a new field .ACTool\Test.New command WriteRegistryEx works just like WriteRegistry except takes one additional type parameter at the beginning. CastSpellRoot SpellRoot.New command called RebootSystem that allows the user to reboot. STRING.Save Filtered Records saves the current visible records as a seperate dataset . RebootSystem SHUTDOWN // Exit windows and powers down RebootSystem LOGOFF // Logs user off. or BOOLEAN WriteRegistryEx WriteRegistryEx WriteRegistryEx WriteRegistryEx STRING.Several enhancements to cdsEdit: .The Data Bar no longer show Edit.dll FindModuleBaseAddr Const = ModuleName . vol c:.ExecProgram now accepts a third parameter for storing standard out.Added new hex commands called HexToDec and DecToHex HexToDec x = AA // x = 170 DecToHex z = 200 // z = C8 .CURRENT_USER. SpellLevel(1-7) CastSpellRoot Strength Self.5 .CURRENT_USER.txt By using the additional StdOutFile param the application will run .Int. shutdown and logoff windows. This type allows users to write into the registry as INTEGER.New spell casting command called CastSpellRoot which uses Triane's SPELLX.ACTool\Test.New tool to Rebuild Data File which simply cleans the dataset .exe. but leaves windows running RebootSystem // Exit windows and restarts . WAV files playing twice .Thanks to the Wabbit. XCoord = // Coord for X axis.USEOBJECT allows the user to immediately include the wObject in the usable objects list for reference wObject TestObject // Adjust the below settings. These include: .Two new setting in AC Tool Preferences on the Global HotKeys tab allows users to turn off F2 in AC and Global Keys . MaxRed = 255 // Maximum value for Red. do you want to u se it? Yes. MaxGreen = 255 // Maximum value for Green. Sample = // All = Every Pixel. // The following are not required settings. . Without it black pixels will not be included in the wObject . The new object will not be saved to file.Fixed a problem with the BELL command and .Fixed a bug when parsing list names with underscores . YCoord = // Coord for Y axis. FileName = . along the X axis. m=Medium. MinGreen = 0 // Minimum value for Green.Labels can now have varying sizes (es=Extra Short.the EXE in console mode.SAVEBMP parameter added which will save the object area as a bitmap . s=Short. MinRed = 0 // Minimum value for Red. No // // // // End NOTE: if you use the UseObject option.Fixed a bug when executing a MousePos against non-Asheron's Call windows that could generate a memlocs.06/23/2004: .BLACK added as a wObject parameter. if you do not wish to use them. Black = // Include true black pixels? Yes.11 . from with in this same script/macro file. No UseObject = // After getting the object. Half = Every Other Pixel . But. MinBlue = 0 // Minimum value for Blue. huge upgrades in the wObject system and some new features in the forms system. along the Y axis. // You can completely delete the following options.The keyword BOF now highlights properly in the editor . l=Long. it is immediately available for use.Ipa fixed Type and Workmanship in the Vendor list and dataset 4. No SaveBMP = // Save a BMP of the object? Yes. // Name of file to place the object definition .xml not found error .5. XSize = // Size of the object. MaxBlue = 255 // Maximum value for Blue. YSize = // Size of the object. el=Extra Long) Form LabelName=Label:size:Label Text End . // So they do not need to be included in the list // In other words. This new event is flagged to run whenever the state of the AC Tool IRC Client changes.Several commands were using an incorrectly set internal variable and could produce strange results.8 .New command called KeyASCII that will send keystrokes to the active window based on the numerical ASCII character equivilant. and CHECKCOMPS . procedure IRC on IRCState saypaste IRC State Change: {IRCSTATE} end while 1 = 1 saypaste IRC State: {IRCSTATE} Delay 5000 Processmessages end . The system would treat a @@ as an @ sign followed by an alt key rather than a single @. Thanks to Triane .Fixed a stack overflow when recieving errors and Decal not loaded.Removed some unnecessary debug information from the companion 4.Fixed a bug when trying to send @.05/22/2004: . This sometimes caused AC Tool to just drop out of memory.. FTPDIRTYPE.IRCStart will now restart a closed IRC Connection . No longer returns empty strings when it shouldn't .9 . and ~ as keystrokes. ^.5. RESETEVERYPROC.StrTrim was including command data in the trim rather than trimming what was asked of it.5.Fixed StrTrim.06/10/2004: . These commands include: BELL.Updated the SPELL. Connected.lstIRC is an internal list that can be accessed for loading and saving the AC Tool IRC Client Log SayPaste lstIRC[1] // Will paste the first line from the log . {IRCState} contains the last state of the AC Tool IRC Client. Aborting. all mouse click commands. Registering. Valid states are: Notconnected. .CDS so that casting Summon Primary Portal I would reference the correct ID 4.CDS which includes all spells in Asheron's Call as of the May 2004 release . . Disconnecting {IRCConnect} contains either TRUE/FALSE depending on the state of the AC Tool IRC Client. .05/22/2004: . . KeyASCII 64 //Sends an @ sign .Added a new event called IRCState.Prebuilt AC Tool Macros can now be optionally installed 4.Corrected the SPELLS. Ready. Resolving.10 .You can find a new Dataset Primer under the help menu. Connecting.New {IRCState} and {IRCConnect} variables have been added added.5. 7 . join SayPaste lstIRC[$myconst] .Several corrections made to the wObject command 4. 10 for spec'ed) Amount of experience spent in skill Number of times skill has been incremented Shortened version of skill name (comes from Decal.e. Strength. Endurance etc) CURRENT Current BASE attribute value EXPSPENT Amount of experience spent in attribute CREATION Value at character creation EFFECTIVE Current effective attribute value (taking into account buffs/debuffs) Dataset DSCharSkill SKILLID Skill ID NAME Sword) BONUS EXPSPENT INCREMENT SHORTNAME BASE s and increment Current = Base + Bonus + Increment (Redundant field. The first parameter is the constant that will contain the line the value was found.Updated the companion to work with the April Decal patches . . Alchemy.04/26/2004: . to drop an item from inventory without requiring keystrokes . 0 = Unusable CURRENT . 4.IRCFind allows the user to search the AC Tool IRC Client log for a specific value.Added new command LoadDecalCharStats.04/16/2004: . _idMissileDefBonus and _idMagicDefBonus . 2 = Trained.5. can be derived) EFFECTIVE Current effective skill value (taking into account buffs/debuffs) TRAININGTYPE 3 = Specialized. just passing it along) Base value of skill before addition of bonu Skill Name (i.e.Cleanup of various Companion internals. 1 = Untrained.Added new ID variables. War Magic. to use Decal Character Stats Filter functionality Companion no longer replicates the work of CharStats to maintain the SpellBook and the current Enchantments affecting base attributes.Added some logic to force disconnects when using HTTPGet .6 . The second parameter is the position you wish to start the search in the log and the last paramter is what you are searching for.Fixed _idDefenseBonus variable .5. This loads 2 new built-in datasets based on the Decal character stats filter: Dataset DSCharAttrib ATTRIBID Attribute ID NAME Attribute Name (i.Added some additional debug logic to track down color object Bonus points from character creation (5 for trained. IRCFind myconst. 1.Added new command DropItem.. ShortInt. LongInt.New FORM type called LABEL allows you to insert a text only . Real48.Fixed a problem with KeyDown and {XXX} keystrokes .SetMemoryEx and ReadMemoryEx work like SetMemory and ReadMemory with one exception. along the Y axis. 32. This issue was caused by the January Asheron's Call patch.Upgraded to the latest PlusMemo so hopefully the strange beautify problems that have been reported will now be fixed 4.You can now turn on/off certain edit messages in the . SmallInt. Go into Macro/Preferences and enter the keystrokes for AC Tool to watch for .Put a lot of error checking around the DSDelete command to identify and/or hopefully correct the "Operation not applicable" error . XSize = 20 // Size of the object. YCoord = 25 // Coord for Y axis. They accept a type for reading and writing.obj // Filename for the object definition End CreateObject Test . XCoord = 5 // Coord for X axis.02/27/2004: . Sample = Half // All = Every Pixel. When an item is tinkered successfully. MaxRed = 255 // Maximum value for Red. extended. the post-tinker item can not be located in inventory by ACTool Select commands or LoadDecalInventory . comp. MinRed = 0 // Minimum value for Red. LongWord SetMemory 005D7718. along the X axis. Types: LongWord. Double.5.5 . MinBlue = 0 // Minimum value for Blue. YSize = 20 // Size of the object. MaxGreen = 255 // Maximum value for Green.Decal World Filter (and ImpFilter) are still not functioning correctly for tinkered items. Usage: ReadMemory $Const = 005D7718. Int64.Users can now define a Global Hotkey to Start/Pause/Resume/Stop a macro. MaxBlue = 255 // Maximum value for Blue.Fixed a bug in the Beautify logic that would sometimes overwrite parts of a macro when there were too many END statements . Byte.Thanks to The Wabbit for this contribution: A new type of Object called the wObject (Wabbit Object) allows a user to define an object parameters.Expanded the width of the built in FORMs . Usage: wObject Test // Adjust the below settings. Single. Half = Every Other Pixel FileName = c:\test.failures . MinGrean = 0 // Minimum value for Green. This will allow macro authors to build self calibrating macros. Then use CreateObject to save the wObject output which is an object definition to a file.Revised a few sections of this document to be more up-to-date . Word. LongWord . RIGHTMOUSEDOWN.Moved several Asheron's Call specific options under the menu Macro/Asheron's Call 1 Settings .4 . ~-shift if applicable and followed by a comma.5.4.Converted AC Tool source code to Delphi 7 .MouseClickDelay allows the user to select a millisecond delay between right and left mouse clicks. www.EquipEX relies on the cursor pointer and busys state rather than the a plugin message which when merging items may not work .0 now ships with AC Tool including an Advanced Query Mode and a dataset export to just about any known format 4.ClearGlobalKeys resets the {GlobalKeys} and {GlobalKeyCount }special variables.02/20/2004: .VendorID command returns GUID of currently open vendor in {PluginResult} (Zero if no vendor is open) 4.All keystrokes in Windows are now captured into {GlobalKeys}. Do not add the http:// in front of website you wish to download. 4.3 .Dataset fields and constructs can now be the result of the compute 4.02/18/2004: . ^-ctrl.Companion reports correct version to chat window on login .Macro/Prefrences under the Debug tab .12/10/2004: .16 .cameroncole.02/08/2004: .02/14/2004: .com . Usage: HTTPGet MyList.5.HTTPGet downloads a webpage and loads into a list. An index out of bounds error would appear when deleting lines.Fixed a bug in the include file logic that was not properly reporting the path and name of missing include files. The command has no paramters . The format is the decimal value of the character preceeded by @-alt. This keyword depresses the SHIFT key before or after the UP/DOWN mouse action 4.Correct a problem when editing macros that would return a list index error . .02/18/2004: . .1 . Usage: MouseClickDelay 100 .CDSEdit 2.Added the cdsEdit tool to the Tools menu 4.5.The SHIFT keyword can now be used in front of RIGHTMOUSEUP. Each time a key is pressed {GlobalKeyCount} increments by 1.5 .CastSpellEx and WaitforCursor are now functioning correctly .Scroll bars should now update properly when opening files after startup .2 .Corrected another problem when editing a macro with comments. and LEFTMOUSEDOWN.5. LEFTMOUSEUP. Co-vassal (@c). Usage: LoadDecalWorldEx FilterBy. [optional DISTANCE] // Load DSWorld with only 'Player' type objects (Player = type 24) LoadDecalWorldEx TYPE. without requiring use of Say/SayPaste commands. 'Groups' are Fellowship (@f). Allegiance broadcast (@a) and Follower-to-Monarch (@m) Usage: DirectGroupTell @f. Sends emote text without requiring use of Say/SayPaste Usage: DirectEmote mourns the burning of another platinum scarab . if you have another plugin running that performs background ID's (eg BS/2 or ElTank). Olthoi*. Loads a dataset (DSEnchantment) with all the active spells currently on your character.LoadDecalEnchantment. Patron-to-Vassal (@v). Usage: ExamineItem Copper Heavy Crossbow .TradeAddItem. Adds an item to Decal's ID queue for identification without requiring use of the Examine keystroke. adds an item (name or GUID) to your side of the trade window . 24 // Load DSWorld with items containing 'Olthoi' in their name.UseFociSpell. Currently only NAME and TYPE are supported filters. you will get unexpected results because the ID queue is shared. PlayerName . Fields in the DSTrade dataset are: GUID (Integer) NAME (String) COUNT (Integer) VALUE (Integer) USESLEFT (Integer) TOTALUSES (Integer) TYPE (Integer) WORKMANSHIP (Float) . Sends an @tell to a group directly. Others may be added if requested..LoadDecalWorldEx. Note. An extended version of LoadDecalWorld that takes 2 additional filtering parameters. Message to fellowship . Loads a built-in dataset named 'DSTrade' with the contents of the left-hand-side of the trade window.Built-in dataset DSWorld contains a field named 'WORKMANSHIP' . A 'foci' spell is the built in spell on a casting device (eg the Brilliance spell on a Focusing Stone). TIMEREMAINING .Built-in dataset DSInventory contains a field named 'WORKMANSHIP' . This command allows the spell to be cast on a named item or GUID. LAYER. // and get distance to each LoadDecalWorldEx NAME. Results are returned in the _id* variables.ExamineItem. Usage: UseFociSpell Focusing Stone. Vassal-to-Patron (@p). If you are in trade mode with another player. SPELLID.LoadDecalTrade.DirectGroupTell.DirectEmote. the dataset contains 4 fields: SPELLNAME. FilterValue. DISTANCE . Server) seperates the various messages.08/12/2003: .Pressing Control-M in AC Tool will create a MousePos entry of the current mouse coords.The IRC :actcmd should now support {actcmdparam} . You can find the same option under the Tools menu called Quick Mouse Position .Expanded all the internal text caches to 5000 lines from 500 lines .15 .DESC on the DSINDEXADD command is now optional . Accepts 1 parameter.Added ErrorProcedure and ErrorFile as informational variables in the "On Error" procedures . MessageText .EOF. In all other respects. The Type field (Chat. FILEEXISTS.DirectTell.KeyRate sets the delay between keypresses and the key up/down. The default KeyRate is 2 milliseconds or KeyRate 2 . Message.08/17/2003: .DirectChat. Tell.ToggleAutoRun. Moves a named item or GUID to the UST window. which is the number of seconds elapsed before your client logs you out. Usage: SetCombatState 4 // enter spellcasting combat mode .IRCSTART starts up IRC while in the macro .Made some adjustments to the Move Vendor to hopefully squelch the problems when using it with standard Move functions . Usage: UstAddItem ItemName . without requiring use of Say/SayPaste commands. Sends text to local chat without requiring use of Say/SayPas te commands .Fixed a problem with constants rounding when over 8 digits . Usage: ToggleAutoRun Off|On 4.SetIdleTimeout. and SHOWFORM no longer cause a runtime error in the syntax checker .DSCopy copies DATASET1 to DATASET2 including all fields.inc in the Macros folder.14 . Constants for these are in Companion. An optional parameter CLEAR can be used to automatically empty the cached text.4. Usage: DirectTell PlayerName. and data .LoadDecalText retrieves a dataset of all the text sent to the client in various forms. . Toggles combat mode without requiring a keystroke.UstAddItem.SetCombatState. indexes.Fixed several problems with LoadDecalText 4. Sets auto run mode on or off. You must open the UST first.. BOF. this command works like the other LoadDecalXXXX commands . Valid parameters are 1 (Peace) 2 (Melee Combat) 3 (Missile Combat) 4 (Spellcast Combat).Attempted a fix for _xptotal errors on high level characters .Adding DESC as an optional last parameter on DSIndexAdd will sort the dataset descending rather than ascending .4. Sends an @tell to another player directly. IGNORE. YES.4. the constant will contain 'Mail Sent Successfully'. The SLOT field contains the drop down on which the item exists LoadDecalVendor DSFirst DSVendor Sendtext 13.10 .4. ALL.Issueing the new RESTART command in a macro causes the macro to stop immediately just like hitting the stop button and starts the macro up again just like hitting the start button . YESTOALL . Confirmation Valid Buttons are: OK. Creating a CRLF constant should now work properly .4.05/31/2003: . ABORT. Information. Otherwise it will contain any errors generated by the MailSend .. DSVendor[Name] 4. CANCEL.11 .On Error procedures now report the correct error message always .New variable added called _fellowrecruit that gets populated with the user name of the person trying to recruit you 4.05/28/2003: .05/29/2003: .4. You can also cause this to happen manually by calling ExportDebug in your macro.MailSend now accepts an optional constant parameter.06/04/2003: .13 . {} variables now work .Fixed a problem with SetConst and the + 4.8 with the proper installation files 4.4.12 .mac files not associating with AC Tool .06/02/2003: .Fixed the AC Tool .4. all the static Decal variables are also dumped 4.Rerelease of 4. Buttons.9 . Error. If MailSend succeeds. NO.Fixed a bug when using multiple when conditions in the same macro .Fixed a bug with the new IF/WHEN check . Here is an OK and Cancel Valid Types are: Warning.4.8 . OK:CANCEL. ShowMessage Constant = Type. RETRY.Made several spacing fixes to the constant parser. The command displays a custom message box to the user and returns an integer that represents the button you pressed.SHOWMESSAGE command added.06/03/2003: . debug information is written to a debug directory.LoadDecalVendor function loads the built in DSVendor dataset with the entire contents of the selected vendor's inventory.Both SHOWMESSAGE and SHOWFORM now switch back to AC Tool to prompt the user and then automatically switch back to the program you were in when the command was executed 4. If you call it manually. MessageText ShowMessage MyConst = Warning.Fixed another bug with the new IF/WHEN check. NOTOALL.When a macro aborts. 4.IF and Procedure When must now have a constant. variable. *. This is to cut down on missing $ in front of constants .Fixed the bug with dataset variables ..INC is a default extension now.Fixed the indention of a Form in Beautify Macro . Item 4 end if ShowForm Test SendText 13.7 .The combobox control on the form can no longer take free form text .In the save and open file dialogs. This is now fixed .Packslots now returns 0 in {PluginResultAdd} if the Pack has no slots .A comma fix was made to certain commands like VendorSelect. 10. No Pack will be returned .000 should no longer look like 10.6 . The $Result variable gets set to True if there was data to load and False if there was not .Fixed another problem when using functions inside of commands with commas . FormCaption FieldName=EditBox:FieldLabel:DefaultValue FieldName=CheckBox:FieldLabel:True/False FieldName=Combobox:FieldLabel:Comma Seperated List end an example of how to use a form Form Test.Form functionality has been added into AC Tool.Moved some items around in the treeview. no go end .05/13/2003: .Other peoples equip actions will no longer add to your equip list . Item 3.Fixed the thousands seperator on FormatNumber .FormSave FORMNAME. Some commands were in the wrong group 4. Item 2.Sometimes when using functions an "Invalid format" error would be created. Test[ed1] Test[ed2] Test[ed3] else Sendtext 13. 000 in those commands 4.Bug fix was made for the crash in the trade window .4. The coords should now report correctly everywhere . or function or they generate an error.{PluginResultAdd} on the CountMine function now contains either the count returned or 0 .StrPad now appends N spaces to the end of a constant rather than truncating the constant to N length . Here is the layout: Form FormName.Fix was made to the north/south east/west location function.05/12/2003: . .FormLoad FORMNAME. If you try to use a Foci pack. This is my test ed1=EditBox:Edit 1:Test ed2=CheckBox:Check 1:True ed3=Combobox:Combo 1:Item 1. FILENAME saves the contents of a form to a file .The pack count should now be correct when using a Foci. FILENAME loads the contents of a form from a file. 4.Overall macro performance increase . VarB=12 VarZ=0 end 4.You no longer have to save a macro in order to run it .1 . This command could have other uses as well StackItem ITEM1.ListAdd should now work with single commas in the added string .4.Compute negative numbers should now work .05/08/2003: .05/07/2003: .05/06/2003: .Strange decimal problems should be corrected .Set and SetConst keywords are now both acceptable and both do the same thing .05/06/2003: .2 . FILENAME .Added System Information to the Help Menu 4.' decimal regional settings 4.4. ITEM2 Note: ITEM1 will always be from your inventory.{ACTVersion} returns the version of AC Tool .Compute with text constants or variables treats the constants or variables as zero .5 .DSSaveFilter command added that saves a dataset's filtered records only.Auto indent feature turned on in the editor .StackItem will attempt to stack item 1 with item 2.Fixed some strange numerical problems with referencing some constants .Constants can now be stacked on one line constants Var1.Trimmed the results of FormatFloat . DSSaveFilter DATASET.05/07/2003: . Var2.Put in some code to handle non '.3 .INC/DEC problems have been fixed .4 .4.Fixed several bugs with the compute statement .You can now change the Nick for IRC on the IRC Tab . So you could try to stack something on a player.Fixed a bug with the SpellInBook spell limit .4. ITEM2 is from the world.Cannot Evaluate Errors should now give more useful debug information 4.CastSpellTimeout added as a command .4. Var3=9 VarA.A few fixes were made to StrProper .Failure to initialize a constant then using it in a compute should be fixed .Fixed the Procedure List in the editor to work with include files .IsWindow now accepts PID and caption wildcards . Be careful! . - Packslots should now count the main pack correctly SpellInBook should work with more than 1500 spells now _myid now returns a value Double commas in the last param of SendText should no longer be required, but still should work - MoveAllItemVendor and MoveAllItem should now wait until it is finished before continuing on in AC Tool - Splash screen was not showing the version correctly - Removed the Beta keyword from the install 4.4 - 04/28/2003: - Packslots on the mainpack returning -1 fixed - _tradeaddGUID is a new variable that returns the GUID of last item added to the trade window. Wait for this variable to be populated before checking the other _tradeXXXX variables - MoveAllItemVendor is a new command that moves all of a named item to a vendor's sell window. MoveAllItemVendor ITEM, VENDOR - Fixed a bug when passing no params to a procedure with a USING keyword - Relaxed the comma restriction on the last token of a command for several commands including SendText. So this is now valid: SendText 13, This, Is, A, Test - Recursion Stop check now occurs at 5000 rather - CastSpell and CastSpellEx now pull up the same selecting them from the Command Treeview - The Spell List when selected from the menu now to the clipboard when a user presses OK - FormatDateTime function added into the system. than 500 wizard when copies the spell name Example: FormatDateTime work = 12/20/2002 11:51pm, m/d/yy h:n Mask Settings: c - Displays the date using the format given by the ShortDateFormat global variable, followed by the time using the format given by the LongTimeFormat global variable. The time is not displayed if the date-time value indicates midnight precisely d - Displays the day as a number without a leading zero (1-31) dd - Displays the day as a number with a leading zero (01-31) ddd - Displays the day as an abbreviation (Sun-Sat) using the strings given by the ShortDayNames global variable dddd - Displays the day as a full name (Sunday-Saturday) using the strings given by the LongDayNames global variable ddddd - Displays the date using the format given by the ShortDateForma t global variable dddddd - Displays the date using the format given by the LongDateForma t global variable e - Displays the year in the current period/era as a number without a leading zero (Japanese, Korean and Taiwanese locales only) ee - Displays the year in the current period/era as a number with a leading zero (Japanese, Korean and Taiwanese locales only) m - Displays the month as a number without a leading zero (1-12). If the m specifier immediately follows an h or hh specifier, the minute rather than the month is displayed mm - Displays the month as a number with a leading zero (01-12). If the mm specifier immediately follows an h or hh specifier, the minute rather than the month is displayed mmm - Displays the month as an abbreviation (Jan-Dec) using the string s given by the ShortMonthNames global variable mmmm - Displays the month as a full name (January-December) using the strings given by the LongMonthNames global variable yy - Displays the year as a two-digit number (00-99) yyyy - Displays the year as a four-digit number (0000-9999) h - Displays the hour without a leading zero (0-23) hh - Displays the hour with a leading zero (00-23) n - Displays the minute without a leading zero (0-59) nn - Displays the minute with a leading zero (00-59) s - Displays the second without a leading zero (0-59) ss - Displays the second with a leading zero (00-59) z - Displays the millisecond without a leading zero (0-999) zzz - Displays the millisecond with a leading zero (000-999) t - Displays the time using the format given by the ShortTimeFormat global variable tt - Displays the time using the format given by the LongTimeFormat global variable am/pm - Uses the 12-hour clock for the preceding h or hh specifier, an d displays 'am' for any hour before noon, and 'pm' for any hour after noon. The am/pm specifier can use lower, upper, or mixed case, and the result is displayed accordingly a/p - Uses the 12-hour clock for the preceding h or hh specifier, and displays 'a' for any hour before noon, and 'p' for any hour after noon. The a/p specifier can use lower, upper, or mixed case, and the result is displayed accordingly ampm - Uses the 12-hour clock for the preceding h or hh specifier, and displays the contents of the TimeAMString global variable for any ho ur before noon, and the contents of the TimePMString global variable fo r any hour after noon / - Displays the date separator character given by the DateSeparator global variable : - Displays the time separator character given by the TimeSeparator global variable 'xx'/"xx" - Characters enclosed in single or double quotes are display ed as-is, and do not affect formatting. - {now} variable added that returns the current date and time in the mm/dd/yyyy hh:nn:ss:zzz format 4.3.14 Beta - 03/19/2003: - StrReplace now accepts an empty last character - MoveItem and MoveAllItem now accept the slot property correctly - Added new command named SpellInBook that checks to see if you have learned a specific spell. Accepts either a Spell ID or a Spell Name. Returns SPELL NOT FOUND if it is not in your book - Three new companion variables have been added: _optstretchui - is Stretch UI on or off _optignoretrade - is the ignore trade requests on or off _optallowothergive - can other players give you items - Fixed another problem parsing constants in the procedure using clause - IgnoreBracketErrors comamnds will turn on/off bracket checking. IgnoreBracketErrors on IgnoreBracketErrors off - StrProper function added that attempts to smartly upper and lowercase words in a string. It isn't perfect and may not do exactly what you want, but it is a fairly powerful function if used properly StrProper NewText = some of this will be uppercased - Include file paths can now be added to AC Tool under the menu item Editor/Preferences. The order of the path entries is the same order that AC Tool will search the paths 4.3.13 Beta - 02/07/2003: - Window List is now accessible from the menu - StrTrim now only uses one parameter like in the help - Values in a constant no longer automatically trim as before so StrPad now works properly 4.3.12 Beta - 02/07/2003: - StrLen fixed - StrTrim fixed - SetActiveWindow now accepts the PID rather than the windows handle - SetActiveWindow with no parameters pops up the window list for selection - Passing double commas as parameters in the call statement should now work - Fixed a bug in ClearPluginVar - An updated version of spells.cds has been included with this release - The open Window List now contains the Process ID along with the window name 4.3.11 Beta - 02/07/2003: - LoadRGB fixed - If you are not using Decal, AC Tool no longer complains about it - Find/Replace no longer hides the highlighted text when activated 4.3.10 Beta - 02/06/2003: - FindText and FindNextText can once again search on empty strings - Couple fixes to the new include data in the error box - Bug with Inc/Dec not working has been fixed 4.3.9 Beta - 02/05/2003: - StrPos fixed - StrWord fixed You must use DSIndexAdd and DSIndex in order for DSFindKey to work.The AC Tool command treeview is now placed inside of commands.01/29/2003: .Another attempt at fixing the USING constants on a procedure .Removed some display code that showed up whenever you ID'd an item ..FileExists now highlights properly in the editor .Case statement removed due to some huge holes that could not be filled or fixed easily .When you want to use a comma (.8 Beta .Empty parameters passed into a procedure via the USING phrase should now work properly . c:\test.Even more of that code clean up in this release .jpg FTPClose . However if you do.Complete rewrite of the windows switching and handling code 4. it is MUCH faster than DSLocate on large datasets DSIndexAdd MyDS.You can now search for a window in SetActiveWindow by the handle id and the name instead of just the name .StringToList was not working properly when the string started with the delimeter .) in a command.7 Beta .Several DELAY bugs were found and fixed . Found String end .jpg FTPUpload c:\test.Host of new FTP commands.DSFindKey has been added for searching in the index.- StrNumber fixed IsObject fixed Filename of the open macro now displays in the AC Tool title Fixed a bug where cdsedit would generate an error when loading a dataset from the command line .MousePos accepts single constant parameters again . user.) . LookingForThisText if EOF MyDS SendText 13.3.You can now see the module (include file) and line number when an error is generated in the error message dialog .02/03/2003: . IndexName DSFindKey MyDS.The AC Tool and CDSEdit title and caption show the name of the macro or dataset you have loaded 4. sameole.xml for easier modification .Local USING constants can now be set so you don't have to define them globally . password FTPTransferType BINARY // BINARY is the default FTPDirType BRIEF // BRIEF is the default FTPChdir somedir FTPDir dir FTPDownload dir[1]. you will need to either put it in a constant or use a double comma (.SetActiveWindow is MUCH faster . Could not find string else SendText 13.com. FirstField DSIndex MyDS.jpg. Here they are in an example FTPOpen someplace. IndexName.3. but bugs can and will be missed 4.3.11/25/2002: . and {RGBGreen} with the pixel colors at an X.LoadRGB sets {RGBRed}. else SendText 13. After the user presses the ENTER key.HTML file included in the UMP add on 4.exe that fixes the load a dataset from a command line . Here is an example Case $Const when 1 or 2 SendText 13.FindNextText will now return TEXT NOT FOUND if you go past the end of a search rather than UNKNOWN ERROR.ReadMemory/SetMemory should work now .StrPos with onle one parameter now searches for a space . Some commonly used functions may not work due to moving items around in the source. Y position .Removed a bug in AC Tool that created an invalid c:\decal. I do my best to test these moves.5 Beta .New version of CDSEdit.{ActCmdParam} is now working properly . when 4 to 8 SendText 13.3. This variable contains any text keyed in past the /ActCmd CommandName..xml file ._burden should report properly now.CommandText pauses AC Tool and waits for the user to enter text into the Chat bar in AC.01/05/2003: .4 Release .WaitForCursor and CastSpellEx now test the BusyState and the cursor state of the AC Client rather than just the cursor state . They no longer add as numbers to produce one number .FileExists should now work properly .Fixed a problem where procedures would sometimes not find constants from the using clause . {RGBBlue}.3. Even pack full problems should be fixed 4. No guarantees since it relies on some suspect Decal Character Filter code .StrWord and StrNumber now put the correct command in the editor when the are double clicked from the tree view .MoveItem and MoveAllItem should be MUCH more reliable. SendText 13. AC Tool resumes and _commandtext contains the text the user entered . end Const is either 1 or Const is 2 or Const is 9 Const is between 4 and 8 I don't know what const is! .{ActCmdParam} variable has been added.The clean up of the code has begun._idspellids and _idspelltypes are now comma seperated lists.01/22/2003: .Ipa's updated UMP.Bell followed by a wav file name will play the wav file .GetAttrib and GetSkill when selecting from the tree view were popping the IsColor screen rather than entering the sample code . SendText 13. Will be blank if nothing other than /ActCmd and the Command Name . It will also maintain its position rather than requiring a FindText reset .6 Beta .New case statement. Delay and Keydown are now much more precise . _idspellcraft.Only the first AC Tool opened will interface with Decal from now on.mac included with this release 4. _idcharmaxhealth.Added several new _idXXXX variables.The following _idXXX variables have been added. _idwieldreqid. _idlorereq.VendorDropDown has been fixed as well .PackSlots now gives the correct value . _idLockClose.11/07/2002: . _idtinkercount. _idManaRate.3 Release . it will ask you to save those changes before opening the selected macro .Cleaned up the code so the source can be released to the general public .Fixed the F2 Start/Stop/Pause/Resume issues . .When using the File MRU menu if you have made changes to your macro.Removed the debug messages from the F2 key 4.ActiveWindowCheck ON/OFF turns on or off the error message generated by SetActiveWindow when a window is not present .Updated the help file to include the new commands . Here is the list: _idvalue. They are _idLockOpen.After running a macro..Fixed a problem when using {PluginResult} and _XXX variables ._VendorValue was listed twice 4.Fixed a nasty little bug with using the same constant in multiple lines of code (StrReplace problem) . . _idcharcurhealth. _idskilllevel. _idhealing.Ifs inside of Loops were causing some strangeness. _idwieldreqtype.When a constant is initialized with {NULL}. it now works properly .Fixed a display bug when using Unequip . Constants can now only have those characters in them and they cannot begin with a number . new character variables on identify _idcharlevel. _idManaModifier . subsequent AC Tool instances will display a black box in upper right corner stating No Decal Interface . _idspelltypes. _idlockpick.3 Release Canidate 16 .Numerous help file updates . _idusesmax.11/02/2002: . _idmanacost._VendorDropDown should now be working properly . _idwieldreq. _idracereq . If you load more than one AC Tool.3 Release Canidate 15 . _idrankreq. They are the raw values from the Decal messaging system so some of the items may need a little math to use. _idusescurrent.New version of incUI. _idManaEfficiency. _idmanamax. Fixed the error message that was displaying as well. _idSpellIDs and _idSpellTypes is a comma delimited list of spells and their associated type (0 innate 128 active).11/12/2002: .. 0-9 and _ was found and fixed. _idmanaremaining.A serious long term bug with naming constants using characters other than A-Z.Let the flaming begin.LeftMouseClick and RightMouseClick now take the optional Shift param which causes a shift-click to happen .. _idarmor. _idspellids. _idskillreq. _idcharstrength. _idskillreqid. AC Tool would lose the status help on the Decal variables in the treeview .3. _idcharmaxstamina. FindTextNext. _idcharfellowship.Several commands were broken (CastSpell being on of them) after the last performance enhancement. _idcharquickness. There are also new variables called ErrorLine. False will perform your code. _idcharrace.mac included with this release that renames a lot of constants with a . but will pop the AC Tool error message when it is done with your procedure.ACTCMD works with IRC now.10/28/2002: . and ErrorHandled. 4.Fixed Access Violation when using space with StringToList .Using ListToString with a space should now work correctly . Works just like the /ACTCMD command only use :ACTCMD . MESSAGE logs all items entering the chat area . _idcharfollowers. _idcharpatron . Should now be faster than 4. Error Message: $ErrorMessage SetConst ErrorHandled = True .X and MUCH faster in larger macros 4. _idcharcoordination.New incUI. _idcharPK. Setting it to True means that the error will not pop a message box and continue on processing. _idcharcurmana.A constant ending in a period (. There may still be some funkiness to work out ._ChatMessage and _ChatMessageColor are now set to the last item in the chat window .) no longer picks the period up as part of the constant name .FindText.Fixed an unreported bug with using Compute and text based constants . _idcharmonarch. _idcharself. FindTextClear now support the MESSAGE keyword. Any errors in the On Error procedure will always pop a message box and not perform the code in On Error.On Error procedure added for trapping the errors generated by AC Tool. ProcessMessages is not needed for this command to work.Attempted a fix to the inventory search problem 4. ErrorHandled is either True or False (False by default). Should be fixed now .3 Release Canidate 14 . You may need to Search and Replace your XXXX-Dn and XXXX-Up constants with XXXX_Dn and XXXX_Up. ErrorLine is the text of the line that generated the error. _idcharloyalty.Strange problem using commands without parameters should be fixed .3 Release Canidate 13 .10/31/2002: . _idcharcurstamina.10/29/2002: . Error in line $ErrorLine SendText 13. _idcharfocus.Compute can now use constants passed into procedures with the USING command.Better error checking and reporting in the preparser . _idchargender.1. _idcharleadership. _idcharrank. ErrorMessage is the message error text.in them to have a _ in them. _idcharclass.3 Release Canidate 12 .AsciiOrdinal can now accept blank or space without blowing up the macro . _idcharmaxmana.Changed burden to use the character filter code rather than my homegrown math . Here is some example code to work with: procedure ACToolError on Error SendText 13. ErrorMessage.Another performance boost that should really kick macros into high gear._idcharendurance. _idcharspecies. It will send exactly what you tell it .Reset the Decal check to 2.Attempted another fix of the F2 key press resuming a macro . and Chat should find the first entry.Fixed a bug trying to parse constant values with a _ in them .3 Release Canidate 10 .3 to get the proper character amounts 4.Another series of performance enhancements have been made .09 now included with the install .Made some adjustments to the internal datasets to prevent the Out of Memory errors being reported.1. 3 SendText $Temp // Should see the word "some" displayed StrNumber Temp = These 12 are some 9. Side effect is constant values cannot be larger than 4092 .AC Tool 2. Several error messages have been changed to reflect the true nature of the problem .10/24/2002: .AsciiOrdinal function added that turns a single character into its ASCII numeric value . The case is stored the same way it is passed in . You must be familiar with IRC commands since this has no error checking on it.0.1.0 and higher report as 2. You still need at least 2.0.mac version 1. constants Temp=0 end StrWord Temp = These are some words.Some of the error messages generated by AC Tool didn't help diagnose the actual problem.Fixed some annoying tab problems when in test mode 4.4.incUI. StrNumber does the same thing only it searches for numbers only. 2 SendText $Temp // Should see the number "9.3 Release Canidate 11 .87" displayed Fixed a bug with Blade Arc VII not being recognized by name StrPos should now work properly when searching for commas Single quote marks in the DSLocate statement now work properly IRC settings now save whenever you exit AC Tool New IRCCMD for sending actual IRC commands to the IRC session.4.4.Procedure's USING constants are no longer always uppercased.Blank searches using FindText in Tell. The same is true for FindNextText .10/25/2002: Fixed a problem setting the font in the editor Fixed a problem with macros not running Fixed a problem with End statements followed by text (End If) no longer working .3 is now the minimum required Decal to run AC Tool .end SetConst NoConstDefined = This is going to generate an error! .StrWord picks the word or number out of a string by offset and sets the specified constant. Server.4.0 since all versions of Decal 2.87 words.4.0.When the companion plugin was a different version than AC Tool an error was not being created .0._manamana and _manaitem now get set to 0 and the item name on items that do not have a mana bar . When creating a New Macro.Enhanced MoveItem commands to be more stable ._distance now sets {PluginResultAdd} with text problems retrieving the distance . The more complicated the macro the faster it should run with this change .Fixed a bug in PackSlots not returning a proper value .3 Release Canidate 9 .Restored the max health/stamina/mana code I used rather than Decal .Switched internal Constant list to a dataset for a further increase in performance.Constant values were being truncated . AC Tool now allows you to press cancel which will cancel the new and take you back to your currently loaded macro ..10/10/2002: .3 Release Canidate 8 . The same is true for DSLoad. .10/06/2002: . Pressing F2 twice stops the macro .XML extension on the save file. This will fill in the distance field with the appropriate value .DSSave will now save as an XML file if you use a ._chattext and _chatname now return the correct .Your name will no longer appear in _mononline .DSDelete function added for deleting records out of a dataset . The last work properly.SetActiveWindow can now do partial window name character must be an * for a partial search to SetActiveWindow notepad* This would find a window called Untitled .Fixed an error statement when using LoadDecalWorld without the DISTANCE parameter .Fixed a couple of F2 Start/Stop/Pause/Resume bugs 4.Fixed a problem with USING and defining constants causing funkiness setting and using variables .Extra comma at the end of _mononline has been removed ._monsize was reporting one higher than was actually in the monarchy . DSLoad will only recognize a very specialized XML format 4.Problem with _distance timing out rather than returning an error immediately .Fixed the problems Filtering datasets .10/03/2002: .Notepad .Generated more beta keys inside the EXE ._monfollowers and _mylevel now report the correct information .When exiting AC Tool with a macro running.LoadDecalWorld now accepts the DISTANCE parameter._inflictXXXX variables were not clearing using ClearPluginVar .Double clicking the spells window now clicks the OK button automatically .Pressing F2 once pauses and resumes in AC.Made a performance adjustment to _distance . it now allows you to press cancel and continue macroing .Fixed a number of bugs in DSLocate 4.Fixed a problem with spaces in the compute statement and also explaining any values searches.Double clicking on PackSlots now enters PackSlots rather than Packslot .3 Release Canidate 7 . _idBurden variable added that is the burden of an item . DSMonarch[Name] . _InsertInvItem _InsertInvDest _InsertInvSlot _InsertInvKind GUID of the item Destination pack GUID Always 0 Kind of move (2=Container.If not zero divide and round into Workmanship _idInscription . DSInventory[Name] . _FellowLeader. DSWorld[Name] . and type of damage you inflict on your opponent: _inflictdamageamount.LoadDecalInventory function loads the built in DSInventory dataset with the entire contents of your character inventory LoadDecalInventory DSFirst DSInventory Sendtext 13._insertXXXX commands should now work when given an item._inflictmeleeevade added which is a 1 if you were evaded and a zero if you were not evaded . Whenever the plugin fails to respond to a command this event fires automatically.LoadDecalWorld function loads the built in DSWorld dataset with the entire contents of the Decal world filter LoadDecalWorld DSFirst DSWorld Sendtext 13. _inflictdamagetype .Inscription _idInscriptionAuthor .LoadDecalMonarch now works and is properly syntax highlighted . and _FellowCount have been added.increase the performance of the compute statement significantly .3 Release Canidate 6 .New event that automatically fires when you detect a timeout has been written call ON TIMEOUT.LoadDecalMonarch function loads the built in DSMonarch dataset with the all the allegiance information transmitted to the client LoadDecalMonarch DSFirst DSMonarch Sendtext 13. Note that _FellowLeader is the GUID of the player not the name .The following variables get populated whenever you ID an item: _idMaterialType ._FellowName.Material Type _idWorkmanship .Workmanship _idWorkmanshipDiv . ProcessMessages is not needed. source. 3=Wielder) .New damage Decal variables which contains amount. _inflictdamagesource.09/21/2002: . procedure TheTimeout on Timeout saypaste Timeout has been achieved! end .Major overhaul on the About screen 4.Inscription Author (name only) .Fixed some of the problems with the enchantment commands not reporting the highest or latest spells . Skill Required _idDamage .TXT to be compatible with 4.Damage Type _idSpeed .Renamed the ON ACTSTOP to ON STOP.Defense Bonus _idAttackBonus .09/17/2002: Fixed a crash of the companion that would happen on some systems Enchanced the Companion._idDamageType .Range of Damage (use to determine minimum damage) _idDamageBonus . .09/16/2002: . ListTo .Double clicking on Equip. Equipped.PackSlots should now be a recognized command .3 and up.Removed the Decal memory check if the window is not Asheron's Call .Maximum Damage _idDamageRange .Weapon Speed _idSkill .3 Release Canidate 4 .The following variables get populated whenver an item is moved or added into your inventory: _InsertInvItem _InsertInvDest _InsertInvSlot _InsertInvKind GUID of the item Destination pack GUID Pack slot Kind of move (0=Normal.The new debug mode "/actdebug on" was turning the plugin debug mode on as well .ON ACTSTOP procedures were not being called .Attack Bonus .The PROCEDURE EVERY statement can now accept a constant properly . 2=Foci) . . Errors are now reported in {PluginResult} . 1=Container Move.Mouse memory writes no longer occur unless the window name is Asheron's Call .log messages You can now view the startup splash screen under the help menu Added a bunch of debugging to the _distance variable 4.ListAssign assigns the contents of one list to another ListAssign ListFrom.Range of weapon (zero unless it is a ranged weapon) _idDefenseBonus .3 Release Canidate 5 . and Enchantment should now write the proper syntax into the current macro .Fixed a variety of strangeness with all the new performance code 4._Distance was access violating when the Decal World Filter lost track of an item in the world. FaceHeading 90 .Damage Bonus _idRange .Fixed the mail example in the README.Fixed _failure when casting spells .The letters 'TO' in a constant no longer creates an Invalid Format error in the loop command .FaceHeading companion function added that will face the heading entered.Improved the performance of the IF statement .Widend all the internal loop variables to be a 64bit integer for those people who like to run macros for long periods of time .ListFind now syntax highlights properly .log and CompanionError. 08/17/2002: . . .GetSkillEx and GetAttribEx use the new Decal methods for getting the effective skill and attribute values .Decal guys changed the clean MEMLOCS._ChatName. Is.Added _lastattacker and _lastattackerguid variables . Type /actstep if you want to progress one single line..Added a minimum Decal Version check to AC Tool . Here is some sample code: DebugMode On SetConst SomeConst = 12 SendText 3. SetConst Test = {NULL} . Count.Corrected some entries in the FAQ 4.Improved command processing performance significantly . Type /actdebug on turns on echo of commands into AC.Procedures can now accept parameters with the USING phrase procedure TestMe USING Var1. and Affected paramenters return the information requested Enchantment Count Enchantment SpellID/SpellName Time // Returns time remaining Enchantment SpellID/SpellName Adjustment // Spells numeric effect .Added a version check between AC Tool and the AC Tool Companion . Layer.Fixed a bug where the first procedure was being called in some instances rather than the correct procedure.You can now debug and step a macro while in AC. and _ServerText were not being cleared using the ClearPluginVar command .Much improved error descriptions when errors occur in the Decal Plugin .3 Release Canidate 3 .IF BOF/EOF now work properly with datasets . $Var1 $Var2 $Var3 end Call TestMe Cam.Enchantment command added for getting information about enchantments on your character. Adjustment.Fixed multiple error messages popping up after the first error should have stopped the macro . _ChatText. Time. IF. Var2. Var3 SendText 13. Cool ./actdebug plugin command changed to /actdbgplg . DebugMode On/Off commands do the same thing in a macro.XML format so I upgraded the parser to handle a wider variety of file funkiness along with fixing a handful of memory location reads. Type /actdebug off to turn debugging off.A new keyword was added called {NULL} that returns a blank string when used in SetConst.exe /? for the full list .Fixed various bugs with the Enchantment command . $SomeConst DebugMode Off .Added some new command line parameters and documented the ones that were already there. WHILE and passing parameters to procedures.Fixed a problem with loops not working properly when they were nested . Type actool. 3 Release Canidate 1 .Fixed the CastSpell and CastSpellEx second parameter not selecting the proper item .Fixed a bug in the DistanceEx commands .3 Beta 4 . Shift.Added additional debug information into the companion .08/08/2002: . and Alt special keys (@.Fixed some of the companion error messages to report the correct message number .- Changed _getmaxXXXX to use the Decal versions of the numbers Changed _myvitae to use the Decal version Made some code improvements to the internal Spell Name to ID function PackSlots function returns the number of open slots in a pack 4.Added the Tools menu and moved IRC Server. and _selectedlandblock variables to give the selected items location 4.New Debug Window added to help in debugging problems in macros. _selectedz.Updated the About Box look and fixed a couple of display bugs . // This no longer sends an Alt Keys
[email protected] the Object Mapper so it works much better .Fixed a bug when the WindowChange procedure was empty and created AC Tool would think it was never entered . Contains the constants and their values as well as the procedure you are in and the order they were called 4.~) now work only when they are the first keys in a sequence. Brown Rabbit .Upgraded to the latest Decal Com interface . _selectedy.DistanceEx is now in the command list and syntax highlights .net // This still sends an Alt Keys @A . and Spell List underneath the menu .08/14/2002: .{ActiveWindow} was not always working properly .3 Release Canidate 2 .Control.Fixed an access violation in _vendorselected .Added _selectedx.DistanceEx function added which uses the Distance2D calculation in Decal.Loop command expanded to accept the following syntax: loop Constant = 5 to 10 // also use $Constant = $x to $y SayPaste $Constant end .^.WaitForCursor is now in the command list and syntax highlights . Universal Mouse Positions.Object Mapper is now available from the Tools menu ./actvendor command in AC dumps the vendors inventory to a comma seperated value (CSV) file . This function accepts two object names/guids DistanceEx Self.Fixed another bug with VendorDropDown .08/07/2002: . 3 Beta 1 . This allows a user to load a constant with a decimal ascii value.07/13/2002: .CastSpell should now be Decal independant again .3 Beta 3 . and Dataset.VendorDropDown should now return the dropdown box of the item in {PluginResult} . . Here is some sample code: function TestMe Result = 'Hello' end SendText 13.Updated the spell. List.05/25/2002: . .Cleaned up the tree by adding three new groups called File.Added a new function called StrRight which copies from the right side of a string .cds file so spell names should sync with this version 4.New macro added called spellload. $TestMe 4.Some spacing problems in the new functions has been fixed . the names should return in {PluginResultAdd} . This file is included with the release . //This is a tab AsciiChar SomeConst.06/14/2002: CastSpell with targets should now work F2 Pause/Resume should now work SetActiveWindow Asheron's Call on new macros should display properly ClearPluginVar should now work with all memory variables _Vendordropdown = 0 when no vendor selected item Inc/Dec not working without $ in front of const CastSpellEx command added in._ChatText and _ChatName were added.3 Beta 2 . KeyDown and CastSpell amoung them. Waits until the cursor changes to a normal pointer or the CastSpellTimeout variable is met (default is 5 seconds) . 9 . Also enhanced the images.Invalid constants in the | delay now report an error . They contain the last chat text and user name that was displayed on the client .CDS from a tab seperated value (tsv) file.AsciiChar function added.CopyFile command added to allow a user to copy disk files CopyFile $From..When using FindText with the TELL log. Waits until the cursor changes to a normal pointer or the CastSpellTimeout variable is met (default is 5 seconds) 4.StrCopy no longer reads part of the actual command if you copy longer than the string .WaitForCursor command added in.Several functions were not accepting parameters properly.Added in functions.mac which loads the SPELLS.Distance command added for getting the distance in yards to a . $To . net MAILBCC
[email protected] SMTP Host: MAILHOST mail.someserver._ChatStat returns True if you are in chat mode and False if not . FILTER Load a dataset from a file: DSLoad DATASET.xml rather than waiting on me to update the program .com body of a message: MAILBODY SOMETEXT Carbon Copy of a message: MAILCC email@address. Using.EOF: DSNext DATASET Go to the previous record sets DATASET.Added in EMail capability: Sets the Sets the Sets the Sets the Sets the Sets the Sets the Sends an Sets the Sets the Sets the Blind Carbon Copy of a message: MAILBCC email@address. or Unknown .com MAILHOST mail.net MAILTO
[email protected]. It will contain None. Idle.com SMTP Password if it is required: MAILPASSWORD PASSWORD SMTP Port: MAILPORT SOMENUMBER email message: MAILSEND Subject of a message: MAILSUBJECT SOMESUBJECT Recepients of a message: MAILTO
[email protected] From address of a message: MAILFROM
[email protected] MAILSEND SendText 13.SelectNearest followed by a full or partial object name will select the object of that name closest to your character. Mail Sent! . Dragging._PointerState returns the state of the mouse pointer in AC. This parmeter is in relative yards/meters . FILENAME Save a dataset to a file: DSSave DATASET FILENAME Go to the first record: DSFirst DATASET Go to the last record: DSLast DATASET Go to the next record sets DATASET.net MAILSUBJECT Test Post MAILCC person3@someplace. An optional second parameter can be used to limit the distance.XX where XX is the number read from memory .com SMTP User ID if it is required: MAILUSERID USERID Sample Macro: MAILBODY This is a test body MAILFROM
[email protected] now reads memory addresses from Decal's memlocs.Added in new ClientDataSet functions Filter a dataset's contents: DSFilter DATASET. Busy.world object .Updated all the Decal Objects so they would be compatible with the upcoming betas . FIELDVALUE Puts the dataset in edit mode: DSEdit DATASET Inserts a record into the dataset: DSInsert DATASET Appends a record to the end of the dataset: DSAppend DATASET Cancel a pending append/insert/edit: DSCancel DATASET Post a pending append/insert/edit: DSPost DATASET Empty a datasets contents: DSEmpty DATASET Returns the record count for a dataset: DSCount DATASET CONSTANT .BOF: DSPrior DATASET Sets the datasets Index: DSIndex DATASET INDEXNAME Add an index on a field or fields: DSIndexAdd DATASET INDEXNAME.Fixed a bug with multiple comment delimeters on the same line . FIELD S Delete an index: DSIndexDelete DATASET INDEXNAME Locate a record in a dataset: DSLocate DATASET FIELDNAME. Equipped function added for testing if an item is equipped or not .Added a check for SPELL.EXE which is designed to view or edit saved datasets .Subtracts numbers * Multiplies two numbers / Divides two numbers * wildcard for partial comparisons .CastSpell sets {PluginResult} to TIMEOUT when the the function has timed out .VendorDropDown command added that will tell you the drop down of an item by name or guid .Adding the -start parameter to the exec line for AC Tool starts either the macro specified on load or the macro you had loaded last ACTOOL.AC Tool install now includes CDSEDIT.Improved overall performance of the Companion .Turn on/off the Companion with /ACTCOMP OFF and /ACTCOMP ON .CastSpell timeout settable .1 and 4. concatenates strings._VendorDropDown variable added that shows which drop down the item that is selected .CDS when loading .Much improved performance for certain Companion variables .Fixed Inc and Dec not recognizing constants properly .EXE to load a macro .Added better error handling/logging in the Plugin command .MAC . DATASET[FIELDNAME] DSFilter Test.3 plugins installed on the same machine.You can now have both 4.Returns the current record number: DSRecNo DATASET CONSTANT Goes to the record offest: DSGotoRec DATASET RECNO dataset Test Fld1=String 30 Fld2=Integer Fld3=Float Fld4=DateTime end IF EOF DATASET IF BOF DATASET SetConst DATASET[FIELDNAME] = 'Hello world!' SendText 13. 'Fld1 = ''Hello''' Filter Parameters: < Less than > Greater than >= Greater than or equal to <= Less than or equal to = Equal to <> Not equal to AND Tests two statements are both True NOT Tests that the following statement is not True OR Tests that at least one of two statements is True + Adds numbers. You should still not run them at the same time however .You can now add a macro path behind ACTOOL.EXE -start C:\PROGRAM FILES\ACTOOL\MYMACRO. .Keydown should now work with all keys . FileExists command has been added to AC Tool if FileExists readme.StringToList for converting a string into a list StringToList List. Delimeter .ListFind command added for finding the offset of partial text in a list .6 Release . Here is some sample code: function TestMe SetConst Result = 'Hello' end SendText 13.Bug with using sec/min in CastSpellDelay fixed .An event now fires when a macro is stopped procedure Stop on ACTStop // Do something end .DelayUntil function added DelayUntil _mymana > 100 .Unequip variable added that names the last item that was unequipped .Added in functions. String._mylevel added as a variable .A stability change was made to MoveItem and MoveAllItem . String. Should be MUCH faster and easier to use.You can now all AC Tool errors into Decal using the Macro/Send Macro Errors to Decal Menu option . It Exists! end .http://something is no longer consider a commented line even though it still displays as a comment line . .MAC file.Added new variables for determining damage type and location.GetScreen has been removed as a command from the system .. $TestMe 4. Also added the types to the INCCOMPANION.CastSpell can now accept a name or guid as a target .You can now configure F2 to start/stop or start/pause using the Macro/Decal F2 Pause Macro Menu option .inc/dec statements now work with lists .txt SendText 13.1.Updated the memory addresses for CastSpell and Mouse Movement . .ListToString for converting a list into a string ListToString List./actmouse copies MOUSEPOS and the current mouse positions to the clipboard . Delimeter .05/15/2002: .Improved error logging in the Companion .Big upgrade to the Spell List.Procedures can no longer be defined with the same names as constants or other procedures .IF SPELLEXISTS now works with names and numbers . Add this parm on and it will only move items from this pack .New portal spells added to the AC Tool spellbook .04/09/2002: .Keydown with shift/alt/control keys should work properly now .Fixed several problems with _trader variables./actguid displays a selected item's guid and loads it into the clipboard .Updated the memory addresses for CastSpell and Mouse Movement 4.04/11/2002: .A Companion.Added Spell List to the Help menu and it now shows the spell index .02/09/2002: .Several instances of using constants with lists was not working .Added new function ListIndex for searching through a list 4.mac to version 1._LastDeath should be working now .2 Release .Max mana reduces when The focusing stone is equipped .03/13/2002: .4.1.Made several corrections to the help file 4.02/12/2002: . Should be working now .CastSpell is working again .Multiple items were not adding to the money and value trade variables .Pasting into the find window via Ctrl-V has been fixed .05 .1 Beta RC11 .1.3 Release .1.Companion was not loading from a stupid last minute change 4.5 Release .Updated the memory addresses for CastSpell and Mouse Movement 4.Test logging with SendText much better .1.02/15/2002: .1 Release .FindText commands now load {PluginResultAdd} with the sender name .1.1 Release .1 Beta RC10 .log file is now generated everytime you log a character into AC 4.4 Release .02/10/2002: .Updated the mouse memory addresses with this release 4. Check it out under the help menu .Constants were not being reported as undefined when they should have been. Use $$ to get a $ in a string ($$100 prints $100) .Psi's Universal Mouse Position (UMP) included with this release.MoveAllItem now takes an optional final parameter PACKNO.02/08/2002: More fixes to the MoveAllItem and MoveItem commands Attempted to stabilize the plugin even further Updated incUI.Fixed the newly created Shift KeyDown bug .Max stats should now be accurate when you have vitae .More corrections to the help files .Install should overwrite Companion now .UpperCase and LowerCase string functions added . _vendorcount variables added to the Companion .You can now reference lists as a constant ($testlist[1]) ./actcmd can now accept text parameters ex: /actcmd ilikecam .Better error logging in OnNetEcho .VendorSelect selects vendor items by name .1 Beta RC8 .Fixed a bug when defining constructs with spacing (test = list) . GetTickCount is terrible for timing loops.Companion should be MUCH more stable now .01/31/2002: Screwed up and released the wrong plugin in RC6 New /act commands should no longer give the "this is not a command" Slightly better error logging in the Companion Fixed some of the Companion Log data when in test mode 4. delay.Fixed the spelling error with Cobalt in the component functions .Fixed the {PluginResult} sometimes being 0 when it shouldn't .MoveAllItem now only moves items that are not in the destination pack .1 Beta RC6 . all) Type is optional and assumes all if you do not enter it .MoveItem will not return until the item is moved .) 4.ListCount could not use a constant for a list name .New command that allows the internal counter for an EVERY procedure to be reset has been created.02/05/2002: .A few more attempts to stabilize the Companion and World Filters were made 4.Made some adjustments to select and selectmine . taper.MoveAllItem should be more consistant now .MoveAllItem now takes an optional final parameter called ALLPACKS. etc. an error was generated in companionerror.Better CheckComp SplitPea message .VendorOffset selects vendor items by offset 4.ActCmd procedures may now be called using Call .New function called MoveAllItem works like MoveItem except it moves all items of the same or partial name ..Minor help file updates have been done .1 Beta RC9 .MoveAllItem should be more effecient and consistant now . It was throwing the Delay statements off by 0. scarab.SetMinComp N. use TimeGetTime for accurate timing ._vendorselected. ResetEveryProc PROCEDURE . herb.Using plugin commands could cause macros to stop processing basic commands (keys._myvitae.1 Beta RC7 . _mymaxmana.Found a novelty in Windows. _vendorguid.02/02/2002: . Type (powder.4 seconds in some cases. For you Window programmers.SetMinComp statement could not use a constant for a component name . _mymaxhealth. Add this parm on and it will not check the destination pack when moving .01/30/2002: . _vendorvalue.Whenever items were moved around in inventory.MoveAllItem does not return until it is done moving items .log and caused other odd problems .Using constants to reference lists was not working in SetConst .More help file updates including the colors available with SendText . _mymaxstamina not syntax highlighting . talisman. 01/26/2002: Fixed an application error when updating memory addresses ClearPluginVar is no longer case sensitive Compares of empty variables in IF statements should always work now Added a new menu option under the Help menu to download the latest mouse memory coordinates . . 1 .01/27/2002: .SelectNext selects the next item from a Select or SelectMine .CheckComps SplitPea now returns "Need PEANAME" or "Need Hyssop Pea" . Works like "saypaste /think" SendText 12.Corrected Lapis Lazuli in the component functions .Few more changes to stabilize the plugin and attempt to solve the AVs when exiting AC .CountMine not counting some items that did not stack . Returns NOT FOUND if the item wasn't in inventory .CSV in the AC directory (not the AC Tool directory) .Combat state in CheckComps Splitpea is only checked when there is a component that needs splitting .Starting AC.Made some source code changes to prepare the source code to release at the same time as release of AC Tool 4.SelectNext was added as a keyword and into the help . Slot.Added a new commmand called SendText.You can now use Item IDs in the UseItem.New event type added. Decal. 0. SendText sends colored messages into AC and does not show them to other players or use the text line in AC to convey the messages.GetComp and GetMinComp were pulling up the Resolution window when being selected from the Command TreeView . MoveItem. PackNo. Test SendText Message . and AC Tool in a certain order produced a crash. You can now type /actcmd n (n = some number) and run a specific procedure inside of AC Tool procedure TestMe on ActCmd 1 saypaste Hello! end while 1 = 1 ProcessMessages Delay 200 end . Stack MoveItem Focusing Stone.1 (2-10-2002 currently) 4.Even more cleanup changes to the help file .CountMine returns a total count of all items in inventory including multiple stacks../actinv dumps your inventory to a comma seperated file called INVENTORY.MoveItem works! MoveItem ItemName.1 Beta RC5 . 1.CheckComps SplitPea didn't have a necessary delay after a split .SelectMine can now use PACKX SelectMine Pack1 SelectMine Pack2 4. and HaveItem commands .1 Beta RC4 . Self should work now Beta RC1 .) .ListDelete function was deleting incorrect entries .Added a fix to lesson the odd 0 returns from the Companion when calling HaveItem (didn't eliminate) .Included a new version of incUI.1 Beta RC3 .Changed the Max Comp statements to Min Comp statements (GetMaxComp is not GetMinComp. You will no longer get the spell list when you select CastSpell from the Command Tree if you use these parameter .mac . it returns "IN A COMBAT MODE" .CheckComp SplitPea now verifies there is a pea to split or {PluginResult} will contain a "NEED PEA" value .01/20/2002: Fixed the EXIT error message when aborting a macro Fixed negative numbers not comparing properly I think I finally fixed _targetXXXX (pain in the arse BTW) I found a nasty Decal Filters bug and created a work around to solve possible problems with Select and SelectMine . FindNextText."Attempted" to fix CastSpellDelay Beta 7 .CheckComp tests the CombatState to make sure you are not in a combat mode.CastSpell should work with the January patch .Slightly faster CastSpell function 4.Various minor help file corrections .Made a few changes to the plugin to hopefully eliminate the AV that is occuring on several computers when exiting AC .mac and incNav. If you are.CheckComps Splitpea was not working for most components . etc.01/17/2002: COMPANION.01/23/2002: .1 Beta RC2 .UseItem XXXX.A few more updates to the help file have been done 4.End statements Updated the help file to include Companion Help Updated the IF help to reflect the new Companion function SpellExist Updated the contents section of the help to display the new commands Fixed several bugs and mis-statements in the help file Companion variables are now syntax highlighted and load the Companion help when F1 is pressed 4. .The Companion Comp statements have been documented in the help .1 - .Added the -nospell parameter for faster AC Tool loading..Several help file changes .1 - 4.Fixed a few bugs with the syntax highlighting .GetComp now includes the Peas .INC now includes the Constants. FindTextClear Corrected several mis-statements in the Help and include files for the Decal Companion .This should be fixed.01/19/2002: IF EOF should now be working "Attempted" a fix on the _targetname and _targethealth Fixed various problems running macros via /actstart and F2 You can no longer use the EXIT statement outside of a Procedure MacE in the CastSpell form has been proper cased to Mace Corrected the Beta 7 Release Notes for FindNextText and FindTextClear Corrected the help examples for FindText. open portal . Uses the same params as FindText.01/17/2002: Logic added to insure constructs exist before they are used ListClear function added for clearing lists LoopNo should now always report the correct loop count Added ArcSin and ArcCos funtions the Compute statement Constants inside of list [] works now Read and Write registry were not always reading and writing properly Clicking New Macro now prompts you to save changes before starting a new macro Updated the _CombatState to reflect properly in the status bar The ' was being sent as the " key StrCopy now works properly with CONSTANTS Companion knows when AC Tool Starts and Stops. is Say $Test . It uses two parameters. a CastSpell will wait until _spellready becomes 1 and wait the amount specified by the command CastSpellDelay 200 CastSpell Strength Other I Say I should be ready to cast another spell CastSpell Strength Other II .. SERVER.CastSpellDelay command is an attempt to delay until you are ready for another action.. TEXT). TELL) and the second is what you are searching for. is not. F2 key reflects this You can no longer load a macro via the Companion if the current macro isn't saved Attempted a fix with PluginResult returning zero when it shouldn't _MyVitae should return the proper amount now Fixed _xp variables not returning the correct information _heading now reports in degrees Plugin should send commands faster now .Added FindTextClear to clear out all the accumulated text in the list Requires only one param which is the log to clear (CHAT. Allows the macro to replace a value with another value within a constant StrReplace $Test = Cam is not cool.StrReplace function added. The first is the log to check (CHAT.1 _selectedGUID should return the ID of the object currently selected SelectGUID command allows you to select items based on their IDs Fixed several problems with setting the color and fonts for the editor Attempted a fix to the _myvitae variable.{EOF} still works. FindTextClear TELL 4.Added FindNextText to find any text since the last time FindText or FindNextText was called.. By setting this to something other than 0. It returns either TEXT NOT FOUND or the full text line you were searching for. let me know Beta 6 . open portal . SERVER. but added in IF EOF LISTNAME functionality . FindText TELL. FindNextText TELL.FindText now works. Beta 5 4.01/13/2002: UseItem was not passing parameters to the Companion properly Improved plugin logging added to the Test Log SetConst now allows you to concat strings with the + seperator SetConst Test = This + + is + + a + + cool + + feature + ! Double pluses add a space between constants . CONSTANT {EOF} Constants Test=NoData end Opens a file Closes a file Prepares a file for appending text Empties a file and appends text Prepares a file for reading Reads a line of a file into a CONSTANT Writes a CONSTANT into a file End of File marker from last FileRead Add a data item to a list Deletes a data item from a list The list count is loaded into a constant Sorts a list alphabetically Turns off the alphabetical sort Load a list from file Save a list to file .Includes the latest version of the plugin .Some of the Status Bar help was reporting incorrectly . CONSTANT FileWrite FILE.WriteRegistry was not showing up as a keyword .SaveScreen allows you to save the screen to a file .1 syntax . Created a new group named Companion Commands that contains the Companion commands ..1 Beta 5 .Rearranged the Misc Commands in the Treeview. DATA ListDelete LIST.GetAttrib and GetSkill brought up the MOUSEPOS selection screen when picked from the Treeview .Updated the help file with all the new 4.Added in the following List Functions: ListAdd LIST.Select command should work properly now 4.When starting a New macro AC Tool didn't check to see if the macro loaded needed to be saved first .Added in the following file funtions: FileOpen FILE.1 Beta 4 . FILENAME Constructs ListName=List End ListAdd ListName.01/13/2002: . CONSTANT ListSortOn LIST ListSortOff LIST ListLoad LIST.ListDelete was removing the wrong item . INDEX ListCount LIST. Test1 SayPaste ListName[1] . FILENAME ListSave LIST.Fixed a parser problem with Companion variables in the Compute . FILENAME FileClose FILE. FILENAME FileAppend FILE FileRewrite FILE FileReset FILE FileRead FILE.Fixed the IRC command and IRC logging . 1 Beta 2 .Companion variables were sometimes losing the last character and returning an invalid constant . Both are now valid Removed the location variables.01/08/2002: .mac and Companion.inc was changed to INCOMBAT.Fixed a bug where the MousePos screenshots were not always displaying .XML to COMPANION.XML AC Tool now displays limited help in the status bar when the mouse hovers over a Companion variable in the treeview Install now correctly reflects the name of the AC Tool Decal Plugin.XML file to include all the new variables Changed the name of PLUGINBRIDGE.Constructs file1=File file2=File end FileOpen file1.2 . $Test Say $Test if {EOF} = True Break end end FileClose file1 FileClose file2 . It says AC Tool Companion Changed tabstops in editor to go in 2 characters rather than 8 When in Test Mode.Added HasItem into the treeview .inc.Updated the install to include the Companion version 3. 4.txt FileOpen file2. you are now prompted for the plugin values Significantly better logging in the test log for plugin data Double clicking on functions in the Treeview inserts more useful commands and parameters in the editor for certain commands Parameters are now being sent to the Companion the way they are entered Status bar was not updating properly when the time changed GetAtrib function added for fetching character attributes Variables with the "_" now work properly Problem with constants being replaced twice in IF statements causing performace problems . You must use the Companion variables Updated the PLUGINBRIDGE.01/07/2002: Finished adding in all the commands and variables to the Treeview Changed {Loop No} to {LoopNo}.Eliminated the conflict between incUI.txt FileReset file1 FileAppend file2 while 1=1 FileRead file1. Test FileWrite file2. c:\old. COMBAT in Companion.1 Beta 3 .The FAQ has been updated to the 4 syntax with some other extras 4. c:\new.Fixed a bug when NOT FOUND was returned in Plugin Result it hosed the Plugin until you logged out and back in . 0. Example: ReadRegistry $Const = CURRENT_USER.LOCKPICK changed to LOCKPICK_SKILL inside COMPANION. pressing cancel now stops the macro . {Year} variables have been added ReadMemory/SetMemory functions added allowing users to read and write DWord values from a running process. Microsoft\Internet Explorer\TypedURLs.Removed the Capture Keystrokes functionality since the new plugin supports it better and on all platforms . Fixed a bug with the incUI. Examples: ReadMemory $Const = 005D7718 SetMemory 005D7718.Microsoft\Internet Explorer\TypedURLs.01/06/2002: StrCopy was returning strings in uppercase Contains keyword searching was case sensitive Editor no longer allows characters to be entered into the memo when running $ParamX constants now work properly when not numbers Popup resolution window when selecting MOUSEPOS now works incUI.mac version 1.com nt .onlinegamegimp.www.url1 WriteRegistry CURRENT_USER. PasteClipBoard functions added for clipboard management Fixed a bug with the EXIT statement causing an infinite loop CastSpell allows the user to cast a spell: CastSpell Item Mastery Self I UseItem allows the user to use a specific item: UseItem Alembic.1 Beta 1 . {Month}. {Second}. url1. {Day}.StrPad function to pad a string with spaces was added ..mac extension for itself.ReadRegistry/WriteRegistry functions have been added allowing macros to read and write string values from the registry.The install now deletes the original AC Tool Plugin .0. Compone .mac menu settings just got reset On certain machines.When in test mode and being prompted for a plugin variable.MoveItem moves an item to a certain location: MoveItem Item.Substantially better error trapping when program exceptions are encountered . 32 . SetClipBoard.0) of the AC Tool Decal Companion with this release {Hour}.SpellExists keyword added for detecting if a spell exists: if SpellExists Item Mastery Self I CastSpell Item Mastery Self I end . Slot. Pack. Stack (0 or 1) .01 included with this version Included version 12 (now known as 1. sending keys didn't work properly (I slowed down the key presses) Added in SayPaste function for a much faster Say Command GetClipBoard. {Minute}.StrTrim function to trim a string of beginning and ending spaces was Include files can now have include files AC Tool now registers the .INC 4. Fixed icon not showing .Can now pull up context help while in the treeview .Start/Stop menu items didn't disable when macro was done.Fixed a problem with AC Tool being associated with .Successful memory address update message added .Left some debug code in that was creating a c:\test.Added help graphics to menu/tree . Y | 100) was not working properly .mac 4.12/16/2001: .Selecting CastSpell from the Commands and Macros Tree pulls up a list of spells .SelectMine keyword added for selecting specific items in inventory: SelectMine Alembic .Fixed a bug with Continue statments inside of IF statements .Due to more front end loading.Updated the install to use version 10 of the plugin 4. created a pretty splash screen .01 Release .Added new graphics to menu/tree .added .FindText keyword searches the full text buffer: if FindText Cameron is cool SayPaste Cam is the man end .Adding Delays after some commands (MousePos X.Select keyword added for selecting specific items: Select Alembic .03 Release .Added URL links to the menu .12/15/2001: .12/16/2001: .Fixed a problem with the (* *) blocking comments .Multiple Plugin Variables were not always working .HaveItem keyword added for detecting if an item exists in inventory: HaveItem Alembic Realgar if {PluginResult} = OK UseItem Alembic Realgar end .02 Release .Using constants in the EVERY statements was not working properly 4.mac file .01) .Using the Sec/Min keyword was not working in Every statements .Opening default macro on startup now sets the current directory to the directory where the macro is located .GetSkill keyword added for returning skill values: GetSkill $SkillAxe . fixed .Bookmarks are now removable by clicking the gutter while on the bookmarked line (actually fixed in 4. 12/10/2001: . SetActiveWindow is automatically added into the macro for users 4.Ipa's UI independant macro now included with AC Tool.Fixed a nasty bug with the SetConst function 4. the extra edit box remained Corrected the help file and SetPluginVar example A check was added for multiple constants of the same name 4.Major optimization done to the compute statement.Actually put the updated help file in the install rather than just changing it 4.When starting a new macro.12/09/2001: .Fixed a stupid bug when including INCUI.12/09/2001: .Problem with IF statements have variables with "and"/"or" in their text .0 Beta 12 .0 Beta 10 .12/10/2001: ElapsedMSec and Loop No were not being used properly in the Compute Contains keyword was required to be uppercase.Added the backup files on overwrite option into the install 4.. They were not being replaced in most situations .AC Tool Decal Plugin now installs properly 4.0 Beta RC3 .0 Beta 13 .Macro now checks to see if incui.mac to Version 1 Beta 7 Fixed SetPluginVar not setting the value in the registry properly Fixed a couple of bizarre problems with SetConst After invoking the SetConst input form.MAC automatically .0 Release .0 Beta RC1 .mac is used before automatically adding it to the macro .Increased the performance of several of the internal functions .mac to the latest version .12/11/2001: Extra logging of the loc data has been fixed Increased overall performance when replacing constants and variables AND/OR statements added to the syntax color coding WindowWidth was not being properly handled in the COMPUTE statement Updated incUI.Improved SetActiveWindow logic when a macro doesn't contain the command word .Optimization in RC2 broke INC and DEC . Fixed Say is a little faster now 4.Ipa's UI independant macro now included with AC Tool .0 Beta 11 .12/11/2001: ..0 Beta RC2 .12/14/2001: .Updated incUI.Fixed a newly created bug in Constants. Macros using it should notice a 20 x performance increase .Added the ability to set the printer font under the Editor menu .12/08/2001: .4. Really! . Updated the About AC Tool display .Removed all the other resolution specific items from the menus . and Constant List search through Include files 4.Help system now contains a list of Standard Constants that are included in the resolution macros . The Pause/Resume functionality would be lost .Yet another attempt at fixing the printing was done . Example: Procedure NewActiveWindow On WindowChange // without a Stop in this procedure. the default behavoir is to stop the macro.Updated the install to optionally install the ACTool Decal Plugin without running through another install . If this event is not coded.Fixed the {} variables not working the the Compute statement .11/30/2001: The spacing problem with COMPUTE statements has been fixed Plugin variables can now be used inside the COMPUTE statement Using SETCONST with = and . an AC Tool command is issued and the active window has changed from the previous SetActiveWindow this event is called.The @/Alt keystroke has been added to the Treeview under Shift/Control Characters 4. {WindowTop} and {WindowLeft} .Float or Real Numbers are now -8 power of ten precision also known as rounded to 8 decimal places .Added the ON WindowChange keyword for procedures.Fixed a bug when hitting the Pause and then Stopping the macro.SetPluginVar command added so users can initialize plugin variables .Moved Procedure List under the Search menu .Inc/Dec statements now work properly when the user puts the $ in front of the constant . They work like Procedure List . you will continue running End .GetScreen is no longer needed and used for backward compatibilty and saving the bitmap when turned on in Test Mode .Control-L now pulls up a procedure list for quick navigation . characters was causing strange problems Made another attempt at fixing the Printing Problem.11/14/2001: . Object.Inc/Dec statements now stop the macro and report an error if the constant cannot be found .0 Beta 9 .0 Beta 7 . Whenever. Let me know what if it still doesn't work .Plugin Variables moved to ACTool\Plugin in the registry .3rd Party programs can now Pause and Resume AC Tool via messages .Procedure.Added new variables called {WindowHeight}.The install optionally installs OnceBitten's/Rick Van Prim's AC Tool Plugin 4..Added Object and Constant List.Several corrections to the help system were added .Ipa's UI independant macro accessible from the Macro Menu for automatic inclusion into a macro .0 Beta 8 .New variables added into the registry under ACTool for developers .11/15/2001: . ProcessMessages has no effect on this event. {WindowWidth}. Now checks the macro prior to a version 4 conversion.Fixed a bug with removing the AC Tool registry key on startup .Now only asks to save when a change has occured since the last time you saved . Example: constants Name=Cameron end procedure TestName when $Name contains meron say Meron is here! end if $Name contains Cam say Cam is here! end .Underscores in procedure names now work properly .The | Delay behind commands was not working correctly for certain commands (keys.If you don't specify a Window at the top of your macro with SetActiveWindow. {ScreenHeight} and {ScreenWidth} are the height and width of the current window . it asks to make sure you want to perform the conversion .Cut/Copy/Paste/Delete/Select All keyboard shortcuts should now work on all the edit controls rather than always the Macro editor .Procedures can no longer begin with an underscore (_) 4.When you get a compile error it highlights and takes you to the line .While and Loop statments were not being properly executed.11/13/2001: . Problem should be fixed now .10/30/2001: .0 Beta 3 ..11/02/2001: .You can now run macros in test mode.4.A new function ClearPluginVar has been added.Attempted fix for Preview and Print functions in AC Tool 4.11/01/2001: .Added to new special variables..{Loop No} was not working properly in certain loop circumstances . say. If it detects certain keywords in the macro.A new boolean evaluator has been added called CONTAINS. and a few others) . This allows you to test if some text exists in a variable or constant.Further sped up the SAY command and other keyboard commands .0 Beta 6 .Access Violation when moving mouse over the new AddOn items in the Commands and Macros Treeview .Added back in the Screen Constants menu options .Removed MOUSELOC and added the negative offset functionality to MOUSEPOS . It allows you to clear the contents of an AC Tool Plugin Variable .Removed the automatic window selection and pre 4 macro conversion now adds the SetActiveWindow at the top of the macro . it defaults to Asheron's Call .0 Beta 4 .0 Beta 5 .Fixed multiple SetActiveWindow statements in a macro not working properly . Oops! .Updated the help on the negative Coordinates for MousePos 4. 10/28/2001: Copy Text will work in all the edit controls Move command bar to right now works properly Procedures can no longer be nested within other statements The syntax for AC Tool has been changed.Fixed the pre 4 macro converter to [ENDIF] statements properly . Example: KeyDown {SPACE} 500 .IRC functions should work properly now . y [ELSE] [ENDCOLOR] IsRed x.Cleaned up the logging command to make it more effecient .Added the ability to specify macros to run via AC Tool Decal Addon . 4.Fixed the pre 4 macro converter to convert objects properly . y Else End :loop while x < 1 :end loop while x < 1 end ` // Enter combat mode Keys ` //Enter combat mode [SETCONST] x = 1 SetConst x = 1 [COMPUTE] x = $y + 5 Compute x = $y + 5 A full conversion is provided under the Macro menu .10/29/2001: .Fixed the pre 4 macro converter to [ENDCOLOR] statements properly . StrLen.Updated the help to reflect the new commands and fixed a few typos .0 Beta Release .You can now use variables inside Procedure Every/When statements 4. Here is a small sample of the changes: [ISRED] x.Added the new functions StrPos..0 Beta 2 . See online help for description and examples.It was possible to have Procedure and If statements without corresponding End statements .EVERY was not being syntax highlighted in the editor .You can now press the Test Mode indicator on the Toolbar to activate Test Mode . and StrCopy.KEYDOWN command allows the user to press and hold a keydown for a specified amount of time. .Fixed several macros that come with AC Tool that were improperly formatted.Using Object code no longer reports "Too many end statements" .Removed the Repeat command since it was a poor version of the new KeyDown function . You can now type in /stm for /startmacro .New menu option under Macro .New statements have been added for manipulating the active windows IsWindow Asheron's Call // Checks to see if their is a window SetActiveWindow Asheron's Call // Brings the window to foreground . .2 Release . Procedure IsAlive When $X = 5 // Some code goes here End Procedure These procedures will be checked whenever ProcessMessage is called.Users reporting a password to install AC Tool should no longer have the problem . The number of times to run is now optional.Keystrokes inside of AC should be working for Win9X and WimME users .AC Tool now searches the Macros directory when including files 3.ISBLACK and ISGREY can no longer both return true . For excample.New variable has been added for checking the active window if {ActiveWindow} = Asheron's Call // do some code here end . .A new macro setting named [COMMANDDELAY] allows a user to specify an N millisecond delay between the next command processed . "[SAY] Cam is Cool! |5000" will say Cam is Cool! followed by a 5 second delay. This should work correctly now .ISRED/ISBLUE/ISGREEN cannot be true when ISBLACK/ISWHITE is true.Comprehensive documentation for every command is now included with AC Tool .You no longer need to key in the amount of times to run /stm.You no longer need "~" in order to type uppercase characters on certain special characters.Adding the keyword EVERY N. For example. behind the name of a procedure will cause that procedure to be run every N milliseconds .Test Mode named Run AC with Color Test Log..Fixed the install so that it no longer forces the install to "C:\PROGRAM FILES\AC TOOL" . This option logs the success and failure (more importantly why it failed) of objects and other color test commands.Several new error messages should make debugging your macros much easier now .You will now be prompted to Save your changes before overwriting a macro . .Ported source code to Delphi 6 .The registration message for PlusMemo when running AC Tool is gone .Fixed a bug with testing decimal placed numbers.The {HEADING} now works with the SETCONST/SAY properly .Users may now comment out several lines of code at a time with the (* *) block statements .08/13/2001: . Syntax: .Adding in | (pipe symbol) followed by N milliseconds on a command line will cause a delay of N milliseconds after the command runs. .You can now add the WHEN statement after procedures. . Strings must be wrapped with " characters if the word "and" or "or" are inside the string.Added DEFAULT button for memory addresses (I hate making a typo. Examples: [IF] $Field1 = 1 or $Field2 = "Me and cam" [IF] $Field1 = 1 or $Field2 = I like cam . You can find it under the help menu.Test mode is working again .[IF] checks can now be numeric or string.Resolution (for use in picking coords from graphic) is now autodetected .Fixed the right click paste command . great to use when starting up a macro after you've logged in .fixed .Changed [ISWHITE] to return true if all RGB values are higher than 220 .07/12/2001: .Changed [ISGREY] to return true if the RGB values are within 10 of each other and between 50 and 220 ./stm 5 test /stm test /stm /stm 5 - Runs test 5 times Runs test 1 time Starts the currently loaded macro and runs it once Runs the currently loaded macro 5 times . . The old object format should work fine also.{Loop No} in the :LOOP WHILE is fixed . LOL) .Added in a new variable called {heading} which reports the ch aracters current heading.maximized your chat window. It does this now by default.Under certain scenarios. .Added [EXPANDCHAT] .Fixed problem with Dagle's fizzle includes not working .Multiple objects using the '|' to seperate them should now work properly . post a message on the message boards.Changed [ISBLACK] to return true if all RGB values are lower than 50 . If you can't find what you are looking for. added in the ability to click on the pasted screen to get the coords.Clicking on macro commands in listbox. Should be easier to use now. .Added {niceloc} which reports your coordinates in same format as you see inside AC's map window . This should be fixed now . saving the previous settings when exiting AC Tool wasn't working properly. now shows help inside the statusbar .1 Release .The Object Primer is now included with AC Tool compliments of Sauron. 3.The :LOOP WHILE code should be working properly now . then hosing my whole program.0 Beta 15 . I haven't had time to clean this up from the MS DOC format it was supplied in yet. 3.Moved around some items on the menu. Users will also have to change this in the the memory address screen after some AC patches .Added in a user-definable object variance using the [OBJVAR] command.Clear test log button broke .Cleaned up the Object Mapper. You simply key in the amount of color variance both positive and negative you would like when your objects run. Also.Added Word Wrap option .Objects can be generated with | symbols between the coordinates for shortening. fixed . . add.New editor interface . and clock .Added bookmarks.Configurable syntax colors ..03/23/2001: .The memory location for coordinates in the game is now user configurable.DAT.Added various graphics to buttons .Added Cancel option when closing program.- Selecting whole line did not enable Copy/Paste menu .Added new key: {KEYPAD .Added warning before clearing all text.Window list was showing hidden windows .Added No Syntax Highlighting option . Great for you windowed mode folks! 3. This file may be given to other users.If/Then had a problem with "<>" and ">=" . Go to the menu option Memory Addresses to edit.Added command [MouseIDItem] .fixed .Now shows LoopNumber.Move command bar.{SPACE} was added to the functions of AC Tool .Syntax highlighting changed .Added Standard Template Library for resolutions.Added some begin and end update handlers to avoid flickering . Go to the menu option Memory Addresses to edit. .fixed Modified memory addresses default to match April 2001's patch Lengthened DRAGTO delay a bit Pause button didn't disable .Added Print and Print preview . etc. Also includes a Window List for finding the right AC Window .Added redo .Added ability to specify 2sec or 2min in your Delay statements 3. since that's not undoable :) .Added program parameters . to allow user to change their mind .Added the 1280x1024 resolution .Cut/Copy/Paste/Delete enabled/disabled based upon changes . adds bookmark when clicked .fixed Standard Constants menu now saves after exiting app Added Skip Memory Writes which won't write mouse coords to AC memory if you're using Win2k .Added :LOOP WHILE (multiple evaluations.New gutter shows line numbers. No more :include 800x600.Users can now specify the window that AC Tool will send its keystokes and mouse click commands.Added command [RandomTurn] .Added statusbar showing active line/colum.Added command [DragTo] X.Added command [DoubleClick] . and LineNumber the script is running.SendSingleKey was forcing Shifted chars .Added Use Bold Syntax option . remove all or goto next .0 Beta 14 .Added Export to HTML (with color highlights) . Just type the variable and it'll automatically be included.) . An encoded file is generated named MEMLOC.0 Beta 13 .. or hide it . chars selected.Added mouse wheel support .Y .fixed .} .Added ability to perform multiple IF statements on single line .Double clicking on window in winlist now presses OK . [ISCOLOR].Fixed yet another lockup inside of AC Tool .[TIMESTAMP] now retuns seconds and milliseconds .Enhanced the runtime performance of AC Tool.An error in the processing of nested loops caused [IF] commands to work incorrectly .Characters ".02/28/2001: .[END] statement recognition is no longer case sensitive .Corrected [BREAK]/[CONTINUE] not skipping past nested loops when [BREAK] not in an [IF] .Coordinates no longer double each time you go into the Object Mapper .Can no longer call [CONTINUE] or [BREAK] outside a Loop 3.02/25/2001: .Cleaned up the code to make it a little easier to work with. and [IF] statements with just [END] if you like ..Fixed two more access violations ." and "=" in constant statements no longer trip up [SETCONST] .02/28/2001: . [CONTINUE].0 Beta 9 .[ELSE] statements were not being recognized properly 3.Fixed some commands that only worked if keyed in uppercase .[EXIT] command should be working properly now .0 Beta 12 . Simply key in "Test!" and that is what will appear. [ISOBJECT].[STOP] command was added.Removed the [DELAY_KEYS] command and a couple of unused hidden commands . This is worth mentioning since I probably broke somethings during the clean up .0 Beta 11 . 3.Fixed the [BREAK].Corrected a few more [IF] [ELSE]/[BREAK] [EXIT] statement problems . When AC Tool reaches this command. It returns the number of milliseconds AC Tool has been running 3. Looping should be MUCH faster now .{ElapsedMSec} is a new variable in the system.Fixed the LOCATION commands not being recognized unless in all lower case letters . [GETCOLOR].Better Test Mode reporting has been added . [GETCOLOR].02/25/2001: .0 Beta 7 .Nested [IF]. and [ISOBJECT] type statements were causing strange branching to occur 3. [EXIT] functions to work properly .You no longer need "~" in order to type uppercase characters.02/24/2001: .Attempt was made to fix the black screen in the Object Mapper . "~test~1" will still be backwards compatible.Fixed the version dates 3./StartMacro X Filename should work correctly now (except on Win2k) .0 Beta 8 . AC Tool stops running .You may now terminate [ISCOLOR].02/25/2001: .Occasional incorrect display of the [DELAY] when adding it from the "Commands and Macros" listbox .0 Beta 10 . Y . {South}.Added Height and Width to the object mapper 3. You now must call [GETSCREEN] in order to load the screen for color checks. syntax highlighting (some comments may not highlight properly). etc.Added some new [ISCOLOR] routines that should be more stable.Start macros inside of AC really working now . I did a cheesy fix..0 Beta 6 . muli-undo with Ctrl-Z. You can now set bookmarks (Ctrl-Shift-1.Select All is now working properly .Windows 2000 "Stack Overflow" when pasting into the script editor has been fixed .The Beta version is now displayed on the Taskbar and inside the About screen . I will leave it up to you guys to figure out how to use them.0 Beta 3 .0 Beta 5 .Replace All had a bug where it would Replace forever if the replacing text was the same as the finding text. [CONTINUE].Only change . and lots more.Start Macros Inside AC Should now be working.Ability to run AC with the output going to the IRC channel has been enabled . smart tabs (indent by two. {West}.Constants can now have any character that isn't a-z.. Ctrl-1.02/17/2001: .02/19/2001: . Illiminated the ACTOOLHOOK.Test mode now reports mouse movement correctly.[BREAK]. Works like the [SAY] command only it sends the text out to the IRC if enabled .Test Mode staying checked after attempting to uncheck it has been fixed .Cleaned up the object mapper code to make it a little more user friendly .Added a checkbox for performance logging.DLL .Constants starting with Procedure no longer freak out AC Tool . .02/17/2001: .9. but it should work .Non-Numeric constants inside of a macro no longer cause the COMPUTE to fail . X rather than X. A-Z or 0-9 after them and still be recognized . Was showing X. [GETCOLOR]. highlight press tab).. {LocationBlock}.[IRC] command has been added.Start button not turning to the Stop button when complete has been fixed .A significantly better editor has been added. This will allow much better and faster scanning of a bitmap . {East}.02/17/2001: . [EXIT] no longer bomp out [IF] statements including [ISCOLOR]. Try the [ISRED] and see if it works for you . Enjoy! .The Object Mapper was truncating one pixel in the display .9). Leaving this off REALLY speeds up looping 3./* no longer freaks out the editor display 3. I will tell you that turning on Logging in AC will produce a TON of location text.[ISCOLOR] and [GETCOLOR] no longer do an AC screen capture automatically. 3.Location variables {North}.0 Beta 4 . POWER. GetBlue.02/14/2001: Macro memo can now edit macro files up to 2 gigabytes (in theory) Added an Abort to the Test Mode with [ISCOLOR] prompt Added milliseconds to the macro time Keyboard capture commands now work in Windows 2000.New [GETCOLOR] (GetRed. INTPOWER. ^ . IRC Client has been added. CEIL. . GetGreen) have been added.Fixed the :LOADFILE and :DELETEFILE not functioning properly in an [IF] statement . TAN. :PAUSEMACRO. Instead. * . -1 for x<0).mac). LOGN. MAX.A new test mode was added that obsoletes the Commands and Keystrokes log.2*pi*round(x/2/pi)) RND (rnd(x) = int(x) * Random) RANDOM (random(X) = Random. MIN. Currently.0 Beta 2 . the argument X is not used) 3. / . ZERO (zero(x) is 0 for x=0. SINH. You will be able to the following commands (see CONSTANT. :STARTMACRO. This runs the macro in AC as usual.[TIMESTAMP] XXXXX now records on the Test Tab as well .Redid the Object Mapper to make it a little easier to use. :STOPMACRO.MAC for format): Accepted operators: + .Another lock up was found and fixed inside of AC Tool . SQRT. This is a first pass just to see if everything works properly.Start Macros Inside AC no longer eats up memory tons of memory while AC is running . SIN. :STATUSTOOL.Infinite recursion bug has been fixed . and :RESUMEMACRO are supported ..You can now use constants inside of [ISCOLOR] commands . it doesn't matter if you use lower or upper case: COS.0 Beta 1 . LOG10. ABS. HEAV (heav(x) is =1 for x>0 and =0 for x<=0).. ARCTAN. PH (ph(x) = x . SIGN (sign(x) is 1 for x>1.You can now nest up to 500 levels deep in if statements . FLOOR.02/14/2001: Fixed the font sizing not working properly Changed around the Macro menu to make it a little easier to navigate Corrected the text on the menu option "Start macros inside AC" You can now do real math via the [COMPUTE] statement. TRUNC. but also logs the keys to the Test Log tab just . When selecting a Test Mode a label appears in the upper right . EXP. ARG.The Test Tab is always visible now. Additional functionality will be added later. COSH. SQR. By including a coordinates file (1024x768. You can access it from the Advanced Options|IRC menu option.A new command [EXIT] jumps out of a procedure immediately . INT. COTAN.Plugged a couple of memory leaks . use "Test inside AC" under the test modes. . DIV (MOD and DIV implicitly perform a trunc on their operands) The following functions are supported. LOG2. LN. This allows you to test the color of the pixel at a specific location. 3. 0 for x=0. 1 for x<>0).Beautify Macro now enables the save button . MOD. you can zoom in on the exact coordinates and map them. [ISWHITE] and [ISGREY] [ISRED]/[ISBLUE]/[ISGREEN] no longer return true if pixel color is black. or grey When selecting Test Mode it was checking the wrong menu option Cleaned up the FAQ and added several new topics Fixed a bug on 95 machines not restoring the previous settings Pressing ENTER in the Commands and Macros listbox will produce the correct AC Tool syntax just like the double click Substantially better RTF cut and paste code has been added for copying macros from message boards 2. white.5 Beta 3 .like the other Test Modes. .[ENDCOLOR] was not stopping the [ISCOLOR] commands and was sending the letters to the macro .5 Beta 6 .Moved "Test Only" to the Macro|Test Mode menu .Hex Addresses for the mouse positioning are now editable.A new test mode was added for asking if the [ISCOLOR] should be true or false (very cool for debugging) .5 - 2. . Careful not to run macros overnight in this mode since it really eats up memory.MAC macro for an example of how this function works 2.02/12/2001: :Call inside an [IF] statement now works correctly Unterminated [IF] and [ENDIF] statements now give an error Several strange access violations have been cleared up Another locking problem was found and fixed Additional changes to the testing code to make it even easier to test macros Beta 4 .02/11/2001: .. Go to the menu option MOUSE_POS memory addresses to edit these.:Loops inside of :Loop 0 were actually running.02/12/2001: .STUPID. This file may be given to other users. Use it for testing and debugging macros only .Added in a new menu option for debugging the [ISCOLOR] commands.Fixed the problem with the Start/Stop button not working properly . This new option saves the AC screen to a file .02/11/2001: Revamped the test mode to work MUCH better than before Three new color commands [ISBLACK].Save Bitmaps from Color Commands menu option now logs the results of the color test under the Test tab 2. STUPID.Fixed the problem with running in Test Mode then turning it off and it staying in Test Mode .5 Beta 5 .. STUPID. This should no longer occur .. I made a stupid mistake on the color test in a recent release. It should be working now..Object files have been added to AC Tool in order to identify an object by color.. An encoded file is generated named MEMLOC. Under the Macro|Test Mode menu a new option exists called "Save Bitmaps from Color Commands".DAT. This allows me to distribute future patches without recompiling AC Tool in case the mouse coordinates are incorrect. Please see the included OBJECT.. [IsGreen]. For example: :Loop 9 [IF] {Loop No} = 5 [CONTINUE] [ENDIF] {Loop No} :End Loop Output = 12346789 Notice the 5 is missing . Follow each command with the X and Y coordindates for the corresponding point on the screen. if the pixel at 10. . and milliseconds Fixed hotkey conflict with the Start button and the Search menu You no longer have to forward define procedures Validation of constants was added to [SETCONST] :LOADFILE XXXXXX allows you to add an include file when the macro is running. [IsBlue]. For example: :Loop 10 [IF] {Loop No} = 5 [BREAK] [ENDIF] {Loop No} :End Loop Output = 1234 Notice the 56789 is missing . This check is done as the macro runs rather than when you start the macro. If the file :LOADFILE cannot find the file.02/10/2001: Fixed the About screen to point to the included FAQ Added included FAQ link onto the Help menu Double clicking on [DELAY] allows users to key in minutes.Added in the [BREAK] command. seconds. This allows a user to continue onto the next loop iteration.5 - - Beta 2 .2. the macro continues on without stopping or warning. This allows a user to break out of a loop. 10 [SAY] we have more red than blue or green [ELSE] [SAY] we do not have more red than blue or green [ENDCOLOR] Each of the commands returns true if the selected pixel is closer to that color. In the above example. [SETCONST] can now look like this [SETCONST] X = 1 :Loop 0 now skips the loop completely Fixed the program so that after a paste it will not beautify Users now have a choice about font size "if" inside a constant definition now works properly Fixed bug with AC Tool using enormous amounts of memory Test mode no longer actually moves or clicks the mouse Test mode no longer delays on the [DELAY] command Added in the [CONTINUE] command. 10 is more red than blue or green it will return true and tell us we have more red than blue or green.New commands: [IsRed]. Here is an Example: [ISRED] 10. .Added in better Cut and Paste capability .Changed color of all the edit boxes to yellow on navy .12/15/2000: . etc.Moved Start Macros inside of AC under the Advanced Options for Experts menu .Sizing of controls is now corrected on startup . -10 goes 10 pixels from the lower right .Added a spliter bar to the main form between the macro and commands .AC Tool now restarts with the same size as when you closed it . Allows users to key in coords from the corners of the screen. Thanks to David Smith for the code .Users can no select the black text white background under the Macro menu . [MOUSE_LOC] 10..Image by Manix. [MOUSE_LOC] -10.You can use constants in the :Loop command now .Added in the [IF] capability.[REPEAT] command now works with the extended keys . AC Tool now works with AC December patch 2.3 Release .11/07/2000: Fix to the Win 95/98 Macro problem thanks to The One Added in the ability to Find and Replace inside the macro Additional refinement of the mouse movements Pause/Break key now suspends macros inside AC when Start Macros Inside AC is turned on Removed the "dummy panel" at the top so that users would have more room to see commands and space Vamped up the about screen .Thanks to Cyphersnow for the fix to the MOUSE_POS command.4 Release . [DEC] commands have been added to increase. nice job Changed all instances of AC Toolbox to AC Tool Users may now enter procedures inside AC Tool Fixed some display issues with entering the [SAY] command Added the [RESOLUTION] command which determines what resolution you used to enter the mouse coords Added the ability to set your resolution for AC. [DEC] no longer interrupt the [IF] command .Implemented the [MOUSE_LOC] function. This text file can include procedures. . For example.Made the main AC Tool form resizable . Just double click on the [IF] command for the syntax .2.[INC].Changed the font of macros to Courier so the text would line up better . 10 goes 10 pixels from the top left.[SETCONST].01/19/2001: .5 Beta 1 .Setting the value of one const to another now works correctly . [INC].The last macro you were working on will now be reloaded when you start AC Tool. decrease the value of a constant by 1 2. constants. This automatically scales the mouse commands in AC Form sizing of AC Tool is now much improved The application ICON is now AC Tool instead of AC Toolbox Fixed some procedure loading problems Added constants to AC Tool [SETCONST] now allows you to set the value of a constant on the fly [INCLUDE] FileName will insert a text file into the macro. Performance tab now tells you when AC exited and a macro was running 2. The macro will the execute X number of times. users can type '/STARTMACRO X FILENAME' where X is the number of times to run the macro.2 Release . fixed all of the other keyboard problems in AC Tool You can now put strings of text on one line rather than one character at a time Added edit menu options to facilitate cut. .09/08/2000: Typing text in the chat window now works properly Hopefully. - .Users may now click on the Pause button to suspend execution of a macro . The FILENAME specifies a saved macro in the same directory as AC Tool.Moved Clear from the File menu to the Macro menu . Added in MOUSE_POS for users on Windows 2000 who can use this function.Added in the [TIMESTAMP] command that adds in the date/time into the log on the performance tab.Users may now click on the Resume button to resume a suspended macro .Performance tab now shows hours/minutes/seconds instead of seconds . copy. paste. and undo Rewrote the keyboard handler to be more effective when using movement keys.Users may now type /RESUMEMACRO inside AC to resume a suspended macro .Logging of Keystrokes and Commands is no longer turned on by default . This also is in milliseconds Removed the quick key for exit since it conflicted with the cut Fixed bug with the :Loop that caused it to send :Loop as keystrokes Certain scenarios with the :Loop would cause AC Tool to behave strangely {Loop No} now works and counts properly Added in the BELL command.1 Release .Fixed the repeat command to actually do a number of seconds instead of a number of iterations . "W" key should move you forward like pressing the key in the game manually.2.Hopefully. Basically.Added in a Beautify Macro menu option under the Macro menu. FILENAME is an optional parameter.Users may now type /PAUSEMACRO inside AC to suspend execution of a macro . Selecting this menu option causes the macro to be reformatted .Further cleaned up the interface and organized the commands in the Command and Macros list. fixed the "Unable to Insert Line" error .10/07/2000: .Users may now type /SAYAGAIN inside AC to repeat the last [SAY] command .Added in the [SAY] command to facilitate typing messages to other users .Added in the [PAUSE] command to allow users to pause scripts at predetermined points in a macro . I would HIGHLY recommend that you set your Windows desktop resolution to the same used by Asheron's Call making mouse position easier Added in a DELAY_KEYS command for setting the amount of time to wait after each line of keystrokes.Cut and Paste from the message board should always paste in correctly now . Format is "[TIMESTAMP] XXXXXXX" . This command allows users to sound out a tone through the PC Speaker as well as windows standard beeps Text now inserts where the cursor is rather than append to the end of the macro By selecting the Menu option Macro|Start Macros inside AC. Added in a new tab that shows the amount of time each loop takes.[KEYDOWN] X now allows users to run the key until [KEYUP] command is sent. Changed the functionality of the command.Added several new menu options to make editing macros easier 2. 2 (Second Delay). etc. On some keyboards.In order to better use the MOUSE_POS. -.MAC" will run the macro DEFAULT 2 times . Now users have to select REPEAT with the keystroke. This will allow you to position your mouse much easier . they were not working properly. . 3 (Second Delay).2 Release . I added in images for the proper resolutions.02/24/2000: Fixed the indenting of loops Nested loops were not working correctly Added in a new var called {Loop No} which sends a keystroke for the number of the loop.0 Release .Removed several case sensitive checks in the code . users can type '/STOPMACRO'. This tab also shows total run time of the macro .If a user did not include a space after a command (For example.Fixed the keys on the numeric keypads. For example: :Loop 5 {Loop No} [Delay] 1000 :End Loop This code sends 1 (Second Delay). and + on the keypad Added a tab to show the messages being sent AC Released the source on the web for the general public When trying to exit the software. For example. The macro will stop execution after the command is entered . [DELAY]1000).02/17/2000: . space.KEYDOWN/KEYUP logic only worked in certain scenarios. AC Tool would send it as keystrokes rather than run the command ."/STARTMACRO 2 DEFAULT. *. "[REPEAT] {BACK} 2000" will move backwards for 2 seconds . it would not let you if the macro was running. and the time to run.Corrected the version numbers throughout the program 1.4 Release . For Example: [KEYDOWN] A [Delay] 5000 [KEYUP] This will hit the key A as many times as it can for 5 seconds .08/16/2000: Added in the ability to use the /. This is now fixed.By selecting the Menu option Macro|Start Macros inside AC. 1.07/17/2000: .Exposed the mouse down and mouse up events seperately .3 Release . .Added scroll bars to the macro edit portion of the program 1. The Decal Team made the Companion easy to write. Not to mention the foundations of the Delphi version of the Companion.Fixed {XXXX} command. But it's a general rule (Murphy's). Especially new operating systems like Windows XP.Added in the loop functionality. that no software ever is error free.02/10/2000: .Spends countless hours on the message board helping out. ^. Really helped the program a lot! 1.ghisler.K. 2004 by Borland) Delphi is the greatest visual Windows development environment ever created (shameless plug)! This is a BIG thanks to David Smith . none of the Decal goodness would have been done. For this reason (and the fact it rocks!) I am including credit and the authors web site.0 Release ..Fixed the ~.02/10/2000: . http://www.Couple of minor bugs fixed . OnceBitten other person. Special Note: This is almost verbatim the liability statement in Window's Commander. Example: "[LeftClick] //Left Click Code" . Now works properly 1. @. control. { characters by themself. has been an invaluable beta tester.Who progressed this project further than any A..com ----------------------------------------------------------------------------DEVELOPMENT STUFF This program was written in Delphi 7. . Without Decal and the World Filters. They were running shift. and has picked up the source and made some great additions. menu.Fixed the New Macro button and menu option. We cannot guarantee the safety of your data.1 Release . Both the Beta 14 and 15 releases are solely his doing. on any Windows compatible machine.Cleaned up the list and added spacing to make it look a little better . Ipa . the liability is limited to the registration fee which of course there is none.0 (© 1983. without producing errors. together with any other application.Better way of commenting code in the program. That's why we cannot guarantee that this software will run in every environment. In any case.. Please test this program with non-critical data. and special keys instead of the character . Any liability for damage of any sort is hereby denied. He spent a great deal of time developing and supporting this product when I needed a break most. The Decal Team .The loop command was looping one extra time .A. but we cannot guarantee that we will be able to correct them. It was doing the command then the keys to the command . and the number of errors increases with the complexity of the program. Any description of bugs will be accepted.Initial release for public ----------------------------------------------------------------------------LIABILITY We try to keep our software as bug-free as possible. Wrote the object primer now included with the help system. Also helps out on the forums a great deal. Madar al-Aziz . Russ China . Wonderful additions to AC Tool for sure. Special Thank You Paoda Psi Rick Van Prim The Wabbit Triane . Hats off. As well as several upgrades to the form object.Cut Here --------------------------------AC Tool Bug/Enhancement Report Your Name : Email Address : Program Version : 5 Bug or Enhancement?: Detailed explanation of the bug/enhancement: Can it be reproduced and if so how (please attach macro with the email)?: .AC Tool would have out lived its usefulness if not for Ipa. Thank you very much.1.MacroMaid created some great additions to the FAQ for the newbies.CDS which is the base for CastSpellRoot. I would have been driven crazy long ago with questions. He also spends a lot of time contributing to the message boards. Sauron is also one of the big helpers on the message boards to boot.Spend a lot of time writing many of the better macros for AC Tool. Jeremy .Started the FAQ on my message board.For building the UMP now included with AC Tool . He has definately earned a spot in this file.Russ found the heading variable and did the testing for Beta 3. ----------------------------------------------------------------------------BUG/ENHANCEMENT SUBMISSION ------------------------------.Want to know how I got the mouse moves working in Windows 95/98? I didn't! The One did.For giving me some Delphi source code and some REALLY excellent ideas.Created the previous AC Tool splash image. Without his involvement. The One . Sauron . Manix . . Thanks to Cyphersnow .For writing a much improved Object Mapper and helping out with the Betas . Glutious Magimus .Cyphersnow made the necessary code changes to get MOUSE_POS to work with the 2000 December patch.Created the Dataset Primer document and provided the SPELLX. I am very happy to include his name here. MacroMaid .Writing the AC Tool Decal Plugin and supporting such a large undertaking. .Created the wObject and CreateObject commands. Cut Here --------------------------------Please send all reports to
[email protected]. Thanks Cameron. --------------------------------.End File ---------------------------------- .