Система
📊
Система

💢 Оглавление

⚡ Обзор

💢 Ванильные примеры

  • DATA\UNIVERSE\SYSTEMS\BR01\br01.ini
  • DATA\UNIVERSE\SYSTEMS\LI01\li01.ini
  • DATA\UNIVERSE\SYSTEMS\KU03\ku03.ini

💥 Синтаксис

Блоки, отличные от [Light], [Object] и [Zone], всегда должны вызываться в верхней части файла в указанном ниже порядке.

💨 SystemInfo (Информация о системе)

[SystemInfo]
space_color = INT, INT, INT
local_faction = STRING
rpop_solar_detection = BOOL
space_farclip = FLOAT
Параметр Информация
space_color Задает цвет системного фона, отображаемого за любыми определенными звездными сферами. (Целые числа — красный (red), зеленый (green) и синий (blue) соответственно.)
local_faction Вызывает фракцию, определенную в faction_prop. Присутствует в каждом системном файле, но не используется.
rpop_solar_detection Позволяет NPC появляться внутри ограничивающей рамки очень больших моделей, таких как сфера Дайсона, если установлено значение True.
space_farclip Минимальное значение — 1000. Переопределяет диапазоны уровня детализации (LOD) в системе. Используется для принудительного отображения эффектов эля, таких как Omega-41, при значениях выше 17k. При значениях выше 150k возникают графические сбои на планетах.

🔥 Archetype (Архетип)

Похоже, эти записи используются для сохранения определённых объектов предварительно загруженными и хранящимися в памяти. Vanilla Freelancer использует эти записи исключительно для объектов, связанных с сюжетом, в системных файлах.

[Archetype]
ship = STRING ;необязательный
solar = STRING ;необязательный
simple = STRING ;необязательный
equipment = STRING ;необязательный
snd = STRING ;необязательный
voice = STRING, STRING ;необязательный
Параметр Информация
ship Имя [Ship] для предварительной загрузки. Может быть задано несколько раз. Может быть не задано.
solar Имя [Solar] для предварительной загрузки. Может быть определено несколько раз. Может быть не задано.
simple Имя [Simple] для предварительной загрузки. Может быть определено несколько раз. Может быть не задано.
equipment Имя [Equipment] для предварительной загрузки. Может быть задано несколько раз. Считывается ли это игрой (похоже, не отображается в Freelancer.exe среди других)? Может быть не задано.
snd Имя [Sound] для предварительной загрузки. Может быть определено несколько раз. Может быть не задано.
voice Первая строка — это [Voice], а вторая — связанный с ней [Sound] для предварительной загрузки. Может быть определено несколько раз. Считывается ли это игрой (в Freelancer.exe, похоже, не отображается)? Может быть не задано.

💢 EncounterParameters

[EncounterParameters]
nickname = STRING
filename = PATH
Параметр Информация
nickname Как упоминается приведенный ниже INI-файл в текущем системном файле.
filename Путь к файлу Столкновений будет определен здесь.

💢 TexturePanels

[TexturePanels]
file = PATH
Параметр Информация
file Ссылается на файл Форм эффектов, используемый в этой системе.

📎 Music

[Music]
space = STRING
danger = STRING
battle = STRING
Параметр Информация
space Ссылается на звук, который будет воспроизводиться циклически, когда игра находится в состоянии «ожидания» (idle). Это значение будет переопределено музыкой, заданной в отдельных зонах.
danger Ссылается на звук, который будет воспроизводиться циклически, когда игра находится в состоянии «опасности» (danger).
battle Ссылается на звук, который будет воспроизводиться циклически, когда игра находится в состоянии «боя» (combat).

📌 Dust

[Dust]
spacedust = Dust
Параметр Информация
spacedust Ссылается на эффект пыли, которая будет использоваться в пространстве вокруг игрока. Это значение будет переопределено пылью, определенной в отдельных зонах.

📌 Nebula

[Nebula]
file = PATH
zone = STRING
Параметр Информация
file Путь до файла Туманности
zone Зона в этой системе, которая будет использовать информацию из вышеуказанного файла.

💢 Asteroids

[Asteroids]
file = PATH
zone = STRING
Параметр Информация
file Путь до файла Астероидные поля
zone Зона в этой системе, которая будет использовать информацию из вышеуказанного файла.

📎 Ambient

[Ambient]
color = INT, INT, INT
Параметр Информация
color Определяет цвет фона системы, когда не определены звездные сферы.

🔭 Background

[Background]
basic_stars = PATH
complex_stars = PATH
nebulae = PATH
Параметр Информация
basic_stars Определяет базовый центр звездной сферы, используемый для системы.
complex_stars Определяет комплексный центральный момент звездной сферы, используемый для системы. Он визуализируется поверх центральнго момента basic_stars.
nebulae Определяет звёздную сферу туманностей, используемую для системы. Она отображается за базовыми звёздами - basic stars.

💨 LightSource

[LightSource]
nickname = STRING
pos = FLOAT, FLOAT, FLOAT
rotate = FLOAT, FLOAT, FLOAT
color = INT, INT, INT
range = INT
type = STRING
direction = FLOAT, FLOAT, FLOAT
atten_curve = DYNAMIC_DIRECTION
attenuation = FLOAT, FLOAT, FLOAT
color_curve = STRING, FLOAT
Параметр Информация
nickname Уникальное имя источника света в системном INI-файле.
pos Координаты X, Y и Z света в пространстве.
rotate Вращение объекта по осям X, Y и Z. Имеет значение только при использовании направленных источников света.
color Цвет света RGB.
range Дальность света.
type Определяет тип используемого источника света. Может быть ТОЧЕЧНЫМ(POINT) или НАПРАВЛЕННЫМ(DIRECTIONAL).
direction Для источников света типа «НАПРАВЛЕННЫЙ»(DIRECTIONAL) это значение определяет направление.
atten_curve Ссылается на кривую затухания, которая используется для изменения интенсивности света в зависимости от расстояния до источника света.
attenuation Как быстро угасает свет по мере удаления от его источника.
color_curve По-видимому, определяет некоторые свойства анимации источника света. Строковое значение ссылается на кривую из файла Интерактивный граф.

🔭 Object

[Object]
nickname = STRING
ids_name = INT ;необязательный
ids_info = INT ;необязательный
pos = FLOAT, FLOAT, FLOAT
rotate = FLOAT, FLOAT, FLOAT ;необязательный
ambient_color = INT, INT, INT ;необязательный
archetype = STRING
star = STRING ;необязательный
spin = FLOAT, FLOAT, FLOAT ;необязательный
msg_id_prefix = STRING ;необязательный
jump_effect = STRING ;необязательный
atmosphere_range = INT ;необязательный
prev_ring = STRING ;необязательный
next_ring = STRING ;необязательный
ring = STRING, PATH ;необязательный
base = STRING ;необязательный
dock_with = STRING ;необязательный
ambient = INT, INT, INT ;необязательный
visit = INT ;необязательный
reputation = STRING ;необязательный
tradelane_space_name = STRING ;необязательный
behavior = STRING ;необязательный
voice = STRING ;необязательный
space_costume = STRING, STRING ;необязательный
faction = STRING ;необязательный
difficulty_level = INT ;необязательный
goto = STRING, STRING, STRING ;необязательный
loadout = STRING ;необязательный
pilot = STRING ;необязательный
parent = STRING ;необязательный
Параметр Информация
nickname Как этот объект упоминается в других местах файла. Если это значение не уникально в системном файле, при нацеливании возникнут странности.
ids_name Строка имени этого объекта.
ids_info Строка для инфокарты карты/выбора этого объекта
pos Координаты X, Y и Z объекта в пространстве соответственно.
rotate Вращение объекта в пространстве по осям X, Y и Z соответственно. Диапазон — от -360 до 360.
ambient_color Возможно, не используется? Может определить, как системное освещение влияет на объект. Требуется тестирование.
archetype Архетип объекта, определенный в файле типа Солнечный.
star Если объект является звездой, архетип объекта, как определено в файле о Звёздах.
spin Скорость вращения объекта вокруг своей оси. Vanilla Freelancer отменяет вращение, если скорость слишком низкая — EXE-хак решает эту проблему.
msg_id_prefix Ссылается на блок [Sound] из файла Голосов для использования в качестве имени базы при приветствии.
jump_effect Ссылается на блок [JumpGateEffect] из файла Эффект прыжка. Это актуально только для объектов, представляющих собой прыжковые ворота или прыжковую дыру.
atmosphere_range Радиус пузыря «эффекта выгорания атмосферы» (atmosphere burn effect) вокруг объекта. Обычно применяется к планетам и звёздам.
burn_color Задает цвет эффекта выгорания атмосферы, если он присутствует.
prev_ring Если это торговая линия, ссылается на прозвище предыдущего объекта торговой линии в последовательности.
next_ring Если это торговая линия, ссылается на прозвище следующего объекта торговой линии в последовательности.
ring Ссылается на [Zone], которая будет использоваться для отображаемого кольца, и на файл колец, который будет использоваться.
base Выбирает базу из вселенной, к которой привязан этот объект, и отображает информацию об этой базе в пространстве для игрока при выборе объекта.
dock_with Выбирает базу из вселенной, на которую игрок/NPC попадает после пристыковки к этому объекту. Свойство base не требуется. Нескольким объектам в системе можно назначить dock_with одну и ту же базу. Игроки всегда будут отстыковываться от первого объекта, указанного в системе, если только все его доки не заняты (например, точки швартовки, используемые NPC). Затем используется следующий объект с тем же dock_with.
ambient Возможно, не используется? Может определить, как системное освещение влияет на объект. Требуется тестирование.
visit Управляет отображением объекта на навигационной карте:
0: Значение по умолчанию. Не посещен.
1: Обнаружен (только базовая информация о базе; без информационного текста для зон)
2: Неясно (кажется, используется только в knowledgemap.ini).
4: Зона добычи; Список товаров базы.
8: Разграбленный обломок; Информация о зоне; Список оборудования базы.
16: Обломок; Список кораблей базы.
32: Зона.
64: Фракция.
128: Скрыт, никогда не отображается на навигационной карте.

Для комбинаций необходимо сложить значения. Например, если вы хотите показывать новым игрокам расположение прибыльной зоны добычи по умолчанию, установите параметр посещения зон на 5 (1 для посещенной + 4 для зоны добычи)
reputation Определяет фракцию, к которой принадлежит объект. Берёт псевдоним из файла Атрибуты фракций.
tradelane_space_name Ссылается на текстовую строку, которая показывает начало и конец торгового пути.
behavior Это всегда «НИЧЕГО» (NOTHING). Требуется для того, чтобы солнечные объекты в Солнечный использовали своё оружие.
voice Выбирает блок [Voice] из файла Голосов для использования при управлении трафиком.
space_costume Выбирает костюм регулировщика дорожного движения. Первое значение — голова, второе — тело, а третье (опционально) — головной убор, соответственно, из файла Части тела.
faction Возможно, не использовался.
difficulty_level Это клавиша, используемая для установки уровня объекта, и ее можно не использовать.
goto Только для пристыковываемых объектов: первая строка — это система, в которую вы перейдете после успешной стыковки, вторая строка — это объект в системе назначения, в который вы прибудете, а последняя строка выбирает эффект прыжка из файла Ворота туннеля.
loadout Определяет Разгрузку для используемого объекта.
pilot Определяет пилота из файла Пилоты NPC для использования.
parent Устанавливает родительский элемент объекта. При попытке выбрать объект будет выбран родительский элемент.

⚡ Zone

Многие свойства зон переопределяют свойства других зон. Порядок их определения в системном файле важен для определения приоритетной зоны.

[Zone]
nickname = STRING
ids_name = INT ;необязательный
ids_info = INT ;необязательный
pos = FLOAT, FLOAT, FLOAT
rotate = FLOAT, FLOAT, FLOAT ;необязательный
shape = STRING
size = INT, INT, INT
property_flags = INT ;необязательный
property_fog_color = INT, INT, INT ;необязательный
damage = INT ;необязательный
visit = FLOAT ;необязательный
spacedust = STRING ;необязательный
spacedust_maxparticles = INT ;необязательный
interference = FLOAT ;необязательный
drag_modifier = FLOAT ;необязательный
edge_fraction = FLOAT ;необязательный
attack_ids = STRING, ... ;необязательный
mission_type = STRING, STRING ;необязательный
comment = STRING ;необязательный
lane_id = STRING ;необязательный
tradelane_attack = FLOAT ;необязательный
tradelane_down = INT ;необязательный
sort = FLOAT ;необязательный
vignette_type = STRING ;необязательный
toughness = INT ;необязательный
longevity = INT ;необязательный
density = INT ;необязательный
repop_time = FLOAT ;необязательный
max_battle_size = INT ;необязательный
pop_type = STRING ;необязательный
relief_time = FLOAT ;необязательный
population_additive = BOOL ;необязательный
path_label = STRING, INT ;необязательный
usage = STRING ;необязательный
mission_eligible = BOOL ;необязательный
density_restriction = INT, STRING ;повторяемый
encounter = STRING, INT, FLOAT ;повторяемый
faction = STRING, FLOAT ;повторяемый
music = STRING ;необязательный
Параметр Информация
nickname Прозвище зоны. Обычно на него ссылаются объявления встреч, файлы полей Астероидные поля и Туманности
ids_name Строковое имя поля, отображаемое в игре.
ids_info Строковое описание поля, отображаемое в игре.
pos Положение поля по осям X, Y и Z. Поля позиционируются относительно своего абсолютного центра. Это следует учитывать при позиционировании прямоугольных и эллипсоидальных полей.
rotate Вращение поля по осям X, Y и Z.
shape Базовая форма поля. Возможные варианты: «СФЕРА»(SPHERE), «КОРОБКА»(BOX), «ЭЛЛИПСОИД»(ELLIPSOID), «ЦИЛИНДР»(CYLINDER) и «КОЛЬЦО»(RING).
size Размер поля. Для типа SPHERE требуется только одно значение типа INT, определяющее радиус. Для типа CYLINDER требуются только два значения типа INTS: первое значение определяет радиус, второе — высоту. Для типа ELLIPSOID оно определяет радиус по каждой оси. Для типа BOX оно определяет общую длину по каждой оси. Для типа RING первое значение определяет внешний радиус, второе — внутренний радиус, а третье — высоту.
property_flags Устанавливает отображение навигационной карты зоны. Ниже приведены параметры, которые можно комбинировать, добавляя их вместе:

1: Низкая плотность объектов
2: Средняя плотность объектов
4: Высокая плотность объектов
8: Низкая плотность опасности
16: Средняя плотность опасности
32: Высокая плотность опасности
64: Камень
128: Обломки
256: Лед
512: Лава
1024: Кочевник
2048: Кристалл
4096: Шахты
8192: Бесплодные земли
16384: Газовые карманы
32768: Туманность/Облако (включает property_fog_color)
65536: Исключение
131072: Исключение.
property_fog_color Sets the RGB value of the zone nebula and cloud on the navamp.
damage Устанавливает количество урона, наносимого кораблям и оборудованию в зоне в секунду. При превышении определённого порога срабатывает предупреждение о радиационном уровне.
visit Устанавливает битовую маску параметра посещения. Ниже приведены параметры, которые можно комбинировать путем сложения:

0: Значение по умолчанию, не посещено
1: Посещено. Будет отображаться в навигационной карте независимо от того, посещал ли игрок систему.
2: Неизвестно, похоже, не используется
4: Зона, пригодная для добычи
8: Активно посещается
16: Обломки
32: Зона
64: Фракция
128: Скрыто, никогда не отображается в навигационной карте.

Значения посещений определяются для каждого сохранения! Если вы настраиваете их и хотите увидеть изменения, вам нужно будет каждый раз создавать новое сохранение/персонажа.
spacedust The nickname of the entry from an effects file used for spacedust in this zone. Overrides the system-wide value.
spacedust_maxparticles Устанавливает максимальное количество частиц, выделяемых для spacedust в этой зоне.
interference Модификатор дальности действия сенсора с диапазоном от 0 до 1. Например, если установить его равным 0,5, текущий радиус действия сенсора вашего корабля сократится вдвое. Вызывает предупреждение об эффективности сенсора. Это также влияет на NPC.
drag_modifier Делит вашу скорость в зоне на указанное значение. Значение 2 уменьшит вашу скорость вдвое. По умолчанию этот ключ привязан к помехам, но его можно исправить с помощью смещения от Преодоления 101 предела.
edge_fraction Используется зонами туманности. Определяет, насколько быстро туманность рассеивается в зоне.
attack_ids Возможно, не используется. Может использоваться в зонах с большим населением для определения торговых путей, которые следует атаковать. Использует значения lane_id, разделённые запятыми.
mission_type Используется в зонах виньетирования миссий. Допустимые варианты: законные(lawful) и незаконные (unlawful).
lane_id Возможно, не используется. Используется зонами торговых линий и обозначается attack_id.
tradelane_attack Используется маршрутами патрулирования. Может определять процент времени, в течение которого патруль занимает торговый коридор. Для перехватов, по-видимому, существует установленный кулдаун в несколько минут, и перехват будет происходить вблизи точки пересечения зоны патрулирования с зоной торгового коридора, если это значение задано. Похоже, работает, даже если не заданы tradelane_down и attack_ids.
tradelane_down Возможно, не используется. Необходимо провести тестирование, чтобы убедиться, что это работает совместно с lane_id и attack_ids.
sort Не используется. Сортировка выполняется по порядку записей [Zone] в файле.
vignette_type Используется для зон виньетирования миссии. Варианты: «поле»(field), «исключение»(exclusion) и «открыто»(open).
toughness Не используется. Стойкость NPC определяется только параметром encounter.
longevity Неиспользованный.
density Это определяет мягкое ограничение на количество кораблей, которые могут появиться в зоне. Если количество кораблей меньше плотности, может появиться ещё одна встреча, даже если она может превысить плотность.
repop_time Если текущее количество кораблей в зоне меньше значения density, игра попытается заново заселить зону с вероятностью, вычисляемой по формуле (density - ships) / repop_time, каждые 3 секунды, см. NPC Смещения.
max_battle_size Максимальное количество кораблей в зоне, когда игрок (или NPC тоже?) находится в бою.
pop_type Этот ключ, по-видимому, остался после разработки и не используется. Наблюдаемые значения: lootable_field, nonlootable_ast_field, major_tradelane, jumpgate, base_cluster_law, single_base_law, extend_law, wormhole, trade_path, attack_patrol, lane_patrol и Background. Этот ключ также иногда называют значением фракции.
relief_time Время, в течение которого корабли не будут возрождаться после завершения битвы или после того, как в зоне не будет кораблей. (Необходимо более тщательно протестировать в этих условиях.)
population_additive При значении false: Любые ранее определённые зоны переопределяют спавн этой (например, для появления NPC в окружающей среде). Для всех последующих зон он переопределяет их значения плотности (например, для зон солнечной смерти).
path_label Определяет, к какому маршруту патрулирования принадлежит данная зона, а также на каком участке маршрута находится текущая зона.
usage Используется для маршрутов патрулирования. Допустимые значения: trade и patrol.
mission_eligible Определяет, разрешено ли проводить миссии в этой зоне.
density_restriction Ограничивает количество экземпляров встреч заданного типа указанным числом. Этот параметр учитывает поле make_class в блоке встреч и часто используется некорректно в оригинальной версии.
encounter Ссылается на встречу, как определено в блоке [Encounter] в верхней части системного файла. Первое значение INT определяет сложность участвующих пилотов. Второе значение FLOAT представляет собой процентную вероятность того, что эта встреча произойдет. Суммарное значение этого значения в зонах никогда не должно превышать 1.
faction Должен следовать непосредственно после encounter. Он определяет, какая фракция будет создана для этого столкновения. Первая строка ссылается на фракцию, как определено в Атрибутах фракций. Второе значение FLOAT представляет собой процентную вероятность того, что в этом столкновении будет выбрана эта фракция. Суммарное значение этого значения в зонах никогда не должно превышать 1.
music Переопределяет стандартную космическую музыку в зоне. Не переопределяет музыку опасности или боя.