Базы на планетах
Сделал некоторые изменения в коде, теперь можно создать базу на планете как статичный «корабль».
Добавлены новые типы небесных объектов - "Object", "Spacecraft", "Structure", "Artifact", используемый для описания статического корабля/здания с помощью фиктивной «планеты» в каталоге планет. Вы должны описывать свой объект как «спутник» определенной планеты, например:
{
ParentBody "Mars"
TidalLocked true // up vector automatically derived from FixedPos coordinates
RotationOffset 96 // free parameter - orientation azimuth
FixedPosPolar (99.512224 -6.943654 3399.9) // longitude, latitude and distance from the parent planet center
}
Нужно указать долготу, широту и расстояние от центра родительской планеты в FixedPosPolar, а затем настроить его более точно в редакторе корабля/планеты (я добавил режим «бесконечного слайдера», чтобы облегчить редактирование), затем сохранить скрипт (через экспорт). Если указано значение TidalLocked true, SE автоматически вычисляет ориентацию объекта, чтобы сделать его горизонтальным на поверхности планеты (RotationOffset - свободный параметр, используемый для настройки азимута ориентации).
Может быть использована любая sss модель корабля, для этого примера я создал «марсианскую базу» в онлайн редакторе кораблей (капсульные модули были повернуты на 90° во встроенном редакторе кораблей SE). Вы должны указать путь к скрипту sss модели в параметре Model. Сам sss-скрипт - обычный, я добавил только новые классы кораблей: "Building", "Base", "City":
Class "Base"
Pack "SpaceEngine"
Faction "SHW Habitat Inc."
Length 404.63666
Offset (0 0 -10)
Quat (0.5 -0.5 -0.5 0.5)
Mass 7.5946592e+008
Albedo 0.3
Exposure 2
Color (1 1 1)
MainEngines 0
RetroEngines 0
HoverEngines 0
CorrEngines 0
TurnEngines 0.002
WarpBoostLog 0
Warpdrive false
Aerodynamics false
Module "fuel_tank1" { "Modules/fuel_tank.cfg" (-1 0 0 0 0 0 -1 0 0 -1 0 0 0 0 0 1) }
Module "propellent_tank1" { "Modules/propellent_tank.cfg" (-1 0 0 0 0 1 0 0 0 0 -1 0 0 90 0 1) }
.........
Космическая станция может быть создана аналогичным образом, вам просто нужно указать другой тип/класс и описать нормальную орбиту вокруг планеты вместо FixedPosPolar. Статические космические станции могут использоваться для стыковки с вашим кораблем. Это работает даже для зданий/баз, хотя и не имеет смысла. В будущем стыковочные порты в базах могут быть заменены на посадочные площадки с различным режимом подсветки.
Пришло время добавить в редактор кораблей новые модули, которые будут использоваться для наземных баз...
Далее по плану - добавить возможность создания статических кораблей из меню игры, и сделать удобный инструмент для размещения базы на поверхности планеты. Но это скорее всего уже для следующей версии SE.
Есть также проблема визуального плана. Базы на планете выглядят так, как будто это игра из 90-х. В SE нет хорошей модели освещения кораблей, нет теней, локальных источников света, глобального освещения, прозрачности, отражений и т.д. В этой области требуется очень большая работа. И, конечно же, необходим улучшенный уровень детализации планет, особенно в Солнечной системе. Именно поэтому добавление наземных баз и колёсной техники в игру выглядит несколько преждевременным.