Сразу скажу, что "игра" только для программистов, во всяком случае пока задумывается так, потом может быть расширится.
Разработка на ранних этапах, но общее виденье уже сформировано.
Общее описание
Итак, вы в роли Илона Маска, вам нужно создать свою космическую корпорацию по запуску ракет в космос и возвращении ступеней назад.
Проект в трехмерном пространстве, но круглой земли пока не будет, плоскоземельщики могут быть счастливы.
Есть начальная платформа - космодром.
Есть платформа возврата куда нужно посадить ступень(ни), может перемещаться в пространстве как например баржа в море или быть статичной на земле, имеет определенный размер.
Есть координаты куда нужно вывести полезную нагрузку.
Ракета может иметь несколько ступеней которые в нужный момент надо разъединить, одну ступень посадить, а другой вывести полезную нагрузку в пункт назначения.
У ступени есть посадочные ноги и планируются рули управления, возможно будет РСУ.
Ступень имеет определенное количество топлива, которое будет со временем заканчиваться.
На каждой ступени может быть один или несколько двигателей со своими характеристиками по тяге и возможном векторе отклонения.
Планируется трение о воздух, гравитация и их уменьшение с высотой.
Возможно разные планеты со своими характеристиками.
Игра разделена на уровни, выполняя более легкий с простой ракетой на одном двигателе(Falcon 1), вам дают Falcon 9, потом heavy и starship, может что-то еще.
Каждый уровень содержит камеры установленные на стартовой площадке, на ступенях, на посадочных площадках, камера наблюдения за ракетой с земли. Вы можете переключаться между ними для визуализации процесса и возможно в будущем процесс запуска можно будет сохранить как видео или в качестве скрипта который можно проиграть.
Геймплей
Окно игры служит в основном для визуализации процесса.
Игра при старте запускает web-server через который идет все ваше взаимодействие с ней.
Через HTTP запросы вам доступно получения основных данных об миссии:
Значение гравитации.
Сколько ступеней у ракеты и сколько на них топлива.
Сколько и какие двигатели на каждой ступени.
Координаты старта и посадки/цели.
Физические размеры ступени, ее текущие координаты, углы поворота, скорость линейная и угловая.
Все это вам будет возвращаться как значения в json.
На основе этих значений вы должны написать программу полета которая будет отправлять запросы на сервер о приложенной тяге на каждый двигатель, о векторе этой тяги, давать команды на разделение ступеней, на выдвижения посадочных ног, положение релей управления и прочего.
Через те же http запросы можно получить задание, например из простого:
Выполнить взлет.
Подняться на высоту 1000 метров.
Посадить ступень на другую платформу.
Выполнение засчитывается, если ступень приземлилась ровно на посадочные ноги и простояла так не упав 5-10 секунд.
Миссию в любой момент можно перезапускать выполним команду, а другой командой получать статус о выполнении, так можно перезапускать её много раз, например для тренировки вашей нейросети.
Это основное, будут еще мелочи если хватит сил на реализацию.
Графики пока нет, все сделано из примитивов, но уже летает, ноги двигаются, тяга регулируется.
Столкнулся с вопросом, чем заменить web сервер, на какое другое взаимодействие?
Может REST запросы? или WinAPI запросы?
Идеально конечно было бы писать программу полета в самой игре, но у меня пока нет мыслей как это можно было бы сделать универсально.
master-sheff
> Может REST запросы?
REST, это как ни странно тоже
> web сервер
> Идеально конечно было бы писать программу полета в самой игре, но у меня пока нет мыслей как это можно было бы сделать универсально.
<textarea/>?
так же как это делают разные сервисы подобно этому https://www.programiz.com/javascript/online-compiler/.
https://github.com/januwA/web-code-editor
нужен парсер, проверка синтаксиса, грамматика - или одним словом свой компилятор. Непонятно на чём написана игра, поэтому можно поискать подобное на вашем языке программирования.
Идея, прикольная но, думаю, потребует и внедрения элементов экономического симулятора. Возможно, будут некие конкурируюшие фирмы. Например, нужно заинтересовать инвестора. Инвестор будет пополнять бюджет в зависимости от эффективности запусков. Причём, ваш провал - шанс для конкурента. Игра заканчивается, если у игрока 0е финансирование, или если конкуренты выбыли из гонки.
В общем, вроде, идея прикольная. У меня сразу ассоциация была с Kerbal Space Program, но, думаю, за счёт внедрения элементов экономического симулятора проект вполне мог бы занять свою нишу.
В общем, буду следить за проектом. Надеюсь, у вас получится! Удачи)
master-sheff
Круто, хочу поиграть.
master-sheff
> Игра при старте запускает web-server через который идет все ваше взаимодействие
> с ней.
> Через HTTP запросы вам доступно получения основных данных об миссии
Нафига, делай все в игре.
Блин, я прямо загорелся тоже. Какой у тебя движок? Только я пока бы сделал физику по двум осям ( в одной плоскости полета). А потом уже в трехмерном управлении.
Мне почему то кажется что это не просто игра, а кое-кто пытается подменить реальную инженерную разработку симуляцией и подать её в виде игры.
PeeKay
> Мне почему то кажется что это не просто игра, а кое-кто пытается подменить
> реальную инженерную разработку симуляцией и подать её в виде игры.
и что? Какая разница? Это же интересно для людей любящих физику!
PeeKay
> Мне почему то кажется что это не просто игра, а кое-кто пытается подменить
> реальную инженерную разработку симуляцией и подать её в виде игры.
Вроде как автор об этом ни словом не обмолвился.
Просто человек романтик, может даже фанат Маска как медиаличности, а упоминание нейросетей говорит о том, что пока он летает в уютном розовом мире не разбившемся о реальность.
Наверное это будет интересно. Странно что романтичная натура, способна к реализации таких нетривиальных идей.
Я как человек который сам разрабатывал инженерные проекты, могу сказать, что игры и реальная разработка любого инженерного проекта, это примерно тоже самое, что и сказки "как я из рубля сделал миллиарды" (и надо сказать так и есть, если книга стоила рубль, а разошлась миллиардным экземпляром) и вахта на севере (а сейчас и на юге-западе добавилась), где люди зарабатывают реальные и весьма хорошие деньги.
PeeKay
Всё это уже давно есть в САПРах.
sledo
> Всё это уже давно есть в САПРах.
В САПРах нет условных 2500 тысяч игроков-задротов которые нагенерят 500 гигабайт статистики запусков с разными конфигурациями.
PeeKay
Да они как бы и не нужны. Ни общность результатов людей, ни нейросети как упоминал автор в современной разработке лишние звенья.
Вижу вы не очень в курсе как сейчас это происходит. Если очень просто, то раньше 2+2 решал человек на бумаге, реально складывал два числа. Потом появился калькулятор и смог решать интегральные уравнения, без ошибок.
САПР решает миллионы этих интегральных уравнений и все остальное что требуется для расчета. Если брать серьезные проги типа Компаса, ну и конечно квалифицированного инженера, то чертежи изделия из него часто могут быть уже серийными образцами. Причём станок с ЧПУ сам изготовит всё по этим чертежам, с минимальным участием человека.
Могу предположить, что вы считаете что скажем оптимальные значения аэродинамики изделия, нельзя просто так взять и рассчитать, поскольку там миллиарды комбинаций форм. И вот тут как раз это подойдёт. Так вот это не так.
В САПРе нет ни каких проблем рассчитать аэродинамику, а затем на основе единственного результата, ее оптимизировать.
sledo
>В САПРе нет ни каких проблем рассчитать аэродинамику, а затем на основе единственного результата, ее оптимизировать.
Это только для эффектов, которые более-менее нормально оцифрованы и внесены в его базу данных. Для Ф1 от аэродинамических труб отказались, но там шоу, которое должно окупаться, а для прочих задач новостей об отказе от них не было. Нужно на чём-то проверять, не налажало ли вычисление.
master-sheff
> У ступени есть посадочные ноги и планируются рули управления, возможно будет
> РСУ.
Там же еще двигатели системы ориентации на сжатом азоте.
Ergo Proxy
> У меня сразу ассоциация была с Kerbal Space Program
Да, очень похоже.
Тема в архиве.