Ren
> В текущем ЛУ мы учим танки боты патрулировать территорию по сложному (не
> очевидному) маршруту.
Сделали, можно трогать
https://godrik.ru/TANKS_2022/TLR.php
УПРАВЛЕНИЕ
Танк который хочет получить указание от игрока подсвечен синими кружочками
Указания бывают двух типов: 1)едь туда или 2)стреляй вот в того
Танк будет выполнять указание пока не закончит выполнение или не столкнется с невозможностью выполнения. После чего он снова попросит указания у игрока
ФРИЗЫ.
При расчете маршрута танков бота игра ФРИЗится на 5-10 секунд. Поскольку в момент старта (сразу после первого приказа) требуется рассчитать маршрут сразу 15 танкам игра ФРИЗится на 1-2 минуты. Игра не зависает, она думает)) Просьба отнестись с пониманием
Ren
> Просьба отнестись с пониманием
Хотел бы уточнить. Я не против твоей игры. Я уже говорил.
Но согласно https://gamedev.ru/projects/forum/?id=275396&page=7&m=5704105#m95 ты видимо из категории №4.
Только без отдельной темы, описания, и какой-либо видимой готовности к конкурсу.
Der FlugSimulator
Меня, конечно, больше интересовал вариант шутера с непосредственным управлением. А чтобы он не превращался в соревнование по уклонению от снарядов, я и хотел сделать снаряды невидимыми для соперников. Как и в реальности — снаряд не виден, видны ракеты и трассирующие пули.
Вариант стратегии тоже по-своему интересен, но не на столько. А вот мешанина стилей мне точно не нравится.
Mikle
> сделать снаряды невидимыми для соперников.
У меня тоже так и было. Но если виден выстрел, то и снаряд ты проследить можешь. Но это не нравится romanshuvalov
> мешанина стилей мне точно не нравится.
Под "стратегией" я подразумевал режим захвата флага. Чтобы нейтрализовать камперство.
Но в общем вижу что затея разваливается. Есть бесконечное множество пониманий, и увязать их пока не получается.
Может быть всё-таки надо как-то воплотить хотя-бы минимум. Чтобы обсуждать самую голую конкретику. Подумаю.
Der FlugSimulator
> Я уже говорил.
> Но согласно https://gamedev.ru/projects/forum/?id=275396&page=7&m=5704105#m95
> ты видимо из категории №4.
> Только без отдельной темы, описания, и какой-либо видимой готовности к
> конкурсу.
У меня есть проект, в котором написаны все, подчеркиваю все составляющие элементы, кроме поведения ботов при контакте с противником. Проект конкурса "AI Tank", по моему мнению, напрямую соответствует тому, что мне надо. Поэтому я предложил объединить наши праздники: я получу несколько вариантов АИ, конкурс получит от меня призовой фонд. Все довольные и шасливые. Однако на нашем форуме не принято объединятся
ЗЫ.
Ren
> У меня есть проект, в котором написаны все, подчеркиваю все составляющие элементы
Проект - не знаю, а документации и конкурса точно нет.
Ты и сам сказал, что хочешь чтобы тебе за 15 тыров написали ботов (даже более одного).
В принципе, твою затею можно даже считать нормальной, за исключением наличия её здесь.
> Однако на нашем форуме не принято объединятся
Ну вполне логично, в этом есть твоя заслуга. Получается ты ведь сюда набижал пооффтопить:
> Меня не интересует дуэльный АИ ... Меня не интересует бот, который ловко стрейфится от летящего снаряда (на танке!) ...
И как с тобой прикажешь тогда объединяться?
Я почитал тему и мне показалось, что во первых ни у кого нет цельного представления, а во вторых часть предложений полностью убивает вариативность тактик и интерес разработки бота.
Хотел бы предложить конкретный набор правил для реализации.
PS.
Все цифры можно скорректировать.
Данные правила легко масштабировать на командные баталии.
Samaritan
Получается у тебя нельзя одновременно ехать, вращать башню, вращать шасси и стрелять. Печалька.
Реализовал простое Web REST API по перемещению танка по клеткам.
Узнать текущие координаты танка: https://gdtanks.pythonanywhere.com
Переместить танк влево на одну клетку: https://gdtanks.pythonanywhere.com/move/left
Переместить танк вправо на одну клетку: https://gdtanks.pythonanywhere.com/move/right
Переместить танк вверх на одну клетку: https://gdtanks.pythonanywhere.com/move/up
Переместить танк вниз на одну клетку: https://gdtanks.pythonanywhere.com/move/down
Если такой подход устраивает, могу дальше расширять функциональность
Incvisitor
> Получается у тебя нельзя одновременно ехать, вращать башню, вращать шасси и
> стрелять. Печалька.
Одновременно нельзя только ехать и вращать шасси - необходимо для реализации клеточного перемещения. Всё остальное произойдет в один тик, читай "одновременно".
Samaritan
> Я почитал тему и мне показалось, что во первых ни у кого нет цельного представления,
У меня есть. И они изложены в первопосте.
Да, пока есть проблема множества вариантов по мотивам мнений, и они противоречат друг другу.
Для устранения неопределенности, реализатор проекта должен сделать финальный выбор.
Остальные соглашаются и участвуют, или соответственно не участвуют.
Не вижу, как это может работать по другому.
> во вторых часть предложений полностью убивает вариативность тактик и интерес разработки бота.
Не понял какие именно. Но чтобы уточнить: тактика - это стрельба и езда, стратегия - это решение куда ехать и в кого стрелять.
Интерес - штука абстрактная. Предложи свой вариант игры с новой темой и подробным описанием.
Обновил первопост в с целью улучшения коммуникационного протокола обсуждения.
Der FlugSimulator
а почему нельзя карту действительно переслать?
так придётся "обстреливать" хост запросами чтобы банально её воспроизвести, сразу навскидку проблема определить тайлики с водой, в которые заезжать нельзя, но судя по структуре контролов возможно
> enum RaycastResult {none, obstacle, unit} raycast_result;
по этом запросу нельзя получить воду
> std::vector<Vector2> navigation_path; // построенный маршрут навигации
по этому тоже, просто есть гарантия что все точки не в воде
и не понял как ехать по предоставленному пути? переводить waypoints в контролы движения?
хорошо бы безбажный code snippet на это дело
aliskda
> простое Web REST API по перемещению танка по клеткам.
прикольно, но что со стрельбой? как в морском бое?
#!
> прикольно, но что со стрельбой? как в морском бое?
почти. игрок дёргает АПИ /shoot/{direction}, в ответе получает координату падения снаряда и результат. Например:
{
"x": 5,
"y": 12,
"status": "tankDamaged"
}можно возвращать доп.инфу: имя владельца подбитого танка, сколько жизней у танка осталось и т.п.
aliskda
> дёргает АПИ /shoot/{direction}
а как регулировать дальность выстрела? нужен ещё pitch)
Der FlugSimulator
> У меня есть. И они изложены в первопосте
Первый пост воспринимается больше, как описание концепции: "толи будет так, толи эдак" - от того и возникает "бесконечное множество пониманий". Это не претензия - это пояснение почему у меня сформировалось мнение, что нет цельного представления.
Der FlugSimulator
> Не понял какие именно. Но чтобы уточнить: тактика - это стрельба и езда,
Не стоит воспринимать все комментарии в теме исключительно на свой счет.
Но сразу известная карта, серверное построение пути и роботы со свободным перемещением в 4х направлениях - это на мой взгляд сильно упрощает тактическую составляющую.
Der FlugSimulator
> Предложи свой вариант игры с новой темой и подробным описанием.
Свой вариант я достаточно подробно описал в посте выше - почему-то я расценивал эту тему именно как "давайте обсудим возможные варианты и сформируем лучший, после чего приступим к его реализации" - видимо я ошибся.
Если это личный проект, то во избежание путаницы наверное правильнее было бы его перенести в "Проекты".
Тема в архиве.