Wake of Gods Forum | Форум Во Имя Богов

Full Version: Заготовки скриптов
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5 6 7 8 9 10 11 12
каждый день есть 10% шанс на то, чтог на карте появится монстр, или группа монстров после победы над которыми, герой получит:

примеры наград
это что касается награды и монстра, а еще надо, чтобы монстра делал хотя бы 2 шага за ход.
Поставь таймер на цвет, не равный цвету игрока, и вручную ежедневно удаляй монстра со старых координат и ставь на новые. Не забывай делать проверку на препятствие. И да, a propos, если нужно сделать такое для нескольких монстров, то весьма неплохо реализовать такое через цикл.
Если нужно отправить монстра на определенные координаты, то нужен цикл. В ежедневном таймере проверяй разницу между x/y монстра и цели. Суть такова (допустим, 3 шага для монстра в x1/y1, движущегося к цели в x2/y2):
1. Триггер (таймер для компа любого цвета)
2. Цикл (повторить 3 раза)
3. В теле цикла:
1). Сравнить координаты могстра и цели; если x2>x1, то приоритетное движение 1 - вправо (иначе - влево); если y2>y1, то приоритетное движение 2 - вниз (иначе - вверх).
2). Проверить, свободна ли клетка приоритетного движения; если да, то подвинуть монстра; иначе - проверить другие направления (включая направления по диагонали). Как только находится нужная клетка - удалить объект "монстр" со старых координат (запомнив его параметры) и поставить на новые, используя эти же параметры.

Основная идея понятна? Старался расписать как можно понятнее, но, учитывая то, что объяснитель из меня не лучший, могут остаться вопросы.
GhostManSD Wrote:1). Сравнить координаты могстра и цели; если x2>x1, то приоритетное движение 1 - вправо (иначе - влево); если y2>y1, то приоритетное движение 2 - вниз (иначе - вверх).
2). Проверить, свободна ли клетка приоритетного движения; если да, то подвинуть монстра; иначе - проверить другие направления (включая направления по диагонали). Как только находится нужная клетка - подвинуть монстра.
Не всё так просто. Например, такой монстр не выберется из цикла:
Code:
# - преграда, & - монстр, @ - цель.
Code:
#########
#       #
# ##### #
#     # #
### # #@#
###  &###
#########
Да что уж тут, он и из такого не выберется:
Code:
######
#    #
# ## #
# &#@#
# ## #
#    #
######

Кроме того, цель бродячий монстр тоже должен определять сам.

Я не вижу вменяемой реализации увеличения количества ходов бродячих монстров кроме правки экзешника.
Sav, может, тогда стоит патрулировать на 2-3 клетки в каждом направлении больше? Понимаю, что нужно больше переменных, но есть ведь y-переменные.
Нужно искать кратчайший путь к цели, независимо от количества необходимых просчётов клеток. Есть несложное рекурсивное решение, но оно неэффективно, и вообще не знаю, как с рекурсией в erm.

Проблема с авто-выбором цели остаётся.
M.A.K.C., ну, что-то в этом духе.
Я пока не тестировал и вообще сомневаюсь, что награда сработает нормально. И, естественно, монстр будет делать только 1 шаг.

В первый пост добавлять и полностью комментировать не буду - скрипт весь склеен из кусков, которые есть в первом посте.
Еще вопрос...
Можно ли сделать следующий скрипт деревья на карте имеют 5 процентный шанс ожить(преобразоваться в случайное количество энтов(дендроидов) и начать бродить по карте, причем с 5 процентным шансом преобразоваться в дерево и остаться на новом месте.
Да можно, вопрос только... ты подумал о последствиях? Если одиночное дерево, то понятно. А как быть с рощей? Всю преобразовывать в одно дерево и заставлять бродить? На карте могут появиться нешуточные дыры. Ab Этим незамедлительно воспользуется игрок (я уж молчу про ИИ). Ab А если превращать рощу в несколько деревьев, то получится толпа монстров, мешающих друг другу идти. Предлагаешь стравливать их, пока не останется в живых сильнейший? Ab
С другой стороны, можно, например, преобразовывать деревья знаний (с большим процентом, разумеется). Тогда обе проблемы решены. Ab
Sav, если вызываешь функцию или таймер инструкцией, лучше это делать после тела триггера.
А если обычному дереву (одноклеточному)поставить проверку местности, если вокруг не занято можно откочевывать?
***
*х*
***
примерно...
А так же ...если вокруг не занято можно осесть?
**********************************************
а по поводу толпы, при столкновении, монстры объединяются...
Это можно сделать в отношении любых отрядов монстров, объединение быдет происходить случайным образом...
Вопрос...
Попалось мне такое чудо..
Забил компьютерного игрока, сделал лишенцем*(оставил без замка), а он замок вернуть не смог вовремя и его вышибло из игры...
Встретил серого героя(бывший компьютерный с его армией и артефактами, стоит и НИЧЕГО НЕ ДЕЛАЕТ)... Пришлось его того...
Возникла мысль... Серый герой-нейтрал каков его статус? Можт ли он бродить по карте как герой? Захватывать замки? Нападать? присоединять нейтралов? Или связан обычными ограничениями нейтральных монстров? Стоит несчастный ни туды и не сюды?
*******************************************************
P/s. Похоже на бред, да?
А с другой стороны, это возможно добавит в герои немного нового, но интересного...
Всем спасибо за помощь...
M.A.K.C., пробовал скрипт с появлением бродячих монстров? Работает или мне доделывать?

Идея с деревом, по-моему интересная. Могу реализовать (только превращаться будут не все деревья, а конкретный тип объектов).

GhostManSD Wrote:Sav, если вызываешь функцию или таймер инструкцией, лучше это делать после тела триггера.
Я сначала установил таймер инструкцией, а потом поставил триггер на его срабатывание. Что-то не так?
Sav, спасибо, а какой там процент? (надо временно поставить 50 для теста..)вроде не встречал... с другой стороны, на меня пока я стоял напал какой то монстр, и после победы вылезла награда, но не как в скрипте...
По деревьям, можно, чтобы превращались только те, которые занимают 1 клетку в отряд не менее 12 дендроидов, более можно..
Там было 10%. Теперь 100% (поправил в прошлом посте).

Не работает, есть глюки...
1. Появился монстр на карте среди деревьев, двигаться не смог, при нападении на него вылезает диалог боя, а боя нет и монстр остается на месте
2. появился другой (скриптовый или нет,не знаю, двигался) при нападении склеил ласты, но награды не было...
Надо чтобы при срабатывании скрипта появлялось сообщение, "В окресностях появились бродяги" и желательно наводилась на них камера...
Pages: 1 2 3 4 5 6 7 8 9 10 11 12
Reference URL's