Вернуться   CoderX :: Forums > Lineage II > ASI > Работа L2Walker (скрипты, конфиги, советы)
Войти через OpenID

Работа L2Walker (скрипты, конфиги, советы) Сборник советов и рекоммендаций опытных пользователей по настройке бота.

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 18.12.2009, 16:54   #1
Местный
 
Аватар для B0R0DA
 
Регистрация: 01.11.2009
Сообщений: 68
Сказал Спасибо: 1
Имеет 63 спасибок в 29 сообщенях
B0R0DA пока неопределено
По умолчанию

Цитата:
Сообщение от KoAn Посмотреть сообщение
А сейсам получается что он взял 20 ушей и хочет портнутся, тут вдруг на него агрится моб и сбивает ТП, и что дальше?
Ну тогда перед использованием СОЕ делаем следующее:
SET(RANGETYPE,STARTPOS,100)//маленький радиус, чтоб отбить мобов рядом с собой
SET(MON,ATTACK,*)
SET(FIGHTSTART)
DELAY(30000)//тут задаем время на свое усмотрение(это сколько времени он будет отбиваться)
SET(FIGHTSTOP)//стоп
USEITEM(Scroll of Escape[ID=736])//и в город

это проверка так сказать наугад... тоесть он стоит заданное время в малеьком радиусе и отбивается.

или:

SET(RANGETYPE,STARTPOS,100)//маленький радиус, чтоб отбить мобов рядом с собой
SET(MON,ATTACK,*)//бить всех мобов в заданном радиусе
SET(FIGHTSTART)
LABEL(отбиваемся)
CharStatus(HP,<,100)//если НР меньше 100%-делаем то что в скобках
{
DELAY(10000) - ждем
JMP(отбиваемся)//прыгаем опять на метку LABEL(отбиваемся) и так до тех пор пока не будет 100% НР
}
SET(FIGHTSTOP)//у нас 100% НР - следовательно нас никто не атакует и хвоста нет
USEITEM(Scroll of Escape[ID=736])//и в город

если в локе есть мобы арчеры или маги делаем такую проверку:

SET(RANGETYPE,STARTPOS,1000)//большой радиус
SET(MON,NOATTACK,*)//не бить никаких мобов
SET(FIGHTSTART)//по идее должен бить наагренных мобов
LABEL(отбиваемся)
CharStatus(HP,<,100)//если НР меньше 100%-делаем то что в скобках
{
DELAY(10000) - ждем
JMP(отбиваемся)//прыгаем опять на метку LABEL(отбиваемся) и так до тех пор пока не будет 100% НР
}
SET(FIGHTSTOP)//у нас 100% НР - следовательно нас никто не атакует и хвоста нет
USEITEM(Scroll of Escape[ID=736])//и в город

короче говоря масса проверок на отбивание хвоста, выбирай или скрещивай их на свой вкус... ну и после ТП можно сделать проверку не умер ли чар во время тп:

USEITEM(Scroll of Escape[ID=736])//и в город
DELAY(30000)
CALL(1)//проверка на смерть, если выжили во время тп, значит мы в городе, если нет - после CALL(1) нас отправят в город

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

Последний раз редактировалось B0R0DA, 18.12.2009 в 16:57.
B0R0DA вне форума   Ответить с цитированием
За это сообщение B0R0DA нажился 4 спасибками от:
Старый 18.12.2009, 23:28   #2
Пользователь
 
Аватар для nPoKa3HuK
 
Регистрация: 11.11.2009
Сообщений: 27
Сказал Спасибо: 6
Имеет 13 спасибок в 7 сообщенях
nPoKa3HuK пока неопределено
По умолчанию

Цитата:
Сообщение от B0R0DA Посмотреть сообщение
SET(RANGETYPE,STARTPOS,100)//маленький радиус, чтоб отбить мобов рядом с собой
SET(MON,ATTACK,*)//бить всех мобов в заданном радиусе
SET(FIGHTSTART)
LABEL(отбиваемся)
CharStatus(HP,<,100)//если НР меньше 100%-делаем то что в скобках
{
DELAY(10000) - ждем
JMP(отбиваемся)//прыгаем опять на метку LABEL(отбиваемся) и так до тех пор пока не будет 100% НР
}
SET(FIGHTSTOP)//у нас 100% НР - следовательно нас никто не атакует и хвоста нет
USEITEM(Scroll of Escape[ID=736])//и в город
А если нам телепорт сбивает лигет? Или произошло что-то не предвиденное.
Я делаю такую проверку:
После всех вышеописанных проверок и использования телепорта
DELAY(20000) // ожидание ТП
POSINRANGE(x,y,z,100) // Указываем в скрипте то количество точек, сколько точек респа в городе в которыйделаем ТП.( у меня здесь указано две точки)
{
MSG(мы в городе)
JMP(?) //Ставим сюда метку продолжения скрипта
}
POSINRANGE(x,y,z,100)
{
MSG(мы в городе)
JMP(?) //Ставим сюда метку продолжения скрипта
}
JMP(отбиваемся) // Если мы не оказались ни в одной из указанных точек

Добавлено через 35 минут
Цитата:
Сообщение от Retaech Посмотреть сообщение
Не плохая идея, наверно стоит еще добавить чтобы во время проверки садился, ато хп может долго регениться.
Если честно, то не вижу в этой проверке смысла, но раз ты так хочеш:
LABEL(Fatality)
SET(RANGETYPE,STARTPOS,100)
SET(MON,ATTACK,*)
SET(FIGHTSTART)
DELAY(20000)
CharStatus(HP,<,100)//если хп меньше100% сажаем его на попу
{
JMP(На попу)
}
SET(FIGHTSTOP)
USEITEM(Scroll of Escape[ID=736])
JMP(?)// Здесь ставим метку продолжения скрипта
LABEL(На Попу)
ChangeWaitType(0)
DELAY(30000)
ChangeWaitType(1)
JMP(Fatality)

Последний раз редактировалось nPoKa3HuK, 19.12.2009 в 00:38. Причина: Исправлена ошибка в скрипте
nPoKa3HuK вне форума   Ответить с цитированием
Старый 19.12.2009, 00:01   #3
Местный
 
Аватар для B0R0DA
 
Регистрация: 01.11.2009
Сообщений: 68
Сказал Спасибо: 1
Имеет 63 спасибок в 29 сообщенях
B0R0DA пока неопределено
По умолчанию

Цитата:
Сообщение от nPoKa3HuK Посмотреть сообщение
LABEL(Fatality)
SET(RANGETYPE,STARTPOS,100)
SET(MON,ATTACK,*)
SET(FIGHTSTART)
DELAY(20000)
CharStatus(HP,<,100)//если хп меньше100% сажаем его на попу
{
JMP(На попу)
}
SET(FIGHTSTOP)
USEITEM(Scroll of Escape[ID=736])
LABEL(На Попу)
ChangeWaitType(0)
DELAY(30000)
ChangeWaitType(1)
JMP(Fatality)
ммм... ану сам исправь этот кусок не будет он работать ка надо
B0R0DA вне форума   Ответить с цитированием
За это сообщение B0R0DA нажился спасибкой от:
Старый 19.12.2009, 00:35   #4
Пользователь
 
Аватар для nPoKa3HuK
 
Регистрация: 11.11.2009
Сообщений: 27
Сказал Спасибо: 6
Имеет 13 спасибок в 7 сообщенях
nPoKa3HuK пока неопределено
По умолчанию

Цитата:
Сообщение от B0R0DA Посмотреть сообщение
ммм... ану сам исправь этот кусок не будет он работать ка надо
LABEL(Fatality)
SET(RANGETYPE,STARTPOS,100)
SET(MON,ATTACK,*)
SET(FIGHTSTART)
DELAY(20000)
CharStatus(HP,<,100)//если хп меньше100% сажаем его на попу
{
JMP(На попу)
}
SET(FIGHTSTOP)
USEITEM(Scroll of Escape[ID=736])
JMP(?)// Здесь ставим метку продолжения скрипта
LABEL(На Попу)
ChangeWaitType(0)
DELAY(30000)
ChangeWaitType(1)
JMP(Fatality)
Вылетело из головыю. Спасибо за подсказку.
nPoKa3HuK вне форума   Ответить с цитированием
Старый 19.12.2009, 01:28   #5
Пользователь
 
Аватар для Retaech
 
Регистрация: 13.11.2009
Сообщений: 71
Сказал Спасибо: 3
Имеет 2 спасибок в 2 сообщенях
Retaech пока неопределено
По умолчанию

Цитата:
Сообщение от nPoKa3HuK Посмотреть сообщение
Если честно, то не вижу в этой проверке смысла, но раз ты так хочеш:
Почему же нет? Пока чар будет стоя ждать реген хп, на него может успеть напасть другой моб.

А у меня такой скрипт получился:
Цитата:
LABEL(DEFENSE_SOE)
SET(L2WALKER,DISABLE)
SET(FIGHTSTOP)
LABEL(regen_and_defense)
CHARSTATUS(CHP,==,0)
{
SET(FIGHTSTOP)
SET(L2WALKER,DISABLE)
GOHOME()
DELAY(30000)
return
}
CharStatus(HP,<,100)
{
ChangeWaitType(0)
}
delay(5000)
label(defense)
CharStatus(STAND,==,1)
{
SET(RANGETYPE,STARTPOS,1000)
SET(MON,NOATTACK,*)
SET(L2WALKER,ENABLE)
SET(FIGHTSTART)
delay(30000)
}
CharStatus(HP,<,100)
{
JMP(regen_and_defense)
}
ChangeWaitType(1)
delay(5000)
USEITEM(Scroll of Escape[ID=736])
POSINRANGE(145686,21114,-2136,15000)
{
SET(L2WALKER,DISABLE)
SET(FIGHTSTOP)
delay(20000)
return
}
JMP(defense)
Работает так: сначала чар пробует сесть, если ударят он начнет защищаться 30 секунд, потом попробует сесть и снова будет отбиваться если бьют и так до тех пор пока не отрегенит все хп или не сдохнет - в первом случае использует сое и если собьют каст то все начнется сначала.
П.С. Нужно поправить координаты города куда будем лететь.

Последний раз редактировалось Retaech, 19.12.2009 в 01:32.
Retaech вне форума   Ответить с цитированием
Старый 19.12.2009, 02:06   #6
Пользователь
 
Аватар для nPoKa3HuK
 
Регистрация: 11.11.2009
Сообщений: 27
Сказал Спасибо: 6
Имеет 13 спасибок в 7 сообщенях
nPoKa3HuK пока неопределено
По умолчанию

Код:
LABEL(DEFENSE_SOE)
SET(L2WALKER,DISABLE)//Мне кажется использовать не обязательно.
SET(FIGHTSTOP)
LABEL(regen_and_defense)
CHARSTATUS(CHP,==,0)
{
SET(FIGHTSTOP)
SET(L2WALKER,DISABLE)//Тоже можно убрать
GOHOME()
DELAY(30000)
return// Зачем?
JMP(?)//Метка продолжения скрипта
}
CharStatus(HP,<,100)
{
ChangeWaitType(0)
delay(5000)
JMP(defense)
}
JMP(TP)
label(defense)
CharStatus(STAND,==,1)
{
SET(RANGETYPE,STARTPOS,1000)//думаю слишком большой радиус.Хотя против лукарей и магов в самый раз будет.
SET(MON,NOATTACK,*)//мобов бить будем или как ?
SET(L2WALKER,ENABLE)//И это убираем
SET(FIGHTSTART)
delay(30000)
}
CharStatus(HP,<,100)
{
JMP(regen_and_defense)
}
ChangeWaitType(1)
delay(5000)
LABEL(TP)
USEITEM(Scroll of Escape[ID=736])
SET(FIGHTSTOP)
delay(20000)
POSINRANGE(145686,21114,-2136,15000)//Так не выйдет. Исправь то что в скобках
{
SET(L2WALKER,DISABLE)
SET(FIGHTSTOP)
delay(20000)//Это всё убрать
returnТоже не нужен
JMP(?)// метка продолжения скрипта
}
JMP(defense)
Какие ошибки заметил пометил.Кое что подправил.

Последний раз редактировалось nPoKa3HuK, 19.12.2009 в 02:25.
nPoKa3HuK вне форума   Ответить с цитированием
Старый 19.12.2009, 02:50   #7
Местный
 
Аватар для mikser
 
Регистрация: 26.01.2009
Сообщений: 1,097
Сказал Спасибо: 178
Имеет 119 спасибок в 84 сообщенях
mikser пока неопределено
По умолчанию

nPoKa3HuK, Правильнее делать SET(MON,NOATTACK,*)
при такой настройке бот будет бить только тех мобов которые на него заагрились и не будет трогать нейтральных.
mikser вне форума   Ответить с цитированием
Старый 19.12.2009, 10:52   #8
Пользователь
 
Аватар для nPoKa3HuK
 
Регистрация: 11.11.2009
Сообщений: 27
Сказал Спасибо: 6
Имеет 13 спасибок в 7 сообщенях
nPoKa3HuK пока неопределено
По умолчанию

Цитата:
Сообщение от mikser Посмотреть сообщение
nPoKa3HuK, Правильнее делать SET(MON,NOATTACK,*)
при такой настройке бот будет бить только тех мобов которые на него заагрились и не будет трогать нейтральных.
Но тогда в валкере должна стоять настройка чтоб атаковал тех кто в таргете

Добавлено через 33 минуты
Цитата:
Сообщение от Retaech Посмотреть сообщение
SET(L2WALKER,DISABLE) в каких случаях по твоему это может помешать?
Я не сказал что помешает, просто зачем вырубать весь валкер.

Цитата:
Сообщение от Retaech Посмотреть сообщение
return для возврата к call(DEFENSE_SOE), LABEL(DEFENSE_SOE) там не случайно
Хоть убей меня, но не вижу я переменной CALL


Цитата:
Сообщение от Retaech Посмотреть сообщение
SET(RANGETYPE,STARTPOS,1000) чем будет плохо, если цифру 1000 даже увеличить? ведь с SET(MON,NOATTACK,*) бот будет атаковать только защищаясь?

Цитата:
Сообщение от Retaech Посмотреть сообщение
Почему POSINRANGE не выйдет, проверка координат с радиусом у меня всегда работала. Я задумывал что скрипт зацикливается и при попадании в город сработает return - возврат туда где будет стоять call(DEFENSE_SOE), а до этого у бота продолжает стоять радиус защиты 1000 и если сое сбивают он сразу защищается и дальше идет возврат к проверке хп и реген с сое по новой.
Зачем delay после сое, ведь каст могут сбить во время него.
Так что вроде все должно работать?
По твоему скрипту ты сделал ТП и сразуже проверяеш, а не в городе ли он. Естественно нет, поэтому ставим задержку.

Последний раз редактировалось nPoKa3HuK, 19.12.2009 в 10:54. Причина: Добавлено сообщение
nPoKa3HuK вне форума   Ответить с цитированием
Старый 19.12.2009, 12:24   #9
Пользователь
 
Аватар для Retaech
 
Регистрация: 13.11.2009
Сообщений: 71
Сказал Спасибо: 3
Имеет 2 спасибок в 2 сообщенях
Retaech пока неопределено
По умолчанию

Цитата:
По твоему скрипту ты сделал ТП и сразуже проверяеш, а не в городе ли он. Естественно нет, поэтому ставим задержку.
Вроде скрипт проверяет это до тех пор пока не окажется в городе или хп не станет меньше 100%
Retaech вне форума   Ответить с цитированием
Старый 19.12.2009, 03:22   #10
Местный
 
Аватар для mikser
 
Регистрация: 26.01.2009
Сообщений: 1,097
Сказал Спасибо: 178
Имеет 119 спасибок в 84 сообщенях
mikser пока неопределено
По умолчанию

nPoKa3HuK, Я придумал отличную идею для сое без лишних 20 секунд
Берем конфиг настроеный таким образом:
Нажмите на изображение для увеличения
Название: SoeCFG.PNG
Просмотров: 127
Размер:	4.7 Кб
ID:	819
и сохраняем его под именем SmartSoe.INI

Код:
label(TrySmartSoe)
LoadConfig(SmartSoe.INI)
SET(RANGETYPE,STARTPOS,1000)
SET(MON,NOATTACK,*) //не бьем нейтральных мобов
SET(L2WALKER,ENABLE)
SET(FIGHTSTART)
ChagewaitType(0)//тут перс сядет  и будет сидеть пока не
Delay(4444) //подбежит моб ударит, перса - чар встанет и будет его мочить
label(Добиваем Мобов)
Charstatus(STAND,==,1)//пока перс добивает добивает окружающих его мобов он будет стоять
jmp(Добиваем Мобов) //да да фигурные скобки не обязательны
//когда добьет ВСЕХ потревоживших его мобов перс присядет
SET(L2WALKER,Disable) //отрубаем бота
ChangeWaitType(1)//отрываем попу от земли
delay(3000)//анимация вставания
USEITEM(Scroll of Escape[ID=736])
Delay(2222)
SET(L2WALKER,Enable)//если снова нападут мобы и собьют сое бот их отфигачит
delay(25000)//анимация сое
charstatus(CHP,<,1)//убили легиты или новые сагрившиеся мобы
{
gohome()
delay(15000)
}
posoutrange(x,y,z,radius)//если НЕ в городе значит неадекваты сбили сое
{
say(пнх)
jmp(TrySmartSoe) //пробуем еще раз
}

LoadConfig(NormConfig.ini)
RETURN

Последний раз редактировалось mikser, 19.12.2009 в 03:26.
mikser вне форума   Ответить с цитированием
За это сообщение mikser нажился спасибкой от:
Ответ

  CoderX :: Forums > Lineage II > ASI > Работа L2Walker (скрипты, конфиги, советы)



Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 02:01.

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!