Просмотр полной версии : как зделать чтоб бот не подходил к мобу
SASHASOLO
13.06.2007, 19:32
Двадцать минут я рылся на форуме, но так нечего и не нашел на эту тему. Хотя я точно помню что пару месяцев назад я видел описание подобной ситуацыии здесь. Но найти не удалось. Так что вопрос к тебе
Уважаемый.
Я торгую мерчем на Голд Ро. и мне надо дешевые Blue Potions. Дешевле чем у конкурента. намного дешевле. Я нашел способ. Есть карта на которой растет Blue Plant из которых собственно и делается Blue Potions.
Но на этой же карте есть Флоры(Flora), и Географы(Geographer).
Как всем известно они начинают бить как только ты к ним подходиш.
Можно ли зделать так что бы бот ходил по карте и бил только Blue Plant
но при этом не подходил к Flora, и Geographer ближе чем на 5 клеток
даже если под Geographer или Flora будет расти Blue Plant? Что б он обходил етих агресивных монстров десятой, так сказать, дорогой.
это всему прогрессивному человечеству, дружище, интересно.
попробуй скачать эту прогу для настройни бота (http://www.zilomania.narod.ru/ok-conf_beta0.8.3.zip)
http://evil-ogame.clan.su/_ph/1/242049676.gif
выбери 1 и 2, а 3 попробуй сам какое лутше!!
P.S. сам незнаю сроботает ли, непробывал
нужно в ok-conf прописать бить всех, и убегать от цели и атаковать из укрытия(а то он и от плантов бегать будет), а в mon_control прописать не бить Флор(Flora), и Географеров(Geographer) даже есле они тебя бьют(кажись это -1)
если бот - контактник, и поставить runFromTarget, то бот будет бегать туда сюда.
FRITS, "атаковать из укрытия" - это ты про что?
ok-conf - это чёт-типо wx интерфейсины, или чо? слышал про неё, но не видел, можно скринчек (маленький)?
ok-conf - устаревшая версия RVK
SASHASOLO
13.06.2007, 22:52
слушайте. мне просто надо что б чар не подходил к мобу. моб то сам за ним не бегает! что бы когда(если уже нельзя по другому) когда этот географер появится на екране он бежал от него. именно от этого конкретного моба. в конце-концов. даже калькулятор написан с переменной которая отвечает за определенное событие...
SASHASOLO, ну ка дайка калькуль позырить
SASHASOLO
14.06.2007, 01:36
SASHASOLO, ну ка дайка калькуль позырить
:D Стандартный! В Windows встроен.
Событе: нажал на кнопку "=". Калькулятор вывел результат операцыи среагировав на нажатие кнопки.
Всем известно что поверхность в играх делится на клетки, сектора, сетку... как ее не назови все одно будет.
Событие - в клетке №x находится монстер Flora.
Если игрок находится до клетки №х ближе чем на 4 клетки,
то дальше к центру воображаемого пространства которое образуют клетки вокруг клетки №х игрок зайти не может,
а если всетаки вступает на клетку которая является третей от центра которым есть клетка №х, то автоматически возвращяется в клетку которая отдалена от клетки №х на 4 клетки.
И ненадо из меня непонятно что делать.
Event - не о чем не говорит? Тогда загляни в справочник.
Надеюсь я понятно изложыл мое представление о том что я сказал выше, и некто не будет глупо коверкать мои слава бессмысленными обрывками цытат скомбинорваных каким либо образом.
:) Всем спасибо! :)
Ну так если ты дружен с калькуляторм, то додумай идею до конца.
Если варганить макросом, то вот что может помочь:
у автомакроса есть условие:
monster <имя монстра> [, ...]
АМ запустится, когда <имя монстра> находится поблизости (в пределах видимости). Когда макрос вызван устанавливаются специальные переменные $.lastMonster и $.lastMonsterPos.
Отделённые запятыми аргументы определяются как условие OR (или).
Несколько строк (от двух и более) определяются как условие AND (и).
это уже их переменных макроса:
$.lastMonster - имя монстра, который запустил последний автомакрос условием "monster"
$.lastMonsterPos - последняя известная позиция этого монстра ("123 234 prontera")
Итак видим моба, срабатывает автомакрос, из него мы вытягиваем клетку №х ($.lastMonsterPos). Дальше анализируя свои координаты ($.pos ) и координаты клетку №х - определяем в какую сторону шарохаться боту.
Если блюха растёт с тварью, то пригодится команда as (http://openkore.sourceforge.net/manual/view.php?p=Console%20Commands#as) (не помню, но помоему после неё бот болжен переключиться на друую цель)
ЗЫ: наводку надеюсь дал
4epT хех!! ну незнаю, там есть такая функцыя в ok-conf, а скрин я уже кидал(3 пост в этой теме)...
ок конфиг опасная тема почитай про неё на рофане и вы поймёте за чем он придуман сорь еси тема такая уже была
rктонить почеловечески напишет как все это сделать в опенкоре 1.9.0
без филосовских вставок ,четко и ясно как куда и скока вписывать.
...как все это сделать в опенкоре...
Пока никак. Это еще не реализовано.
4epT хех!! ну незнаю, там есть такая функцыя в ok-conf, а скрин я уже кидал(3 пост в этой теме)...
Всё что делает твой конфигуратор:
в конфиг пишет значения (в последовательности как у тебя подчёркнуто):
attackAuto 0
runFromTarget 1
itemsTakeAuto 2 (или 1)
зачем для этих действий он нужен? Тут проще блокнот.
Отделённые запятыми аргументы определяются как условие OR (или).
Несколько строк (от двух и более) определяются как условие AND (и).
Итак видим моба, срабатывает автомакрос, из него мы вытягиваем клетку №х ($.lastMonsterPos). Дальше анализируя свои координаты ($.pos ) и координаты клетку №х - определяем в какую сторону шарохаться боту.
Здесь все понятно (я уже давно к этому пришел), но вот как анализировать переменную $.lastMonsterPos (123 167 prontera) как тут вытянуть x, y?
Добавлено через 21 час 28 минут 23 секунды
Собственно вот что получилось, но отходить не собирается даже:
automacro GeoAttck {
console /Monster Geographer.*attacks you/
monster Geographer
call GeoMove
}
macro GeoMove {
$geox = @arg ("$.lastMonsterPos", 1)
$geoy = @arg ("$.lastMonsterPos", 2)
$posx = @arg ("$.pos", 1)
$posy = @arg ("$.pos", 2)
$difx = @eval ($geox - $posx)
$dify = @eval ($geoy - $posy)
$gox = 0
$goy = 0
if ($difx < 5) goto gox1
goto endx
:gox1
if ($difx < 0) goto gox3
$gox = @eval ($geox + 5)
goto endx
:gox3
if ($difx > -5) goto gox2
goto endx
:gox2
$gox = @eval ($geox - 5)
:endx
if ($dify < 5) goto goy1
goto endy
:goy1
if ($dify < 0) goto goy3
$goy = @eval ($geoy + 5)
goto endy
:goy3
if ($dify > -5) goto goy2
goto endy
:goy2
$goy = @eval ($geoy - 5)
:endy
do move $gox $goy
}
Добавлено через 3 минуты 6 секунд
Но в идеале бы реагировать просто на каждого моба, который появляется в поле зрения, но тогда он выводит постоянное сообщение, что автомакрос сработал и весь лог засирается (по-моему, бот вообще при этом ничего не делает)
Добавлено через 2 минуты 7 секунд
к томуже, если в данной ситуации бот появился прямо за спиной, а гео стоит перед нами, то убегая от появившегося мы пойдем прямо к нашему, а от него обратно и так до смерти. поэтому как учесть положения всех мобов (географеров)?
макросами не как, это слишком сложная для них задача
а плагин как писать? где инструкцию найти по ним?
morph, учить язык perl и смотреть примеры плагинов.
vBulletin® v3.8.11, Copyright ©2000-2024, vBulletin Solutions Inc. Перевод: zCarot