Jump to content
AC Tool Forums

The WABBIT

Moderators
  • Content Count

    499
  • Joined

  • Last visited

Everything posted by The WABBIT

  1. From what it sounds like. Is that GetClipboard is working just fine. What the actual problem is, is that you are copying a huge amount of text to the Clipboard. And as you have found, AC Tool's script engine has a max size for constants of 4K. That is 4096 characters in a single constant. Personally, I don't see how you could be copying so much text to the clipboard. That you end up not having all of the text copied into a single constant. And to answer you questions. No, there is no way to copy the clipboard to a list. And no, there is no way to increase the size of a constant. And no, there is version of a constant that's size is larger. So, if you really have to use this extremely huge amount of text within your script. You are just going to have to do it in smaller sizes. Wether, or not, you use a list to hold it all. How you go about this will be up to you to decide and code.
  2. @player_of_games Well, welcome back to AC Tool and the community. And good luck with checking out the emulator servers out there.
  3. Here is the information required to use GMail's SMTP servers: How To Use Google's SMTP Server But, unfortunately even with following the above. Using AC Tool to send e-mail by GMail's SMTP servers will not work. AC Tool can not connect to a SMTP server using a secure connection, such as TLS/SSL as required by GMail's SMTP server. At the time that AC Tool was originally created. Connecting to a SMTP server using a secure connection was not requirement. Although there were many SMTP servers that were setup to require a secure connection. Most SMTP servers, at that time, did not require a secure connection. So, unless you can find a FREE SMTP server that allows connections without using TLS/SSL. You will not be able to use AC Tool to send e-mails through GMail's SMTP server.
  4. This is a issue of Windows newer than XP displaying chm Help files. You can google for the solution to this.
  5. Yes, there is a Mouse rate type command but it works with clicking the mouse button. There is not command, or delay type, for mouse movement. The Mouse rate type command is call MouseClickDelay. It is one of the few ORIGINAL commands in AC Tool that is not documented in the AC Tool Help file. As to why it was not documented. You will have to ask the Original Developer of AC Tool to find out. You can find the information about the command in this post: Keys {BACK} does not work with EverQuest I, but works with EverQuest II There is another Undocumented feature mention in that post. It deals with the LeftClick, LeftMouseDown, LeftMouseUp, RightClick, RightMouseDown, RightMouseUp commands. You will find the original post that I brought it up here: Keys {BACK} does not work with EverQuest I, but works with EverQuest II. Then after you read that, you can read the follow up of that command in the post linked above.
  6. reminder to everyone, the code @Ego posted above comes from my Universal Window Mover. You can find the Universal Window Mover in the Download section. Direct Link to Universal Window Mover
  7. procedure buff every 30 sec // buff IsObject principal_buff at 172,545 // If the buff object is present do nothing. else // if the buff object is not present // activate the buff skill. keys q end end As you can see the buff Every Procedure with using Objects checks to see if the buff skill needs to be activated. If it does not, then it does not activate the skill.
  8. First, You are still using a IF statement to check for a Object. You can not use a IF statement to check for Objects. As I stated before you HAVE to use the IsObject command. Second, move the contents of the consume_mp procedure to replace the Call consume_mp line in Health procedure. Third change the Buff Every Procedure to be 30 sec not 5 min.
  9. Now what I would do at this point. Is to make the Buff procedure into a Every Procedure. And have set for 30 seconds. Then I would remove the Delay 4 min and leave that line blank.
  10. like this Object principal_buff // Test at coords 172, 545
  11. In the Object definition there should be a space between the Object's name and the comment right after it. Make sure that all your Objects have that space too.
  12. Okay, three things: remove the word Object in all the End Object lines. It is not needed. But, if you need to have this. Add it as a comment like below. end // end object you do not use the IF statement to check for the objects. What you need to use, is the IsObject command. Look it up in the Help file. Remove the If in all the End If lines. It is not needed. But, if you need to have this. Add it as a comment like below. end // end if
  13. Show your code for the Object and the checking for the object. plz We can't help your with your code if we don't see your script.
  14. Using Objects is a more advance advance. But, it would make your script a lot better. because then you can have your script activate the Buff skill only when the game shows that the buff skill is no longer in effect. This would be much better than waiting for a certain time period to pass.
  15. This is what it will do: Execute Procedure Summoner_1 Execute Procedure Summoner_2 Check to see if 5 minutes has passed. If five minutes has passed, execute procedure Buff. Repeat. Buff procedure will not be executed the first time through. It will only be executed the first time only after the script has been executing Procedure Summoner_1 and Summoner_2 for five minutes. Now, if you need the Buff skill to be executed the first time. Then you need to make the following changes: // Execute the Builder_Sommoner_1 the first time call Builder_Summoner_1 // Execute the Builder_Sommoner_2 the first time call Builder_Summoner_2 // Activate the Buff skill the first time Keys i // Now execute the procedures in a infinite loop. While 1 = 1 // Execute the Builder_Summoner_1 procedure call Builder_Summoner_1 // Execute the Builder_Summoner_2 procedure call Builder_Summoner_2 // Check to see if the Buff Every Procedure // needs to be executed. // // If it has been 5 minutes since that last time // the Buff Every Procedure was last called. Then // call the Buff procedure and then reset the // timer for the Buff Every Procedure. Then // continue executing the script. // // If it has not been 5 minutes since the Buff Every // Procedure was last called. Then continue executing // the script. ProcessMessages end Now that your script has been written for you. Please enjoy it. And learn from it.
  16. For what you are trying to do. Using the DelayUntil will not do what you want. You would use the DelayUntil <Condition> to cause AC Tool to stop doing anything and wait until the <Condition> is true. Then AC Tool will continue to executing the script from that point on. Using the buff procedure as the condition would not work. As it does not work with procedures as the condition. Depending on how much work you want to put into the script to make it really good. You need to use either a Every Procedure, a When procedure, or the code that @Ego had posted before. You can find the information on both Every procedure and the When procedure in the Help file under Procedure ... End. At this time I am not going to how the Every Procedure and the When Procedure works. That information, with examples, is in the Help file so I suggest that you read it. Since you are so new to AC Tool and what it can do, and for ease of use. I would suggest that for now that you should use the Every Procedure. To show how to add the Every Procedure to your script. I have added only the code that has changed from the last version of the script that I had posted. While 1 = 1 // Call the Builder_Summoner_1 procedure call Builder_Summoner_1 // Call the Builder_Summoner_2 procedure call Builder_Summoner_2 // Check to see if the Buff Every Procedure // needs to be executed. If the Buff // Every Procedure needs to be executed. // Then it is automatically executed // at this time. ProcessMessages end and // This procedure is automatically executed // every 5 min. procedure Buff Every 5 min // Activate the Buff skill keys i end
  17. Okay, from the help file: DelayUntil Description Delays until a certain contidition is met. Similar in function to a While ... End loop. Parameters Conditional expression Examples DelayUntil {ElapsedMSec} > 10000 Basically what this command does. Is that you set a condition, like you would for a If statement or a While statement, and then when the script reaches the DelayUntil command. It will stop and wait until the condition that you have set is met. During this time, AC Tool is no doing anything, except waiting for the condition that you have set to become true. The example in the help file has a DelayUntil {ElapsedMSec} > 10000. What this does it is causes AC Tool to wait for 10000 milliseconds (10 seconds) then continue executing the script.
  18. Here is an example of how KeyRate works, you need Notepad with a new document for this to work: // Adjust the keyrate up and down to see the // effects it has on AC Tool pressing keys. KeyRate 10 SetActiveWindow Untitled - Notepad Delay 2 sec // The {return} in the keys command is a special key. It causes AC Tool to press the Return key. Keys This is a test of the KeyRate on using the Keys command.{return} Keys See how fast, or slow, this lines of text is being typed into Notepad.{return}
  19. @Lone To respond to your post. I have been having working on getting the AC Tool Companion plugin to work with Decal v2.9.7.5 a.k.a. v3.0. Every time I take the original code from the AC Tool v5.4.0 release. And just compile it as a 32-bit dll in any version of Delphi newer than Delphi 7. Decal either is unable to load it. Or none of the Decal commands in AC Tool, or Divide, don't work. But, If I take the original actp.dll file from the v5.4.0 release of AC Tool/Companion. And use it with a limited build of Divide. The few Decal commands that I have in Divide, using the original code from AC Tool v5.4.0, work fine. I've had to take time away from working on Companion for Divide. Until such time as I can find any information on how to create standalone Decal plugins. For which at this time I am not finding any information on. At the moment I can only find information of creating a plugin using that some plugin wrapper. Which AC Tool/Companion does not use. Now, from my limited testing that I had done with AC Tool/Companion v5.4.0, as originally released, works fine with Decal v2.9.7.5 a.k.a. v3.0, ACEmulator and using the ThwargLauncher. AC Tool/Companion v.5.5.1, has all of the complete code for Companion that Phinius had sent to me over 5+ years ago. This does not work at all. It has the same problems as I am having with getting Companion to work now. I don't know what version of Delphi Phinius was using at that time he was working on it. But, v5.5.1 was built with Delphi XE7. As for Phinius' release of AC Tool, with all the updated Decal commands and everything. That he had released over on the Asheron's Call fan site. As I understand it was working with ACEmulator. But, I do not have this version, so I am unable to test it. And I do not have any code for that release. NONE! And as I had stated I only have partial code for a version of Companion that he was working on. When he had last talked to me about his work on Companion and prior to his release of his version on the other site. So, any insight or leads to information on creating Decal plugins would be helpful. And I would be very happy to receive it.
  20. As for your question about the help file. If you are using AC Tool v5.4.0. Then yes the Help file does not have all of the commands. As AC Tool was updated/fixed and had commands added. The Help file was never updated since the initial v5.0.0 release of AC Tool. As If you are using AC Tool v5.5.1. Then with the exception of a few commands. The help file has all of the commands and how to use them. Including those that I have added, fixed, or found to be already in AC Tool. Now as for the few commands that are not in the Help file. I had found these commands in AC Tool as I was creating Divide. And making sure that Divide had all of the same commands available in it. Those few commands, and their use, can be found here in the forums. As I have made posts about those commands. Individually and in response to other posts about some other problem the user was having.
  21. As for your needing to run the code in what you call procedure 3 every 5 minutes or so. I know of 5 different ways in how to implement this. Only one of which is what @Ego suggested. But, I had asked you specifically what is this script is supposed to do. And you never answer that question. So, I can not suggest what ways to code that part of the script. And even though @Ego had suggested that combining two of the procedures together is a good suggestion. It may not be the right way of writing your script. And we can not truly any suggestions without knowing what your script is supposed to do.
  22. @ArcherRojas The reason that your code with the Keys, or sKeys, command is not working. Is because when AC Tool presses a key, it does so for .002 seconds. For some games this is too quick for the game to know that they key was pressed. In order for you to get the script, or any script, to function properly for your game. You need to add the KeyRate command as Ego has already suggested to you, and as I was going to suggest when I read your response. For some games you may also to need to use the MouseClickDelay command to allow the game to recognized that the mouse button was pressed. When you use the KeyRate, or the MouseClickDelay, you want to use it before any other command in your script to set the default values. And then you use them again when you come to a point when you may need to change the value because it is still too fast at that point in the game. But, when you do, you have to always reset the value for KeyRate and MouseClickDelay to what you set as the default value. So your full script should look like that following: // This command adjusts how quickly, or slowly, AC Tool // presses a key. The lower the number the quicker the // key is pressed. The higher the number the slower the // key is pressed. // // Adjust the number up to slow down the // pressing of the keys until your game recognizes // that the key has been pressed. // // NOTE: No matter what game you are playing. // KeyRate show not be higher than 50, and // even then that is way to slow. KeyRate 10 // Set the game window as the active window SetActiveWindow Granado Espada Andromida // wait for 2 seconds to allow time for the // game window to become the active window // NOTE: change the amount of delay, up or down, // to allow just enough time to allow the game // window to be the active window. Delay 2 sec while 1 = 1 // Call the Builder_Summoner_1 procedure call Builder_Summoner_1 // Call the Builder_Summoner_2 procedure call Builder_Summoner_2 // Call the Buff procedure call Buff end Procedure Builder_Summoner_1 //builder/summoner 1 // Press the w key. I don't know what // pressing the w key does. keys w // Wait 1 second, i don't know why delay 1 sec // Press the Left Mouse button leftclick // Wait 3 seconds delay 3 sec // Press the e key. I don't know what // pressing the e key does. keys e // Wait 1 second, i don't know why delay 1 sec // Press the Left Mouse Button leftclick // Wait 3 seconds delay 3 sec // Press the r key. I don't know what // pressing the r key does. keys r // Wait 1 second, i don't know why delay 1 sec // Press the Left Mouse Button. leftclick // Wait 3 seconds delay 3 sec // Press the q key. I don't know what // pressing the q key does. keys q end Procedure Builder_Summoner_2 // builder/summoner 2 // Press the x key. I don't know what // pressing the x key does. keys x // Wait 1 second, i don't know why delay 1 sec // Press the Left Mouse Button. leftclick // Wait 3 seconds delay 3 sec // Press the c key. I don't know what // pressing the c key does. keys c // Wait 1 second, i don't know why delay 1 sec // Press the Left Mouse Button. leftclick // Wait 3 seconds delay 3 sec // Press the v key. I don't know what // pressing the v key does. keys v // Wait 1 second, i don't know why delay 1 sec // Press the Left Mouse Button. leftclick // Wait 3 seconds delay 3 sec // Press the z key. I don't know what // pressing the z key does. keys z end procedure Buff //buff // Press the i key. I don't know what // pressing the i key does. keys i // Wait 5 min. delay 5 min end As you can see this is using the last full script that you posted. And that I had made the following changes: I changed the procedure names to something that tells you what the procedure does. I also added comments to tell you what each command is supposed to do. Each comment, or block of comments, is for the command directly below them. I also moved the procedures to be below the main part of the script code. This makes it so that all of the main code is together and it also makes it easier for anyone to read the code. I added the KeyRate command And I added a Delay command right after the SetActiveWindow command. As Ego had already suggested to you.
  23. Now as for your corrected procedure that you posted. Unless you really need to hold down the keys for half a second (.5 seconds). Then all you need to do is use the Keys command instead of the Keydown command. So, the procedure that you have posted should be: Procedure 2 // builder/summoner 2 keys x delay 1 sec leftclick delay 3 sec keys c delay 1 sec leftclick delay 3 sec keys v delay 1 sec leftclick delay 3 sec keys z end Now, if for some reason the above does not seem to work right. Then the game may not be recognizing that they keys are being pressed. Just let me know, along with your current and complete script, and I'll help you then. I would also recommend that you change the procedure name from using the number 2 to a word, or set of words, that states what the procedure does. For example, if this procedure is to heal a character then the procedure name should be as the following: Procedure HealSummoner // builder/summoner 2 keys x delay 1 sec leftclick delay 3 sec keys c delay 1 sec leftclick delay 3 sec keys v delay 1 sec leftclick delay 3 sec keys z end Or it can be: Procedure Heal_Summoner // builder/summoner 2 keys x delay 1 sec leftclick delay 3 sec keys c delay 1 sec leftclick delay 3 sec keys v delay 1 sec leftclick delay 3 sec keys z end I hope that you understand what I am trying to say here.
  24. Okay, the removing of the Alt thing "@" is all an good. But, if you need to press the Alt key while pressing the required key to do what you need to do. Then you do need to add it. Such as the Alt, Ctrl and Shift keys are referred to switch keys. Those are keys that you press and hold down and then press another key to produce a key combination. Example: Ctrl-A - When pressing the Ctrl-A key combination in your web browser, it will cause everything on the page to be selected. Shift-1 - Will cause the ! to be typed in Notepad. And any other combination of the Alt, Ctrl, Shift keys that can be used depending on the game/application running. To do the switch keys in AC Tool you use the following characters in your Keys, Keydown, etc. commands to represent the switch keys: @ = Alt ~ = Shift ^ = Ctrl So, Ctrl-A would be ^a and Shift-1 will be ~1. Now if you need to send to the game/application the '@' or '~' or even the '^' key. Then you need to do the following: To send @ to the game, use @@. To send ~ to the game, use ~~. To send ^ to the game, use ^^.
×
×
  • Create New...

Important Information

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