Yoko

All sides of Injection
It is currently 2025-10-28 13:32:11

All times are UTC+02:00




Post new topic  Reply to topic  [ 51 posts ]  Go to page Previous 1 2 3 Next
Author Message
PostPosted: 2011-06-06 05:30:51 
Offline

Joined: 2011-05-23 00:33:30
Posts: 949
Что за непонятные глюки? Сначала инжа просто перестала юзать топор в скрипте пока его раз не возьмеш руками. Теперь начала выдавать парсер на нормальных строках и причина его - ее не устраивают одинарные кавычки ' она хочет двойные " . И пишет парсер в строке 878 а строк всего 877 :)

_________________
CodeSweeper


Top
   
PostPosted: 2011-06-06 05:51:17 
Offline
User avatar

Joined: 2006-12-08 10:51:50
Posts: 718
Location: Москва
Где-то незакрытые кавычки или закрывашка пропущена


Top
   
PostPosted: 2011-06-06 07:56:18 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
+ если ошибка уходит за последнюю строку - это не закрытый цикл или условие.

_________________
Image
YokoInjection CodeSweeper
Ошибка "Unhandled exception in parser"
Стрелялка для олдов.


Top
   
PostPosted: 2011-06-16 02:41:49 
Offline

Joined: 2011-05-23 00:33:30
Posts: 949
Вот сделал скрипт на установку автобая:
Как можно сделать чтобы он проверял появившийся пенек на координаты, то есть если пень стоит +2 от чара по Y координате то юзать дид бая и ставить на пенек, а если пень в любом другом месте то дальше продолжать искать пень в указанной точке. И нужно автоматом закрывать окно трейда если появиться.

_________________
CodeSweeper


Last edited by Incorrect User on 2011-06-16 14:17:32, edited 1 time in total.

Top
   
PostPosted: 2011-06-16 06:45:50 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
Code:
Repeat
   uo.FindType(type, -1, 'ground')
   if uo.FindCount() and uo.GetX('finditem')==1234 and uo.GetY('finditem')==4321 then
      бла бла бла
   else
      uo.Ignore('finditem') 
   end if
until uo.dead()

если появляется в одном и том же месте то лучше вот так, вместо условных координат "+2 тайла на северо-запад"
закрывать бай окно можно только визуально через UO.RClick(X,Y) xy - координаты окна на экране.

_________________
Image
YokoInjection CodeSweeper
Ошибка "Unhandled exception in parser"
Стрелялка для олдов.


Top
   
PostPosted: 2011-06-16 12:36:56 
Offline

Joined: 2011-05-23 00:33:30
Posts: 949
Там идут ряды баек и иногда кто-то снимает поэтому всегда разные координаты.Может можно расписать это каким то образом? Типо:
Code:
if uo.FindCount() and uo.GetX('finditem') = uo.GetX() and uo.GetY('finditem') = uo.GetY() + 2 then

Как правильно?

_________________
CodeSweeper


Top
   
PostPosted: 2011-06-16 14:23:52 
Offline

Joined: 2011-05-23 00:33:30
Posts: 949
Не могу понять как определить что появилось трейд окно? И можно ли както определить это если его невидно? То есть к тебе тип в хайде подходит кидает на тебя что-то трейд окно открывается но ты его не видиш, видит только тип.

_________________
CodeSweeper


Top
   
PostPosted: 2011-06-16 15:41:22 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
Скрипт на вендора посмотри. Там пример работы с трейд окнами.

PS может быть почистить тему от флуда? А то уже 6 лист пошел :mrgreen:

_________________
Image
YokoInjection CodeSweeper
Ошибка "Unhandled exception in parser"
Стрелялка для олдов.


Top
   
PostPosted: 2011-06-16 17:11:29 
Offline
User avatar

Joined: 2011-06-16 17:08:32
Posts: 1
загружаю скрипт на мининг: капает, разгружаеться, идет нормально, все работает, но инжа периодически выдает ошибку (Unhadled exception in parser)
клиент тоже выдает ошибку *( UO client performed an unrecoverable invalid operation. Terminated. yes?no?)
выручайте, не знаю что делать, инжа и клиент скачивал с сайта шарда на котором играю http://uoa.pp.ua/


Top
   
PostPosted: 2011-06-16 18:18:44 
Offline

Joined: 2011-05-23 00:33:30
Posts: 949
Почему в:
Code:
sub Drag()
uo.findtype(Logs,LogsC,Box)
if uo.count()>0 then
  uo.moveitem('finditem',2500,'backpack')
  wait(500)
   else
  uo.print('Кончились логи!')
  uo.playwav('C:\Program Files\UltimaOnline\Injection\Alarm.wav')
  uo.exec('terminate all')
 endif
endsub

если будет строка
Code:
if uo.count()>0 then

то ненаходит логи в сундуке, а если просто:
Code:
if uo.findcount() then

так нормально работает.

зачем тут
Code:
if uo.findcount()>0 then 
ставить >0? Ведь просто uo.findcount() определяет есть итем или нет, а больше 0 его это уже по барабану, раз определил значит больше полюбе.

_________________
CodeSweeper


Top
   
PostPosted: 2011-06-16 18:57:11 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
uo.count() ни каким образом не относится к поиску uo.find*. Это самодостаточный оператор количества предмета именно в паке игрока.
Оно используется вместо
uo.findtype(Logs,LogsC,'backpack')
if uo.findcount()>0 then
просто чтобы не писать много строк (наподобие bandageself)

PS ты ведь все еще ниразу не заглядывал в help :twisted:

_________________
Image
YokoInjection CodeSweeper
Ошибка "Unhandled exception in parser"
Стрелялка для олдов.


Top
   
PostPosted: 2011-06-16 23:07:15 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
Quote:
А зачем тут if uo.findcount()>0 then

Просто так, не загоняйся.
По русски она расшифровывается:
Code:
Если количество найденных предметов больше нуля, тогда.

Помоему звучит чуть более понятно чем:
if uo.findcount() then
По русски она конечно перефразируется - если найдены предметы, но правильнее будет перевод
Code:
Если количество найденных предметов, тогда.

И следующий человек пришедший на форум спросит что именно означает надпись в этой строке.

_________________
Image
YokoInjection CodeSweeper
Ошибка "Unhandled exception in parser"
Стрелялка для олдов.


Top
   
PostPosted: 2011-06-16 23:46:49 
Offline

Joined: 2011-05-23 00:33:30
Posts: 949
Посмотрел скрипт на копку скал, там оказываеться разметка, а у меня нет возможности тыкнуть на тайл. И вот необходимо сделать макрос который будет набрасывать таргет на тайл в напрвлении +-1тайл от меня ни Х или У в зависимости от расположниея скалы. Но вот с этой функцией я что-то не разобрался. Если я правильно понял то нужно юзать uo.waittargettile(lasttile/tilenum,[x],[y],[z])
Как сделать чтобы не вводить Z координату? -1?
То есть я предполагаю что-то типо:
Code:
#####################################
var X = uo.getx()
var Y = uo.gety() + 1
var Pickaxe = '0x0000'
sub Target()
 uo.waittargettile(0,X,Y,-1)
 uo.usetype(Pickaxe)
endsub
#####################################
 

И при этом отключить юз кирки в процедуре разметки, чтобы просто писало Укажите тайл! и я жал на макрос. И сделать таких 4 макра чтобы на 4 стороны было.

_________________
CodeSweeper


Top
   
PostPosted: 2011-06-17 02:15:52 
Offline
User avatar

Joined: 2006-12-08 10:51:50
Posts: 718
Location: Москва
Вроде как в asm была штука, возвращающая z, но с ней тоже не всё гладко было. Ты глянь...
Можно брать свою координату, а -1 это координата тоже, котороя ниже уровня моря на одну местную единицу. (Не уверен, но это логично, хотя и ни разу не встречал в уо отрицательных координат)

А макросов нужно делать 8 штук и ходить марчить ещё) Быстрее будет автопоиск накатать ;), хотя выдергивать картинки тайлов тож долго


Top
   
PostPosted: 2011-06-17 02:46:27 
Offline

Joined: 2011-05-23 00:33:30
Posts: 949
М а скрипт же в файл координат записывает просто координаты Х и У? типо 1111 222 3333 444 там же не нужна Z координата?. Так может как то можно замутить скриптик который просто будет создавать файл координат? Например запускаеш скрипт в нем 4 макроса которые изменяют значение заданного параметра, и запускаем скрипт стаем под скалой и скрипт просит Выберите с какой стороны скала, и ждет до тех пор пока не измениться значение параметра, например по умолчанию оно 0, и если изменяем на 1 то это сторона +Y, 2 +X, 3 -Y, 4 -X. Мы нажимаем нужную кнопку, и скрипт записывает в файл координаты чара +- тайл в нужном направлении. Такое вообще реально сделать а то я еще не особо понимаю как это можно сделать, точнее как происходит процесс сохранения координат и последующая их запись в файл. А пока можно начать:
Code:
################################
var Posy = 0

sub Posy1()
Posy = 1
endsub

sub Posy2()
Posy = 2
endsub

sub Posy3()
Posy = 3
endsub

sub Posy4()
Posy = 4
endsub
################################
sub Razmetka()
while not uo.dead()
 uo.print('Выберите положение скалы!')
 repeat
 wait(100)
 until Posy > 0
 if Posy == 1 then
 endif
 if Posy == 2 then
 endif
 if Posy == 3 then
 endif
 if Posy == 4 then
 endif
 Posy = 0
wend
endsub
################################

_________________
CodeSweeper


Top
   
PostPosted: 2011-06-17 04:21:57 
Offline
User avatar

Joined: 2006-12-08 10:51:50
Posts: 718
Location: Москва
1) Направлений не 4, а 8. (-1,-1)(-1,0)(-1,1) (0,-1)(0,1) (1,-1)(1,0)(1,1)
2) Нужно узнать номер тайла, для последующей передачи в waittargettile
а)asm
б)privategettile с диапазоном
3) Ну а про файлы и прочее я спрашивал тут ещё в далёком 2007-ом =). Изходя из того, что мне тогда ни кто не ответил, можно сделать вывод, что я не пойму что будет значить f=file(c:\trees.dat).

PS сей пост флуд с маскировкой под попытку помощи т.к. ничего дельного не содержит :P


Top
   
PostPosted: 2011-06-17 06:55:54 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
2 Incorrect User ты так уперто не хочешь ИГРАТЬ в игру и чтото там делать так что ответы на твои вопросы становятся иногда очень едкими. ИМХО старички давно бы закрыли эту тему но так как нас тут "много" (относительно всего форума) мне просто интересно смотреть за развитием событий.
Почему не потратить 1-2 часа твоей (всего скорее) молодой жизни на марк деревьев или пещер? Тем более что если ты материально попросишь то 100 пудово найдется ктото кто сделает это за тебя (скорее всего на твоем шарде даже). АВТОСКРИПТЫ инжекта практически все очень не стабильны и ведут к крашу клиента и "непонятным" ошибкам. Хотя большинство ошибок как раз и результат запуска этих скриптов.

ПО теме. Автосбор координат на инжекте не был реализован по причине отсутствия вменяемой ходилки которую тут реализовать практически не возможно (Почему? Покачану.). Если собирать координаты в размере одного экрана то смысл автосбора пропадает - проще протыкать руками путь по которому будет ходить чар чтобы не упиратсья в непроходимые тайлы.
На стелсклиенте есть скрипт с огромным описанием как собирать деревья автоматически. И собсно рубить их потом. Это не совсем реклама стелса, просто об холодильник (инжект) пиво открывать не удобно. Для этого есть открывашка (стелс). Инжект больше плюсов дает в охоте и боях ПВП так как быстрее всех программ реагирует. За что собственно его и банят.
Тебе предложили уже:
1) модуль копания - когда ты сам рулишь чаром, приходишь в пещеру и тыкаешь скрипт - чар обкапывает себя. Ты сам относишь в банк.
2) скрипт с АВТОпоиском/ходом который актуален в координатах одной пещеры/небольшого участка леса.
3) тут есть тонны скриптов с файлами. Просто нужно найти и взять. А не просить чтобы тыкнули тебя носом.
4) тут есть уже тема про обкоп стен. Там нет тайлов (0 тайл). Зато там можно копать "в направлении" или просто вокруг себя.
Вот если по скрипту будут ОШИБКИ решения которых ты не сможешь найти - вот тогда всем миром с радостью и без стебя тебе помогут.

Подозреваю от тебя в скором будущем тем наподобие - "не работает автохилл во время боя - постоянно крашит". Автохилла тут тоже нет. Забивает 2 команды на кнопку и хилищься спокойно при нажатии клавиши.

_________________
Image
YokoInjection CodeSweeper
Ошибка "Unhandled exception in parser"
Стрелялка для олдов.


Top
   
PostPosted: 2011-06-17 09:46:23 
Offline

Joined: 2011-05-23 00:33:30
Posts: 949
Quote:
Почему не потратить 1-2 часа твоей (всего скорее) молодой жизни на марк деревьев или пещер?

Я же написал - нет возможности набросить таргет на землю, там капаю только на ассисте по релеатив таргету.
Quote:
Направлений не 4, а 8

Нужных 4, ведь скалы находяться в направлении карты S W N E что равно +Y -Y -X +X
Да и разве с таким скриптом я буду делать маркировку не самостоятельно? :) Снова глупости. Ну если на то пошло и нельзя сделать запись в файл то пусть просто выводиться уопринт с координатами и в журнал инжекта пишуться только они потом в конце открываем журнал копируем цифры и создаем файл разметки руками.

_________________
CodeSweeper


Top
   
PostPosted: 2011-06-17 10:44:10 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
По скалам (склонам) копать по координатам нельзя.
нужно использовать X = -2 to +2 Y = -2 to +2

_________________
Image
YokoInjection CodeSweeper
Ошибка "Unhandled exception in parser"
Стрелялка для олдов.


Top
   
PostPosted: 2011-06-17 10:50:10 
Offline

Joined: 2011-05-23 00:33:30
Posts: 949
Ну этот скрипт, я так понял, копает не скалы а кочки в лесу? viewtopic.php?t=6999&highlight=%CA%EE%EF%E0%ED%E8%E5+%F1%EA%E0%EB%EB++++full

_________________
CodeSweeper


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 51 posts ]  Go to page Previous 1 2 3 Next

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 3 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Limited