<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; Универсальный авто-кликер с переменными]]></title>
		<link>http://forum.script-coding.com/viewtopic.php?id=13947</link>
		<atom:link href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=13947&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Универсальный авто-кликер с переменными».]]></description>
		<lastBuildDate>Wed, 18 Jul 2018 01:38:38 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Универсальный авто-кликер с переменными]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=127126#p127126</link>
			<description><![CDATA[<p>Окончательный код кликера, добавил обнуление хоткея, перед применением нового.<br />Так же добавил активацию хоткея, если кто то захочет предыдущий хоткей еще раз поставить</p><div class="codebox"><pre><code>
loop
{
Gui, Add, Text,, Задержка:
Gui, Add, DropDownList, vdel, 10|20|30|40|50|60|70|80|90|100
Gui, Add, Text,, Кнопка спама:
Gui, Add, hotkey, vbut, h20 w20
Gui, Add, Button, default, OK
Gui, Show, Restore w300 h300
return

ButtonOK:
Hotkey, $%but%, Hotkey, off
Gui, Submit, NoHide
Hotkey, $%but%,  Hotkey, on
break
}
return

Hotkey: 
Loop
{
if not GetKeyState(but, &quot;P&quot;) 
break
send {%but%}
click
sleep %del%
}
return

end::suspend
</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (BombeR)]]></author>
			<pubDate>Wed, 18 Jul 2018 01:38:38 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=127126#p127126</guid>
		</item>
		<item>
			<title><![CDATA[Re: Универсальный авто-кликер с переменными]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=127125#p127125</link>
			<description><![CDATA[<div class="quotebox"><cite>qqlexa пишет:</cite><blockquote><p><strong>BombeR</strong>, а зачем использовать цикл и выходить из него, если можно получить PID и всё? <br /></p><div class="codebox"><pre><code>
home::WinGet, active_pid, PID, A
</code></pre></div></blockquote></div><p>Согласен, накосячил чуток,&nbsp; не все тонкости еще изучил. <br />вообще можно оставить мой вариант и добавить строчку<br /></p><div class="codebox"><pre><code>
Hotkey, home, , off
</code></pre></div><p>Тогда нельзя будет случайно другое окно подцепить</p><div class="quotebox"><cite>stealzy пишет:</cite><blockquote><div class="quotebox"><cite>BombeR пишет:</cite><blockquote><p>sleep, 1</p></blockquote></div><p>= Sleep 10 или 14, читайте справку. Окно может зависнуть и при такой задержке если не будет успевать обрабатывать 700 кликов в секунду.<br />Если ваш кликер состязается с кликерами других игроков и ваш пинг порядка 30мс или меньше, 12 мс могут иметь значение.<br />Если кликается кнопка, которая меняет цвет, можно считывать изменение цвета пикселя и кликать по этому событию, задержка будет порядка 2мс, но PixelGetColor тут не подойдет ввиду своей медлительности (если у вас винда старше ХР).</p></blockquote></div><p>Ну вообще это писькомерство уже) в игре обычно стоят задержки на спам умений. порядка 200мс. по этому даже обычного кликера без postmassage вполне хватит с задержкой 50мс.</p><p>Это больше для себя сделал, т.к. раньше при сравнении стандартного кликера на ахк и спама с помощью мышки через макрос разница была большая. Теперь примерно одинаково.</p><p>Самый большой вопрос остается до сих пор - как отправлять клики в неактивное окно Ragnarok Online. Даже при помощи postmassage не получается, о банальных controlsend и т.п. вообще молчу..</p><p>Как я выяснил там клики мыши и вообще обработка приложением мышки проходит через отдельную длл (dinput.dll). Она была специально сделана именно для игры (не путать с обычной dinput)</p><p>Если есть мысли как справиться с этим то было бы круто выслушать. вообще слышал, что можно это сделать через ps\2 драйвер мыши. т.е. мы через драйвер общаемся с компьютером и любая программа определяет наши клики как реально нажатые нами мышкой. Но в таком случае будет задействован реальный курсор мышки, вряд ли получится кликнуть в неактивное окно</p>]]></description>
			<author><![CDATA[null@example.com (BombeR)]]></author>
			<pubDate>Wed, 18 Jul 2018 00:52:00 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=127125#p127125</guid>
		</item>
		<item>
			<title><![CDATA[Re: Универсальный авто-кликер с переменными]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=127114#p127114</link>
			<description><![CDATA[<p><strong>BombeR</strong>, а зачем использовать цикл и выходить из него, если можно получить PID и всё? <br /></p><div class="codebox"><pre><code>
home::WinGet, active_pid, PID, A
</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (qqlexa)]]></author>
			<pubDate>Tue, 17 Jul 2018 12:34:46 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=127114#p127114</guid>
		</item>
		<item>
			<title><![CDATA[Re: Универсальный авто-кликер с переменными]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=127111#p127111</link>
			<description><![CDATA[<p>Спасибо все работает! <strong>qqlexa</strong><br />Поставил плюсики вам.</p><p>Кстати спасибо за ссылку <strong>stealzy</strong>. Интересная статья с подробным разбором больной мне темы.</p><p>Единственное когда в gui ставишь другую кнопку, предыдущая перестает работать.<br />Видимо из-за того что ей был присвоен статус hotkey. каким способом его обнулить можно, после смены кнопки в gui?</p><p>Кстати еще улучшил кликер.<br />Через команду (postmessage) , кликает примерно в 5-10 раз быстрее, но нужно определять само окно через Winexist.<br />Я сделал это на отдельную кнопку, что бы фиксировать PID определенного окна, если вдруг у нас несколько окон.</p><div class="codebox"><pre><code>
home::
loop
{
WinGet, active_pid, PID, A
break
}
return

$F1::        
Loop
{
if not GetKeyState(&quot;F1&quot;, &quot;P&quot;) 
break
PostMessage, 0x100, 0x70, 0, , ahk_pid %active_pid% ; 0x100 обозначение команды WM_KEYDOWN, 0x70 = F1 (VK)
PostMessage, 0x101, 0x70, 0, , ahk_pid %active_pid% ; 0x101 обозначение команды WM_KEYUP
PostMessage, 0x201, 1, ((y&lt;&lt;16)^x), , ahk_pid %active_pid%  ; 0x201 WM_LBUTTONDOWN
PostMessage, 0x202 , 0, ((y&lt;&lt;16)^x), , ahk_pid %active_pid% ; 0x202 WM_LBUTTONUP
sleep, 1 ; обязательно ставить задержку хотя бы 1 м.с. т.к. без задержки окно просто зависает.
#maxhotkeysperinterval 99999
}

end::suspend
</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (BombeR)]]></author>
			<pubDate>Tue, 17 Jul 2018 00:25:36 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=127111#p127111</guid>
		</item>
		<item>
			<title><![CDATA[Re: Универсальный авто-кликер с переменными]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=127108#p127108</link>
			<description><![CDATA[<p><strong>stealzy</strong>, Отредактировал своё сообщение. Не запомнил этого, и вообще не понимаю сейчас почему я так подумал..<br /></p><div class="codebox"><pre><code>Gui, Submit, NoHide</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (qqlexa)]]></author>
			<pubDate>Mon, 16 Jul 2018 22:20:02 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=127108#p127108</guid>
		</item>
		<item>
			<title><![CDATA[Re: Универсальный авто-кликер с переменными]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=127102#p127102</link>
			<description><![CDATA[<p>Скрипт с использованием Hotkey: <br /></p><div class="codebox"><pre><code>
loop
{
Gui, Add, Text,, Задержка:
Gui, Add, DropDownList, vdel, 10|20|30|40|50|60|70|80|90|100
Gui, Add, Text,, Кнопка спама:
Gui, Add, hotkey, vbut, h20 w20
Gui, Add, Button, default, OK
Gui, Show, Restore w300 h300
return

ButtonOK:
Gui, Submit, NoHide
Hotkey, $%but%,  Hotkey ;  Для кнопки %but%  использовать переход на метку Hotkey
break
}
 
return
Hotkey: 
Loop
{
if not GetKeyState(but, &quot;P&quot;) 
   break
send {%but%}
click
sleep %delay%
}
return

end::pause
</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (qqlexa)]]></author>
			<pubDate>Mon, 16 Jul 2018 14:04:43 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=127102#p127102</guid>
		</item>
		<item>
			<title><![CDATA[Универсальный авто-кликер с переменными]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=127094#p127094</link>
			<description><![CDATA[<p>Собственно для своего удобства решил сделать Автокликер для онлайн игры &quot;Ragnarok Online&#039;</p><p>Зачем?<br />- Хочу сделать полноценного и удобный кликер. (в интернете нет)</p><p>В чем проблема написания?<br />- Переменные указываются в gui (для удобства)<br />- Далее эти переменные надо вставить в код в 3х местах.<br />- Проблема в том, что сам ахк не определяет переменную как обозначение кнопки. Тупо не врубается что ему с этими данными делать. (Ниже показал)<br />- По логике нужно присвоить переменной статус кнопки. После чего ахк должен понимать что сочетание букв из переменной это кнопка. </p><p>P.S. Все переменные передаются корректно, проверял.</p><br /><div class="codebox"><pre><code>
loop
{
Gui, Add, Text,, Задержка:
Gui, Add, DropDownList, vdel, 10|20|30|40|50|60|70|80|90|100
Gui, Add, Text,, Кнопка спама:
Gui, Add, hotkey, vbut, h20 w20
Gui, Add, Button, default, OK
Gui, Show, Restore w300 h300
return

ButtonOK:
Gui, Submit, NoHide
break
}

$%but%::      ;;Вот тут нужно указывать кнопку, но ахк ругается и не понимает что ему переменная передает. 
Loop
{
if not GetKeyState(&quot;%but%&quot;, &quot;P&quot;)  ;; тут скорее всего тоже неверно написано (возможно надо убрать %%)
break
send {%but%}
click
sleep %delay%
}
return

end::pause
</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (BombeR)]]></author>
			<pubDate>Mon, 16 Jul 2018 01:18:32 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=127094#p127094</guid>
		</item>
	</channel>
</rss>
