|
[ На главную ] -- [ Список участников ] -- [ Правила форума ] -- [ Зарегистрироваться ] |
On-line: |
Game Maker Форум / Вопросы и Ответы (Для Опытных) / Создание децентрализованного стада.!? |
Страницы: 1 |
Автор | Сообщение |
Людвиг Группа: Участники Сообщений: 8 |
Добавлено: 12-01-2007 15:58 |
Вопрос вот какой, как сделать ДЕЦЕНТРАЛИЗОВАННОЕ стодо например коров? Условия: Стадо должно иметь возможность делиться на части, например есть стадо из 100 обьектов, запускаем через него некоево ковбоя, он своим присутствием делит стадо пополам, и оно делится на 2 автономные части которые могут как разбежаться так и слиться обратно в одно. Так стадо можно разделить вплоть до того что все коровы будут бегать поодиночке, но чтобы можно было их снова собрать. Есть идеи, желательно обросшие кодом =)? |
|
algor_1 гроссмейстер Группа: Сообщество GM Сообщений: 172 |
Добавлено: 12-01-2007 16:10 |
А можно поинтересоваться, что это будет за игра? Очень интересно - таких законченных игр на ГМ я не видел... | |
Людвиг Группа: Участники Сообщений: 8 |
Добавлено: 12-01-2007 16:46 |
В том то и фишка что таких игр небыло, зачем повторяться, а уж имея такую базу можно наворотить многое, от банального кавбоя (пастуха) гоняющего стадо куда надо по вейпойнтам отстреливающего волков, до чего угодно другово. Такой пример даст много вариантов создания новых оригинальных игр. Была бы фантазия. | |
DreamRunner магистр Группа: Сообщество GM Сообщений: 320 |
Добавлено: 12-01-2007 18:49 |
создавать навидимые проводники за которыми будут бегать части стада и коровам говорить какой проводник их. Проводников будет >=1 и <= кол-во коров. | |
Людвиг Группа: Участники Сообщений: 8 |
Добавлено: 12-01-2007 20:59 |
Нет, в том то и дело, что проводники это централизаторы стада, а я хочу децентрализованное, те, каждая овца ориентируется на ближайших овец и бежит туда где их больше,ЕСЛИ ОНИ НЕ СЛИШКОМ ДАЛЕКО, К ТЕМ ЧТО ДАЛЕКО НЕ БЕЖИТ. Чтоб каждая овца сама за себя. Возможный вариант - сделать каждой овце невидимые большие кружки, и проверять наличие соседей по ним, но я не знаю как сделать чтобы овца в таком случае бежала в НУЖНОМ направлении. конеш, можно сделать проверку и по расстоянию, но тогда надо как то проверять всех овец. Суть не в том, суть вопроса в том, как заставить овцу выбрать нужное направление к наибольшему доступному кол ву овец |
|
DreamRunner магистр Группа: Сообщество GM Сообщений: 320 |
Добавлено: 12-01-2007 21:39 |
На самом деле никто с полной уверенностью не может сказать что управляет животными, но у групп их есть некий общий разум или какая то телепатическая связь. Но это не важно. Если ты сам представляешь чего ты хочешь - опиши подробнее, а так тебе будут идеи предлагать, а ты новые условия придумывать:) Выложи сюда все условия по которым будет передвигаться стадо и его части.
ну опрашивает ближайшие проводники на предмет кол-ва овец ведомых им и бежит к проводнику этих овец ))) Нет отдельной овцы или группы у которой не было бы такого проводника и с пр-ми задача упрощается при тех же условиях (пока что). То что ты хочешь сделать даст тебе 30 фпс при 40 овцах. Оно тебе надо?:) |
|
Людвиг Группа: Участники Сообщений: 8 |
Добавлено: 12-01-2007 22:10 |
что касается ФПС, то можно опрашивать овечек по таймеру, например раз в 3 секунды, но мне кажется что таймеры должны тормозить процесс, нет? Что касается проводников, то я не знаю как выбрать и закрепить овцу за проводником, или наоборот, не важно. Как сделать выборку по переменной из нескольких одинаковых обьектов?? Вопрос сложный на мой взгляд и не факт что я найду на него ответ. А требования просты. Сделать реалистичное дробимое и склеиваемое стадо с любым количеством частей |
|
DreamRunner магистр Группа: Сообщество GM Сообщений: 320 |
Добавлено: 12-01-2007 22:47 |
Это очень обобщённо. Нужно просто список того что смогут делать эти зверушки. 1. следовать за проводником когда он выбран 2. искать ближайшую крупную группу и следовать к ней 3. объединиться с группой если достаточно близко к одному из её животных. Вот такое надо. Это ж программирование по алгоритмам, а не написание художественного романа. |
|
SatanClaws мастер Группа: Участники Сообщений: 70 |
Добавлено: 29-01-2007 10:37 |
Зачем объединять коров в стада? Предлагаю следующий алгоритм: если в 100 метрах от коровы появляется волк, корова идет в противоположную сторону (и если волк в центре, стадо делится). Если все спокойно, коровы смотрят на себеподобных: стремятся приблизится к стаду на растоянии, скажем, 50-100 метров, и отходят при менее 10. На выходе получем: несколько стад, расстояние между которыми как минимум 100 метров, а плотность коров 10-50. Добавив коровам случайное перемещение получаем миграцию стада. Это все пока только прикидки, сегодня-завтра попробую испытать это в деле. |
|
SatanClaws мастер Группа: Участники Сообщений: 70 |
Добавлено: 01-02-2007 12:35 |
Попробывал. Баги сего метода обнаружились почти сразу. Случайно перемещающиеся коровы просто обожают спариваться: Отделяются по 2 особи и уходят в произвольном направлении. Причем каждая считает, что находится в стаде, т.к. видит возле себя другую корову. Буду думать дальше. |
|
DreamRunner магистр Группа: Сообщество GM Сообщений: 320 |
Добавлено: 01-02-2007 15:16 |
без Проводника для каждой группы намного сложнее. И тормознее к тому же. А видимость та же будет. |
Страницы: 1 |
Game Maker Форум / Вопросы и Ответы (Для Опытных) / Создание децентрализованного стада.!? |