attackAuto x {<self conditions>}
Модератор: 4epT
Re: attackAuto x {<self conditions>}

Писька - Сабж!
Оформление на пять,но в чём тут идея?И какая смысловая нагрузка у топика?
[url=irc://irc.openkore.com:6667/openkore-ru]Its your destiny,join us! © Wanted[/url]
- piroJOKE
- Модератор
- Сообщения: 8204
- Зарегистрирован: Сб ноя 04, 2006 2:20 am
- Сервер RO:: localhost
- Откуда: Molvania
Re: attackAuto x {<self conditions>}
Было бы еще прикольней, еслиб афтар написал не "сабж" а скажем "продолжение следует..." 
Добавлено спустя 22 минуты 46 секунд:
А еще это могло бы быть так:
Афтар: attackAuto x {<self conditions>} - сабж?
Ему ответ: doCommand conf attackAuto x {<self conditions>} - ы?
Афтар:
Типо спартанский диалог.

Добавлено спустя 22 минуты 46 секунд:
А еще это могло бы быть так:
Афтар: attackAuto x {<self conditions>} - сабж?
Ему ответ: doCommand conf attackAuto x {<self conditions>} - ы?
Афтар:

Типо спартанский диалог.
Re: attackAuto x {<self conditions>}
Почему бы не научить Оk атаковать моба только при достижении определенных условий ?
Можно конечно изощряться со скиллами, но это неправильно.
Скажем условие по хп:
attackAuto 1 {
hp < 50%
}
attackAuto 2 {
hp >= 50%
}
З.Ы. аналогично можно сделать с подбором лута, скажем, чтобы бот все еще подбирал лут при наличии хп и бежал в магаз при перегрузе и малом хп. Все это можно сделать макросами, но на мо взгляд будет лучше в конфиге, т.к. возможно понадобится обращение к этим блокам из макроса.
Можно конечно изощряться со скиллами, но это неправильно.
Скажем условие по хп:
attackAuto 1 {
hp < 50%
}
attackAuto 2 {
hp >= 50%
}
З.Ы. аналогично можно сделать с подбором лута, скажем, чтобы бот все еще подбирал лут при наличии хп и бежал в магаз при перегрузе и малом хп. Все это можно сделать макросами, но на мо взгляд будет лучше в конфиге, т.к. возможно понадобится обращение к этим блокам из макроса.
Re: attackAuto x {<self conditions>}
непонял зачем это пишешь, это и так есть в конфиге по умолчанию
Re: attackAuto x {<self conditions>}
эээ... я в спячке что-то упустил ?
в какой версии attackAuto стал блоком ?
в какой версии attackAuto стал блоком ?
Re: attackAuto x {<self conditions>}
Хороший вопрос, кстати. Если с атакой можно и по-другому решить, то хп в монконтроле никак не считается.
- piroJOKE
- Модератор
- Сообщения: 8204
- Зарегистрирован: Сб ноя 04, 2006 2:20 am
- Сервер RO:: localhost
- Откуда: Molvania
Re: attackAuto x {<self conditions>}
Ох уж эти бредовые идей с этими лишними блоками...
Не успели от телепорта отбиться - так теперь нелюди атакують attackAuto. ((((
Не успели от телепорта отбиться - так теперь нелюди атакують attackAuto. ((((
Re: attackAuto x {<self conditions>}
Бывает иногда нужно, например если стрип оружия. Но можно и обойтись макросами.
- piroJOKE
- Модератор
- Сообщения: 8204
- Зарегистрирован: Сб ноя 04, 2006 2:20 am
- Сервер RO:: localhost
- Откуда: Molvania
Re: attackAuto x {<self conditions>}
Блин, я же уже написал выше - есть "практически такой же блок", так зачем зря плодить сущности?
doCommand conf attackAuto 1 {
<self conditions №1>
}
doCommand conf attackAuto 2 {
<self conditions №2>
}
doCommand conf attackAuto 1 {
<self conditions №1>
}
doCommand conf attackAuto 2 {
<self conditions №2>
}
- 4epT
- macro-маньячина
- Сообщения: 2795
- Зарегистрирован: Чт дек 21, 2006 1:23 pm
- Сервер RO:: 4game
- Discord: ya4ept#8494
- Контактная информация:
Re: attackAuto x {<self conditions>}
piroJOKE, с такой конструкцией не всё так просто
этот блок зафлудит консоль...
выхода 2:
1. использовать timeout
тогда этот блок будет срабатывать раз в несколько секунд
2. использовать систему меток, которая работает по схеме:
-сработал первый блок, мы выполнили команду, закрыли первый блок, открыли второй блок
-сработал второй блок, мы выполнили команду, закрыли второй блок, открыли первый блок
т.е. блоки работают по переменно
Код: Выделить всё
doCommand conf attackAuto 1 {
<self conditions №1>
}
doCommand conf attackAuto 2 {
<self conditions №2>
}
выхода 2:
1. использовать timeout
тогда этот блок будет срабатывать раз в несколько секунд
2. использовать систему меток, которая работает по схеме:
-сработал первый блок, мы выполнили команду, закрыли первый блок, открыли второй блок
-сработал второй блок, мы выполнили команду, закрыли второй блок, открыли первый блок
т.е. блоки работают по переменно
- piroJOKE
- Модератор
- Сообщения: 8204
- Зарегистрирован: Сб ноя 04, 2006 2:20 am
- Сервер RO:: localhost
- Откуда: Molvania
Re: attackAuto x {<self conditions>}
UPD: это всё ниже в этом посте гониво, не читайте; это я типо торможу
Надо грамотно прописать условия. Вы, батенька, про триггер Шмитта видать и не слыхивали?
(извиняюсь за английскую сцылку, в руской Вики статья про него ваще никакущая...)
См. первую кортинку в статье про него в Вики.
Иллюстрация не шибко удачная, но всё-таки видно, что подобные конструкции могут сглаживать кучу бросков при переходе через некую границу.
Короче, пример:
doCommand conf jopa 1 {
hp < 40%
timeout 1
}
doCommand conf jopa 2 {
hp > 60%
timeout 1
}
Идея ясна? Условие с HP не "граница срабатывания - 50%", а немного разнесенные величины. Таким макаром мы вводим что-то вроде гистерезиса, и наше условие уже реже будет переключаться туда-сюда, при практически полном сохранении функциональности.
И кстати, вот такая красивая вещь ещё раз показывает, что сабж - не нужен.

Неправда. Не "зафлудит", а "может зафлудить".4epT писал(а):этот блок зафлудит консоль

Надо грамотно прописать условия. Вы, батенька, про триггер Шмитта видать и не слыхивали?

(извиняюсь за английскую сцылку, в руской Вики статья про него ваще никакущая...)
См. первую кортинку в статье про него в Вики.
Иллюстрация не шибко удачная, но всё-таки видно, что подобные конструкции могут сглаживать кучу бросков при переходе через некую границу.
Короче, пример:
doCommand conf jopa 1 {
hp < 40%
timeout 1
}
doCommand conf jopa 2 {
hp > 60%
timeout 1
}
Идея ясна? Условие с HP не "граница срабатывания - 50%", а немного разнесенные величины. Таким макаром мы вводим что-то вроде гистерезиса, и наше условие уже реже будет переключаться туда-сюда, при практически полном сохранении функциональности.
И кстати, вот такая красивая вещь ещё раз показывает, что сабж - не нужен.
-
- Бывалый
- Сообщения: 624
- Зарегистрирован: Вс мар 25, 2007 9:18 pm
- Сервер RO:: localhost
- Откуда: Санкт-Петербург
Re: attackAuto x {<self conditions>}
Ненене
Этот блок срабатывает каждую секунду, когда hp < 40%
Второй блок также срабатывает каждую секунду, но при условии hp > 60%
А нам надо, чтобы каждый блок срабатывал только 1 раз подряд.
Я используя такую конструкцию у себя в макросах и очень доволен
:
(второй макрос аналогичный)
P.S: Нету у нас в <self conditions> условия eval? Может добавим
?
Код: Выделить всё
doCommand conf jopa 1 {
hp < 40%
timeout 1
}
Второй блок также срабатывает каждую секунду, но при условии hp > 60%
А нам надо, чтобы каждый блок срабатывал только 1 раз подряд.
Я используя такую конструкцию у себя в макросах и очень доволен

Код: Выделить всё
automacro test1 {
hp < 40%
eval $::config{jopa} ne "1"
call {
do conf jopa 1
}
}
P.S: Нету у нас в <self conditions> условия eval? Может добавим

- piroJOKE
- Модератор
- Сообщения: 8204
- Зарегистрирован: Сб ноя 04, 2006 2:20 am
- Сервер RO:: localhost
- Откуда: Molvania
Re: attackAuto x {<self conditions>}
Mea culpa, вот это я прогнал!
А eval'а в селф-кондишенах таки нет. ((
И выкрутится за счет label/disabled красиво тоже не выйдет. ((

А eval'а в селф-кондишенах таки нет. ((
И выкрутится за счет label/disabled красиво тоже не выйдет. ((