Page 1 of 1

Крешит клиент

Posted: 2007-05-07 06:17:31
by Andrens
Вот макрос:

Code: Select all

sub pereplavka(item)
   uo.DeleteJournal()
   repeat
      uo.waittargettype(item)
      UO.LDblClick(442,282)
      wait(1000)
      if UO.InJournal("Targetting cancelled")<>true then
         wait(1000)
      endif
   until UO.InJournal("Targetting cancelled")
   wait(1000)
end sub


sub bs()
   while true
      uo.waittargettype(0x1BF2)
      uo.usetype(0x13E3)
      wait(500)
      uo.LClick(81,390)
      wait(7000)
      pereplavka(0x13BB)
      uo.usetype(0x097B)
      wait(500)
   wend
end sub


Работаем мин 20-30 потом креш клиента Error.Unhandled exeption in parser.

Posted: 2007-05-07 10:01:25
by Andrens
Другие макросы работаю как часы минингом рою по 12-14 часов
Может это из-за клиента версии 2.0.0???
Уже все перепробовал всеравно крешит зараза!
В чем может быть загвоздка???

Posted: 2007-05-07 11:12:53
by Destruction
waittargettype( string type )

Если кратко, поставь кавычки где надо.

И ваще - скрипт какой-то, можно сильно лучше сделать :roll:

Posted: 2007-05-07 14:46:56
by Sanch
У тебя тут пустой цикл, если не знаешь что такое см. уроки по скриптописанию, крашит то же скорее всего из-за этого.

Posted: 2007-05-07 16:10:00
by Destruction
Sanch wrote:У тебя тут пустой цикл, если не знаешь что такое см. уроки по скриптописанию, крашит то же скорее всего из-за этого.

Как-то не заметил..

Posted: 2007-05-10 12:12:22
by Andrens
Sanch wrote:У тебя тут пустой цикл, если не знаешь что такое см. уроки по скриптописанию, крашит то же скорее всего из-за этого.

Чтото я не вижу пустого цикла тыкни носом... :D

Posted: 2007-05-10 12:32:28
by Ururu

Code: Select all

If ... then
...
else
...
endif


И используй чеклаг. Избавит от крашей на сейвах.

Code: Select all

Sub checklag()
uo.DeleteJournal()
repeat
    uo.click('backpack')
    wait(200)
until UO.InJournal("backpack|Backpack")
end sub

Posted: 2007-05-10 14:10:35
by Andrens
Ururu wrote:

Code: Select all

If ... then
...
else
...
endif


И используй чеклаг. Избавит от крашей на сейвах.

Code: Select all

Sub checklag()
uo.DeleteJournal()
repeat
    uo.click('backpack')
    wait(200)
until UO.InJournal("backpack|Backpack")
end sub


он у меня не на сейвах крешит...

Posted: 2007-05-10 14:38:12
by Nmy

Code: Select all

Sub checklag()
uo.DeleteJournal()
uo.click('backpack')
repeat
    wait(200)
until UO.InJournal("backpack|Backpack")
end sub

Posted: 2007-05-10 14:55:24
by Ururu
При всем уважении, несоглашусь. :D
Мне это volhram объяснил.
В твоем варианте чар кликнет 1 раз по бек паку и будет ждать сообщения до упора. А если лаг и пакет потеряется? Тогда ожидание будет вечным.

В моем варианте он будет продолжать кликать.

Posted: 2007-05-10 15:51:43
by Nmy
Ururu wrote:При всем уважении, несоглашусь. :D
Мне это volhram объяснил.
В твоем варианте чар кликнет 1 раз по бек паку и будет ждать сообщения до упора. А если лаг и пакет потеряется? Тогда ожидание будет вечным.

В моем варианте он будет продолжать кликать.


в твоем варианте когда происходит ВС инжа 5раз в секунду кликает на бекпак
если у тебя тераются пакеты зделай динамическую ожыдалку:

Code: Select all

repeat
n=n+1
    wait(200)
until UO.InJournal("backpack|Backpack") or n<500

Posted: 2007-05-11 12:33:05
by Destruction
Ururu wrote:При всем уважении, несоглашусь. :D
Мне это volhram объяснил.
В твоем варианте чар кликнет 1 раз по бек паку и будет ждать сообщения до упора. А если лаг и пакет потеряется? Тогда ожидание будет вечным.

В моем варианте он будет продолжать кликать.

Отправь сотню-другую пакетов до сервака и посмотри.

Если потеряется хоть один - тогда имеет хоть какой-то смысл, иначе - нет.

Code: Select all

ping 127.0.0.1 -n 100

Posted: 2007-05-11 14:59:45
by Sanch
Тот же самый чег лаг то же лудше делать с динамической паузой, минуты в 2 максимум, иначе и он может длиться вечно иногда.