Yoko

All sides of Injection
It is currently 2024-03-29 14:17:45

All times are UTC+02:00




Post new topic  Reply to topic  [ 67 posts ]  Go to page 1 2 3 4 Next
Author Message
PostPosted: 2014-05-31 23:08:39 
Offline

Joined: 2006-11-25 17:44:44
Posts: 258
Иргаю здесь http://www.uoex.net/ , использую примитивный скрипт на обкопку вокруг себя в радиусе 2ух тайлов.
И наблюдаю такое: в какой-то момент я пытаюсь копнуть (инжектом) и не получаю ответа в клиенте. При этом _showjournal показывает, что приходит клилок,
которому соответствует мессага "You put the ore in your pack". Но, повторюсь, в журнале клиента ничего не приходит и никакой руды в пак я не получаю!
Из-за этого скрипт зависает пока счётчик не отработает.
Пытаюсь копнуть в той же клетке руками - и вуаля, получаю мессагу что рууды там нет. Уже раз 50 проверил.


Top
   
PostPosted: 2014-06-01 10:00:54 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
Видел такую фигню. Попробовать можно
1) добавить это сообщение в журнал
2) сократить минимально паузу выводящую из цикла - по аналогии самой длительной копки - секунд 5-6 обычно.
если не поможет 1 вариант то только второй вариант поможет.

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


Top
   
PostPosted: 2014-06-01 10:03:54 
Offline

Joined: 2011-06-11 19:54:23
Posts: 820
2Mirage, а с чем связано не в курсе?
Кто-то писал про Оском не так давно, там вроде бы то же самое было, или нет?


Top
   
PostPosted: 2014-06-01 10:18:39 
Offline

Joined: 2011-05-23 00:33:30
Posts: 949
Так ищи в журнале не сообщение а клилок

_________________
CodeSweeper


Top
   
PostPosted: 2014-06-01 10:59:47 
Offline

Joined: 2006-11-25 17:44:44
Posts: 258
Дык клилоки и ищу, сообщений в журнале нету. В смысле инжект получает только клилоки, а уже в клиенте они интерпретируются.
Кстати, может кто подскажет, чем файл с клилоками открыть? Пробовал ноутпадом++, с кодировками поигрался, всесто айдишников получаю какую-то хрень.


Top
   
PostPosted: 2014-06-01 11:06:38 
Offline

Joined: 2011-05-23 00:33:30
Posts: 949
Тогда не понял от чего скрипт виснет, клилок пришел, делаем дальшнейшие действия, что не так?

_________________
CodeSweeper


Top
   
PostPosted: 2014-06-01 11:17:43 
Offline

Joined: 2006-11-25 17:44:44
Posts: 258
_showjournal показывает клилок, который соответствует "You put ore in your pack". Типа вроде как там есть руда и я её выкапываю.
Реально там нет руды, поэтому впустую "копаю" по счётчику.
Этот клилок не интерпретируется в клиенте, я не получаю никакого сообщения в журнал клиента.


Top
   
PostPosted: 2014-06-01 11:42:17 
Offline

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

_________________
CodeSweeper


Top
   
PostPosted: 2014-06-01 12:16:06 
Offline

Joined: 2011-06-11 19:54:23
Posts: 820
grundick wrote:
Дык клилоки и ищу, сообщений в журнале нету. В смысле инжект получает только клилоки, а уже в клиенте они интерпретируются.
Кстати, может кто подскажет, чем файл с клилоками открыть? Пробовал ноутпадом++, с кодировками поигрался, всесто айдишников получаю какую-то хрень.
В личку скинул ссылку на редактор клилоков.

По сабжу - да, скрипт в студию и что в журнал инжекта пишется тоже.


Top
   
PostPosted: 2014-06-01 12:30:52 
Offline

Joined: 2006-11-25 17:44:44
Posts: 258
Incorrect User wrote:
Вот о чем я и спрашиваю, почему скрипт останавливается и ждет до конца таймера? Клилок пришол и на него мы должны среагировать, то есть начать снова копать а не ждать таймер. Вообще скрипт покажи.

Я некорректно выразился. Скрипт не останавливается, продолжает работать. Я имею ввиду то, что впустую трачу время в этот момент. Команда на копку уходит, а ответа нет. Соответственно впустую трачу 10(счётчик) итераций.
Вот скрипт
Code:
sub mineAroundSelf()
   VAR x,y,z='0',TileNum='1339'
   VAR  Counter, PickAxeType
   VAR  MaxCount=10  , startTime
   
   UO.FindType('0x0E86',-1,'my')
   If Uo.FindCount() Then
      PickAxetype='0x0E86'
   Else
      PickAxetype='0x0E85'
   Endif
   ## cliloc# 0x7ACF9 You put some Iron ore in your backpack
   ## cliloc# 0x7AD03 You loosen some rocks
   ## cliloc# 0x7A2DE Too far away
   ## cliloc# 0x7AD00 There is no metal to mine
   ## cliloc# 0x7A867 Can't mine that
   For x=-2 to 2
      For y=-2 to 2
         Counter=0
         uo.deletejournal()
         Repeat
            uo.print('Mine to: x=' +str(UO.GetX()+x) + ', y=' + str(UO.GetY()+Y))
            startTime = now()             
            UO.WaitTargetTile(TileNum,STR(UO.GetX()+x),STR(UO.GetY()+Y),z)
            UO.UseType(PickAxeType)
            wait(2000)
            uo.WaitingForJournalText(startTime,10000,"0x7ACF9|0x7AD03|0x7A2DE|0x7A867|0x7AD00|0x7A197")
            Counter=Counter+1
         Until UO.InJournal("0x7A2DE|0x7AD00") > 0  OR Counter > MaxCount
      Next
   Next
end sub

А это журнал
Code:
------Journal [9]------
// ЗДЕСЬ МЫ НОРМАЛЬНО КОПАЕМ И ПОЛУЧАЕМ МЕССАГУ, КОТОРАЯ И ПО СТРОКЕ ОТЛАВЛИВАЕТСЯ.
cliloc# 0x7ACF9
You put some Iron ore in your backpack
cliloc# 0x7ACF9
You put some Iron ore in your backpack
cliloc# 0x7ACF9
You put some Iron ore in your backpack
cliloc# 0x7ACF9
cliloc# 0xF6B31
//  А ЗДЕСЬ МЫ ПОСЫЛАЕМ КОМАНДЫ НА КОПКУ, НО ОТВЕТНЫЙ ДЕЙСТВИЙ НЕ ПРОИСХОДИТ
cliloc# 0x7ACF9
------Journal [4]------
cliloc# 0x7ACF9
cliloc# 0x7ACF9
cliloc# 0x7ACF9
cliloc# 0x7ACF9


Top
   
PostPosted: 2014-06-01 12:35:22 
Offline

Joined: 2006-11-25 17:44:44
Posts: 258
Уу, парни, я кажется с клилоками напортачил :)
Щаз поковыряюсь, отпишусь.


Top
   
PostPosted: 2014-06-01 12:46:28 
Offline

Joined: 2011-05-23 00:33:30
Posts: 949
0x7A197 этого нет в списке и в UO.InJournal("0x7A2DE|0x7AD00") наверное стоит добавить 0x7A867. Ты похоже значения их перепутал?

_________________
CodeSweeper


Top
   
PostPosted: 2014-06-01 13:11:59 
Offline

Joined: 2006-11-25 17:44:44
Posts: 258
0x7A197 - здесь это "You are frozen and can't move."
Напортачил я немного в том, что пихал клилок 7ACF9 Where do you wish to dig? (думал, что это You put) , который всегда отлавливался.
Но легче от этого, естественно, не стало.
Сейчас он просто ждёт таймаута на WaitingForJournalText, потому что никакого ответа не получает.
Тем не менее ручками этот тайл нормално копается.
Может проблема с координатой Z, тыкаю по неверному тайлу?!


Top
   
PostPosted: 2014-06-01 13:35:51 
Offline

Joined: 2011-05-23 00:33:30
Posts: 949
То есть 0x7ACF9 это юз кирки. И ответа не приходит. Было такое уже на оскоме. Сошлись к тому тчо это защита на сервере, проверяет время между появлением таргета и его набрасыванием, и вариант был только юзнуть кирку, ждать 100-200мс и uo.target на землю.

_________________
CodeSweeper


Top
   
PostPosted: 2014-06-01 13:48:25 
Offline

Joined: 2006-11-25 17:44:44
Posts: 258
Ок, спасибо. Попробую.


Top
   
PostPosted: 2014-06-01 14:08:01 
Offline

Joined: 2011-06-11 19:54:23
Posts: 820
Incorrect User wrote:
То есть 0x7ACF9 это юз кирки. И ответа не приходит. Было такое уже на оскоме. Сошлись к тому тчо это защита на сервере, проверяет время между появлением таргета и его набрасыванием, и вариант был только юзнуть кирку, ждать 100-200мс и uo.target на землю.
Или просто глюк на серве, который начал работать как защита :D


Top
   
PostPosted: 2014-06-01 14:17:31 
Offline

Joined: 2006-11-25 17:44:44
Posts: 258
теперь осталось понять что подставлять в качестве target_key.
потыкал по тайлам, _info lasttargetkey возвращает каждый раз разные ИД, что неудивительно, т.к. в описании сказано, что это уникальный ИД прицела.
На кой чёрт вообще он нужен, если он уникальный? :)
uo.target('lasttargetkey', 'ground', TileNum, STR(UO.GetX()+x),STR(UO.GetY()+Y),0) тоже не работает.


Top
   
PostPosted: 2014-06-01 14:26:02 
Offline

Joined: 2011-05-23 00:33:30
Posts: 949
uo.target('lasttargetkey', 'ground', 1,-1, x, y, uo.getz())

_________________
CodeSweeper


Top
   
PostPosted: 2014-06-01 14:32:01 
Offline

Joined: 2006-11-25 17:44:44
Posts: 258
Завёлся, тип тайла надо было указать.
Но проблема как была - так и осталась ) До 3ёх сек увеличивал задержку между кликом на кирку и посылом таргета.


Top
   
PostPosted: 2014-06-01 14:43:20 
Offline

Joined: 2011-05-23 00:33:30
Posts: 949
Попроб задержку еще больше, больш вариантов нет, только пробовать стелс :|

_________________
CodeSweeper


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

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 13 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