Главная » Статьи » LineAge2 » про LineAge2

Ботоводство часть 1

Введение:
Бот - специальные программы, дающие необоснованное преимущество перед остальными игроками. А если проще, Бот выполняет все ваши действия в игре: качается на мобах, пьёт соулшоты, пьёт банки лечения, ускорения, антидоты. Подбирает адены и весь лут с мобов. Использует все те скилы, которые вы ему зададите. Было установлено, что при прокачке бота, скорость кача увеличивается на 15 - 25%. При качественной настройке может сам разговаривать с персонажем, обратившемуся к вам, т.е. он вам Hi, а вы ему в ответ Хай чувак!). Он Что делаешь?, а вы Качаюсь, а что не видно?;) и т.д. Если хорошо по-корпеть, то можно настроить диалог так, что на протяжении часа бесебы с кем-либо, получется качественный и содержательный диалог. Бот может крафтить соулшоты всех видов. В Боте есть функция оповещения, т.е. если к вам обратится GM, то бот либо отключится, либо будет продолжать беседовать с GM, либо позовёт вас. И это только лишь мизерная часть гигантских возможностей Бота.

Боты бывают двух видов: OnGame & OffGame.

OnGame - бот, который запускается вместе с клиентом игры. Самые лучщие OnGame боты:

C1: l2Walker 1.13, 1.18 - 1.29
C2: l2Walker 1.15 - 1.16
C3: l2Walker l2Walker 1.30
OffGame - бот, который работает автономно, т.е. без клиента игры. Самые лучшие OffGame боты:

C1: l2Walker 10.2.3
C2: --//--
C3: l2Walker 10.4.9
Всех ботов вы сможете найти в разделе Файлы.

Внимание! Боты запрещены на многих серверах! Использование бота может повлечь за собой бан или удаление аккаунта.

-/-/-/-/-/-/-/-/-/-/-/-/

Настройка бота:
По сути OnGame и OffGame функциональность особо не различаются. Так же боты более новых от более старых версий почти ничем не отличаются. Только лишь дизайном и несколькими новыми функциями, о значениях которых не составит труда догадаться. Тут выложена универсальная настройка для всех версий бота.

Для C2 бота смотри сноску.**

Basik Option. (главные настройки)
Окно General
Relogin - при дисконнекте подключаеться снова.
Delay - задержка перед повторными попытками подключения.
Death Retyrn - возвражение в город при смерти.
Death Logaut - уходит в логаут при смерти бота(чтоб ваш бот не валялся на поляне по 12 часов)
Char Login Delay - задержка после выбора персонажа(эмуляция разумной деятельности - человек не мгновенно выбирает перса за которого будет играть)
Login Game Delay - время ввода пароля и пасса(снова эмуляция деятельности человека - игрок не может ввести пароль мгновенно)
Enable Login Delay - использовать настройки ввода логина(использовать задержки входа)
Oкно SOCKS5 Proxy
Тут все понятно без разьяснений. Для любителей анонимного ботоводства.
Окно Down Level
Тут настройки делевинга.(Немного истории: боты были в принципе созданы для фарма адены, а не для кача. Игрок качался до 20 лвл и одевал топовые шмотки из Д-град и оставался пожизнено на 20 лвл. Так как мог очень продуктивно уничтожать мобов 18-20 лвл и зарабатывать в час по 15-25к адены а затем перепродавать её за реал. Это было весьма прибыльно особенно на первых порах, когда за 100к адены давали 100$ на офф сервере)
Attack NPC - делевиться путем атаки охранников у города.
Lvl>ХХ при левеле выше указанного атаковать НПС( в раскрывающейся строке указываються ники НПС из доступных
Oкно Abnormyty Buff
Использование баффов при ранении скиллом Bleed и использование антидотов при отравлении - Self-Cures poison
Die After - после смерти использовать скрипт путь к ктоторому указываеться в окошке Run Script
Например можно написать скрипт чтобы после смерти бежал снова к месту кача и продолжал лупить мобов.

Heal Options (Настройка лечения)
Окно Sit(садиться)
Use Relax Skill - использовать скилл релакс при отдыхе(для хуманов)
HP<ХХ% or MP<ХХ% - садиться при заданных условиях(в процентах, т.е. больше 100 нельзя ставить или только в особо оговоренных случаях) Если ничего не указать то бот будет драться с мобами до тех пор пока не помрет.
Окно Stand(вставать)
HP>ХХ% or MP>ХХ% - всnавать при указанных условиях(в процентах, т.е. больше 100 нельзя ставить или только в особо оговоренных случаях) К Примеру вам нужно оставаться в сидячем положении после полного восстановления - тогда нужно указать величину превышающую 100 в любом из окон в рамке Stand
Если ничего не указывать то бот будет вставать после полного восстановлении жизни и маны
Окно HP/MP Protect
Use Pots - использовать бутылки хилинга при HP меньше указанного (в %)
Справа есть столбец под названием Use In Combat - использовать во время боя - бутылки ВСЕГДА нужно использовать во время боя иначе бота посто прибьют.
Еще правее есть колонка Delay - Задержка перед следующим применением - для хилингов составляет
10 секунд - столько действует лечилка.
Чуть пониже есть выбор условий для сохранения МП - на некоторых серверах в продаже есть ManaDrug - колбочки вроде лечилок но восстанавливающих ману(синего цвета) думаеться мне что можно их использовать и в боте.
Окно Protect
HP<ХХ% - Logaut - бот автоматичеси оборвет коннект с сервером и уйдет в логаут если его ХП станет меньше указанного и попытаеться зайти снова после указанного в окошке времени(по дефолту 60 секунд) Еще правее стоит количество таких перезаходов(если место плохое и вашего бота там часто подводят к смерти то попыток начать заново будет указанное количество)
HP<ХХ% Flee - попытаться убежать от моба(куда побежит не знаю, никогда этот пункт не ставлю)
Run When Surrounded By - убегать если на вас напало ХХ мобов(этот пункт не подходит для мест где полно агро мобов - бота скорее всего убьют, в любом случае лучше качаться в местах где вы можете выдержать не менее 3-х мобов одновременно, используя Соулшоты и лечилки).

Buff
Окно Use Items – использование СС, СПС, БСПС при условиях
Target HP – при повреждении ХП более чем указано за указаноое время
Target LV – при атаке мобов с уровнем указанным в окне
Self HP<ХХ - при ХП меньше указанного( тут полные единицы жизни, а не % как в других настройках)
Surrounde – при окружении мобами в указанном количестве
Окно Self Buff Setting – использование баффов на себя
В раскрывающихся окнах выбираються баффы которые вы будете использовать на себя(доступны после подключения бота к серверу)
Справа пункт(ы) Delay - задержка перед повторным баффом
Еще правее MP> - условие что бафф используеться только если MP больше указанного
Dwarf – дварфы
Use Auto Sweep – использование спойла и свипа дварфом
Auto Make – использовать рецепт при МП равном указанному или больше(рецепты должны лежать в инвентаре. Удобно для крафта СС/СпС/БСпС и т.д.

Party Setting (Настройка партии)
Окно Healer Settings – Настройка Хилера
Sleep When Helper – рутит мобов помогая указанному (вписать ник игрока учитывая большие и маленькие буквы в его нике)
При МП меньше указанного (У кого?) и МП больше указанного(у кого?) не усыплять - условия не понятны так и не смог разобраться что к чему - хилер рутит одного моба столько раз сколько успевает пока моба не убьют.
Send Party Invite – Посылать приглашение в партию указанному игроку( Игроку с указанным ником будет постоянно приходить приглашение в партию)
Окно Follow Attack – следовать атаке
Active Follow Attack – атаковать тогоже кого атакует ведущий(имя ведущего указываеться в меню Follow Setting
Dont Solo counterAtck mons – не контратаковать монстров в одиночку(Например ведущего убили)
Attack When Healer Selected Target – атаковать когда Хилер выбирает цель (Хилер ведущий и при этом только выбирает цель, а пати атакует выбранного моба. Хилер может быть как на боте так и живым игроком с пати состоящей из ботов)
Protect Men – Защащать указанного игрока.(Нарпимер укажите ник Хилера или ценного для пати игрока и если на него нападают мобы то вся пати(боты) нападают на атакующего моба не зависимо на кого они нападали до этого)Не должно противоречить другим настройкам - боты впадут в ступор если мобы нападают на игрока из Protect Man и одновременно боты настроены на Active Follow Attack и при этом Игрок прописанный в строчке с Active Follow Attack не настроен на защиту игрока в строке Protect Man.
Другими словами если вы используете Protect Man то все участники пати должны быть на это настроены.
Окно Helper Setting – Настройка помошника
When Be Attaked Run Behind – при атаке указанного игрока он будет убегать от моба(в каких пределах - незнаю)
Auto Res Party Plauer > МП Резуректить при МП больше указанного(если в пати есть хилер с резуректом то он автоматически поднимет умершего товарища )
Allow Use Item – использовать скролл резуректа - если в пати нет хилера с резуректом то один из членов пати воспользуеться скроллом резуректа
Follow Healer Sit – садиться вместе с хилером(как только у хилера есть нужда отдохнуть и при этом хилер являеться ведeobv(он прописан в строке Folow Name)
Follow Healer Action – вставатьза хилером после его отдыха.
Окно Follow Setting – настройки следования
Active Follow – активное следование за игроком указанным в строчке Follow Name
Follow Distance – дистанция следования - расстояние на котором будут бегать боты за ведущим(если ботов несколько то указывайте разное рассояние иначе со стороны будет глупо выглядеть)
Cur Target – дистанция атаки - при атаке боты отходят от атакуемого обьекта на указанное расстояние(например нужно чтобы первым атаковал танк, а моб являеться агрессивным - нужно предотвратить слишком близкий подход к мобу остальными членами партии)
Follow Name – cледовать за указанным игроком
Auto Accept Invites – принимать приглашение в партию от указанно игрока(Например вы хотите качаться в партии из 2-ботов - пропишите в этой строчке свой ник и они будут вступать в вашу пати как только вы послали им приглашение).

Окно Party Buff(Партийные баффы)
Галочку ставим если хотим юзать какойто бафф который выбираеться из списка(список доступен после подключения бота к серверу и там сохраняеться)
Delay - Частота использования баффа
Name - Укажите имена счастливчиков награждаемых баффами - если не указано ничего то счастивы будут все (Некоторые баффы не нужны одним игрокам и нужны другим, например для магов нужно акумен и эмпауер, а воинам нафиг ненужен и в целях экономии маны можно указывать кому что нужно)
Helpy Party Members - помощь партийцам со стороны хилера.
Самая важная настройка для жизнедеятельности парии и не только.
Итак нужно указать при каком состоянии ХП участника партии его лечить и каким хилом(простой, battl heal и т.д)
Обычно баттл хил используют в критических ситуациях поэтому для него нужен самый низкий % от жизни игрока при котором он будет использован. Величины сильно зависят от того каких мобов вы бьете и как быстро они вас убивают. Тут по обстоятельствам.

Pathing - Настройка области действия бота
Окно Path Setting - настройка ботинга
Rand – рандомный выбор – бегает туда где видит подходящих мобов(подходит если за пределами видимости нет таких же мобов иначе может ОООчень далеко убежать например в данже можно)
Combat begin Point – бегать в заданном квадрате с указанным размером(размер указываеться в строчке Radii
Center Point – центральная точка с указанными координатами - можно закрепить квадрат действия бота - так без указания центральной точки квадрат действия назначаеться относительно положения вашего бота и с центральной точкой квадрат привязан к карте
Cur. – ввод текущих координат(там где расположен бот)
Radii – размер рабочей области бота
Z-limit – не лазить в горы выше указанного
When Not Foun monstr…. - использовать другие точки из списка если около указанной точки нет подходящих мобов.(можно проложить маршрут по которому бот будет искать нужный вид мобов если в пределах видимости их нету, для этого вы предварительно ведете бота по маршруту и на каждом повороте жмете Cur.Pos - заполняеться мини-табличка справа и потом жмете Add - данные перекочуют в список в центре с координатами опорных точек. Так делаеться дорожка из нескольких точек. По этой дорожке бегает ваш бот и как только увидит нужных вам мобов сразу к ним ломиться, а затем возвращаеться снова к дорожке и бежит дальше.).

Far Attacks – Нападение издалека (дистанционная атака)
Use Raf Settings – использовать настройки удаленной атаки(ставим галочку если хотим их использовать).
When Target Is In – когда цель находиься дальше 500 единиц
Attack And Run – убегать после атаки и атаковать снова(для лучников и магов)
Equip Weapoon 1 – использовать первым указанное оружие
Equip Weapoon 2 – использовать вторым указанное оружие
First Skill 1 – скилл для первого оружия
Must – должен использовать при указанных условиях
First Skill 2 – скилл для второго оружия
Attacking Type – тип атаки
Direct Attack – прямое нападение(вручную - близкая атака)
Use Spell – использовать спелы (активные скиллы)
When Target HP< - когда ХП меньше указанного использовать прямое нападение(рукопашный бой и можно использовать другое оружие).

Short Attack - короткое нападение (ближний бой - настройка для танков и прочих кто не стреляет и не колдует)
Use Melee Settings – использовать настройки
When Target Is – когда цель рядом, на указанном расстоянии или ближе
Equip Weapon 1 – первое оружие.
Equip Weapon 2 – второе оружие
First Skill 1 – первый скилл(например можно поставить для даггерщика настройки When HP<101% и MP>90% чтобы использовал скилл МорталБлоу)
Must – использовать при условии - настройки MP и HP
First Skill 2 – второй скилл
When Target HP< - при условии повреждения ХП (ХП осталось менее указанного)
Attacking Type – тип атаки
Direct Attack – простая атака
Use Spell – использовать спелы при атаке
When Target HP< - когда ХП меньше указанного использовать простое нападение.

Monster Setting – настройки поведения с различными монстрами.
Аtk Type – тип атаки (что делать с этим мобом)
No attack – не атаковать
Attack – атаковать
Attack Alone – атаковать только одинокостоящих(как точно это настраиваеться я не разобрался, было бы где прописать радиус при котором если мобы стоят ближе друг к другу их не атаковать)
Auto Sweep – автоматически использовать Спойл и Свип(для дварфов)
All Sets Same – выбрать тоже самое для всех мобов.
Initiative – агрессивность моба(агро/нет)
Colony – социальное поведение (помогают друг другу)
Mons Level Limit – ограничение уровней атакуемых мобов.
No Atk Lvl Big to – не атаковать мобов с уровнем выше указанного
No Atk Lvl Low - не атаковать мобов с уровнем ниже указанного
Other – другие настройки
Attack Aggros First – атаковать вначале агрессивных мобов(например вы бежите к мобу который не агро и далеко стоит, а на вашем пути стоит моб который агро топробегая мимо вы его будете бить хотя в ваших настройках может и не прописано что такой вид мобов надо лупить)
Grab Player’s Monster – атаковать мобов атакуемых другими игроками(иначе вашего бота могут быстро вычислить другие игроки просто выделяя мобов к кторому бежит ваш бот).

Items Setting – настройка игровых предметов
Pick Up Item Distance – поднимать предметы в радиусе ХХХ ед
Pick Up Item Before Atk – подбирать итемсы во время боя(иначе сопрут другие. Но имейте ввиду что реальные игроки очень редко подбирают итемсы во время боя)
Only Pik mine - дословно - поднимать единственное своё(хз что это значит)
Auto del load >ХХ -автоматически кинет в корзину при подьеме одинаковых итемсов более указанного количества(например с мобов падает какаянибудь хрень которая весит много а пользы приносит мало(антидот хотябы) то при накоплении у вас будет перегруз и бот прросто их уничтожит)В принципе ничто не мешает написать макрос для бота чтобы при накоплении каких то итемсов он бежал в город и сам их продавал, затем затаривался лечилками, ССками и бежал снова на место кача.
Окно Setting
Выбираете итемс из списка или набиваете его в строчке и затем выбираете из списка и настраивате дальше что с ним делать вашему боту.
Pick - поднимать
Sell - продавать(где возможно нужно для макроса. мне не известно)
Store - запасать/складывать в инвентори
GMuse - использовать при ГМе(не знаю зачем надо, может гм бросает а ты должен поднять и использовать?)
All Same - применить настройки ко всем итемсам.

*Pet Setting – настройки пета (прокачка пета)
Follow Attack – атаковать того, кого отакует мембер
Follow Masten not - в этой строчке можно прописать имя чара после атаки которого ваш пет бросаеться в бой - хозяин может выполнять пассивную роль в партии - нпример только лечить.
Pet - настройка поведения пета
Auto Take – автоматический подьем
When – когда
Auto seeding when Hunger – автоматически кушать при ХП меньше указанного
Сall Back Pet When No Feed – убрать пета если нет пищи.

*Пета, например дракона, очень удобно качать в партии. Создаёте партию из двух человек. В настройке Follow Attack ставите имя мембера. А в ваших личных настройках (Party Setting->Follow Name(ставите ник мембера) & ->Follow Distance(ставите дистанцию 10 - 100). Больше тут никаких галок не ставим. Теперь ваш бот будет следовать за мембером, повторяю ТОЛЬКО СЛЕДОВАТЬ, а ваш дракончик будет атаковать того моба, которого атакует мембер. Таким образом весть тот exp, который должен был идти вам, идёт дракону и получается нон-стоп кач. Это особенно эфективно на 50+ леваках, тогда можно дракона 35 левака вскачнуть до страйдера меньше чем за неделю.

GM Strategy – стратегия при появлении ГеймМастера
Сheckup GM Use Items – Использовать выбранные пункты при проверке ГМом
Logaut – выйти из игры через указанное время
Relogin – перезайти через указанное время
Say – сказать фразу при появлении ГМа
If Teleported – телепортироваться и выйти в логаут через указанное время
GM Whisper or Petition – Разговор с ГМ( с помощью окна петиции)
Logaut – выйти из игры через указанное время
Smart Reply – сказать фразу в ответ на вопрос ГМа
gnore Him - игнорировать(работать на мануале при появлении ГМ)
Не пытайтесь внести в список как можно больше фраз - и ответов на одни и теже фразы - бот выбирает ответ который идет в самом верху на один тип вопроса(баг).

Other player – другие игроки (поведение при появлении других игроков)
Auto Reject Party Invite – автоматически отказывается от партии
Auto Rejekt Trade invite – автоматически отказывается от трэйда
Logaut On Found Player – выйти из игры при появлении другого игрокав в указанном радиусе (игрок должен быть из списка в закладке Names Setting)
Other Player – других игроков
Friend Player – друзей из списка.
Relogin – перезайти через уаказанное время
Logaut On Red Player Выйти в логаут при появлении PK(некоторые игроки развлекаються тем что убивают ботов и естественно становяться PK) Если ПК подойдет ближе чем написано в строчке справа(окошко для ввода данных)
Attacked By Player – атака игрока
First Say – быстрая фраза при атаке(фраза вылезет мгновенно так что не пишите трактатов в 10 слов)
And Logout – и выйти из игры при атаке другим игроком
Relogin – войти снова через указанное время
Smart Reply Whisper – сказать в ответ на приват
No Smart Math Random Say – выбрать случайный ответ из списка(баг) - Ответ выдает но на одну и туже фразу всегда выдает одинаковый ответ.

Name Setting – Настройка Имен.
Всего в этой версии бота 3 окна.
GM name - имена игроков являющимися ГМами и самих GMов
Other Player Name - имена игроков которые вас нелюбят/вы их не любите(не хотите при них ботать и прочее)
Friend Name - имена друзей(будет отображатьтся их присутствие он лайн).

Vending – настройка магазина.
Auto Set Up Shop When Begin – автоматическая настройка магазина при старте( после старта ваш бот сам все выложит в торговлю и сядет торговать)
Logaut When Done – выйти при окончании торговли(все продано/скуплено зачем сидеть более )
Notice When You Use Relogin Set Up Shop Please Left Sell Items Number Or Buy Item Left One – Проверяйте количество и стоимость покупаемых/продаваемых товаров после перезахода в игру.( Специально для изменчивого рынка - вы можете прогадать на цене)
Auto Set Up Shop – автоматическая настройка магазина.
Sell – продажа
Buy – покупка
Title – надпись на магазине
Item Name – наименование покупаемых/продаваемых предметов
Quantity – количество
Price – цена
В Sound alert и так все ясно.
Обязательно поставте сигнал требоги в первых трех пунктах. От этого зависит узнаете вы о том, что ГМ рядом или нет.

**Для C2 используются OnGame l2Walker 1.15 - 1.16. Они на корейском языке. Поэтому настраивайте их по аналогии с l2Walker 1.19. Это можно сказать брат-близнец l2Walker 1.15 - 1.16.

-/-/-/-/-/-/-/-/-/-/-/-/

Скрипты:
Что такое скрипты объяснять не буду, думаю вы и сами всё знаете. Начну с основных команд скрипта:

GOHOME()
//Переход к началу скрипта.

SAY(Сообщение)
//Писать что-либо в окне чата. Не думаю, что это будет полезно

JMP(Текст)
//Переход к CALL(Текст) где текст в кавычках такой же.

CALL(Текст)
//Вызов подпрограммы. Переход к LABEL(Текст) где текст в кавычках такой же.

LABEL(Текст)
//Обозначает метку для перехода по CALL(Текст).

DELAY(x)
x = милисекунды
//Приостановка скрипта.

Pause(x)
x = милисекунды
//Не уверен, что есть разница между DELAY и PAUSE

RETURN()
//Выход из подпрограммы.

EXIT()
//Выход из скрипта.

ПЕРЕМЕЩЕНИЕ:

MOVETO(x,y,z)
//Топать в точку с координатами x,y,z

ПРЕДМЕТЫ:

ITEMCOUNT(Название предмета[ID=#],<,1)
{
}
//Подсчитывает количество указанных предметов с условиями <, >, = и выполняет скрипт в фигурных скобках.

USEITEM(Название предмета[ID=#])
//Использует предмет.

BuyItem(Название предмета[ID=#],#)
//Покупает предмет
BuyItem(Название предмета[ID=#],#;Название предмета[ID=#],#)
//Покупает за раз более одного предмета (можно указать много предметов через точку с запятой) .

SavelItem(Название предмета[ID=#],#)
//Помещает предмет в хранилище (Warehouse).
SavelItem(Название предмета[ID=#],#;Название предмета[ID=#],#)
//Помещает несколько предметов в хранилище (Warehouse).

LoadItem(Название предмета[ID=#],#)
//Забрать предмет из хранилища.
LoadItem(Название предмета[ID=#],#;Название предмета[ID=#],#)
//Забрать несколько предметов из хранилища. # - само собой количество.

МОБЫ aka NPC's:

NPCSEL(Имя NPC[ID=#])
//Выбрать NPC.

NPCDLG(Имя NPC[ID=#])
//Открыть диалог с NPC.

DLGSEL(Диалог)
//Выьрать пункт диалога [пример: DLGSEL(Buy)]

StrInDlg(Диалог)
{
}
//Проверяет присутствует ли фраза в диалоге. (например, Thank You!) Если да, то испольняеца кусов скрипта в фигурных скобках ({}).

Параметры персонажа:

ChangeWaitType(x)
Сменить состояние с "сидеть" на "стоять" и наоборот.
x = 0 Сесть
x = 1 Встать

CharStatus([CHP|CMP|HP|MP|WEIGHT|LV|SP|RACE|STAND]
,[>=|>|==|!=|<|<=],число)
{
}
CHP = Здоровье персонажа
CMP = Мана персонажа
HP = Здоровье (%)
MP = Мана (%)
WEIGHT = Загрузка (%)
LV = Уровень
SP = Хрен знает что такое
RACE = Это еще менее понятно
STAND = Проверка сидишь или стоишь
...,==,0) Сидишь
...,==,1) Стоишь (может быть 0 и 1 надо поменять местами

PosInRange(x,y,z,дистанция)
{
}
//Проверка находится ли заданная точка в пределах досягаемости (дистанция). Если да, то выполняется кусок скрипта в фигурных скобках ({}).

PosOutRange(x,y,z,дистанция)
{
}
//То же самое, но условие верно, если точка все досягаемости.

SET(FIGHTSTART)
//Начинает бой.

SET(FIGHTSTOP)
//Останавливает бой.

Пример скрипта:

Простейший скрипт для возвращения на место кача после смерти.

SET(FIGHTSTOP) //Остановить бой
MSG(Begin go from city)
MOVETO(43073,50070,-2976) //Координаты точек пути следования бота
MOVETO(43127,49827,-2992)
MOVETO(43497,50386,-2992)
MOVETO(44121,50202,-3056)
MOVETO(42680,50112,-2984)
MOVETO(43127,49827,-2992)
MOVETO(43331,50985,-2984)
MOVETO(40092,53247,-3320)
MOVETO(37348,50329,-3432)
MOVETO(37816,46189,-3432)
MOVETO(33460,42697,-3536)
MOVETO(32946,39895,-3440)
MSG(Begin Combat)
Вы уже на месте прокачки
SET(FIGHTSTART) //Начать бой

EXIT()

Для того, что бы этот скрипт запустился после смерти бота нужно:

Basik Option->Death Retyrn(поставить галочку); Die After(поставить галочку), в окошке Run Script прописать путь к скрипту. Таким образом, после сметри бот будет останавливать бой, через 60 сек после семрти портаться в город, бежать на место прокачки и продолжать качаться!

Программ для написания скрптов НЕТ! Скрипты можно писать либо в OnGame боте(Script->Script Make), либо в блокноте. В OnGame боте есть кнопочка .REC. (Script->Script Make->.REC.), жмёте её и бот записывает все ваши действия. Очень удобно при записи маршрута (MOVETO(x,y,z) ) бота и так же полезна для новичков.

-/-/-/-/-/-/-/-/-/-/-/-/

Примеры скриптов:
Файл со скриптами вы сможете найти в разделе Файлы.

//-------------------------------------------------------------
//
//
// Скрипт на прокачку версия 0.01
// для Talking Island Village точка 001 (-85038,253859,-3704)
// мобы 1-4 уровня
//
// (c) made by Zzz
// скрипт писался и тестировался на Wnet
//
//
//-------------------------------------------------------------

LABEL(metka401)
SET(FIGHTSTOP)
CALL(mesto)
CALL(magazin)
CALL(bank)
CALL(beg)
CALL(kombat)
JMP(metka401)

//------------------------------------------------------------
//
// определение места
// и переход на начальную точку
// (-85013,242479,-3728)
//
//------------------------------------------------------------

LABEL(mesto)
LABEL(metka001)
PosInRange(-85013,242061,-3728,100)
{
JMP(metka002)
}
PosInRange(-83537,242537,-3700,200)
{
MOVETO(-84185,242513,-3728)
MOVETO(-85013,242061,-3728)
JMP(metka002)
}
PosInRange(-83646,243397,-3700,200)
{
MOVETO(-83739,242793,-3728)
MOVETO(-84185,242513,-3728)
MOVETO(-85013,242061,-3728)
JMP(metka002)
}
PosInRange(-83700,242896,-3700,200)
{
MOVETO(-84185,242513,-3728)
MOVETO(-85013,242061,-3728)
JMP(metka002)
}
PosInRange(-83742,242214,-3700,200)
{
MOVETO(-84185,242513,-3728)
MOVETO(-85013,242061,-3728)
JMP(metka002)
}
PosInRange(-83761,243620,-3700,200)
{
MOVETO(-83739,242793,-3728)
MOVETO(-84185,242513,-3728)
MOVETO(-85013,242061,-3728)
JMP(metka002)
}
PosInRange(-83964,242680,-3700,200)
{
MOVETO(-85013,242061,-3728)
JMP(metka002)
}
PosInRange(-83990,243336,-3700,200)
{
MOVETO(-83739,242793,-3728)
MOVETO(-84185,242513,-3728)
MOVETO(-85013,242061,-3728)
JMP(metka002)
}
PosInRange(-84512,242679,-3700,200)
{
MOVETO(-85013,242061,-3728)
JMP(metka002)
}
PosInRange(-84623,243193,-3700,200)
{
MOVETO(-84693,242823,-3728)
MOVETO(-85013,242061,-3728)
JMP(metka002)
}
PosInRange(-84756,242155,-3700,200)
{
MOVETO(-85013,242061,-3728)
JMP(metka002)
}
PosInRange(-84852,243174,-3700,200)
{
MOVETO(-84693,242823,-3728)
MOVETO(-85013,242061,-3728)
JMP(metka002)
}
PosInRange(-84903,243489,-3700,200)
{
MOVETO(-84693,242823,-3728)
MOVETO(-85013,242061,-3728)
JMP(metka002)
}
USEITEM(Scroll of Escape[ID=736])
DELAY(25000)
JMP(metka001)
LABEL(metka002)
RETURN

//-----------------------------------------------------------
//
// подпрограмма на продажу ненужного
// и покупку СоЕ
//
//-----------------------------------------------------------

LABEL(magazin)
MOVETO(-84596,241587,-3728)
MOVETO(-83909,241157,-3728)
MOVETO(-83919,240931,-3720)
MOVETO(-83854,240817,-3720)
NPCDLG(Silvia[ID=7003])
DELAY(1500)
//
// продаем ненужное
//
LABEL(metka101)
DLGSEL(Sell)
DELAY(1000)

ITEMCOUNT(Club [ID=4],>,0)
{
SELLITEM(Club [ID=4];)
DELAY(1000)
JMP(metka101)
}

ITEMCOUNT(Apprentice's Rod [ID=7],>,0)
{
SELLITEM(Apprentice's Rod [ID=7];)
DELAY(1000)
JMP(metka101)
}

ITEMCOUNT(Short Bow [ID=13],>,0)
{
SELLITEM(Short Bow [ID=13];)
DELAY(1000)
JMP(metka101)
}

ITEMCOUNT(Wooden Arrow [ID=17],>,0)
{
SELLITEM(Wooden Arrow [ID=17];)
DELAY(1000)
JMP(metka101)
}

ITEMCOUNT(Leather Shield [ID=18],>,0)
{
SELLITEM(Leather Shield [ID=18];)
DELAY(1000)
JMP(metka101)
}

ITEMCOUNT(Small Shield [ID=19],>,0)
{
SELLITEM(Small Shield [ID=19];)
DELAY(1000)
JMP(metka101)
}

ITEMCOUNT(Shirt [ID=21],>,0)
{
SELLITEM(Shirt [ID=21];)
DELAY(1000)
JMP(metka101)
}

ITEMCOUNT(Pants [ID=28],>,0)
{
SELLITEM(Pants [ID=28];)
DELAY(1000)
JMP(metka101)
}

ITEMCOUNT(Cloth Cap [ID=41],>,0)
{
SELLITEM(Cloth Cap [ID=41];)
DELAY(1000)
JMP(metka101)
}

ITEMCOUNT(Leather Cap [ID=42],>,0)
{
SELLITEM(Leather Cap [ID=42];)
DELAY(1000)
JMP(metka101)
}

ITEMCOUNT(Apprentice's Earring [ID=112],>,0)
{
SELLITEM(Apprentice's Earring [ID=112];)
DELAY(1000)
JMP(metka101)
}

ITEMCOUNT(Tunic [ID=426],>,0)
{
SELLITEM(Tunic [ID=426];)
DELAY(1000)
JMP(metka101)
}

ITEMCOUNT(Stockings [ID=462],>,0)
{
SELLITEM(Stockings [ID=462];)
DELAY(1000)
JMP(metka101)
}

ITEMCOUNT(Ring of Knowledge [ID=875],>,0)
{
SELLITEM(Ring of Knowledge [ID=875];)
DELAY(1000)
JMP(metka101)
}

ITEMCOUNT(Necklace of Knowledge [ID=906],>,0)
{
SELLITEM(Necklace of Knowledge [ID=906];)
DELAY(1000)
JMP(metka101)
}

ITEMCOUNT(Spellbook: Aura Attack [ID=1095],>,0)
{
SELLITEM(Spellbook: Aura Attack [ID=1095];)
DELAY(1000)
JMP(metka101)
}

ITEMCOUNT(Cotton Tunic [ID=1100],>,0)
{
SELLITEM(Cotton Tunic[ID=1100] ;)
DELAY(1000)
JMP(metka101)
}

ITEMCOUNT(Crude Leather Shoes [ID=1129],>,0)
{
SELLITEM(Crude Leather Shoes [ID=1129];)
DELAY(1000)
JMP(metka101)
}

ITEMCOUNT(Recipe: Willow Staff [ID=1787],>,0)
{
SELLITEM(Recipe: Willow Staff [ID=1787];)
DELAY(1000)
JMP(metka101)
}

//
// Покупаем СоЕ
//
LABEL(metka102)
ITEMCOUNT(Scroll of Escape [ID=736],<,5)
{
NPCDLG(Silvia[ID=7003])
DELAY(1500)
DLGSEL(Buy)
DELAY(1000)
BUYITEM(Scroll of Escape [ID=736],1;)
DELAY(1000)
JMP(metka102)
}
MOVETO(-83919,240931,-3720)
MOVETO(-83909,241157,-3728)
MOVETO(-83873,241259,-3755)
MOVETO(-83693,241295,-3755)
MOVETO(-83266,241178,-3755)
MOVETO(-82959,241699,-3755)
RETURN

//------------------------------------------------
//
// подпрограмма ложить ресы в варехауз
//
//----------------------------------------------

LABEL(bank)
MOVETO(-82674,242354,-3755)
MOVETO(-82384,242855,-3753)
MOVETO(-81968,243180,-3752)
MOVETO(-81800,243330,-3742)
MOVETO(-81654,243376,-3742)
MOVETO(-81543,243414,-3742)
LABEL(metka201)
NPCDLG(Wilford[ID=7005])
DELAY(1500)
DLGSEL(Deposit Item (Private Warehouse))
DELAY(2500)

ITEMCOUNT(Stem [ID=1864],>,0)
{
SAVEITEM(Stem [ID=1864],*;)
DELAY(1000)
JMP(metka201)
}

ITEMCOUNT(Varnish [ID=1865],>,0)
{
SAVEITEM(Varnish [ID=1865],*;)
DELAY(1000)
JMP(metka201)
}

ITEMCOUNT(Animal Skin [ID=1867],>,0)
{
SAVEITEM(Animal Skin [ID=1867],*;)
DELAY(1000)
JMP(metka201)
}

ITEMCOUNT(Suede [ID=1866],>,0)
{
SAVEITEM(Suede [ID=1866],*;)
DELAY(1000)
JMP(metka201)
}

ITEMCOUNT(Thread [ID=1868],>,0)
{
SAVEITEM(Thread [ID=1868],*;)
DELAY(1000)
JMP(metka201)
}

ITEMCOUNT(Coal [ID=1870],>,0)
{
SAVEITEM(Coal [ID=1870],*;)
DELAY(1000)
JMP(metka201)
}

ITEMCOUNT(Charcoal [ID=1871],>,0)
{
SAVEITEM(Charcoal [ID=1871],*;)
DELAY(1000)
JMP(metka201)
}

ITEMCOUNT(Animal Bone [ID=1872],>,0)
{
SAVEITEM(Animal Bone [ID=1872],*;)
DELAY(1000)
JMP(metka201)
}

MOVETO(-81654,243376,-3742)
MOVETO(-81923,243252,-3752)
MOVETO(-83269,244005,-3755)
MOVETO(-82404,244953,-3748)
RETURN

//----------------------------------------------
//
// бежим на место кача
//
//----------------------------------------------

LABEL(beg)
MOVETO(-81567,246262,-3664)
MOVETO(-81387,247882,-3656)
MOVETO(-82143,250330,-3728)
MOVETO(-85038,253859,-3704)
MOVETO(-85038,253859,-3704)
RETURN

//----------------------------------------------
//
// кач
//
//----------------------------------------------

LABEL(kombat)
PosOutRange(-85038,253859,-3704,100)
{
JMP(metka302)
}
DELAY(5000)
SET(FIGHTSTART)
LABEL(metka301)
PosOutRange(-85038,253859,-3704,2500)
{
JMP(metka302)
}
CHARSTATUS(CHP,<=,0)
{
JMP(metka302)
}
CHARSTATUS(WEIGHT,>=,60)
{
JMP(metka302)
}
DELAY(5000)
JMP(metka301)
LABEL(metka302)
SET(FIGHTSTOP)
RETURN
//---------------------------------------------
Скрипт для возвращения после смерти на место кача(BlazingSwamp):

SET(FIGHTSTOP) //Остановить бой
SAY(пизец) //Это на тот случай, если тебя будут тестить на бота и завалят
MSG(Ближайший поселок)
DELAY(5000) //Ждём 5сек.
CALL(METKI) //Ссылка на LABEL(METKI) которая будет ниже
EXIT()

LABEL(METKI)
MOVETO(148070,27229,-2231) //Идти к центру площади

CALL(Swamp) //Запускается мини-программа Swamp(LABEL(Swamp))
RETURN() //Завершить исполнение программы

LABEL(Swamp)
MOVETO(148070,27229,-2231) //Путь следования бота до насначенного места
USEITEM(??????[ID=734]) //Пьём ускорялку
MOVETO(148429,27674,-2295)
MOVETO(149850,27521,-2295)
MOVETO(149889,25447,-2170)
MOVETO(150122,25108,-2167)
MOVETO(152049,25099,-2169)
MOVETO(152236,24823,-2162)
MOVETO(151259,20207,-1910)
MOVETO(150647,18496,-1824)
MOVETO(150502,12720,-995)
MOVETO(150268,10770,-716)
MOVETO(150760,8422,-624)
MOVETO(152284,7424,-627)
MOVETO(152359,7066,-627)
MOVETO(152378,6701,-627)
MOVETO(152418,6411,-626)
MOVETO(152419,6255,-626)
MOVETO(153664,5726,-4323)
MOVETO(154316,8273,-4221)
MOVETO(155369,8363,-4371)
MOVETO(155369,8363,-4371)
MOVETO(155369,8363,-4371)
MOVETO(155369,8363,-4371)
MOVETO(155369,8363,-4371)
MOVETO(155369,8363,-4371)
MOVETO(155369,8363,-4371)
MOVETO(155369,8363,-4371)
MOVETO(155369,8363,-4320)
MOVETO(158097,9052,-4192)
MOVETO(158857,8867,-4153)
MOVETO(159412,8736,-4106)
MOVETO(160895,5332,-3981)
MOVETO(162366,3289,-3745)
MOVETO(162583,3319,-3713)
MOVETO(162583,3319,-3664)
MOVETO(162228,1298,-3506)
MOVETO(161631,205,-3475)
MOVETO(161038,-2263,-3380)
MOVETO(161140,-3346,-3261)
MOVETO(160190,-5904,-3910)
MOVETO(161143,-6981,-3599)
MOVETO(160724,-9090,-3368)
MOVETO(160224,-13388,-2926)
MOVETO(159988,-13685,-2853)
MOVETO(159360,-12869,-2922)
MOVETO(158285,-12827,-2852)
MOVETO(157712,-13321,-2804)
MOVETO(156454,-13870,-2769)
MOVETO(155845,-14060,-2790)
MOVETO(155698,-13601,-2859)
MOVETO(154995,-12486,-3953)
MOVETO(154373,-12027,-3974)
MOVETO(153963,-12000,-4039)
MOVETO(153403,-11571,-4466)
MOVETO(152502,-11866,-4509)
RETURN() //Завершить исполнение программы

продолжение следует.....

Другие статьи по теме

0 комментария (-ев) к «Ботоводство часть 1»

Написать комментарий