Page 1 of 1
All corpses/remains names
Posted: 2013-10-03 11:44:08
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 ...)
С трупами все ОК, с останками всех типов - проблемы.
// Режу конкретный труп, беру тип лежачего скелета, добавляю в скрипт, запускаю - и ничего ((
Re: All corpses/remains names
Posted: 2013-10-03 13:25:21
by Juicy Fruit
Не факт что поможет, но попробуй сравниваемый тип большими буквами, все кроме х
Или поиск по массиву типов сделай
Re: All corpses/remains names
Posted: 2013-10-03 13:44:17
by Lemah
Большими буквами - помогло.
Кстати, при включенном Corpse autoopen - скелеты не открываются.
Где можно найти ИД всех типов скелетов? А то я руками уже 3 штуки нашёл, уверен что есть еще.
Re: All corpses/remains names
Posted: 2013-10-03 14:12:11
by Juicy Fruit
Я вообще не пойму, как эта галочка работает, надо разобраться с ней)
Типы в инсайд уо посмотри.
Re: All corpses/remains names
Posted: 2013-10-03 20:43:47
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 ... и др появляются не над трупами а в произвольных местах (каждый раз в разных) и вытекающее отсюда - надписи от нескольких трупов появившись в одном месте - сливаются.

Re: All corpses/remains names
Posted: 2013-10-03 20:49:59
by RL_ka
Lemah wrote:Все вроде работает, но с некоторыми оговорками.
Во-первых, когда трупов несколько - часто по нескольким из них не кликает, хотя в логе видно что найдены все (не отрабатывает uo.click).
Во-вторых, половина надписей remains of ... и др появляются не над трупами а в произвольных местах (каждый раз в разных) и вытекающее отсюда - надписи от нескольких трупов появившись в одном месте - сливаются.
Подозреваю что сервер фильтрует слишком частые клики
Re: All corpses/remains names
Posted: 2013-10-03 21:12:00
by Lemah
Добавил задержки вплоть до секундной.
Code: Select all
while uo.findcount()
uo.click( "finditem" )
uo.ignore( "finditem" )
uo.findtype( type[i], "-1", "ground" )
wait(500)
wend
На то пропускает трупы или нет - проверить пока не успел, но координаты надписей продолжают промахиваться.
Re: All corpses/remains names
Posted: 2013-10-04 04:37:48
by Juicy Fruit
С задержкой будет нормально по всем кликать.
Координаты надписи - последнее место, куда ты ткнул мышкой на экране, если только зашел и не нажимал мышь - левый верхний угол. Это актуально для предметов на земле, предметы в контейнерах показывают надпись где надо.
Re: All corpses/remains names
Posted: 2013-10-04 06:03:24
by Mirage
Кнопка Allname в игре не решит ваших проблем? Зачем генерировать такое количество трафика за секунду + не нужного спама?
Кликать в трупы...
1) их можно просто открыть
2) можно подправить файлы чтобы над трупом висел весёлый чупачупс и открывать можно было кликом в него.
3) Если уж маньячить то я бы спрятал всех вокруг (что как раз и без кликов и без пауз можно сделать) и оставил одни кости, а потом уже Allname
PS
куда ты ткнул мышкой на экране, если только зашел и не нажимал мышь

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

Re: All corpses/remains names
Posted: 2013-10-04 11:26:05
by Lemah
Mirage wrote:Кнопка Allname в игре не решит ваших проблем? Зачем генерировать такое количество трафика за секунду + не нужного спама?
Кликать в трупы...
1) их можно просто открыть
2) можно подправить файлы чтобы над трупом висел весёлый чупачупс и открывать можно было кликом в него.
3) Если уж маньячить то я бы спрятал всех вокруг (что как раз и без кликов и без пауз можно сделать) и оставил одни кости, а потом уже Allname
PS
куда ты ткнул мышкой на экране, если только зашел и не нажимал мышь

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

Часто сталкиваюсь с ситуацией когда над разрезаным трупом стоит 10 человек. Игровой All-Names не выводит имена порезаных трупов (скелетов), по Alt-Shift не попасть т.к. сверху все заграждают надписи Left Arm, Torso и т.д. Плюс надо знать синий или нет труп тобы лутать его.
П.С. Я тоже пока сделал скрипт который прячет все части тела и другой мусор на экране. Хочу сделать это патчем клиента - заменить их на невидимые текстуры, но пока не получается.
В InsideUO нашел все мешающие текстуры, пробовал заменять их Multipatcher-ом на разные невидимые (по аналогии с tree-hack), но не получается. Если подскажешь как сделать это - буду благодарен.
Re: All corpses/remains names
Posted: 2013-10-04 11:55:25
by Juicy Fruit
А не проще вместо клика использовать uo.useobject на кости? Снизить дистанцию поиска только до 3.