Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Вопрос По Работе С Адресами
TERMIT131
сообщение 30.3.2009, 23:25
Сообщение #1


**

Neophyte
Сообщений: 17
Регистрация: 29.3.2009
Группа: Пользователи
Наличность: 0
Пользователь №: 11.692



Пираты Онлайн (IMG:style_emoticons/default/sad.gif)
Нея первый не я последний хочу помочь задротам мира ПО спать больше ) надеюсь вы поможите )
Код
set $a1 #dump 05A51130
set $a2 #dump 05A5114C
set $a1 < $a2 left 566, 839 abs

ето первая моя попытка неувенчалась никаким успехом потом пошли проверки на рабочесть тоже были ровны 0

Код
set $a1 #dump $05A51130
Send $a1

тут получилось тока в конечном варианте вывода получить тока dump адрес без $ )) числа своих НР я так и неувидал ((

в конце концов хотел добица чтото вроде
похожее на нахождение >определение разницы Ю и действие на F2 стоят хилки (они хилят гдето примерно 10 сек по 6-7НР)
Код
set $a1 #dump 05A51130
set $a2 #dump 05A5114C
set $a1 < $a2 sendex {F2}

таквот еще такой вопрос : реализовано ли в UOpilot пользование памяти если да то как ето должно выглядеть с примером пожж
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
WKnight
сообщение 31.3.2009, 18:04
Сообщение #2


********

Разработчик UO Pilot'а
Сообщений: 1.639
Регистрация: 9.1.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 4.688



v.2.14
добавил команду 'readmem variable adress type size'. читает с указанного адреса переменную указанного типа
добавил команду 'writemem variable adress type [result]'. пишет по указанному адресу значение переменной указанного типа
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
TERMIT131
сообщение 31.3.2009, 19:40
Сообщение #3


**

Neophyte
Сообщений: 17
Регистрация: 29.3.2009
Группа: Пользователи
Наличность: 0
Пользователь №: 11.692



плиз дай коротенький примерчик ((

readmem $a1 05A42AC8 byte
Send $a1

Ps ето для тех кто не вЪехал как я сразу
описание в $a1 я присвоил значение адреса и вывел его значение мне в строку ненежимая Enter
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
WKnight
сообщение 1.4.2009, 7:31
Сообщение #4


********

Разработчик UO Pilot'а
Сообщений: 1.639
Регистрация: 9.1.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 4.688



set #ha findwindow (JAGGED ALLIANCE 2)
if #ha > 0
set WorkWindow #ha
readmem #dm 0x073BB36 byte
if #dm <> 0
writemem 100 0x073BAA8 byte
end_if
end_if
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
TERMIT131
сообщение 1.4.2009, 12:31
Сообщение #5


**

Neophyte
Сообщений: 17
Регистрация: 29.3.2009
Группа: Пользователи
Наличность: 0
Пользователь №: 11.692



Код
readmem $a1 05A42AC8 Ward //етот адрес ето колич НР на данный момент
While_not $a1 < 550
end_if
end_while
left 566, 842 abs // лично у меня неполучилось зделать так чтобы нажимал на клавише (( хотел чтоб Ф2 нажимал а так тупо по координатам кликает ну и то ладно
wait 10000


проблема в том что он находит значение до первого выполнения скрип пашет верно тока после него уже каждый раз кликать хочет
(думал проблему решить неполучилось("теже яйца тока вид с боку")
Код
repeat 9999999
readmem $a1 05A23898 Ward
While $a1 < 550
left 566, 842 abs
wait 10000
end_while
end_repeat


одновременно работают 2 скрипта 1ый - поиск в точке света у монет тока я непонял одного иногда кликает когда там ниче уже нету ((

Код
set #a 75 //начальная координата по x
set #b 272  //начальная координата по y
While_not #a, #b 10394260 //выполняет пока в искомом диапозоне не найдет нужный вам цвет
end_if
wait 2000
end_while
left #a, #b //в случае нахожнения нужного цвета нажать правой кнопкой на его координаты

ЗЫ:ето подправленный под мой случай скрипт по поиску цвета который правдо моно укоротить )) но особого смысла в этом не увидил

и еще такой вопросец пилот неодекватно вставляет в себя текст тоесть
копируеш гденить текст вставляеш в пилота а в нем етот текст шрифт увеличился меж строчное расстояние тоже и тд
иногда на ровном месте размер букв и цифр меняется

тоесть менял 1 символ в строке так он почемуто на 1 шрифт как будто меньше пишется

кста былобы лучше есиб ты ввел кнопки смены адресов у встроенных переменных )) тогдабы отпал некоторый геморой
просто бы правили бы адрес и пользовались бы переменной )) а тут нуна новую создавать Вопсчем писча для ума дело ваше ))
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
TERMIT131
сообщение 1.4.2009, 17:39
Сообщение #6


**

Neophyte
Сообщений: 17
Регистрация: 29.3.2009
Группа: Пользователи
Наличность: 0
Пользователь №: 11.692



repeat 9999999
readmem $a1 05A23898 Ward
While $a1 < 550
left 566, 842
wait 10000
readmem $a1 05A23898 Ward
end_while
end_repeat

апсолютно работает так как надо )) терь качаюсь спя ))
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Veter
сообщение 1.4.2009, 18:39
Сообщение #7


******

Creative
Сообщений: 688
Регистрация: 16.9.2004
Группа: Пользователи
Наличность: 0
Из: Латвия
Пользователь №: 2.279
Возраст: 26



рыбалку в двраре на пилоте есть у кого?


--------------------
Jericho PVP - Уже открылись
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
WKnight
сообщение 2.4.2009, 6:23
Сообщение #8


********

Разработчик UO Pilot'а
Сообщений: 1.639
Регистрация: 9.1.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 4.688



Есть еще мысля по поводу изменения параметров вставляемого текста, как будет время - реализую.

Про задание адресов вручную - постепенно реализуется, часть уже сделана. Может через версию закончу.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 17.9.2009, 17:21
Сообщение #9


***********

Модератор UOPilot
Сообщений: 9.468
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27737
Пользователь №: 11.279



Столкнулся с проблемкой при работе с адресами. Нашел значение с помошью артмани, которое необходимо считать, нашел его адрес, но скрипт выдает ошибку(-1)... Может я неправильно задаю тип переменной или еще что-то... Думал поискать инфу по переменным в памяти, но чет даже не додумался как это правильно сформулировать. Можно разжевать для простых смертных варианты что можно писать в тип(ну и краткое пояснение если не сложно), что такое 0х перед адресом и когда необходимо это писать.
readmem $rating 0120C6F0 byte
msg $rating
Артмани говорит адрес: 0120C6F0 значение: 1767 тип: целое 4 байта


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
WKnight
сообщение 19.9.2009, 6:50
Сообщение #10


********

Разработчик UO Pilot'а
Сообщений: 1.639
Регистрация: 9.1.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 4.688



добавил команду 'readmem <variable> <adress> <type> <size>'. читает с указанного адреса переменную указанного типа. если тип - строка, то необходимо указать размер. при возникновении ошибки, переменная будет содержать значение '-1'. B:byte = 1b; W:word = 2b; D:dWord= 4b; C:char = 1b; S:String = 1-255b;

readmem #dm 0x073BB36 byte
если у тебя 4 байта, то вероятно больше подходит dWord.

0x это признак шестнадшатеричности числа, в артмани они какраз такие.
ошибку у тебя выдает потому, что пилот пытается использовать число как десятиричное, и это у него естественно не выходит.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
NightHawk
сообщение 30.10.2009, 12:03
Сообщение #11


*

Registred
Сообщений: 6
Регистрация: 22.8.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 7.417



Спасибо оч полезно.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
ubik
сообщение 17.3.2010, 16:19
Сообщение #12


****

Apprentice
Сообщений: 120
Регистрация: 10.3.2010
Группа: Пользователи
Наличность: 0
Пользователь №: 12.550
Возраст: 26



Цитата(TERMIT131 @ 1.4.2009, 16:39) *

repeat 9999999
readmem $a1 05A23898 Ward
While $a1 < 550
left 566, 842
wait 10000
readmem $a1 05A23898 Ward
end_while
end_repeat

апсолютно работает так как надо )) терь качаюсь спя ))


я бы переделал по другому закончится ваш повтор и закончится скрипт, если вам нужно дольше быть афк чем ваш повтор
:start
readmem $a1 05A23898 Ward
While $a1 < 550
left 566, 842
wait 10000
readmem $a1 05A23898 Ward
end_while
goto start
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
WKnight
сообщение 17.3.2010, 19:58
Сообщение #13


********

Разработчик UO Pilot'а
Сообщений: 1.639
Регистрация: 9.1.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 4.688



"goto start" срабатывает автоматически при достижении последней строки скрипта, если конечно не указано иное.
Т.е. по сути в упомянутом скрипте не нужно ни гото, ни репит
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 28.4.2024, 15:03
Designed by Nickostyle