Jump to content
AC Tool Forums
  • Sign Up
Sign in to follow this  
The WABBIT

AC Tool v5.5.1

Recommended Posts

Ok, AC Tool fans.  Here is the current build of AC Tool. It is not the one I trying to bring up to date for a more modern version of Delphi. That requires too many paid components at the moment.

But, the below attached version has what fixes/enhancements I have maid to the original code. This also includes the last Companion fixes/updates/enhancements that Phinius had sent to me. Excuse me for not updating the help file and the readme.txt file. I'll get to them as soon as I can.
 

All you need to do is download and extract the zip into your favorite directory. Create a shortcut on the desk top. And you are done.



In the following posts I will outline all changes/enhancements to this version of AC Tool. Phinius will have to post all changes/fixes/enhancements made to the Companion, as I do not know all of them. Until then you can view the change_log.html file in the following post. It is not completely up to date, but it can give you most of the changes/fixes/enhancements that Phinius had made. AC Tool - Update for Asheron's Call (version 5.4.0.5)



Edit March 9, 2017: Moved the AC Tool v5.5.1.zip file to the downloads section. You can find it here: AC Tool v5.5.1

Share this post


Link to post
Share on other sites

In order to get the Forms to work properly with constants and their possible new values. There is only 1 (one) minor change that needs to be made in your code to use it.
 

 

It deals with the Form's caption text. You no longer place it with the name of the form, but place it as its own parameter within the Form definition. As shown below:

Form TestForm
  FormCaption= This is a the forms caption.
  FieldName1=EditBox:FieldLabel:Editbox_Size:Default_Value
  FieldName2=CheckBox:FieldLabel:True
  FieldName3=Combobox:FieldLabel:Comma,Separated,List
  FieldName4=LABEL:Label_Size:Label_Text
end

 


And now you are able to use constants to populate certain value(s) of the component(s). For the Label your would used it for the label's text. For the EditBox your would use it to enter a default value for the EditBox. And for the ComboBox it would be used to define the comma separated option/choice list. And the CheckBox it would be used to set the checkbox's checked state.

 

 

And then you would be able to change the value of the constant on the fly within your script and immediately show the form again and have the new value shown.

Form TestForm
  FormCaption=$FormCaption
  FieldName1=EditBox:$FieldLabel:$EditBox_Size:$EditBox_DefaultValue
  FieldName2=CheckBox:$FieldLabel:$CheckBox_True/False_value
  FieldName3=Combobox:$FieldLabel:$DefaultValue;$ComboBox_Comma_delimited_list_of_values
  FieldName4=LABEL:$Label_Size:$Label_text_value
end


The Editbox's label and the Label component also has a extra parameter defining the size of the label. This defines one of a number of preset sizes. The preset sizes for both labels are:
 

XS = Extra Small

S = Small

M = Medium

L = Large

XL = Extra Large

And a default value for Extra Large for both.


When you define both of the components you can just leave the size parameter empty, and AC Tool will use the Default size.


Also the ComboBox now has the ability to set a default value. But, because of limitations induced by AC Tools code for creating forms. The default value must match any one of the choice values listed in the comma delimited list. If you use a value that is not in the choice comma delimited list. Then that value will not be displayed.

Share this post


Link to post
Share on other sites

Do to new way of creating forms from within AC Tool. The commands FormLoad and FormSave will no longer work. As such in my last Beta version these commands were depreciated, with a very screwed up work around for backward compatibility. In this non-Beta version of they have been removed.

 

Please, look through you script/macro and edit them accordingly. With the new way of creating forms it is now possible to create individual config/ini file that can hold the persistent form values. Or you may store such values in the Windows registry.

 

If anyone wishes I can post example scripts for both ways of saving Form persistent values

Share this post


Link to post
Share on other sites

The old and new use of the CreateObject command with the wObject...End definition.

 

The command syntax for the commands to do all of this is as follows:

Quote

Old way and still available:

CreateObject ObjectName
 
New way:
CreateObject ObjectName at x-coord, y-coord
 
The above will allow you to use the same wObject definition to create Object...New based on different locations of the screen.
 
 
Both of the above still require the following to be fully created:
 
wObject ObjectName
    // Adjust the below settings.
    XCoord = // Coord for X axis.
    YCoord = // Coord for Y axis.
    XSize = // Size of the object, along the X axis.
    YSize = // Size of the object, along the Y axis.
    MinRed = 0 // Minimum value for Red.
    MaxRed = 255 // Maximum value for Red.
    MinGreen = 0 // Minimum value for Green.
    MaxGreen = 255 // Maximum value for Green.
    MinBlue = 0 // Minimum value for Blue.
    MaxBlue = 255 // Maximum value for Blue.
    Sample = half // All = Every Pixel, Half = Every Other Pixel.
    FileName = // Name of file to place the object definition.
    // The following are not required settings.
    // So they do not need to be included in the list
    // In other words, if you do not wish to use them.
    // You can completely delete the following options.
    Black = yes // Include true black pixels? Yes, No
    SaveBMP = yes // Save a BMP of the object? Yes, No
    UseObject = no // After getting the object, do you want to use it? Yes, No
    // NOTE: if you use the UseObject option.
    // The new object will not be saved to file.
    // But, it is immediately available for use,
    // from with in the same script file.
End
 

Share this post


Link to post
Share on other sites

Starting with Windows 7, AC Tool does not load, and run, properly because of the UAC. (Symptoms of this is that you would get an error window that pops up when first loading AC Tool, and that you would not be able to load any scripts/macros from any locations other than the Documents directory.) Because of this you had to tell Windows to run AC Tool as an Administrator. Or you would have to go and turn of the UAC feature of Windows. (For some people this is not a good thing to do.) At which point AC Tool would load, and run, fine. Without going through and looking for the offending code that causes this. I have setup AC Tool to be recognized as a Windows 7 compatible program and that it requires Administrator rights. (This is nothing more than a quick fix, but it works.) As such every time you run AC Tool, Windows will tell you that AC Tool requires admin rights and asks you if you wish to give it admin rights. All you have to do is click on the Yes/Ok button and that is it.

 

Share this post


Link to post
Share on other sites

This release isn't working for me.

I extracted the files directly into my AC Tool folder (C:\Program Files\AC Tool), replacing existing files.

The companion message that normally appears at login no longer appears and my macros are behaving as though the plugin isn't present.

Decal shows AC Tool Companion 5.5.5.64

Using Windows XP Pro SP3

 

By the way, thank you so much for the work you're doing on AC Tool. So awesome!

Share this post


Link to post
Share on other sites
On 1/27/2016 at 4:49 PM, Jerry_Wells said:

This release isn't working for me.

I extracted the files directly into my AC Tool folder (C:\Program Files\AC Tool), replacing existing files.

The companion message that normally appears at login no longer appears and my macros are behaving as though the plugin isn't present.

Decal shows AC Tool Companion 5.5.5.64

Using Windows XP Pro SP3

 

By the way, thank you so much for the work you're doing on AC Tool. So awesome!

 

okay, I don't know what could have happened here. Since I didn't touch anything on the companion side. I don't play AC so it makes it hard for me to code and then test for AC. I'm just working on the general side of AC Tool. I do have someone working on the companion side, and I haven't heard from him in a while. So what I'll do is contact him and see what's going on. And I'll also look and see if there is anything I can do on the general side of things to fix this.

Share this post


Link to post
Share on other sites

I had forgotten about this before, but it is better late than never.

 

AC Tool now has the ability to send keystrokes and mouse inputs through the DirectX SendInput routines. Unfortunately I had done this the quick and dirty way. (The code used is proper and fine. It is how what command name I had used.) What this means is that there is now two versions of all AC Tool commands that send keystrokes/mouse clicks to a game/program with a very slight change in the name. The new SendInput version of the commands are the same as the originals, but there is a letter 's' prior to the command name.

 

I had kept the old commands, along with the original code for them, for those games/programs that do not, or can not, receive keystrokes/mouse input through SendInput. And it allow for AC Tool to be completely backwards compatible with previous scripts/macros and how they worked with games/programs. So if the game/program that you are using AC Tool with has no problems with the old way of receiving keystrokes/mouse input. Then you need not do anything. But, if you have a game/program that seems to have problems. Then you might want to give it a try.

 

The old traditional commands:

KeyASCII
KeyDown
Keys
Say
SayPaste
DoubleClick
DragTo
LeftClick
LeftMouseDown
LeftMouseUp
MousePos
RightClick
RightMouseDown
RightMouseUp
MouseIDItem

 

The new commands: (NOTE: These commands are used in the exact same way as to old ones.)

sKeyASCII
sKeyDown
sKeys
sSay
sSayPaste
sDoubleClick
sDragTo
sLeftClick
sLeftMouseDown
sLeftMouseUp
sMousePos
sRightClick
sRightMouseDown
sRightMouseUp
sMouseIDItem

 

Share this post


Link to post
Share on other sites

With the above mentioned command post above. I had also added the ability for the use of a mouse middle button. Like the above I was able to create two versions of the commands. One using the old code and the other using the SendInput code. This commands are used in the same way as the original Left/Right button commands.

 

Old way commands:

MiddleClick
MiddleMouseDown
MiddleMouseUp

 

New way commands:

sMiddleClick
sMiddleMouseDown
sMiddleMouseUp

Share this post


Link to post
Share on other sites

I was also able to add the ability to use the mouse wheel using the SendInput code. But I was not successful in doing so with the old code. In fact I had found partial code, from some time ago, for implementing the mouse wheel. But, I was not able to get it to work.

 

The new command is:

Quote

MouseWheel

Description:

    Performs the scrolling of the mouse wheel.

Syntax:

    MouseWheel WheelDirection, NumOfClicks

Parameters:

    WheelDirection = Up or Down
    NumOfClicks = The number of the clicks to turn the wheel.

Example:

    MousePos $R1C1
    MouseWheel Down, 25 // scroll the wheel down 25 clicks
    MouseWheel Up, 15 // scroll the wheel up 15 clicks

 

Share this post


Link to post
Share on other sites

If you use this attached reg entry, it allows you to take ownership of all or any folders, saves having to admin right any/all files, programs etc.

 

I highlighted all folders under c drive and took ownership of them all, haven't had any problems with admin rights since I added it.

 

Hope this helps, if not just delete it WABBIT

TakeOwnership.zip

Share this post


Link to post
Share on other sites
On 1/27/2016 at 4:49 PM, Jerry_Wells said:

This release isn't working for me.

~ snip ~

 

 

Plz contact me by email. Get the addy from my profile.

Share this post


Link to post
Share on other sites

Any chance your codebase could be put on github or bitbucket. We can turn this more into a community project. Also are there detailed instructions somewhere on building actool, I tried a few years ago and I had no luck because it required some paid modules.

Share this post


Link to post
Share on other sites

Any chance your codebase could be put on github or bitbucket. We can turn this more into a community project.

 

Cam did not, that I am aware of, post the code on some source code site. He just released the source, separately, in a zip file when he made a new version release. You can find v5.4.0, which is the last time cam made a release, on actools.net main page.

 

As for me, I do not, and will not, use github or bitbucket for my own personal reasons. nuff said.

 

But, I have place the code on SouceForge a source code site I have used for many years in the past. This was purely done for my benefit only. But, it also means that you also have download, only, access to the code. I did this because I needed some place to save it off my coding system and home external drives. For in the event that my coding system, which is a laptop, and external drives are ever lost/stolen/destroyed/etc. (Which has happen too many times in the last 3+ years.) Then I could at least get the last commit that I had done there and start again from there.

 

As for the community project. That's just a load of &$*@. You do not need github or bitbucket to have a community project. You just need an author that is willing to released the code for others to work on and then integrate the changes into the master. And since the source code AC Tool has been released by Cam for years longer than I have been using it. It has already been a community project. It's just that no one, except a few people like myself and IPA, wants to bother d/l'ing the code and work on it. In Delphi at that!!! And then submit their code to Cam for integration with the master. I, and only a few others, have done this for years.

 

So you really do not need github or bitbucket to do a Community Project. You just need to start coding and submitting the code as you get it done. I made it easier by being able to go to SourceForge and get the latest commit on a source file to work with. You just have to send it to me so that I can integrate it into the master. Personally, I do not care how many people work on it. As long as it was something that all of the users of AC Tool could use. Or it improves AC Tool. Even a single bug fix. Then it would get integrated. And I believe that it was the same with Cam.

 

Also are there detailed instructions somewhere on building actool, I tried a few years ago and I had no luck because it required some paid modules.

 

Will, if you look in the source distro you will file two files. And they are:

Source Notes.txt

Source Readme.txt

 

I'm sure that you can get the AC Tool project installed in Delphi 7, or newer, and start coding if you just read those two files.

 

NOTE: You can not use Lazarus, as the Component packages used do not work properly, if at all, in Lazarus. This is because Lazarus, even though it is a Open Source Delphi IDE, is not completely compliant with the standards set by Borland, and then continued by CodeGease/Embarcadero, for Developer Component packages.

 

As for the Paid Component packages used. All that you need to compile AC Tool, as is, is there. And is installed when you follow the files above. Yes you will have to deal with nag windows that popup. But, it is what you have to deal with when you do not wish to pay for a Component package. This just gives you incentive to make sure that your code changes gets into the AC Tool master code.

Share this post


Link to post
Share on other sites

NOW I MUST APOLOGIZE TO EVERY ONE HERE.

 

As I had not posted a source distro when I posted the v5.5.1 above. That was my mistake and I should have done it then. And I am very sorry for not doing so.

 

I had not done so mainly because I was working on a completely new version of AC Tool, from scratch. Details on this will be posted in another thread.

But then when I was in the hospital for two weeks, my place was broken into and my apartment was trashed. Plus all of my electronics was stolen. Too include all of my computers and external drives. So this means that I have nothing in regards to AC Tool v5.5.1 to work with. Just my last commit to SourceForge back in September last year. So I will have to recreate the current code for v5.5.1 from the those files. And as for the new version of AC Tools. I had not put it up on SourceForge yet. So I'll have to start all over.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and to our Privacy Policy.