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

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

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 19.12.2009, 00:35   #11
Пользователь
 
Аватар для 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, 00:35   #12
Местный
 
Аватар для KoAn
 
Регистрация: 12.11.2009
Сообщений: 120
Сказал Спасибо: 8
Имеет 29 спасибок в 13 сообщенях
KoAn пока неопределено
По умолчанию

Отличная темка получается! как бот заработает количество вопросов сразу увеличится =)
KoAn вне форума   Ответить с цитированием
Старый 19.12.2009, 00:53   #13
Местный
 
Аватар для mikser
 
Регистрация: 26.01.2009
Сообщений: 1,097
Сказал Спасибо: 178
Имеет 119 спасибок в 84 сообщенях
mikser пока неопределено
По умолчанию

кароче это все не 100% порты в город
нет гарантий что за 20 секунд бот убьет всех мобов а может и мобов то нет вообще зачем ждать лишние 20-30 сек?
Нада ченить придумать поинтересней
например сесть и подождать если перса ударить моб он встанет - если перс встал то мочим мобов в радиусе 100 (хотя от арчеров это не спасет, тогда радиус можно увеличить и поставить set(mon,NoAttack))

Если перс не встал то сидим и ждем пока хп не станет 100% после чего делаем сое
mikser вне форума   Ответить с цитированием
Старый 19.12.2009, 01:12   #14
Пользователь
 
Аватар для nPoKa3HuK
 
Регистрация: 11.11.2009
Сообщений: 27
Сказал Спасибо: 6
Имеет 13 спасибок в 7 сообщенях
nPoKa3HuK пока неопределено
По умолчанию

Цитата:
Сообщение от mikser Посмотреть сообщение
кароче это все не 100% порты в город
нет гарантий что за 20 секунд бот убьет всех мобов а может и мобов то нет вообще зачем ждать лишние 20-30 сек?
Нада ченить придумать поинтересней
например сесть и подождать если перса ударить моб он встанет - если перс встал то мочим мобов в радиусе 100 (хотя от арчеров это не спасет, тогда радиус можно увеличить и поставить set(mon,NoAttack))

Если перс не встал то сидим и ждем пока хп не станет 100% после чего делаем сое
Примерно вот так.


Код:
LABEL(Fatality)
SET(RANGETYPE,STARTPOS,100)
SET(MON,ATTACK,*)
SET(FIGHTSTART)
LABEL(HP)
CharStatus(HP,<,100)//если хп меньше100% сажаем его на попу
{
JMP(На Попу)
}
SET(FIGHTSTOP)
USEITEM(Scroll of Escape[ID=736])
JMP(?)//Метка продолжения скрипта
LABEL(На Попу)
ChangeWaitType(0)
CharStatus(STAND,==,1)
{
Delay(20000)
JMP(На Попу)
}
JMP(HP)
nPoKa3HuK вне форума   Ответить с цитированием
Старый 19.12.2009, 01:28   #15
Пользователь
 
Аватар для 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   #16
Пользователь
 
Аватар для 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:16   #17
Местный
 
Аватар для KoAn
 
Регистрация: 12.11.2009
Сообщений: 120
Сказал Спасибо: 8
Имеет 29 спасибок в 13 сообщенях
KoAn пока неопределено
По умолчанию

Ребят большая просьба , когда пишите скриты тут или кусочки, поясняйте строчки, как это делалось в начале! это же тема для новичков, а не для гуру =) а то половину понимаю,половину нет)

по поводу SET(L2WALKER,DISABLE) - что конктетно выключает команда в боте? останавливает ini фаил?

просто если мы придя на поляну грузим ini а потом по набору 20 итемов
Его не выключаем, будет же конфликт скрипта с ботом

SET(RANGETYPE,STARTPOS,1000) действительно слишком большой радиус, там где мобы расположены компактно скрипт замкнется на всегда, считай пока ты лупиш 1 в радиусе респнится другой и так до бесконечности

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

nPoKa3HuK, Правильнее делать SET(MON,NOATTACK,*)
при такой настройке бот будет бить только тех мобов которые на него заагрились и не будет трогать нейтральных.
mikser вне форума   Ответить с цитированием
Старый 19.12.2009, 03:22   #19
Местный
 
Аватар для 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 нажился спасибкой от:
Старый 19.12.2009, 04:17   #20
Пользователь
 
Аватар для Retaech
 
Регистрация: 13.11.2009
Сообщений: 71
Сказал Спасибо: 3
Имеет 2 спасибок в 2 сообщенях
Retaech пока неопределено
По умолчанию

Цитата:
Сообщение от nPoKa3HuK Посмотреть сообщение
Какие ошибки заметил пометил.Кое что подправил.
SET(L2WALKER,DISABLE) в каких случаях по твоему это может помешать?
return для возврата к call(DEFENSE_SOE), LABEL(DEFENSE_SOE) там не случайно
SET(RANGETYPE,STARTPOS,1000) чем будет плохо, если цифру 1000 даже увеличить? ведь с SET(MON,NOATTACK,*) бот будет атаковать только защищаясь?
Почему POSINRANGE не выйдет, проверка координат с радиусом у меня всегда работала. Я задумывал что скрипт зацикливается и при попадании в город сработает return - возврат туда где будет стоять call(DEFENSE_SOE), а до этого у бота продолжает стоять радиус защиты 1000 и если сое сбивают он сразу защищается и дальше идет возврат к проверке хп и реген с сое по новой.
Зачем delay после сое, ведь каст могут сбить во время него.
Так что вроде все должно работать?
Цитата:
Сообщение от KoAn Посмотреть сообщение
Ребят большая просьба , когда пишите скриты тут или кусочки, поясняйте строчки, как это делалось в начале! это же тема для новичков, а не для гуру =) а то половину понимаю,половину нет)
Цитата:
LABEL(DEFENSE_SOE)//метка для вызова по CALL(DEFENSE_SOE)

SET(L2WALKER,DISABLE)
SET(FIGHTSTOP)

LABEL(regen_and_defense)

CHARSTATUS(CHP,==,0)//если сдох - летит в город и производится возврат к CALL(DEFENSE_SOE)
{
SET(FIGHTSTOP)
SET(L2WALKER,DISABLE)
GOHOME()
DELAY(30000)
return//завершает подпрограмму, включая продолжение скрипта
}

CharStatus(HP,<,100)//если хп меньше 100%
{
ChangeWaitType(0)//пробуем сесть чтобы отрегенить хп
}

delay(5000)

label(defense)

CharStatus(STAND,==,1)//если чар встал, значит его бьют - отбиваемся
{
SET(RANGETYPE,STARTPOS,1000)
SET(MON,NOATTACK,*)
SET(L2WALKER,ENABLE)
SET(FIGHTSTART)//включаем боевой режим с радиусом 1000 и атакой только нападающих
delay(30000)//отбиваемся 30сек и проверяем хп
}

CharStatus(HP,<,100)//если хп меньше 100%
{
JMP(regen_and_defense)
}

ChangeWaitType(1)//когда 100% хп - встаем и
delay(5000)
USEITEM(Scroll of Escape[ID=736])//используем сое

POSINRANGE(145686,21114,-2136,15000)//попав в город произойдет возврат к CALL(DEFENSE_SOE)
{
SET(L2WALKER,DISABLE)
SET(FIGHTSTOP)//выключаем автобой
delay(20000)//задержка для прогрузки города после сое
return//завершает подпрограмму, включая продолжение скрипта
}

JMP(defense)//защита против сбива каста во время сое
Добавлено через 21 минуту
Цитата:
Сообщение от mikser Посмотреть сообщение
nPoKa3HuK, Я придумал отличную идею для сое без лишних 20 секунд
Берем конфиг настроеный таким образом:
Вложение 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
Чтото я не вкурил в твою задумку, можно подробнее? Что дает конфиг - сидеть при хп меньше 101% (всегда сидеть?) и встать при хп больше 102% (никогда не вставать?)?
И почему после Charstatus(STAND,==,1) скобки {} не обязательны у тебя, это же проверка, и надо чтобы при соответсвии условию (чар соит) выполнялось то что внутри них, иначе зачем вообще она?

Последний раз редактировалось Retaech, 19.12.2009 в 04:17. Причина: Добавлено сообщение
Retaech вне форума   Ответить с цитированием
Ответ

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



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

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


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

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

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