Jump to content
AC Tool Forums
Sign in to follow this  
orlando800

Object, wObject, CreateObject.

Recommended Posts

12 hours ago, Ego said:

Check your spelling in the script, eg, rightclick.

 

I have not looked at searching the screen for a mob, I look at places where the mob might go, then use an object to detect if it is there, then do something.

The other way I use is, looking at a spot on the screen to use (using iscolor), and trigger an event. So if the mob goes over a spot on screen it triggers a reaction,

BUT because the screen is dynamic it is very hard if a lot of things are happening. (False Positives) I'm at this spot now in a game I am playing, trying to figure a way around it.

 

I tried to do a search for a mob but the program took to long, and as DaMob has mentioned, even he could not wait for the screen to be searched.

This is probably very good for a very simple game, where there are few types of mobs, up to 50 types. Or for social networks. Although everything is simple, the most reliable.

Share this post


Link to post
Share on other sites

I wanted to ask you something else. After I make a screenshot of the screen, AC Tools saves it in a folder. In which folder is the object screen saved? I can't find where it is. Because I need to make links to the screen, perhaps there is not one object on the screen, but several. That's why I need it to identify objects. And here it is also important not to confuse the screenshots and delete the extra ones if they are not relevant.

I can make a universal screenshot with several objects, and give links to one screenshot. And to do this, I need to make sure that there are no duplicates and everything matches both the name and the image itself.

Edited by orlando800

Share this post


Link to post
Share on other sites
19 hours ago, orlando800 said:

Thank you for your answer, I need some time to think. Amazing. You just reversed what I wrote and it worked. 
In continuation, according to the logic of the conversation direction. If the script finds an object, it means that it can click on it. The machine does this in a fraction of seconds, so the mob will not go far in the game mode, there will be no displacement in most cases of the coordinates of the location. Whether there is such a command for the subsequent click on the found object. With subsequent execution of the procedure? In this case, the creak States the fact of finding, without further action. Is there a command that continues the logic of the script working with the object?
Further action of the script algorithm.
It finds the object.
Then moves the cursor to the desired coordinates.
Performs the procedure that was assigned to it for further actions.

Okay,  I am going to assume that you did not machine translate the Help file. Because if you had done so, then you would know that you would use the MousePos command to move the mouse. And then you need to use LeftClick, or RightClick depending on your mouse configuration, to click on the MOB.

Here is an example:

  IsObject Golubyeglaza at 1116, 266
    // if the Object is found
    // move the mouse
    MousePos 1116, 266
    // wait 1/2 a second for the
    // mouse to move to the coordinats
    Delay 500
    // Do a left click at the coordinats.
    LeftClick
  end

 

20 hours ago, orlando800 said:

In other words, I want it to calculate the coordinates of the object, enter them in the buffer and work with the coordinates of the object automatically. Performing the specified procedures.

There is no command in AC Tool to do all that you are asking for.

What you have:

  1. You have IsObject that will check for a Object at a specific X, Y coordinate.
  2. You have MousePos to move the mouse pointer to a specific X, Y coordinate.
  3. And you have LeftClick, and RightClick, to click the left mouse button, or the right mouse button, at the coordinates that the mouse is currently at.

 

What you need to do:

  1. You have to create the code that will generate the X coordinate to search for the Object. And then place it into a Constant.
  2. You have to create the code that will generate the Y coordinate to search for the Object. And then place it into a Constant.
  3. Then you need to use the two constants from Step #1 and Step #2 to search for the Object.
  4. You then have to create the code that once the Object is found. It will take the Constant from Step #1 to generate the X coordinate to move the mouse to. And then place it into another constant.
  5. You then have to create the code that once the Object is found. It will take the Constant from Step #2 to generate the Y coordinate to move the mouse to. And then place it into another constant.
  6. Then you need to use the two constants from Step #4 and Step #5 to move the mouse.
  7. Delay for 500 milliseconds to make sure that the mouse gets to the new coordinates.
  8. Click on the location with either the left mouse button or the right mouse button.

How you go about doing Steps #1, #2, #4 and #5 is totally up to you.

Share this post


Link to post
Share on other sites
17 hours ago, orlando800 said:

I wanted to ask you something else. After I make a screenshot of the screen, AC Tools saves it in a folder. In which folder is the object screen saved? I can't find where it is. Because I need to make links to the screen, perhaps there is not one object on the screen, but several. That's why I need it to identify objects. And here it is also important not to confuse the screenshots and delete the extra ones if they are not relevant.

I can make a universal screenshot with several objects, and give links to one screenshot. And to do this, I need to make sure that there are no duplicates and everything matches both the name and the image itself.

When AC Tool creates a screenshot. It saves the screenshot as a .bmp file in the directory it is installed in.

The easiest way to get to the directory that AC Tool is install in. Do the following:

With a shortcut for AC Tool on your desktop.

  1. Right click on the AC Tool shortcut.
  2. Select "Open file location"

In the AC Tool install directory you will see a file named ACSCREEN.BMP. This is the screenshot that AC Tool creates. If you need to save this screenshot. Then you need to rename the file to something else. But, you must keep the .bmp file extension.

 

Now, if you are creating the screenshot by pressing the PrintScreen key on your keyboard. Then AC Tool does not save this screenshot. You have to save the screenshot into a file.

You can do this using Paint, in windows.

  • Load Paint
  • Click on Paste button, to paste the screenshot on canvas.
  • Click on Crop button, to resize the canvas to the screenshot.
  • Then save the screenshot to a .bmp file.

 

Share this post


Link to post
Share on other sites
8 hours ago, The WABBIT said:

Okay,  I am going to assume that you did not machine translate the Help file. Because if you had done so, then you would know that you would use the MousePos command to move the mouse. And then you need to use LeftClick, or RightClick depending on your mouse configuration, to click on the MOB.

Here is an example:

Machine translation is fine with me. I understand that you are writing to me. Thank you for your patience and taking the time to answer my questions.
The point of my question was different. I understand that in the screenshot, AC Tool makes a full-screen screen, saving all the coordinates of the monitor. But the fact is that it saves global coordinates, and in the game they are local. And if I activate the window, I get into the local coordinate system, where the location of the object is calculated from the coordinates of my character. I make a screen with global coordinates. And when you activate the window on my active screen is already local. I thought it was. Therefore, the screen with its coordinates is useless for the script. Maybe I was wrong. You write to me that the coordinates of the mob on the screen correspond to the coordinates of the object on the game, active window.
I started the screen, as you wrote to me, the initial script works. Now I will continue to experiment. In other words, I need to change the coordinate points. If there are a lot of them, then you need a list of these points. I make a grid of the coordinates that I need to analyze the screen for the desired object. A lot of them
538, 299 538, 309 538, 319 538, 329 538, 339 538, 349 538, 359 538, 369 538, 379 538, 389 538, 399 538, 409 538, 419 538, 429 538, 439 538, 449 538, 459 538, 469 538, 479 538, 489
540, 299 540, 309 540, 319 540, 329 540, 339 540, 349 540, 359 540, 369 540, 379 540, 389 540, 399 540, 409 540, 419 540, 429 540, 439 540, 449 540, 459 540, 469 540, 479 540, 489
542, 299 542, 309 542, 319 542, 329 542, 339 542, 349 542, 359 542, 369 542, 379 542, 389 542, 399 542, 409 542, 419 542, 429 542, 439 542, 449 542, 459 542, 469 542, 479 542, 489
544, 299 544, 309 544, 319 544, 329 544, 339 544, 349 544, 359 544, 369 544, 379 544, 389 544, 399 544, 409 544, 419 544, 429 544, 439 544, 449 544, 459 544, 469 544, 479 544, 489
546, 299 546, 309 546, 319 546, 329 546, 339 546, 349 546, 359 546, 369 546, 379 546, 389 546, 399 546, 409 546, 419 546, 429 546, 439 546, 449 546, 459 546, 469 546, 479 546, 489
548, 299 548, 309 548, 319 548, 329 548, 339 548, 349 548, 359 548, 369 548, 379 548, 389 548, 399 548, 409 548, 419 548, 429 548, 439 548, 449 548, 459 548, 469 548, 479 548, 489
550, 299 550, 309 550, 319 550, 329 550, 339 550, 349 550, 359 550, 369 550, 379 550, 389 550, 399 550, 409 550, 419 550, 429 550, 439 550, 449 550, 459 550, 469 550, 479 550, 489
552, 299 552, 309 552, 319 552, 329 552, 339 552, 349 552, 359 552, 369 552, 379 552, 389 552, 399 552, 409 552, 419 552, 429 552, 439 552, 449 552, 459 552, 469 552, 479 552, 489
554, 299 554, 309 554, 319 554, 329 554, 339 554, 349 554, 359 554, 369 554, 379 554, 389 554, 399 554, 409 554, 419 554, 429 554, 439 554, 449 554, 459 554, 469 554, 479 554, 489
556, 299 556, 309 556, 319 556, 329 556, 339 556, 349 556, 359 556, 369 556, 379 556, 389 556, 399 556, 409 556, 419 556, 429 556, 439 556, 449 556, 459 556, 469 556, 479 556, 489
558, 299 558, 309 558, 319 558, 329 558, 339 558, 349 558, 359 558, 369 558, 379 558, 389 558, 399 558, 409 558, 419 558, 429 558, 439 558, 449 558, 459 558, 469 558, 479 558, 489
560, 299 560, 309 560, 319 560, 329 560, 339 560, 349 560, 359 560, 369 560, 379 560, 389 560, 399 560, 409 560, 419 560, 429 560, 439 560, 449 560, 459 560, 469 560, 479 560, 489
562, 299 562, 309 562, 319 562, 329 562, 339 562, 349 562, 359 562, 369 562, 379 562, 389 562, 399 562, 409 562, 419 562, 429 562, 439 562, 449 562, 459 562, 469 562, 479 562, 489
564, 299 564, 309 564, 319 564, 329 564, 339 564, 349 564, 359 564, 369 564, 379 564, 389 564, 399 564, 409 564, 419 564, 429 564, 439 564, 449 564, 459 564, 469 564, 479 564, 489
566, 299 566, 309 566, 319 566, 329 566, 339 566, 349 566, 359 566, 369 566, 379 566, 389 566, 399 566, 409 566, 419 566, 429 566, 439 566, 449 566, 459 566, 469 566, 479 566, 489
568, 299 568, 309 568, 319 568, 329 568, 339 568, 349 568, 359 568, 369 568, 379 568, 389 568, 399 568, 409 568, 419 568, 429 568, 439 568, 449 568, 459 568, 469 568, 479 568, 489
570, 299 570, 309 570, 319 570, 329 570, 339 570, 349 570, 359 570, 369 570, 379 570, 389 570, 399 570, 409 570, 419 570, 429 570, 439 570, 449 570, 459 570, 469 570, 479 570, 489
572, 299 572, 309 572, 319 572, 329 572, 339 572, 349 572, 359 572, 369 572, 379 572, 389 572, 399 572, 409 572, 419 572, 429 572, 439 572, 449 572, 459 572, 469 572, 479 572, 489
574, 299 574, 309 574, 319 574, 329 574, 339 574, 349 574, 359 574, 369 574, 379 574, 389 574, 399 574, 409 574, 419 574, 429 574, 439 574, 449 574, 459 574, 469 574, 479 574, 489
576, 299 576, 309 576, 319 576, 329 576, 339 576, 349 576, 359 576, 369 576, 379 576, 389 576, 399 576, 409 576, 419 576, 429 576, 439 576, 449 576, 459 576, 469 576, 479 576, 489
578, 299 578, 309 578, 319 578, 329 578, 339 578, 349 578, 359 578, 369 578, 379 578, 389 578, 399 578, 409 578, 419 578, 429 578, 439 578, 449 578, 459 578, 469 578, 479 578, 489
580, 299 580, 309 580, 319 580, 329 580, 339 580, 349 580, 359 580, 369 580, 379 580, 389 580, 399 580, 409 580, 419 580, 429 580, 439 580, 449 580, 459 580, 469 580, 479 580, 489
582, 299 582, 309 582, 319 582, 329 582, 339 582, 349 582, 359 582, 369 582, 379 582, 389 582, 399 582, 409 582, 419 582, 429 582, 439 582, 449 582, 459 582, 469 582, 479 582, 489
584, 299 584, 309 584, 319 584, 329 584, 339 584, 349 584, 359 584, 369 584, 379 584, 389 584, 399 584, 409 584, 419 584, 429 584, 439 584, 449 584, 459 584, 469 584, 479 584, 489
586, 299 586, 309 586, 319 586, 329 586, 339 586, 349 586, 359 586, 369 586, 379 586, 389 586, 399 586, 409 586, 419 586, 429 586, 439 586, 449 586, 459 586, 469 586, 479 586, 489
588, 299 588, 309 588, 319 588, 329 588, 339 588, 349 588, 359 588, 369 588, 379 588, 389 588, 399 588, 409 588, 419 588, 429 588, 439 588, 449 588, 459 588, 469 588, 479 588, 489
590, 299 590, 309 590, 319 590, 329 590, 339 590, 349 590, 359 590, 369 590, 379 590, 389 590, 399 590, 409 590, 419 590, 429 590, 439 590, 449 590, 459 590, 469 590, 479 590, 489
592, 299 592, 309 592, 319 592, 329 592, 339 592, 349 592, 359 592, 369 592, 379 592, 389 592, 399 592, 409 592, 419 592, 429 592, 439 592, 449 592, 459 592, 469 592, 479 592, 489
594, 299 594, 309 594, 319 594, 329 594, 339 594, 349 594, 359 594, 369 594, 379 594, 389 594, 399 594, 409 594, 419 594, 429 594, 439 594, 449 594, 459 594, 469 594, 479 594, 489
596, 299 596, 309 596, 319 596, 329 596, 339 596, 349 596, 359 596, 369 596, 379 596, 389 596, 399 596, 409 596, 419 596, 429 596, 439 596, 449 596, 459 596, 469 596, 479 596, 489
598, 299 598, 309 598, 319 598, 329 598, 339 598, 349 598, 359 598, 369 598, 379 598, 389 598, 399 598, 409 598, 419 598, 429 598, 439 598, 449 598, 459 598, 469 598, 479 598, 489
600, 299 600, 309 600, 319 600, 329 600, 339 600, 349 600, 359 600, 369 600, 379 600, 389 600, 399 600, 409 600, 419 600, 429 600, 439 600, 449 600, 459 600, 469 600, 479 600, 489
602, 299 602, 309 602, 319 602, 329 602, 339 602, 349 602, 359 602, 369 602, 379 602, 389 602, 399 602, 409 602, 419 602, 429 602, 439 602, 449 602, 459 602, 469 602, 479 602, 489
604, 299 604, 309 604, 319 604, 329 604, 339 604, 349 604, 359 604, 369 604, 379 604, 389 604, 399 604, 409 604, 419 604, 429 604, 439 604, 449 604, 459 604, 469 604, 479 604, 489
606, 299 606, 309 606, 319 606, 329 606, 339 606, 349 606, 359 606, 369 606, 379 606, 389 606, 399 606, 409 606, 419 606, 429 606, 439 606, 449 606, 459 606, 469 606, 479 606, 489
608, 299 608, 309 608, 319 608, 329 608, 339 608, 349 608, 359 608, 369 608, 379 608, 389 608, 399 608, 409 608, 419 608, 429 608, 439 608, 449 608, 459 608, 469 608, 479 608, 489
610, 299 610, 309 610, 319 610, 329 610, 339 610, 349 610, 359 610, 369 610, 379 610, 389 610, 399 610, 409 610, 419 610, 429 610, 439 610, 449 610, 459 610, 469 610, 479 610, 489
612, 299 612, 309 612, 319 612, 329 612, 339 612, 349 612, 359 612, 369 612, 379 612, 389 612, 399 612, 409 612, 419 612, 429 612, 439 612, 449 612, 459 612, 469 612, 479 612, 489
614, 299 614, 309 614, 319 614, 329 614, 339 614, 349 614, 359 614, 369 614, 379 614, 389 614, 399 614, 409 614, 419 614, 429 614, 439 614, 449 614, 459 614, 469 614, 479 614, 489
616, 299 616, 309 616, 319 616, 329 616, 339 616, 349 616, 359 616, 369 616, 379 616, 389 616, 399 616, 409 616, 419 616, 429 616, 439 616, 449 616, 459 616, 469 616, 479 616, 489
618, 299 618, 309 618, 319 618, 329 618, 339 618, 349 618, 359 618, 369 618, 379 618, 389 618, 399 618, 409 618, 419 618, 429 618, 439 618, 449 618, 459 618, 469 618, 479 618, 489
620, 299 620, 309 620, 319 620, 329 620, 339 620, 349 620, 359 620, 369 620, 379 620, 389 620, 399 620, 409 620, 419 620, 429 620, 439 620, 449 620, 459 620, 469 620, 479 620, 489
622, 299 622, 309 622, 319 622, 329 622, 339 622, 349 622, 359 622, 369 622, 379 622, 389 622, 399 622, 409 622, 419 622, 429 622, 439 622, 449 622, 459 622, 469 622, 479 622, 489
624, 299 624, 309 624, 319 624, 329 624, 339 624, 349 624, 359 624, 369 624, 379 624, 389 624, 399 624, 409 624, 419 624, 429 624, 439 624, 449 624, 459 624, 469 624, 479 624, 489
Can I organize a search for all coordinates? How do I create a list? So that it would take the next coordinate and search for the object.
Accordingly, if the AC Tool takes coordinates from the full-screen screen, then I take the search coordinates from this screen. Making a grid of coordinates.
Coordinates, given as an example, I make a grid of coordinates in excel. Gave the number.

Edited by orlando800

Share this post


Link to post
Share on other sites

I'll give you an example of a working script I wrote for social networks.
 

delay 2500
constants
 Pluto=7
 End

Procedure RGBPluto 
MousePos 1058, 632
SetConst $Pluto= {RGBRed}+ +{RGBBlue}+ +{RGBBlue}
SetClipboard $Pluto
stop
End


procedure zadel// 
delay 100
leftclick
delay 100
MousePos 1058, 597
delay 4000
//call color
end


procedure zadohlik//
MousePos 1058, 597
leftclick
Delay 1000
call color
end

procedure color

loadRGB 967, 302
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 302
Delay 1000
call zadel
else

loadRGB 967, 306
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 306
Delay 1000
call zadel
else

loadRGB 967, 310
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 310
Delay 1000
call zadel
else

loadRGB 967, 314
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 314
Delay 1000
call zadel
else

loadRGB 967, 318
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 318
Delay 1000
call zadel
else

loadRGB 967, 322
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 322
Delay 1000
call zadel
else

loadRGB 967, 326
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 326
Delay 1000
call zadel
else

loadRGB 967, 330
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 330
Delay 1000
call zadel
else

loadRGB 967, 334
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 334
Delay 1000
call zadel
else

loadRGB 967, 338
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 338
Delay 1000
call zadel
else

loadRGB 967, 342
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 342
Delay 1000
call zadel
else

loadRGB 967, 346
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 346
Delay 1000
call zadel
else

loadRGB 967, 350
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 350
Delay 1000
call zadel
else

loadRGB 967, 354
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 354
Delay 1000
call zadel
else

loadRGB 967, 358
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 358
Delay 1000
call zadel
else

loadRGB 967, 362
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 362
Delay 1000
call zadel
else

loadRGB 967, 366
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 366
Delay 1000
call zadel
else

loadRGB 967, 370
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 370
Delay 1000
call zadel
else

loadRGB 967, 374
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 374
Delay 1000
call zadel
else

loadRGB 967, 378
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 378
Delay 1000
call zadel
else

loadRGB 967, 382
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 382
Delay 1000
call zadel
else

loadRGB 967, 386
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 386
Delay 1000
call zadel
else

loadRGB 967, 390
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 390
Delay 1000
call zadel
else

loadRGB 967, 394
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 394
Delay 1000
call zadel
else

loadRGB 967, 398
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 398
Delay 1000
call zadel
else

loadRGB 967, 402
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 402
Delay 1000
call zadel
else

loadRGB 967, 406
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 406
Delay 1000
call zadel
else

loadRGB 967, 410
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 410
Delay 1000
call zadel
else

loadRGB 967, 414
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 414
Delay 1000
call zadel
else

loadRGB 967, 418
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 418
Delay 1000
call zadel
else

loadRGB 967, 422
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 422
Delay 1000
call zadel
else

loadRGB 967, 426
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 426
Delay 1000
call zadel
else

loadRGB 967, 430
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 430
Delay 1000
call zadel
else

loadRGB 967, 434
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 434
Delay 1000
call zadel
else

loadRGB 967, 438
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 438
Delay 1000
call zadel
else

loadRGB 967, 442
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 442
Delay 1000
call zadel
else

loadRGB 967, 446
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 446
Delay 1000
call zadel
else

loadRGB 967, 450
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 450
Delay 1000
call zadel
else

loadRGB 967, 454
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 454
Delay 1000
call zadel
else

loadRGB 967, 458
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 458
Delay 1000
call zadel
else

loadRGB 967, 462
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 462
Delay 1000
call zadel
else

loadRGB 967, 466
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 466
Delay 1000
call zadel
else

loadRGB 967, 470
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 470
Delay 1000
call zadel
else

loadRGB 967, 474
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 474
Delay 1000
call zadel
else

loadRGB 967, 478
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 478
Delay 1000
call zadel
else

loadRGB 967, 482
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 482
Delay 1000
call zadel
else

loadRGB 967, 486
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 486
Delay 1000
call zadel
else

loadRGB 967, 490
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 490
Delay 1000
call zadel
else

loadRGB 967, 494
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 494
Delay 1000
call zadel
else

loadRGB 967, 498
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 498
Delay 1000
call zadel
else

loadRGB 967, 502
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 502
Delay 1000
call zadel
else

loadRGB 967, 506
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 506
Delay 1000
call zadel
else

loadRGB 967, 510
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 510
Delay 1000
call zadel
else

loadRGB 967, 514
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 514
Delay 1000
call zadel
else

loadRGB 967, 518
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 518
Delay 1000
call zadel
else

loadRGB 967, 522
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 522
Delay 1000
call zadel
else

loadRGB 967, 526
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 526
Delay 1000
call zadel
else

loadRGB 967, 530
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 530
Delay 1000
call zadel
else

loadRGB 967, 534
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 534
Delay 1000
call zadel
else

loadRGB 967, 538
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 538
Delay 1000
call zadel
else

loadRGB 967, 542
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 542
Delay 1000
call zadel
else

loadRGB 967, 546
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 546
Delay 1000
call zadel
else

loadRGB 967, 550
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 550
Delay 1000
call zadel
else

loadRGB 967, 554
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 554
Delay 1000
call zadel
else

loadRGB 967, 558
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 558
Delay 1000
call zadel
else

loadRGB 967, 562
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 562
Delay 1000
call zadel
else

loadRGB 967, 566
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 566
Delay 1000
call zadel
else

loadRGB 967, 570
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 570
Delay 1000
call zadel
else

loadRGB 967, 574
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 574
Delay 1000
call zadel
else

loadRGB 967, 578
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 578
Delay 1000
call zadel
else

loadRGB 967, 582
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 582
Delay 1000
call zadel
else

loadRGB 967, 586
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 586
Delay 1000
call zadel
else

loadRGB 967, 590
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 590
Delay 1000
call zadel
else

loadRGB 967, 594
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 594
Delay 1000
call zadel
else

loadRGB 967, 598
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 598
Delay 1000
call zadel
else

loadRGB 967, 602
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 602
Delay 1000
call zadel
else

loadRGB 967, 606
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 606
Delay 1000
call zadel
else

loadRGB 967, 610
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 610
Delay 1000
call zadel
else

loadRGB 967, 614
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 614
Delay 1000
call zadel
else


call zadohlik 

End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
End
Loop 5
call color
End
Restart
I want to do approximately the same thing with objects. Here is a simple color search. The object command expands capabilities.
I have moved from version 5.4 to 5.5. The old version gave errors.
I have a lot of scripts on social networks that I can post. If someone is new, it's interesting. I can make a video of how it works. But I did only work with color.
Scripts still calculate a simple captcha and neutralize it. Very helpful in the work. Thanks! For the AC Tool. So I have to ask questions.

Edited by orlando800

Share this post


Link to post
Share on other sites
12 hours ago, orlando800 said:

The point of my question was different. I understand that in the screenshot, AC Tool makes a full-screen screen, saving all the coordinates of the monitor.

  1. AC Tool does not make a full-screen image when testing for Objects, or when testing for colors with the GetRed, GetGreen, GetBlue, IsBlack, IsBlue, IsGreen, IsGrey, IsRed, IsWhite or when using the LoadRGB to use the {RGBRed}, {RGBGreen}, {RGBBlue} constants. Normally AC Tool does all of it's testing directly from the screen as Windows creates it.
  2. There is one exception to the above, that is when using the ObjLoadWindow. ObjLoadWindow copies the current screen output to an image that is in memory. Then AC Tool uses this image when doing any of the testing listed above. This is to help AC Tool to perform those tests faster.
  3. There is one major downside to using ObjLoadWindow. ObjLoadWindow creates the image copy of the screen. With the screen at that very time. And this image is never updated. Basically what I am saying is: Once the image is created it never changes. The only way to get a updated image. You have to release the image by using the ObjRelease command. And the reload the image by using the ObjLoadWindow command again.

    Here is why using the ObjLoadWindow is a major downside. Because you have to release the current image. And then reloading the image with the current screen. Can add 100s of milliseconds to your testing because the loading and then releasing of the screen into a image for use in the testing.

    When testing for MOBs, or player characters, in games where 100s of milliseconds decides if your character lives or not.
  4. AC Tool does not save the coordinates of the screen or monitor, or even the placement and size of the App/Game window. This information is handled by Windows. And AC Tools just gets this information directly from Windows.
15 hours ago, orlando800 said:

But the fact is that it saves global coordinates, and in the game they are local. And if I activate the window, I get into the local coordinate system, where the location of the object is calculated from the coordinates of my character. I make a screen with global coordinates. And when you activate the window on my active screen is already local. I thought it was. Therefore, the screen with its coordinates is useless for the script. Maybe I was wrong.

  1. There is no such thing as Global coordinates and Local coordinates.
  2. There is only screen resolution.
  3. If the game is being displayed in Full Screen. Then the screen resolution is the resolution that the game is being displayed in.
  4. If the game is being displayed in Window Mode. Then the screen resolution is the resolution of the Windows Desktop.

The following example script shows this:

Spoiler

constants
  i=-1
  msg={null}
  tmpStr={null}
end

SetActiveWindow Drakensang Online:*
Delay 5000

AsciiChar tmpStr, 13
SetConst msg = The Screen Width is: {ScreenWidth}$tmpStr
SetConst msg = $msg + The Screen Height is: {ScreenHeight}$tmpStr + $tmpStr
SetConst msg = $msg + The Game window's Width is: {WindowWidth}$tmpStr
SetConst msg = $msg + The Game window's Height is: {WindowHeight}$tmpStr + $tmpStr
SetConst msg = $msg + And the Upper Left corner of the Game window is at {WindowLeft}, {WindowTop} of the screen.


SetActiveWindow AC Tool 5.51*
Delay 1000
ShowMessage i = Information, OK , $msg

 

 

20 hours ago, orlando800 said:

You write to me that the coordinates of the mob on the screen correspond to the coordinates of the object on the game, active window.

Yes, you have created a Object to search for the MOB in the game. And unless you have created the Object either the exact same size and shape of the MOB. Or the Object is made small enough to only have a portion of the MOB. Then the Object being used will check pixels around the MOB that more than likely will not match what is in the Object. Causing the checking for the Object to fail.

It doesn't matter what size the object being used is. The coordinates used to search for the Object. Will be at the upper left corner of the portion of the screen being checked. You can't just move the mouse to the exact same coordinates and try to click on the MOB. Because the MOB may actually not be at that spot. It might actually be a few pixels to the right of where the coordinates point to. And if the MOB is moving, it is guarantee that when the mouse is moved to the exact same coordinates used to find the MOB. The move will have moved.

Because of that, you have to take the coordinates used with the Object to find the MOB. And then you have to make some adjustments to those coordinates to make sure that the mouse is at the right spot. So that when you attempt to click on the MOB. It is selected as you want it to be.

20 hours ago, orlando800 said:

Can I organize a search for all coordinates? How do I create a list? So that it would take the next coordinate and search for the object.

Yes you can organize the search coordinates. And yes you can create a list. And there are 13 commands used to create and help to use a list. Those commands are ListAdd, ListAssign, ListClear, ListCount, ListDelete, ListFind, ListIndex, ListLoad, ListSave, ListSortOff, ListSortOn, ListToString and StringToList. Read the information for those commands. And examine the example code for each of those commands to learn how to create and use a list.

Share this post


Link to post
Share on other sites
19 hours ago, orlando800 said:

Scripts still calculate a simple captcha and neutralize it.

I have to say something about this. AC Tool was not created to allow it's users to by pass a website's feature, such as the captcha, to slow down the use of automated scripts, also known as BOTs, that are normally used to spam a website.

All though I am sure that there are people to use AC Tool to do such a thing. I can not condone such use.

Share this post


Link to post
Share on other sites

I'm confused. How to build an algorithm. Give a simple sample. The lists of x and y coordinates are shown below. I have your description of these commands, but I don't really understand how to build a script.

Constants
x=List1
y=List2
End
Constructs 
List=List1
List=List2
end
ListAdd x, Test A
ListAdd y, Test B
procedure coordinate:
x = n
y = n+1

List1=[1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41]
List2=[2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42]
Coordinates, given randomly, even and odd numbers, so that the correct connection would be visible in the pair. And how do I see that it connects the coordinates? Through the message? Or it is better to make a txt, where it will throw everything.

x = [1]

y=[1:]
coordinate: x, $y+1
You gave a description of the team. And everything was done in order for me to understand her work. I do not know how to learn this command. If you were in my place without knowing anything. What would be the order of studying your description from yourself? Would you transfer this to the Tool and test it? Then what would you do first? To understand and start using this information yourself? I look at your description, I understand that it is optimal, but I don't know how to study it and look at the progress of this command((. You have a lot of information that you wrote at the expense of your time, and I can't use it. I don't know how.

 
 
ListAdd
  
  
Description
ListAdd adds a new element to a list item.
  
  
Parameters
The name of the list to add an element
The value to add to the list
  
  
Example
Constants
  Const1=NoValue
end
  
 
Constructs 
  List1=List
end
  
 
ListAdd List1, TestB
ListAdd List1, TestC
ListAdd List1, TestA
  
 
ListSortOn List1
SayPaste List1[2]
  
 
ListSortOff List1
SayPaste List1[2]
  
 
ListCount List1, Const1
Say $Const1
  
 
ListSave List1, c:\somefile.txt
  
 
ListDelete List1, 2
  
 
ListCount List1, Const1
Say $Const1
  
 
ListLoad List1, c:\somefile.txt
  
 
ListCount List1, Const1
Say $Const1
Here is your description. What are your steps to learn it? There are different commands and each one needs to be tested to make it work through the AC tool. If you are strong enough, recommend something.

 

I give other constants it does not accept.

ERROR (2).png

somefile.txt

Edited by orlando800

Share this post


Link to post
Share on other sites

Hello Ego. There are two lists of x and y coordinates. The data is arbitrary. Even and odd numbers, for convenience.
x = 1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41
Yes = 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42
There is a search function for the color AC Tool
Example:
loadRGB 967, 594
If {RGBRed} = 245 and {RGBGreen} = 246 and {RGBBlue} = 247
MousePos 967, 594
Delay 1000
call me
again
Or another object search:
Blue Eye isobject in 1116, 266
/ / if the object is found
/ / move the mouse
MousePos 1116, 266
// wait 1/2 second
for the mouse / / to move to the coordinates
Delay 500
// make a left click on the coordinates.

Finite
Coordinates and their values are given in both cases with the Load RGB operation and with the Object operation. I can't organize a search for an object in game mode in the active game window, because the script will be very long. So I want to make a grid of coordinates for searching.
I was advised to use the List commands.
ListAdd, ListAssign, ListClear, ListCount, ListDelete, ListFind, ListIndex, ListLoad, ListSave, ListSortOff, ListSortOn, ListToString
My task is to make a list of coordinates and give the command AC Tools, take the coordinates from the list. With the desired offset.
I found a description of the List commands and translated their contents. In the description of the command, there are and are examples of how these commands work.
Here is an example of how one of the help commands works.
ListAdd


Description
ListAdd adds a new item to the list item.


Parameters
Name of the list to add the item to
Value to add to the list


Example
Constants
Const1=
end of NoValue


Rig up
List1=
end of list


ListAdd List1, TestB
ListAdd List1, TestC
ListAdd List1, TestA


ListSortOn List1
SayPaste List1[2]


ListSortOff List1
SayPaste List1[2]


ListCount List1, Const1
Let's Say $Const1


ListSave List1, c:\somefile.txt


ListDelete List1, 2


ListCount List1, Const1
Let's Say $Const1


ListLoad List1, c:\somefile.txt
I don't understand two things.
1. How do I learn the commands in the description? I need advice and an example. I can't get a string from the description, insert it in AC Tools, and let this function show its work.
2. I don't understand the algorithm of the script that will change the coordinates of points in the search procedure. How to include the List command in the Load RGB procedure.
I really want to first understand how to work with the command descriptions in the Help AC Tool section.
I speak Russian and use machine translation. I'm happy with the translation. I translated all the instructions and commands, everything I could find. Unfortunately, there is no principle of detailed study of commands and the main video with step-by-step instructions. It's hard for me to master it. And I asked: "what steps would you take in my situation?" I need an algorithm to learn instructions. You can see what I could see and repeat from my correspondence with WOBBIT. Any help. I will be grateful for any response.
I started checking the manual. And this is what it gives out. It doesn't accept constants from me. Any that I replaced with this one.
I would have understood this problem with the team description section and would have already studied it myself. Without asking too many questions.
From this video, I learned how Load RGB works. I write my own scripts. I gave the examples above. The link to the video.

Maybe you have something similar or examples of working with the List command in the form of a ready-made script.

 

ERROR (2).png

Edited by orlando800

Share this post


Link to post
Share on other sites

I'll see what I can come up with. Short code that does what I want. Did you look at making a macro on this forum?

 

Share this post


Link to post
Share on other sites
On 12/14/2020 at 3:39 PM, Ego said:

I'll see what I can come up with. Short code that does what I want. Did you look at making a macro on this forum?

Here's how with the objloadwindow TRUE/FALSE command. I need to put it in my creak and it is not clear to me to put it at the beginning of the script or in the current process procedure Gipnoz. Where it will function properly. or instead of the isobject golubyeglaza at 1116, 266 command. From the very beginning is Botanica, because I don't know where you want to place the command. This creak is working. If you run it on the test, it passes.
 

constants
  b=Golubyeglaza
end

SetActiveWindow Drakensang Online: бесплатная онлайн-игра в стиле фэнтези - DSO
Delay 5000

objvar 10

loop 100
  call Gipnoz
  
end

procedure Gipnoz
  ObjLoadWindow TRUE
  IsObject Golubyeglaza at 1116, 266
    ShowMessage i = Information, OK, Объект был найден.
    call First
  else
  ObjLoadWindow FALSE
    call Two
    ShowMessage i = Information, OK, Объект был найден.
  end
end

procedure first
  Delay 1000
  keys ~B
  Delay 1000
  RightClick
  Delay 1000
  RightClick
end

procedure two
  Delay 1000
  Keys ~N
  Delay 1000
end
ObjLoadWindow TRUE/FALSE

object Golubyeglaza
  192=0,0|198=0,2|198=0,4|198=0,6|178=0,8|136=0,10|94=0,12|74=0,14|60=0,16|59=0,18|66=0,20
  194=2,0|198=2,2|198=2,4|198=2,6|194=2,8|163=2,10|119=2,12|87=2,14|69=2,16|65=2,18|69=2,20
  197=4,0|197=4,2|197=4,4|198=4,6|198=4,8|180=4,10|138=4,12|100=4,14|85=4,16|77=4,18|74=4,20
  194=6,0|197=6,2|197=6,4|197=6,6|198=6,8|198=6,10|155=6,12|124=6,14|92=6,16|88=6,18|81=6,20
  197=8,0|197=8,2|197=8,4|197=8,6|197=8,8|198=8,10|178=8,12|139=8,14|108=8,16|94=8,18|87=8,20
  196=10,0|197=10,2|197=10,4|197=10,6|197=10,8|197=10,10|195=10,12|152=10,14|124=10,16|100=10,18|95=10,20

 196=12,0|196=12,2|197=12,4|197=12,6|197=12,8|197=12,10|197=12,12|160=12,14|132=12,16|108=12,18|102=12,20
  196=14,0|196=14,2|196=14,4|197=14,6|197=14,8|197=14,10|197=14,12|168=14,14|133=14,16|115=14,18|109=14,20
  194=16,0|196=16,2|196=16,4|196=16,6|197=16,8|197=16,10|197=16,12|169=16,14|138=16,16|121=16,18|117=16,20
  189=18,0|196=18,2|196=18,4|196=18,6|196=18,8|197=18,10|190=18,12|168=18,14|136=18,16|128=18,18|122=18,20
  179=20,0|196=20,2|196=20,4|196=20,6|196=20,8|196=20,10|183=20,12|161=20,14|142=20,16|134=20,18|130=20,20
end
I tried to deal with the List commands? i didn't succeed. We need examples of writing a script. The script does not accept constants, writes that I need to define Type. How the type is determined, i have no idea and did not find any information.

Edited by orlando800

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.