Сайт Антареса Сайт Антареса Форум Антарес
> >

Здравствуйте, гость ( Вход | Регистрация )


> > Лут с земли, исправить скрипт >
CxC
сообщение 12.7.2009, 11:42
Сообщение #1


Местный трепач
Group Icon

Группа: Пользователи
Сообщений: 1 732
Регистрация: 14.1.2009
Из: Краснодар
Пользователь №: 6 081
Спасибо сказали: 223 раз(а)
Класс: Рейнджер



Надо исправить скрипт:

Код
sub Ept2()
UO.IgnoreReset()
UO.Set('finddistance', '3')
repeat
UO.FindType(-1,-1,'ground')
if UO.FindCount('finditem') then
UO.MoveItem('finditem', 0, 'backpack')
wait(100)
UO.Ignore('finditem')
else
UO.IgnoreReset()
return
endif
until UO.Dead()
end sub


приводит к крашам... рылся в поиске, поправленно скрипта не нашел.
Вообще надо чтоб он все лутал, как вариант подогнать его под наутилусов (не хотелось бы, я б и сам подогнал другой скрипт)

Сообщение отредактировал CxC - 12.7.2009, 13:20
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
2 страниц 1 2 > 
Ответить в эту темуОткрыть новую тему
> > Ответов(1 - 19) >
Alucard
сообщение 12.7.2009, 16:40
Сообщение #2


ДМ НТ
Group Icon

Группа: Пользователи
Сообщений: 4 801
Регистрация: 13.7.2006
Из: г. Иваново
Пользователь №: 3 276
Спасибо сказали: 351 раз(а)
Класс: Человек



У меня ничего не крашит. badtease.gif

А если крашит то не юзай ЭТОТ скрипт. Он глючный. ПЫТАЕТСЯ подобрать игроков мобов столе стулья мебель прочую..... Но не получается. Перегруз игнорами и краш как результат. Фишка инжекта notknow.gif
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
CxC
сообщение 12.7.2009, 18:33
Сообщение #3


Местный трепач
Group Icon

Группа: Пользователи
Сообщений: 1 732
Регистрация: 14.1.2009
Из: Краснодар
Пользователь №: 6 081
Спасибо сказали: 223 раз(а)
Класс: Рейнджер



какой юзать? ))))) почему у тя не крашит? laught.gif
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Alucard
сообщение 13.7.2009, 5:47
Сообщение #4


ДМ НТ
Group Icon

Группа: Пользователи
Сообщений: 4 801
Регистрация: 13.7.2006
Из: г. Иваново
Пользователь №: 3 276
Спасибо сказали: 351 раз(а)
Класс: Человек



Цитата(CxC @ 12.7.2009, 22:33) *

какой юзать? )))))

лучше по типам юзать. Много зато надежно. Игноры [ой... вот я дурачок.. не умею читать правила].

Цитата(CxC @ 12.7.2009, 22:33) *

почему у тя не крашит? laught.gif


хз пинг 14, инет канал 512 кб/сек. клиент отдрюченно установленный, плагины настроенные, не безумствую по часу на этом скрипте... Чтото из выше перечисленного notknow.gif Я на нем часто собираю тяжелые или упавшие вещи.


Спасибо сказали:
CxC,
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Jikus
сообщение 11.9.2009, 5:34
Сообщение #5


Ступивший на тропу
Group Icon

Группа: Пользователи
Сообщений: 518
Регистрация: 30.5.2005
Пользователь №: 1 070
Спасибо сказали: 5 раз(а)
Класс: Рейнджер



Вот следующая версия безумного собирателя, мобов и мебель не берет

Код

   sub Loot();
   UO.Set("grabdelay", 100);
   UO.MoveItem("<0x0EED", 0, "backpack")
   UO.UseObject("<0x0E76")
   wait(300)
   F_Loot(3855, 3888); kamni
   F_Loot(4229, 4234); ring..
   F_Loot(5039, 5148); arm & weap
   F_Loot(3960, 3985); regi
   F_Loot(8320, 8383); scroll
   UO.Set("grabdelay", 0); default
endsub

sub F_Loot(start, stop)
   for start to stop
      UO.FindType(UO.Int2Hex(start), -1, "lastcontainer")
      while UO.FindCount()
         UO.MoveItem("finditem", 0, "backpack")
      wend
   next
endsub
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Alucard
сообщение 11.9.2009, 12:54
Сообщение #6


ДМ НТ
Group Icon

Группа: Пользователи
Сообщений: 4 801
Регистрация: 13.7.2006
Из: г. Иваново
Пользователь №: 3 276
Спасибо сказали: 351 раз(а)
Класс: Человек



1) не нужно подобные вещи (даже такие laught.gif ) тут выкладывать.
2) UO.Set("grabdelay", 100); тут не всралось. ты же не грабаешь.
3)после UO.MoveItem лучше поставить паузу. без нее конечно работает но мало ли че.
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Jikus
сообщение 11.9.2009, 16:51
Сообщение #7


Ступивший на тропу
Group Icon

Группа: Пользователи
Сообщений: 518
Регистрация: 30.5.2005
Пользователь №: 1 070
Спасибо сказали: 5 раз(а)
Класс: Рейнджер



Цитата(Alucard @ 11.9.2009, 16:54) *

2) UO.Set("grabdelay", 100); тут не всралось. ты же не грабаешь.
3)после UO.MoveItem лучше поставить паузу. без нее конечно работает но мало ли че.


Мат часть нужно знать, тогда не будет вопросов зачем пункт 2... и почему не всрался пункт 3
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
xpeH
сообщение 12.9.2009, 5:37
Сообщение #8


Реальный чувак
Group Icon

Группа: Пользователи
Сообщений: 421
Регистрация: 2.4.2009
Из: Краснодар
Пользователь №: 6 412
Спасибо сказали: 63 раз(а)
Класс: Рейнджер



(Под наутилусов деньги енч руда камень душт болты....)


sub Aqua()
var gold, bag, ench, bolt , kamen
gold=UO.Gold
bag=UO.Count(0x19B9)
ench=UO.Count(0x1869)
kamen=UO.Count(0x1422)
UO.Set('finddistance', '6')
UO.FindType(0x19B9, -1,'ground')
UO.Grab(str(0),'finditem'); юзай Grab
UO.FindType(0x0EED, -1,'ground')
UO.Grab(str(0),'finditem'); КТЕ???
UO.FindType(0x1869, -1,'ground')
UO.Grab(str(0),'finditem'); КТЕ???
UO.FindType(0x1BFB, -1,'ground')
UO.Grab(str(0),'finditem'); КТЕ???
UO.FindType(0x1422, -1,'ground')
UO.Grab(str(0),'finditem'); КТЕ???
if UO.Count(0x0E76)>bag and UO.Gold>gold then
UO.Say('111)')
endif
end sub
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Pasha
сообщение 12.9.2009, 15:45
Сообщение #9


Авторитет
Group Icon

Группа: Пользователи
Сообщений: 8 338
Регистрация: 26.3.2005
Из: Албании
Пользователь №: 711
Спасибо сказали: 201 раз(а)
Класс: Друид



Код

sub Take1()
       DIM R[24]
       var a
       R[1] = '0x13FC'; arb
       R[2] = '0x1402'; Spear
       R[3] = '0x13B1'; Bow
       R[4] = '0x0DF0'; Staff
       R[5] = '0x13B5'; Claw
       R[6] = '0x0E73'; шар
       R[7] = '0x1BFB'; Bolts
       R[8] = '0x13FE'; Catana
       R[9] = '0x1B76'; Hiter
       R[10] = '0x19B7'; ore  1
       R[11] = '0x19BA'; ore  2
       R[12] = '0x19B8'; ore 3
       R[13] = '0x19B9'; ore 4
       R[14] = '0x0EED'; gold
       R[15] = '0x0F3F' # стрелы
       R[16] = '0x1869' # энч
       R[17] = '0x186C' # тм
       R[18] = '0x0F22' # ап
       R[19] = '0x1F14' # руна
       R[20] = '0x0E7F' # бочки
       R[21] = '0x14EF' # свиток
       R[22] = '0x1402' # спира
          R[23] = '0x0F26' # диамонд
          R[24] = '0x0823' #пандора

       uo.set('finddistance','3')
       For a=1 to 24
       UO.FindType(R[a],"-1","ground")
If     UO.FindCount("finditem")>0 and UO.GetDistance("finditem")<=3 then
       UO.Grab("0","finditem")
       wait(100)
       end if
       wait(10)
       next
       end sub


имхо по-лучше будет
(вбить нужные тайпы думаю труда не составит)

Сообщение отредактировал Pasha - 12.9.2009, 15:47
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Jikus
сообщение 12.9.2009, 19:35
Сообщение #10


Ступивший на тропу
Group Icon

Группа: Пользователи
Сообщений: 518
Регистрация: 30.5.2005
Пользователь №: 1 070
Спасибо сказали: 5 раз(а)
Класс: Рейнджер



Будет лучше?

А давайте вернемся к первому скрипту, начнем с названия Ept2
Давным давно в НТ можно было лутать со скоростью близкой к скорости света. Естественно появились умные парни которые этим воспользовались... и взвыли менее продвинутые.

Был написан этот скрипт, как протест. Жираф убрал глюки в НТ и скрипт должен был сдохнуть сам, но выжил. Странно но факт, преимуществ он не дает, а крашит как надо.

А теперь код

Код
sub mLoot()
   UO.Set("grabdelay", 100)
   UO.MoveItem("<0x0EED", 0, "backpack")
   UO.UseObject("<0x0E76")
   UO.FindType(-1, -1, "lastcontainer")
   while UO.FindCount()
      i = UO.Hex2Int(UO.GetGraphic("finditem"))
      if 7982 < i < 8044 || 3846 < i < 3853 || 3960 < i < 3984 || i == 5360 ||  3856 < i < 3885 || 5136 < i < 5141 || 7026 < i< 7035  then
         UO.MoveItem("finditem", 0, "backpack")
      endif
      UO.Ignore("finditem")
      UO.FindType(-1, -1, "lastcontainer")
   wend
   UO.IgnoreReset()
   UO.Set("grabdelay", 0)
endsub


В паке у трупа лежит 6 предметов, но неизвестно какие. Данный скрипт знает более 200 предметов. Пашин скрипт запустит FindType 24 раза, а этот всего 6 раз... Про масив в 200 итемов я промолчу.

Мыслить нужно ширше

Сообщение отредактировал Jikus - 12.9.2009, 20:32
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Pasha
сообщение 12.9.2009, 19:47
Сообщение #11


Авторитет
Group Icon

Группа: Пользователи
Сообщений: 8 338
Регистрация: 26.3.2005
Из: Албании
Пользователь №: 711
Спасибо сказали: 201 раз(а)
Класс: Друид



я ваще не осилил что ты написал. этот скрипт в коде ошибку выдаёт. напиши по-подробнее как он работает.
а по-лучше я имел в виду в плане использования и корректировки. если в скрипте над моим постом постоянно нужно переменную добавлять (если не ошибаюсь) то в моём просто тайп поменять/добавить и он у меня никогда не крашил.
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Alucard
сообщение 12.9.2009, 20:03
Сообщение #12


ДМ НТ
Group Icon

Группа: Пользователи
Сообщений: 4 801
Регистрация: 13.7.2006
Из: г. Иваново
Пользователь №: 3 276
Спасибо сказали: 351 раз(а)
Класс: Человек



Цитата(Jikus @ 11.9.2009, 20:51) *

Мат часть нужно знать, тогда не будет вопросов зачем пункт 2... и почему не всрался пункт 3

ну я вроде ничего и не спрашивал. А ты его тестил вообщето перед тем как выложить?

2 Pasha Джикус умело копирует скрипты дветыща какогото года с форума Yoko не проверяя и не редактируя их. К сожалению notknow.gif

Сообщение отредактировал Alucard - 12.9.2009, 20:05
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Jikus
сообщение 12.9.2009, 20:05
Сообщение #13


Ступивший на тропу
Group Icon

Группа: Пользователи
Сообщений: 518
Регистрация: 30.5.2005
Пользователь №: 1 070
Спасибо сказали: 5 раз(а)
Класс: Рейнджер



Код
sub Loot()
   UO.Set("grabdelay", 100); установить паузу между перемещениями предмета
   UO.MoveItem("<0x0EED", 0, "backpack"); наити и стырить гп
   UO.FindType(-1, -1, "lastcontainer"); найти любой придмет в контейнере
   while UO.FindCount(); счетчик предметов
      i = UO.Hex2Int(UO.GetGraphic("finditem")); Hex перевисти в Int
     ;  |    scroll      |      Potions     |      Reagents    |     Deeds
      if 7982 < i < 8044 || 3846 < i < 3853 || 3960 < i < 3984 || i == 5360 then
         UO.MoveItem("finditem", 0, "backpack")
      endif
     ;  |    Gems       |       Plate      |      Shields
      if 3856 < i < 3885 || 5136 < i < 5141 || 7026 < i< 7035 then
         UO.MoveItem("finditem", 0, "backpack")
      endif
      UO.Ignore("finditem"); игнорит ненужные
      UO.FindType(-1, -1, "lastcontainer"); найти любой придмет в контейнере
   wend
   UO.IgnoreReset(); при поиске в контейнере сбросить, при поиске на грунте убить эту строку
   UO.Set("grabdelay", 0); вернуть на 0
endsub


Думаю не сложно 24 типа перевисти в инт и воткнуть в иф 1111||2222||3333 тхен
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Alucard
сообщение 12.9.2009, 20:06
Сообщение #14


ДМ НТ
Group Icon

Группа: Пользователи
Сообщений: 4 801
Регистрация: 13.7.2006
Из: г. Иваново
Пользователь №: 3 276
Спасибо сказали: 351 раз(а)
Класс: Человек



Завязывай не свое за свой моск выдавать. Проверь сперва работает ли хоть один из того что ты выкладываешь
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Jikus
сообщение 12.9.2009, 20:11
Сообщение #15


Ступивший на тропу
Group Icon

Группа: Пользователи
Сообщений: 518
Регистрация: 30.5.2005
Пользователь №: 1 070
Спасибо сказали: 5 раз(а)
Класс: Рейнджер



Цитата(Alucard @ 13.9.2009, 0:03) *

ну я вроде ничего и не спрашивал. А ты его тестил вообщето перед тем как выложить?

2 Pasha Джикус умело копирует скрипты дветыща какогото года с форума Yoko не проверяя и не редактируя их. К сожалению notknow.gif


Копирует у omi4 ?
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Alucard
сообщение 12.9.2009, 20:15
Сообщение #16


ДМ НТ
Group Icon

Группа: Пользователи
Сообщений: 4 801
Регистрация: 13.7.2006
Из: г. Иваново
Пользователь №: 3 276
Спасибо сказали: 351 раз(а)
Класс: Человек



Цитата(Jikus @ 13.9.2009, 0:11) *

Копирует у omi4 ?

Даже не вдумываясь laught.gif
Давай по пунктам.
название темы "Лут с земли" - ты выкладываешь лут последнего контейнера.
скрипт не полный. Если выкладываешь скрипты хотя бы потрудись довести до работоспособности. Уж объявить переменные было ой как сложно.
лутилка может и не плохая но опять же не совсем то что необходимо автору. А светить тут своим умом и чужим скриптом... notknow.gif


Спасибо сказали:
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Jikus
сообщение 12.9.2009, 20:29
Сообщение #17


Ступивший на тропу
Group Icon

Группа: Пользователи
Сообщений: 518
Регистрация: 30.5.2005
Пользователь №: 1 070
Спасибо сказали: 5 раз(а)
Класс: Рейнджер



Скрипт указанный в первом посте написал я и omi4 с Yoko тоже я. Плагиатором меня называть незачем.

Лут из контейнера переделать в сборку с земли дело одной минуты, в 20 строчках думаю не запутаются. Скрипт перед использованием нужно прочесть и понять.

Не полный из за строчки UO.UseObject("<0x0E76")

ну если нужен код для земли держи

добавлена опция лута из мешков на полу

Код
sub Ept3()
UO.Set('finddistance', '3')
UO.Set("grabdelay", 100)
    repeat
        UO.FindType(-1,-1,'ground')
        while UO.FindCount()
        if UO.GetGraphic("finditem") == 0x0E76 then
            UO.UseObject("finditem")
            UO.FindType(-1, -1, "lastcontainer")
            while UO.FindCount()
                Move(UO.Hex2Int(UO.GetGraphic("finditem")))
                UO.FindType(-1, -1, "lastcontainer")
            wend
        else
            Move(UO.Hex2Int(UO.GetGraphic("finditem")))
        end if
            UO.FindType(-1, -1, "ground")
        wend
    until UO.Dead()
UO.Set("grabdelay", 0)
UO.Set('finddistance', '18')
UO.IgnoreReset()
end sub

Sub Move(i)
;  |    scroll      |      Potions     |      Reagents    |     Deeds
    if 7982 < i < 8044 || 3846 < i < 3853 || 3960 < i < 3984 || i == 5360 then
        UO.MoveItem("finditem", 0, "backpack")
    endif
;  |    Gems       |       Plate      |      Shields
    if 3856 < i < 3885 || 5136 < i < 5141 || 7026 < i< 7035 then
        UO.MoveItem("finditem", 0, "backpack")
    endif
    UO.Ignore("finditem"); игнорит ненужные
end sub


Сообщение отредактировал Jikus - 12.9.2009, 21:14


Спасибо сказали:
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Pasha
сообщение 13.9.2009, 0:02
Сообщение #18


Авторитет
Group Icon

Группа: Пользователи
Сообщений: 8 338
Регистрация: 26.3.2005
Из: Албании
Пользователь №: 711
Спасибо сказали: 201 раз(а)
Класс: Друид



Jikus спасибо тебе за скрипты но знай люди которые тут просят скрипты слово переменные знают разве что из школьной программы и лично я не пишу скрипты и понятия не имею что там и как нужно "элементарно" заменить я могу лишь кое как "прочесть" скрипт.

"Лут из контейнера переделать в сборку с земли дело одной минуты"

для меня это и есть причина почему я сижу в этой теме. ибо я хз как это сделать вообще. думаю и афтар тоже не стал бы обращаться на форум если делов ему на одну минуту.


Спасибо сказали:
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
CxC
сообщение 13.9.2009, 17:45
Сообщение #19


Местный трепач
Group Icon

Группа: Пользователи
Сообщений: 1 732
Регистрация: 14.1.2009
Из: Краснодар
Пользователь №: 6 081
Спасибо сказали: 223 раз(а)
Класс: Рейнджер



спасибо, времени нет потестить, но лутает все или как? и как добавить предметы, неоходимые для лута... чет не понял как скрипт написан
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Jikus
сообщение 13.9.2009, 19:33
Сообщение #20


Ступивший на тропу
Group Icon

Группа: Пользователи
Сообщений: 518
Регистрация: 30.5.2005
Пользователь №: 1 070
Спасибо сказали: 5 раз(а)
Класс: Рейнджер



Может так будет проще для понимания

Код
sub Sbor()
var item
UO.IgnoreReset()
UO.Set('finddistance', '3')
repeat
    UO.FindType(-1,-1,'ground')
    if UO.FindCount() then
        item = 'finditem'
        if Sort(item) then
            wait(100)
        else
            UO.Ignore(item)
            UO.Print(UO.GetGraphic(item)+" "+UO.GetSerial(item))
        end if
    else
        UO.IgnoreReset()
        UO.Set('finddistance', '16')
        return
    end if
until UO.Dead()
end sub

Sub Sort(item)
var i = UO.GetGraphic(item), color
; --- Scroll ---
if 0x1F2E < i < 0x1F6C then
    UO.MoveItem(item, 0, "_0x0EFA");
    return 1
endif
; --- Potions ---
if 0x0F06 < i < 0x0F0D then
    color = UO.GetColor(item)
    if color == 0 || color < 0 then
        UO.MoveItem(item, 0, Container(0x0F06, 0x0F0D))
        return 1
    else
        return 0
    end if
endif
; --- Reagents ---
if 0x0F78 < i < 0x0F90 then
    UO.MoveItem(item, 0, Container(0x0F78, 0x0F90))
    return 1
endif
; --- Gems ---
if 0x0F10 < i < 0x0F2D then
    UO.MoveItem(item, 0, Container(0x0F10, 0x0F2D))
    return 1
endif
; --- Plate ---
if 0x1410 < i < 0x1415 then
    UO.MoveItem(item, 0, Container(0x1410, 0x1415))
    return 1
endif
; --- Shields ---
if 0x1B72 < i < 0x1B7B then
    UO.MoveItem(item, 0, Container(0x1B72, 0x1B7B))
    return 1
endif
; --- Deeds ---
if i == 0x14F0 then
    UO.MoveItem(item, 0, "backpack")
    return 1
endif
return 0
end sub

Sub Container(start, stop)
var i, cont
for i = start to stop
    cont = UO.ContainerOf('_' + i)
    if cont > 0 && cont <> "self" && cont <> "backpack" then
        return cont
    end if
next
return "backpack"
end sub


Берет то на что настроен, добавлено
фильтр по цвету смотри Potions
действия смотри Scroll пихает спел в буку
а так же попытка сохранить порядок в бекпаке... ну если он там был до этого Container()

Для того чтобы понимать нужно пробовать написать, а не собрать из фрагментов тел
3 строки потом 5 потом 10 и т.д. после 30 проблемы уже не будет


Спасибо сказали:
CxC,
Пользователь в офлайнеКарточкаОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 

2 страниц 1 2 >
Ответить в эту темуОткрыть новую тему
> >
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия Сейчас: 18.3.2019, 13:45
Design: Fisana  © 2005-2006 IBR Team