avatar
Спасибо. Интересный экскурс.

Процедурная генерация – это не плохо. Некачественный или незаконченный генератор – вот настоящая проблема.

NMS на самом деле сама себя убивает своей бескрайностью. Даже при наличии общего для всех сервера, всегда будет возможность улететь туда, где тебя никто и никогда не найдет. При таком раскладе игра ничем не отличается от off-line. А если нет игроков, кооперации и противостояния, то это уже не так интересно.
Меня привлекли миры NMS, но оттолкнуло их количество. Дело не в том, что в них «нет души». Дело не в том, что их многообразие ограничено. Я просто не в состоянии исследовать сколь-нибудь значимую их часть, и это разочаровывает.

Процедурная генерация – однозначно да.
Бесконечные или почти бесконечные миры – точно нет.
Мир без рестартов — я за такой мир.
Создание временных зон с чем-то нужным и интересным — альтернатива рестартам.
Старение, запустение и исчезновение построек игрока при его отсутствии — тоже альтернатива рестартам.

Недавно в рамках своего проекта сделал генератор спиралевидных галактик по сиду. Это не совсем процедурная генерация, потому что потом эта вселенная записалась в SQL, т.к. она не слишком велика. Сначала я хотел ее генерировать «на лету» и не писать в базу, но тогда пришлось бы отдать алгоритм и seed клиенту, что создаёт возможность получения полной копии. Нельзя давать клиенту то, что ему знать не положено. Генерация на стороне сервера – это решение проблемы, но тут уже приходится выбирать что будет менее затратно – генерировать каждый раз или сохранить единожды. Я применяю достаточно простой алгоритм, использующий модификацию нормального распределения в качестве простого переключателя «да-нет» вместе с генератором чисел. В нейронных сетях нечто подобное делается на функции активации. Если кому интересно могу дать ссылку на Git с простейшим тестовым примером на javascript. Но, когда я занялся генерацией размера и светимости звезд, количества и размера планет, то пришел к тому, что продумывать придется все и вся, чтобы потом не получить совершенно иной мир. Так или иначе я разбил генерацию на модули. Изменения каждого из них влияет на все зависимые. Так наличие или отсутствие звезды по координатам определяется сначала в зависимости от удалённости от центра галактики, а потом уже от удаленности от ближайшей спирали. Для контрольного числа используются относительные координаты звезды. Затем определяется светимость звезды по алгоритму близкому к нормальному распределению звезд главной последовательности. На базе светимости из предыдущих данных определяется размер. Из размера и предыдущих данных количество планет и т.д.
Все это чертовски интересно, но терпит ошибок и переделок.
avatar
Маячок конечно же не поставил?
Упрется где-нибудь в стену или разобьется.
На самом деле, найти ее, думаю, можно. Не совсем игровыми способами. Через панель админки.
avatar
Начиная от полностью зашитых в броню кораблей (включая движки)
Думал об этом. Да, если выдержать расстояние от сопла, то, похоже, что можно вообще закрыть двигатели. Но как-то это… совсем неправильно. Хотя разработчикам ничего не стоило кидать трейс от движка (скажем, на километр), проверяя есть где-то там вдали эта же конструкция или нет. Если есть, то просто тягу не давать. Такая операция даже каждый цикл не очень затратна. А можно выполнять значительно реже. Скажем, при старте и потом рендомно с интервалом несколько секунд.
avatar
Интерьером пока не занимался.
avatar
Это я еще роторы не использовал! Была мысль размещать двигатели под углом, чтобы уменьшить их количество. Про поворотные пока молчу. Это нужно уже кодить, что много времени поначалу займет, пока разберешься.
avatar
Я пока нигде не застревал, но пару раз видел насквозь с определенного угла.
avatar
Посмотрел устройство двигателя. Нужно провести пару экспериментов. Если искусственную массу можно регулировать, то можно обойти правило установки в центр масс… Попробую… Кораблик мой будет большой и очень тяжелый. Рассмотрю возможность установки такого чудо-двигателя.
avatar
С интересом слежу за развитием событий!
avatar
Сначала сделаю ионные движители. Потом подумаю о гравитационных. Пока вообще не изучал этот вопрос. Если подскажите где прочитать, буду признателен.
avatar
Нуу… Играть все же интереснее. Многое остается за кадром.
Спасибо.
avatar
Спасибо. Добро пожаловать в новый мир.
avatar
Системы реального размера получаются не слишком привлекательными с точки зрения геймплея. Посмотрите Space Engine. Там масштабы реальны. Сложно что-то найти. Так что солнце меня не сильно смутило. Хотелось бы только не попадать постоянно в тень Земли.

Про гравитационный читал, что используется баг игры. Поэтому пока его не рассматриваю в виде движителя. Хотя, если этот баг целенаправленно не убирают… может он уже «узаконен».
avatar
Без комплекта для выживания, наверно, никак не начать. Может в пролетающих мимо кораблях можно найти?
avatar
Нет. В прошлый раз, около года назад, играл только в NMS. Теперь у меня новая сессия в инженеров :)
avatar
Да… Следующая статья выйдет теперь нескоро. 2 дня бороздил все вокруг своей стройплощадки. Нашел огромный астероид полностью изо льда. Нашел огромное месторождение урана. Но платина для движков так и не попадалась…
Когда я увидел ее — радости не было предела! Теперь осталось только все произвести и построить. Не буду пока раскрывать секретов, но получается что-то очень интересное.
avatar
Согласен. В те года высыкие моральный принципы стоили жизни. Поэтому были не очень широко распространены.
avatar
Спасибо. Да, именно это я и мел ввиду! :)
avatar
Да… глава у них не слишком отягощен моралью. Но таким выживать легче.
avatar
С почином!
Счастливого пути и прекрасных открытий.
avatar
Спасибо за совет. Я уже кажется понял свою ошибку. Я объединял ВСЕ двигатели для управления тягой, думая, что это повлияет на реакцию обычного управления. Но вышло так, что обычное управление отключилось, т.к. не осталось двигателей для контроля, а равномерная тяга во все стороны (у меня равное количество двигателей по 6 векторам тяги), привела к падению корабля за счет гравитации. Я все вернул как было и продолжил взлет.

Нужно было выделить в группу двигатели только одного направления. Тогда не пришлось бы играть импульсами. Полезность импульсов или регулирования тяги только в экономии топлива.

Я еще не проверял взлет с управляемой тягой. Попробую при следующем взлете.