Der FlugSimulator, ну вот как видно в этом я нуб. Я смотрю со своей стороны и не работал с DLL.
Значит всё проще. Всем участникам предварительно указать какие функции реализовать в своём DLL. И определится как работать со всеми объектами: стены, противник, игрок, вода и др. Какие-то конкретные значения заранее определены для объектов? Или будут задаваться при инициализации?
(извиняюсь, может что-то не верно пишу).
Mirrel
Большая часть твоих опасений будет решаться на стороне сервера и не станет головной болью для тех, кто пишет ИИ.
Задача данного обсуждения — найти формат, максимально ограничивающий конкурсантов от рутины, сводящий к минимуму их действия, не связанные непосредственно с написанием ИИ.
Посмотри, всё же, хотя бы нулевой пост тут.
Mikle
То есть у конкурсантов будет набор команд для работы с Длл или набор данных, с которыми они будут работать?
Incvisitor
конкурсанты будут писать длл. Условно говоря, в ней будет одна функция, в которой параметрами будет положение врагов\препятствий\пуль\бонусов и все прочие статы, а возвращать она будет угол поворота, направление газ\тормоз и флаг стрелять\не стрелять.
kipar
> конкурсанты будут писать длл
Это самый простой (для меня) вариант. Но написание dll сейчас для многих проблема, а для тех, кому это не проблема, проблемой может быть отладка. Поэтому сейчас мы пытаемся выработать наиболее оптимальный вариант.
kipar
> возвращать она будет угол поворота, направление газ\тормоз и флаг стрелять\не стрелять
Точнее, направление куда крутить, ведь скорость вращения ограничена.
Ну и три функции, а не одна, кроме этой ещё однократно вызываемая при старте, где клиент может выполнить всю подготовительную работу, выделить память под свои нужды и т. п.; и однократно вызываемая при завершении работы, чтобы корректно освободить ресурсы.
Может проще сделать готовую программу (игру), а люд пусть пишет скрипт для управлением танком?
stratego
в этом и идея, просто скрипт все хотят на своем языке писать.
kipar
А если написать оболочку с готовыми функциями на абстрактном языке это не то?
kipar
> а возвращать она будет угол поворота, направление газ\тормоз и флаг стрелять\не
> стрелять.
Mikle
> Большая часть твоих опасений будет решаться на стороне сервера и не станет
> головной болью для тех, кто пишет ИИ.
> Посмотри, всё же, хотя бы нулевой пост тут.
ну, допустим для меня понятно что делаем. И что работа будет со структурой, но выкладывать это надо в первопосте и доносить до человека конкретно что именно надо сделать. Вопросов от этого не убудет. Большинство даже DLL не будут делать, а об сервере можно вообще (наверно) забыть. Хотя сервер может наоборот проще.
Incvisitor, ты не можешь DLL написать? Или используемый тобой ЯП не позволяет DLL написать?
Кстати, можно ни кому не писать DLL, а всем наоборот вызывать DLL. А используемые функции подменять своими.
нельзя... ведь нам надо состыковать игроков...
Mirrel
> но выкладывать это надо в первопосте и доносить до человека конкретно что именно надо сделать
Ну ты видимо не сильно читаешь.
Первопост делал я, как обсуждение правил игры, API и протокола. И писать хост/сервер хотел я, в кроссплатформенном виде.
Но так выходит, что писать будет Mikle, а я отваливаюсь, , т.к. под линуксом отлаживать dll не смогу,
поэтому первопост, итак бывший в эскизном, состоянии сейчас неактуален. Mikle видимо сделает что-то своё.
Der FlugSimulator
> Ну ты видимо не сильно читаешь.
можно вопрос, а что именно в поднятых мной вопросах не относится к теме?
> Но так выходит, что писать будет Mikle, а я отваливаюсь, , т.к. под линуксом
> отлаживать dll не смогу
DLL собрать можем, а SO нет? Я чего-то не понимаю?
Mirrel
> DLL собрать можем, а SO нет? Я чего-то не понимаю?
И как это будет взаимодействовать?
Der FlugSimulator
> писать хост/сервер хотел я, в кроссплатформенном виде.
> Но так выходит, что писать будет Mikle, а я отваливаюсь
Я пока что везде писал: "если делать буду я". Если ты напишешь кроссплатформенный вариант — отлично. Я тут в порядке обсуждения.
Mirrel
> что именно в поднятых мной вопросах не относится к теме?
ты постоянно пишешь (мне) что я должен написать в первопосте, как будто это старт конкурса.
В то время, как я всячески пытаюсь донести, что это проект будущего конкурса, со многими неизвестными,
типа правил, форматов и протоколов. А в моём случае - даже участия ))
> DLL собрать можем, а SO нет? Я чего-то не понимаю?
Собрать я могу что угодно. Могу даже запустить (обобщённо) win приложение.
Я не смогу запустить Elf .so я В Win (PE) хосте. И не смогу запустить отладку win .dll.
А ведь отлаживаться я как то должен?
Der FlugSimulator
> мне
почему ты воспринимаешь на себя? Я вообще говорю о проблеме, а не то что "ты должен".
> Я не смогу запустить Elf .so я В Win (PE) хосте. И не смогу запустить отладку
> win .dll.
сделайте кроссплатформу (или два разных идентичных приложения для Windows и для Linux), я просто не понимаю в чём сложность это сделать. Все приложения что я делаю, автоматически можно компилировать под нужные платформы.
Сможешь и протестировать и собрать код под нужную платформу.
Тема в архиве.