All corpses/remains names

Ask for scripts here

Moderators: Murderator+, Murderator

Post Reply
Lemah
Posts: 16
Joined: 2013-09-29 14:17:07

All corpses/remains names

Post by Lemah »

Code: Select all

sub AllNames()
   uo.ignorereset()
   repeat
      uo.findtype("-1","-1","ground")
      if uo.getGraphic("finditem") == "0x0ece" || uo.getGraphic("finditem") == "0x2006" then
         uo.click("finditem")
      endif
      uo.ignore("finditem")
   until not uo.findcount()
   uo.ignorereset()
endsub


Скрипт не выводит имена останков (картинка - скелет с костями разных видов - 0x0ece, 0x0ecf, 0x0ed2 ...)
С трупами все ОК, с останками всех типов - проблемы.

// Режу конкретный труп, беру тип лежачего скелета, добавляю в скрипт, запускаю - и ничего ((
Juicy Fruit
Posts: 820
Joined: 2011-06-11 19:54:23

Re: All corpses/remains names

Post by Juicy Fruit »

Не факт что поможет, но попробуй сравниваемый тип большими буквами, все кроме х
Или поиск по массиву типов сделай
Lemah
Posts: 16
Joined: 2013-09-29 14:17:07

Re: All corpses/remains names

Post by Lemah »

Большими буквами - помогло.

Кстати, при включенном Corpse autoopen - скелеты не открываются.

Где можно найти ИД всех типов скелетов? А то я руками уже 3 штуки нашёл, уверен что есть еще.
Juicy Fruit
Posts: 820
Joined: 2011-06-11 19:54:23

Re: All corpses/remains names

Post by Juicy Fruit »

Я вообще не пойму, как эта галочка работает, надо разобраться с ней)
Типы в инсайд уо посмотри.
Lemah
Posts: 16
Joined: 2013-09-29 14:17:07

Re: All corpses/remains names

Post by Lemah »

Code: Select all

sub allnames()
   var i
   DIM type[10]
   type[0] = "0x2006"
   type[1] = "0x0ECA"
   type[2] = "0x0ECB"
   type[3] = "0x0ECC"
   type[4] = "0x0ECD"
   type[5] = "0x0ECE"
   type[6] = "0x0ECF"
   type[7] = "0x0ED0"
   type[8] = "0x0ED1"
   type[9] = "0x0ED2"
   uo.ignorereset()
   for i = 0 to 9
      uo.findtype( type[i], "-1", "ground" )
      while uo.findcount()
         uo.click( "finditem" )
         uo.ignore( "finditem" )
         uo.findtype( type[i], "-1", "ground" )
      wend
   next
   uo.ignorereset()
endsub


Все вроде работает, но с некоторыми оговорками.

Во-первых, когда трупов несколько - часто по нескольким из них не кликает, хотя в логе видно что найдены все (не отрабатывает uo.click).
Во-вторых, половина надписей remains of ... и др появляются не над трупами а в произвольных местах (каждый раз в разных) и вытекающее отсюда - надписи от нескольких трупов появившись в одном месте - сливаются.

Image
RL_ka
Posts: 149
Joined: 2013-05-28 13:13:02
Contact:

Re: All corpses/remains names

Post by RL_ka »

Lemah wrote:Все вроде работает, но с некоторыми оговорками.

Во-первых, когда трупов несколько - часто по нескольким из них не кликает, хотя в логе видно что найдены все (не отрабатывает uo.click).
Во-вторых, половина надписей remains of ... и др появляются не над трупами а в произвольных местах (каждый раз в разных) и вытекающее отсюда - надписи от нескольких трупов появившись в одном месте - сливаются.



Подозреваю что сервер фильтрует слишком частые клики
Русский Сервер Ultima Online High Seas Adventures
Legendary
Lemah
Posts: 16
Joined: 2013-09-29 14:17:07

Re: All corpses/remains names

Post by Lemah »

Добавил задержки вплоть до секундной.

Code: Select all

      while uo.findcount()
         uo.click( "finditem" )
         uo.ignore( "finditem" )
         uo.findtype( type[i], "-1", "ground" )
         wait(500)
      wend


На то пропускает трупы или нет - проверить пока не успел, но координаты надписей продолжают промахиваться.
Juicy Fruit
Posts: 820
Joined: 2011-06-11 19:54:23

Re: All corpses/remains names

Post by Juicy Fruit »

С задержкой будет нормально по всем кликать.
Координаты надписи - последнее место, куда ты ткнул мышкой на экране, если только зашел и не нажимал мышь - левый верхний угол. Это актуально для предметов на земле, предметы в контейнерах показывают надпись где надо.
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: All corpses/remains names

Post by Mirage »

Кнопка Allname в игре не решит ваших проблем? Зачем генерировать такое количество трафика за секунду + не нужного спама?
Кликать в трупы...
1) их можно просто открыть
2) можно подправить файлы чтобы над трупом висел весёлый чупачупс и открывать можно было кликом в него.
3) Если уж маньячить то я бы спрятал всех вокруг (что как раз и без кликов и без пауз можно сделать) и оставил одни кости, а потом уже Allname

PS
куда ты ткнул мышкой на экране, если только зашел и не нажимал мышь

:mrgreen: Помню на 55R сфере с отключенным спам фильтром скриптом игровым чаром тыркнешь в толпе "произнести 500 пробелов" Потом делаешь чуть шаг в сторону чтобы какой небидь дерево было от чара "на 11 часов" и начинаешь писать
- Привет! Йа Дерево! Я Хочу дать вам квест после которого вы получите МНОГО ЗОЛОТА!!!
Надпись появляется НАД деревом для всех присутствующих на экране. Шок, Веселье, поиски ГМ (который спокойно спал). Кто то ломился в направлении квеста, что вызывало еще больший восторг :)
Lemah
Posts: 16
Joined: 2013-09-29 14:17:07

Re: All corpses/remains names

Post by Lemah »

Mirage wrote:Кнопка Allname в игре не решит ваших проблем? Зачем генерировать такое количество трафика за секунду + не нужного спама?
Кликать в трупы...
1) их можно просто открыть
2) можно подправить файлы чтобы над трупом висел весёлый чупачупс и открывать можно было кликом в него.
3) Если уж маньячить то я бы спрятал всех вокруг (что как раз и без кликов и без пауз можно сделать) и оставил одни кости, а потом уже Allname

PS
куда ты ткнул мышкой на экране, если только зашел и не нажимал мышь

:mrgreen: Помню на 55R сфере с отключенным спам фильтром скриптом игровым чаром тыркнешь в толпе "произнести 500 пробелов" Потом делаешь чуть шаг в сторону чтобы какой небидь дерево было от чара "на 11 часов" и начинаешь писать
- Привет! Йа Дерево! Я Хочу дать вам квест после которого вы получите МНОГО ЗОЛОТА!!!
Надпись появляется НАД деревом для всех присутствующих на экране. Шок, Веселье, поиски ГМ (который спокойно спал). Кто то ломился в направлении квеста, что вызывало еще больший восторг :)


Часто сталкиваюсь с ситуацией когда над разрезаным трупом стоит 10 человек. Игровой All-Names не выводит имена порезаных трупов (скелетов), по Alt-Shift не попасть т.к. сверху все заграждают надписи Left Arm, Torso и т.д. Плюс надо знать синий или нет труп тобы лутать его.

П.С. Я тоже пока сделал скрипт который прячет все части тела и другой мусор на экране. Хочу сделать это патчем клиента - заменить их на невидимые текстуры, но пока не получается.
В InsideUO нашел все мешающие текстуры, пробовал заменять их Multipatcher-ом на разные невидимые (по аналогии с tree-hack), но не получается. Если подскажешь как сделать это - буду благодарен.
Juicy Fruit
Posts: 820
Joined: 2011-06-11 19:54:23

Re: All corpses/remains names

Post by Juicy Fruit »

А не проще вместо клика использовать uo.useobject на кости? Снизить дистанцию поиска только до 3.
Post Reply