Перейти к содержимому
Alex

Unreal Tournament. Войны роботов. (разработка)

Рекомендуемые сообщения

"Тапки", это медаль на форуме за разработку алгоритмов и программ повышенной сложности. Они розовые, с заячьими  ушами и бумбоном.

Слабенько как-то... а что на счёт срока?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А что если... постоянно передавать с сервера карту в размере например 5х5 с роботом по центру и врагами в этой области? тогда у роботов появятся глаза!!!

 

Интересный вариант, но это опять игра в шахматы с самим собой, то есть централизованное управление двумя командами. Это противоречит основному постулату - мы ничего не знаем о вражеских роботах (если конечно не перехватим их радиообмен), карту исследуем постепенно, мотивируя робота на то или иное действие, обмен информацией о бое должен происходить только с союзными роботами. Сервер-рефери только следит за флагами и остатком  бойцов в двух командах.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Интересный вариант, но это опять игра в шахматы с самим собой, то есть централизованное управление двумя командами. Это противоречит основному постулату - мы ничего не знаем о вражеских роботах (если конечно не перехватим их радиообмен), карту исследуем постепенно, мотивируя робота на то или иное действие, обмен информацией о бое должен происходить только с союзными роботами. Сервер-рефери только следит за флагами и остатком  бойцов в двух командах.

Нет... ну так просто очень сильно упрощается построение карты для роботов! А карта есть в любых играх! И глаза тем более!!!

Хотя конечно ещё нужно собрать карту для каждого робота в отдельности и отправить каждому... но это не сложно! Также можно передать все на сервер команды и дальше что хочетто пускай и делает сэтим...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Как это упрощается построение карты?  Роботы о карте тоже ничего не знают (см. постулаты). Они знают только размер поля (например 16х32х2). Карту, выбранную из базы, строим в один клик АМИ-шкой. Для робота карта - это изначально полностью непроходимая зона, как "туман войны" в стратегических играх. Каждый робот двух команд знает только свою начальную позицию в этом объеме (16х32х2). При старте боя и начала исследования карты каждый блок черноты (неизвестности) постепенно превращается в пустоту или стену. Нужно кататься по карте, исследовать ее, найти вражеские флаги, и доставить на базу, при встрече вражины на пути "дигнуть" его.

 

Самая большая сложность алгоритма - это заставить робота двигаться в определенном направлении имоверного противника или базы врага, а не просто клетка за клеткой исследовать местность. Нужно быстро возвратиться из тупика, а также сменить род деятельности (прервать какие-то циклы) и приступить к выполнению другой задачи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Как это упрощается построение карты?  Роботы о карте тоже ничего не знают (см. постулаты). Они знают только размер поля (например 16х32х2). Карту, выбранную из базы, строим в один клик АМИ-шкой. Для робота карта - это изначально полностью непроходимая зона, как "туман войны" в стратегических играх. Каждый робот двух команд знает только свою начальную позицию в этом объеме (16х32х2). При старте боя и начала исследования карты каждый блок черноты (неизвестности) постепенно превращается в пустоту или стену. Нужно кататься по карте, исследовать ее, найти вражеские флаги, и доставить на базу, при встрече вражины на пути "дигнуть" его.

 

Самая большая сложность алгоритма - это заставить робота двигаться в определенном направлении имоверного противника или базы врага, а не просто клетка за клеткой исследовать местность. Нужно быстро возвратиться из тупика, а также сменить род деятельности (прервать какие-то циклы) и приступить к выполнению другой задачи.

И все же в целях лёгкого уровня добавить передачу карты 3*3 (хотябы так) серверу команды!

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Саня, делай как хочешь. Это в любом случае лучше, чем ничего. Но было бы крайне желательно соблюдение указанных условий данной темы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Саня, делай как хочешь. Это в любом случае лучше, чем ничего. Но было бы крайне желательно соблюдение указанных условий данной темы.

Ну ок... сейчас "вслепую" пишу алгоритм сканирования карты в "тумане войны"

А как определить робота? И враг ли это? Ну допустим враг ли это можно определить... а как определить что перед твоим роботом чужой робот, а не неизвестная до сего времени стена карты? С глазами на блок вперёд было-бы легче! Особенно если враги подсвечиваются!

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А  вот это уже на твое усмотрение. У тебя есть миллионные доли секунды, ты дигнешь врага или он тебя.

Как хочешь делай. компарь, проверяй ИД, если это роботы, то ИД у них одинаковые, тогда нужно опросить всех союзников, не находятся ли они по этим координатам (что-то есть перед тобой, или сверху или снизу, но это не бедрок) и если это не союзник   - убей  его!

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
А  вот это уже на твое усмотрение. У тебя есть миллионные доли секунды, ты дигнешь врага или он тебя.

Как хочешь делай. компарь, проверяй ИД, если это роботы, то ИД у них одинаковые, тогда нужно опросить всех союзников, не находятся ли они по этим координатам (что-то есть перед тобой, или сверху или снизу, но это не бедрок) и если это не союзник   - убей  его!

Угу... понятненько! То есть роботам будет дан блок из которого состоит карта?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Угу... понятненько! То есть роботам будет дан блок из которого состоит карта?

 

Конечно. Как он узнает стену, сундук, шерсть и прочее. В новых версиях там есть функция детектирования ИД-шек. Ты с роботами работаешь или черепахами? И на какой версии мода и Майнкрафт?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Конечно. Как он узнает стену, сундук, шерсть и прочее. В новых версиях там есть функция детектирования ИД-шек. Ты с роботами работаешь или черепахами? И на какой версии мода и Майнкрафт?

С роботами! А что можно использовать что угодно? Т.е. роботы против черепах не запрещены?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ну Т-34ки же сражались с Тиграми :D  Можно использовать любую роботехнику любой комплектации  в этом сражении. Твоя задача - победить. А какими средствами это будет достигнуто, не важно. Ограничение - это равное количество боевых единиц. 

 

Принимаем 5 на 5 на карте 16х32х2.   Полное уничтожение, доставка 3 флагов, время 15 мин. Если время вышло - побеждает тот, у кого больше флагов. Если флагов равное количество, побеждает тот, у кого осталось больше роботов. Полностью погибшая команда проигрывает в любом случае, даже если у нее больше флагов на момент гибели последнего робота.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Ну Т-34ки же сражались с Тиграми :D  Можно использовать любую роботехнику любой комплектации  в этом сражении. Твоя задача - победить. А какими средствами это будет достигнуто, не важно. Ограничение - это равное количество боевых единиц. 

 

Принимаем 5 на 5 на карте 16х32х2.   Полное уничтожение, доставка 3 флагов, время 15 мин. Если время вышло - побеждает тот, у кого больше флагов. Если флагов равное количество, побеждает тот, у кого осталось больше роботов. Полностью погибшая команда проигрывает в любом случае, даже если у нее больше флагов на момент гибели последнего робота.

Прикольно! Нафига я тогда пишу алгоритм? Просто геолайзером просканирую и все! Далее все по тактике пойдёт! Главное карту получить...

Можешь проверить, плотность зарядного утройтва отличается от бед рока?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Прикольно! Нафига я тогда пишу алгоритм? Просто геолайзером просканирую и все! Далее все по тактике пойдёт! Главное карту получить...

Можешь проверить, плотность зарядного утройтва отличается от бед рока?

Зарядное устройство ставь ниже карты. При старте программы робот должен спросить СВОЙ НОМЕР, частоту Рефери-сервера, код команды на СТАРТ, код команды на СТОП-ИГРА. Так робот у тебя привяжется к своей начальной позиции на карте, и будет контролироваться сервером-судьей. Все команды от сервера--судьи он должен слушать в фоновом режиме и выполнять немедленно, например СТОП. А также при опросе сервером, жив ли он, тоже немедленно ответить и т.д.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Зарядное устройство ставь ниже карты. При старте программы робот должен спросить СВОЙ НОМЕР, частоту Рефери-сервера, код команды на СТАРТ, код команды на СТОП-ИГРА. Так робот у тебя привяжется к своей начальной позиции на карте, и будет контролироваться сервером-судьей. Все команды от сервера--судьи он должен слушать в фоновом режиме и выполнять немедленно, например СТОП. А также при опросе сервером, жив ли он, тоже немедленно ответить и т.д.

А паралельный апи имеется в OC?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Да по идее. Без параллели там сразу нечего делать. В одном гигантском многократно вложенном цикле не представляю написания ИИ. Как ты сделаешь стек задач, изменения приоритетов, смену деятельности, сканирование радиоэфира, общение, изменение флагов в фоне для прерывания каких-то циклов, внешний контроль робота, функции движения и прочие задачи. Как ты это все выполнишь без параллели???

 

Феникс когда-то писал темку, где он поправил библиотечку parallel API КК для ОС, но чего-то я ее найти не могу, удалил он ее что-ли?

 

Надо советоваться с опытными программистами, Зеро, Ридом, Тоторо, Крутым, Нео. Напиши им в личку, спроси, что к чему.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Предлагаю правила на первый бой:

 

Локация:

Для начала предлагаю высоту все таки 1 блок.

Размер: 16х32 (ширина, длина), где 16х8 отведено на базы, остается 16х16 на препятствия.

Локация симметричная.

Пол состоит из 3 цветов шерсти, синий, красный, белый.

Стенки состоят из бедрока.

Флаги располагаются в виде блоков

 

Вычислительная техника:

5 черепашек, 1 компьютер на команду. (Что с этим сделают программисты - их трудности).

 

Комплектующие:

Изначально черепашки заправлены достаточно... Много. Т.е. о топливе не задумываемся.

Для каждой черепашки блоки: 1 белая шерсть, 1 красная шерсть, 1 синяя шерсть, 1 бедрок

Так же черепашки знают свои стартовые положения и размер карты.

 

Судьи:

Админ :)

1 компьютер рефери, который опрашивает черепашек (СТАТУС) и дает ТЕСТ/СТАРТ/СТОП.

 

Тест:

Перед стартом компьютер рефери выдает бордкастом сообщение ТЕСТ и черепашки обеих команд должны начать крутиться в одну из сторон.

Когда компьютер рефери даст сообщение СТОП - черепашки прекращают кружение.

Таким образом проверится своевременность реакции на команды рефери.

 

Правила:

Не ломать пол.

Не подниматься на уровень выше.

 

Задачи:

Проанализировать локацию и попытаться стырить вражеский флаг, завалив пару противников (по возможности или желанию).

 

 

 

 

 

post-10981-0-54117200-1419229827_thumb.png

Изменено пользователем Jet

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Зарядное устройство ставь ниже карты. При старте программы робот должен спросить СВОЙ НОМЕР, частоту Рефери-сервера, код команды на СТАРТ, код команды на СТОП-ИГРА. Так робот у тебя привяжется к своей начальной позиции на карте, и будет контролироваться сервером-судьей. Все команды от сервера--судьи он должен слушать в фоновом режиме и выполнять немедленно, например СТОП. А также при опросе сервером, жив ли он, тоже немедленно ответить и т.д.

То что зарядное устройство стоит ниже карты никак мне не мешает! Геолайзер сканирует большой объем... но соответственно тратит много энергии...

 

Проанализировать локацию

А геолайзером можно?

А как роботов предоставлять будут? Мы их из своих материалов чтоль должны собрать? Или материалы дадут?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

То что зарядное устройство стоит ниже карты никак мне не мешает! Геолайзер сканирует большой объем... но соответственно тратит много энергии...

А геолайзером можно?

А как роботов предоставлять будут? Мы их из своих материалов чтоль должны собрать? Или материалы дадут?

 

Я не знаю.) Я просто игрок, который заинтересовался темой. Я на сервере то ни разу не был, меня лаунчер не пускает.)

Просто предлагаю.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


×
×
  • Создать...