На этой странице обсуждается обширная коллекция настроек конфигурации, изменяющих аспекты поведения и игрового процесса, серверов
ARK: Survival Ascended и
ARK: Survival Evolved, а также одиночных/неспециализированных сессий.
Выделенные серверы запускаются через командную строку с использованием следующего синтаксиса для указания параметров времени выполнения в виде одной строки:
Опции с красным фоном устарели и могут больше не работать. В большинстве случаев их присутствие при использовании внешнего инструмента (например, ASM) безвредно, если не указано иное. Также указаны недокументированные параметры: пожалуйста, обратите внимание, что их поведение было получено в результате обратного проектирования исполняемых битов ShooterGameServer. Такие параметры официально не поддерживаются Wildcard и могут привести к неопределенному поведению.
Наконец, хотя это и не рекомендуется для простоты использования и удобства чтения командной строки, дополнительные параметры могут быть установлены с использованием синтаксиса (?
) из GameUserSettings.ini (его расположение см. файлах конфигурации).
Большинство опций также можно указать в файлах конфигурации игры. Расположение файлов конфигурации зависит от платформы:
Одиночный игрок и другие пользователи могут получить доступ к своим игровым файлам через программы запуска Steam и Epic:
Для всех поддерживаемых платформ параметры перечислены по одному в строке с использованием одного и того же базового синтаксиса:
Все параметры в файле конфигурации требуют значения. Если опция не указана в файле конфигурации, автоматически используется ее значение по умолчанию.
Благодаря этим параметрам в файле конфигурации сервер можно запустить с помощью гораздо более короткой командной строки. Для Linux:
ASA
|
ASE
|
Переменная
|
Описание
|
С момента патча
|
|
|
ModIDS
|
Тип значения: ModID Указывает один ID модов/карт/TC Steam Workshop для загрузки/установки/обновления на сервере. Для обработки нескольких ID необходимо добавить несколько строк с одинаковым синтаксисом, каждая из которых имеет определенный идентификатор мастерской. Требуется -automanagedmods в командной строке. Пример:
[ModInstaller]
ModIDS=123456789
ModIDS=987654321
ModIDS=147852369
Примечание: для активации модов необходимо использовать параметры ActiveMods в разделе [ServerSettings] файла GameUserSettings.ini или в командной строке. | 244.3 |
Связанные с появлением существ
ConfigAddNPCSpawnEntriesContainer
ConfigAddNPCSpawnEntriesContainer=(
[NPCSpawnEntriesContainerClassString="<Класс Спавна>"],
[NPCSpawnEntries=(([AnEntryName="<spawn_name>"],
[EntryWeight=<factor>],
[NPCsToSpawnStrings=("<ID объекта>")]))],
[NPCSpawnLimits=(([NPCClassString="<ID объекта>"],
[MaxPercentageOfDesiredNumToAllow=<percentage>]))])
Аргументы:
Класс Спавна |
string |
Имя класса контейнера группы создания, см. Записи о Спавне
|
spawn_name |
string |
Имя спавна
|
factor |
float |
Весовой коэффициент для этого спавна
|
ID объекта |
string |
ID сущности добавляемого существа, см. ID Существ
|
percentage |
float |
Устанавливает максимальное количество разрешенных существ для этого экземпляра.
|
Позволяет указанным существам появляться в определенных местах непосредственно через генераторы, ограниченные указанным количеством.
Примеры:
Добавление Гиганотозавра в зону спавна на пляже:
ConfigAddNPCSpawnEntriesContainer=(
NPCSpawnEntriesContainerClassString="DinoSpawnEntriesBeach_C",
NPCSpawnEntries=((AnEntryName="GigaSpawner", EntryWeight=1.0, NPCsToSpawnStrings=("Gigant_Character_BP_C"))),
NPCSpawnLimits=((NPCClassString="Gigant_Character_BP_C", MaxPercentageOfDesiredNumToAllow=0.01))
)
Добавление стаи из двух Додо и Тираннозавров на Остров травоядных:
ConfigAddNPCSpawnEntriesContainer=(
NPCSpawnEntriesContainerClassString="DinoSpawnEntriesDamiensAtoll_C",
NPCSpawnEntries=(
(AnEntryName="Dodos (2)", EntryWeight=1.0, NPCsToSpawnStrings=("Dodo_Character_BP_C","Dodo_Character_BP_C")),
(AnEntryName="Rex (1)", EntryWeight=0.5, NPCsToSpawnStrings=("Rex_Character_BP_C"))
),
NPCSpawnLimits=(
(NPCClassString="Dodo_Character_BP_C", MaxPercentageOfDesiredNumToAllow=0.5),
(NPCClassString="Rex_Character_BP_C", MaxPercentageOfDesiredNumToAllow=0.01)
)
)
Приведенные здесь примеры разбиты на несколько строк из соображений экономии места. В файле конфигурации каждая запись должна располагаться целиком в одной строке и без пробелов.
Более сложные аргументы рассматриваются в Расширенное использование *NPCSpawnEntriesContainer.
ConfigSubtractNPCSpawnEntriesContainer
ConfigSubtractNPCSpawnEntriesContainer=(
[NPCSpawnEntriesContainerClassString="<Класс Спавна>"],
[NPCSpawnEntries=((NPCsToSpawnStrings=("<ID объекта>")))],
[NPCSpawnLimits=((NPCClassString="<ID объекта>"))])
Аргументы:
Полностью удаляет указанных существ из указанных мест. Можно указать более одного существа.
Вы не можете ссылаться на одну и ту же запись создания в нескольких строках, чтобы все они вступили в силу, даже если идентификатор объекта или класс создания, на которые ссылаются, в каждой строке различны. Если вы удаляете несколько существ из одной и той же записи появления, используйте для этого одну строку.
Пример: удаление Трицератопса и Птеранодоны с пляжа.
ConfigSubtractNPCSpawnEntriesContainer=(
NPCSpawnEntriesContainerClassString="DinoSpawnEntriesBeach_C",
NPCSpawnEntries=(
(NPCsToSpawnStrings=("Trike_Character_BP_C")),
(NPCsToSpawnStrings=("Ptero_Character_BP_C"))
),
NPCSpawnLimits=(
(NPCClassString="Trike_Character_BP_C"),
(NPCClassString="Ptero_Character_BP_C")
)
)
Приведенный пример разделен на несколько строк из соображений экономии места. В файле конфигурации каждая запись должна располагаться целиком в одной строке и без пробелов.
Более сложные аргументы рассматриваются в Расширенное использование *NPCSpawnEntriesContainer.
ConfigOverrideNPCSpawnEntriesContainer
ConfigOverrideNPCSpawnEntriesContainer=(
[NPCSpawnEntriesContainerClassString="<Класс Спавна>"],
[NPCSpawnEntries=(([AnEntryName="<spawn_name>"],
[EntryWeight=<factor>],
[NPCsToSpawnStrings=("<ID объекта>")]))],
[NPCSpawnLimits=(([NPCClassString="<ID объекта>"],
[MaxPercentageOfDesiredNumToAllow=<percentage>]))])
Аргументы:
Класс Спавна |
string |
Строку класса создания, см. Записи о Спавне
|
spawn_name |
string |
Имя Спавна
|
factor |
float |
Весовой коэффициент для этого спавна
|
ID объекта |
string |
ID сущности существа для переопределения других порождений, см. ID Существ
|
percentage |
float |
Устанавливает максимальное количество разрешенных существ для этого экземпляра.
|
Заменяет всех существ в указанной области указанными существами, позволяя выделить области для появления определенных существ. Не мешает странникам войти в указанное место.
Пример: в Горном регионе появляются только Тираннозавр и Карнотавр.
ConfigOverrideNPCSpawnEntriesContainer=(
NPCSpawnEntriesContainerClassString="DinoSpawnEntriesMountain_C",
NPCSpawnEntries=(
(AnEntryName="CarnoSpawner", EntryWeight=1.0, NPCsToSpawnStrings=("Carno_Character_BP_C")),
(AnEntryName="RexSpawner", EntryWeight=1.0, NPCsToSpawnStrings=("Rex_Character_BP_C"))
),
NPCSpawnLimits=(
(NPCClassString="Carno_Character_BP_C", MaxPercentageOfDesiredNumToAllow=0.5),
(NPCClassString="Rex_Character_BP_C", MaxPercentageOfDesiredNumToAllow=0.5)
)
)
Приведенный здесь пример разделен на несколько строк из соображений экономии места. В файле конфигурации каждая запись должна располагаться целиком в одной строке и без пробелов.
Более сложные аргументы рассматриваются в Расширенное использование *NPCSpawnEntriesContainer.
Advanced *NPCSpawnEntriesContainer usage
Следующие аргументы можно использовать для параметров *NPCSpawnEntriesContainer
:
- Чтобы установить расстояние для каждой точки появления:
[NPCsSpawnOffsets=((X=<float>,Y=<float>,Z=<float>),...,(X=<float>,Y=<float>,Z=<float>))]
- где каждый X,Y,Z устанавливает расстояние в нереальных единицах от точки появления для каждой записи.
- Чтобы установить процентное изменение появления для каждой записи появления:
[NPCsToSpawnPercentageChance=(<float>,...,<float>)]
- где каждое значение устанавливает вероятность от 0 до 1,0 (100%) для входа в этот спавн.
- Чтобы установить радиус распространения от точки появления:
[ManualSpawnPointSpreadRadius=<float>]
- где значения задают расстояние в нереальных единицах от точки появления.
- Чтобы установить определенные уровни сложности для каждой точки появления:
[NPCDifficultyLevelRanges=(
([EnemyLevelsMin=(<float>,...,<float>)],
[EnemyLevelsMax=(<float>,...,<float>)],
[GameDifficulties=(<float>,...,<float>)]),
...
([EnemyLevelsMin=(<float>,...,<float>)],
[EnemyLevelsMax=(<float>,...,<float>)],
[GameDifficulties=(<float>,...,<float>)]))]
- где для каждой записи появления есть группа
EnemyLevelsMin
, EnemyLevelsMax
и GameDifficulties
. Каждая из этих настроек определяет соответственно базовые уровни, максимальные уровни и сложные смещения, на которых масштабируются дикие существа. Подробности см. в разделе Уровень сложности.
- Чтобы установить минимальное и максимальное смещение места появления по высоте, что полезно для летающих и водных существ:
[RandGroupSpawnOffsetZMin=<float>],
[RandGroupSpawnOffsetZMax=<float>]
- где они устанавливают соответственно минимальное и максимальное смещения в нереальных единицах измерения.
Пример: добавить небольшие группы (от 1 до 2 образцов) Удильщик в спавн-контейнер DinoSpawnEntries_Ocean_C
, с линейным распределением уровней до DifficultyOffset=5.0
ConfigAddNPCSpawnEntriesContainer=(
NPCSpawnEntriesContainerClassString="DinoSpawnEntries_DarkWaterAngler_C",
NPCSpawnEntries=(
(AnEntryName="Anglers(1-2)",
EntryWeight=0.9,
NPCsToSpawnStrings=("Angler_Character_BP_C","Angler_Character_BP_C"),
NPCsSpawnOffsets=(
(X=0.0,Y=0.0,Z=0.0),
(X=0.0,Y=250.0,Z=0.0)
),
NPCsToSpawnPercentageChance=(1.0,0.5),
ManualSpawnPointSpreadRadius=650.0,
NPCDifficultyLevelRanges=(
(EnemyLevelsMin=(1.0,1.0,1.0,1.0,1.0,1.0),
EnemyLevelsMax=(30.0,30.0,30.0,30.0,30.0,30.0),
GameDifficulties=(0.0,1.0,2.0,3.0,4.0,5.0)),
(EnemyLevelsMin=(1.0,1.0,1.0,1.0,1.0,1.0),
EnemyLevelsMax=(30.0,30.0,30.0,30.0,30.0,30.0),
GameDifficulties=(0.0,1.0,2.0,3.0,4.0,5.0))
)
RandGroupSpawnOffsetZMin=1200.0,
RandGroupSpawnOffsetZMax=5000.0)),
NPCSpawnLimits=(
(NPCClassString="Angler_Character_BP_C",
MaxPercentageOfDesiredNumToAllow=0.35)
)
)
Приведенный здесь пример разделен на несколько строк из соображений экономии места. В файле конфигурации каждая запись должна располагаться целиком в одной строке и без пробелов.
- Ещё рассуждения об уровнях:
[NPCOverrideLevel=<integer>]
[NPCMaxLevelOffset=<float>]
[NPCMaxLevelOffset=<float>]
[NPCMinLevelMultiplier=<float>]
[NPCMaxLevelMultiplier=<float>]
[bAddLevelOffsetBeforeMultiplier=<1>]
- можно комбинировать такие аргументы аналогично
NPCDifficultyLevelRanges
, чтобы переопределить базовые уровни существ, их минимальный и максимальный уровни, а также их относительный множитель.
- В игре, где
DifficultyOffset=5.0
, чтобы на Мертвом острове появлялся только Паразауролоф 1-го уровня:
ConfigOverrideNPCSpawnEntriesContainer=(
NPCSpawnEntriesContainerClassString="DinoSpawnEntriesMonsterIsland_C",
NPCSpawnEntries=(
(AnEntryName="Parasaur lvl 1",
NPCsToSpawnStrings=("Para_Character_BP_C"),
NPCOverrideLevel=(1))
)
)
- Чтобы установить их появление на максимальном уровне, добавьте:
NPCOverrideLevel=(1),
NPCMinLevelOffset=(30.0),
NPCMaxLevelOffset=(30.0))))
- Чтобы удвоить изменение максимального уровня:
(AnEntryName="Parasaur lvl 1",
NPCMinLevelMultiplier=(1.0),
NPCMaxLevelMultiplier=(2.0))))
- Чтобы повысить их уровень на 150, измените:
NPCsToSpawnStrings=("Para_Character_BP_C"),
NPCMinLevelOffset=(30.0),
NPCMaxLevelOffset=(30.0))))
- Чтобы удвоить их максимальный уровень и установить минимальный уровень в 150, измените:
NPCsToSpawnStrings=("Para_Character_BP_C"),
NPCMinLevelOffset=(30.0),
NPCMaxLevelOffset=(30.0),
NPCMinLevelMultiplier=(1.0),
NPCMaxLevelMultiplier=(2.0))))
- Чтобы увеличить их минимальный уровень на 150, а затем удвоить его, измените:
NPCsToSpawnStrings=("Para_Character_BP_C"),
bAddLevelOffsetBeforeMultiplier=1,
NPCMinLevelOffset=(30.0),
NPCMaxLevelOffset=(30.0),
NPCMinLevelMultiplier=(1.0),
NPCMaxLevelMultiplier=(2.0))))
Приведенные здесь примеры разбиты на несколько строк из соображений экономии места. В файле конфигурации каждая запись должна располагаться целиком в одну строку и без пробелов..
DinoSpawnWeightMultipliers
DinoSpawnWeightMultipliers=(
DinoNameTag=<ярлык>
[,SpawnWeightMultiplier=<factor>]
[,OverrideSpawnLimitPercentage=<override>]
[,SpawnLimitPercentage=<limit>])
Аргументы:
tag |
string |
Тип существа для настройки, см. ID Существ (теги имен столбцов).
|
factor |
float |
Весовой коэффициент для этого типа
|
override |
booleaon |
Если True , используйте указанный SpawnLimitPercentage .
|
limit |
float |
Максимальный процент (среди всех спавнов) для этого типа
|
Настраивает скорость появления для данного типа существ (во всех точках появления существ). Типы с большим SpawnWeightMultiplier
выбираются чаще при создании новых существ, чем типы с меньшими множителями. Если указан OverrideSpawnLimitPercentage
(и True
), тип никогда не будет создаваться более чем SpawnLimitPercentage * 100
процентов времени, независимо от множителя. Например, значение SpawnLimitPercentage
, равное 0,25
, указывает, что тип будет выбран для появления не более чем в 25 % случаев. Обратите внимание, что SpawnLimitPercentage
рассчитывается для каждого региона появления (также известного как "Контейнер входа спавна"), а не для глобальной популяции спавна. Предел 0,1 означает 10% существ в любом данном регионе и *НЕ* 10% населения размером с карту.
В файле можно указать несколько записей DinoSpawnWeightMultipliers
, но значения DinoNameTag
не должны повторяться в нескольких записях.
DinoSpawnWeightMultipliers=(
DinoNameTag=Bronto,
SpawnWeightMultiplier=10.0,
OverrideSpawnLimitPercentage=True,
SpawnLimitPercentage=0.5
)
Приведенный здесь пример разделен на несколько строк из соображений экономии места. В файле конфигурации каждая запись должна располагаться целиком в одну строку и без пробелов..
NPCReplacements
NPCReplacements=(FromClassName="<classname>", ToClassName="<classname>")
Аргументы:
Это можно использовать для отключения определенных альфа-существ, замены появления определенного NPC (NPC = неигровой персонаж, т. е. существа) на появление другого NPC или полностью отключить появление любого конкретного NPC.
NPCReplacements=(FromClassName="MegaRaptor_Character_BP_C", ToClassName="Dodo_Character_BP_C")
Динамическая конфигурация:
Начиная с 319.14, замену NPC можно определить через динамическую конфигурацию. Однако синтаксис немного отличается. Вместо того, чтобы иметь несколько записей, каждая из которых определяет одну замену, это должно быть сопоставление всех из них одной записью. Например (обратите внимание на дополнительные скобки):
NPCReplacements=((FromClassName="MegaRaptor_Character_BP_C", ToClassName="Dodo_Character_BP_C"))
Любые дополнительные замены должны быть отображены внутри этого набора, разделенные запятой, например:
NPCReplacements=((FromClassName="MegaRaptor_Character_BP_C", ToClassName="Dodo_Character_BP_C"), (FromClassName="Coel_Character_BP_C", ToClassName="Piranha_Character_BP_C"))
Связанные характеристики существ
DinoClassDamageMultipliers
DinoClassDamageMultipliers=(ClassName="<string>",Multiplier=<float>)
TamedDinoClassDamageMultipliers=(ClassName="<string>",Multiplier=<float>)
Аргументы:
string = creature classname
float = multiplier, default: 1.0
|
Умножает урон, наносимый конкретными существами, через classname. Более высокие значения увеличивают наносимый урон.
Имена классов существ можно найти на странице ID Существ. В файле можно указать несколько записей DinoClassDamageMultipliers
и TamedDinoClassDamageMultipliers
, но значения classname не должны повторяться в нескольких записях.
Примеры:
DinoClassDamageMultipliers=(
ClassName="MegaRex_Character_BP_C",
Multiplier=0.1
)
TamedDinoClassDamageMultipliers=(
ClassName="Rex_Character_BP_C",
Multiplier=10.0
)
Приведенные здесь примеры разбиты на несколько строк из соображений экономии места. В файле конфигурации каждая запись должна располагаться целиком в одной строке и без пробелов.
DinoClassResistanceMultipliers
DinoClassResistanceMultipliers=(ClassName="<string>",Multiplier=<float>)
TamedDinoClassResistanceMultipliers=(ClassName="<string>",Multiplier=<float>)
Аргументы:
string = creature classname
float = multiplier, default = 1.0
|
Умножает сопротивление определенных существ через classname. Более высокие значения уменьшают получаемый урон.
Имена классов существ можно найти на странице ID Существ.
Приведенные здесь примеры разбиты на несколько строк из соображений экономии места. В файле конфигурации запись должна располагаться в одной строке. В файле можно указать несколько записей DinoClassResistanceMultipliers
и TamedDinoClassResistanceMultipliers
, но значения classname не должны повторяться в нескольких записях.
Примеры:
DinoClassResistanceMultipliers=(
ClassName="MegaRex_Character_BP_C",
Multiplier=0.1
)
TamedDinoClassResistanceMultipliers=(
ClassName="Rex_Character_BP_C",
Multiplier=10.0
)
Приведенные здесь примеры разбиты на несколько строк из соображений экономии места. В файле конфигурации каждая запись должна располагаться целиком в одной строке и без пробелов.
Связанные записи Энграмм
OverrideEngramEntries and OverrideNamedEngramEntries
OverrideEngramEntries=(EngramIndex=<index>
[,EngramHidden=<hidden>]
[,EngramPointsCost=<cost>]
[,EngramLevelRequirement=<level>]
[,RemoveEngramPreReq=<remove_prereq>])
OverrideNamedEngramEntries=(EngramClassName="<class_name>"
[,EngramHidden=<hidden>]
[,EngramPointsCost=<cost>]
[,EngramLevelRequirement=<level>]
[,RemoveEngramPreReq=<remove_prereq>])
Аргументы:
index |
integer |
Индекс Энграммы
|
class_name |
integer |
Имя класса Энграммы
|
hidden |
boolean |
Если True , энграмма скрывается на панели Энграмм игроков.
|
cost |
integer |
Очки энграммы, необходимые для изучения энграммы
|
level |
integer |
Минимальный уровень, необходимый для изучения энграммы
|
remove_prereq |
boolean |
Если True , устраняется необходимость в обязательных инграммах для изучения этой инграммы.
|
Настраивает статус и требования для изучения инграммы. Для OverrideEngramEntries всегда требуется аргумент EngramIndex
, для OverrideNamedEngramEntries всегда требуется аргумент EngramClassName
; остальные не являются обязательными, но для того, чтобы опция имела какой-либо эффект, необходимо указать хотя бы один. Эту опцию можно повторить в Game.ini один раз для каждой настраиваемой энграммы.
Индекс энграмм и название класса энграммы см. Имена классов Энграмм.
Приведенные здесь примеры разбиты на несколько строк из соображений экономии места. В файле конфигурации запись должна располагаться целиком в одну строку и без пробелов. В файле можно указать несколько записей OverrideEngramEntries
и OverrideNamedEngramEntries
, но значения EngramIndex
и EngramClassName
не должны повторяться несколько записей.
Примеры:
OverrideEngramEntries=(EngramIndex=0,EngramHidden=False)
OverrideEngramEntries=(EngramIndex=1,EngramHidden=False,EngramPointsCost=3,EngramLevelRequirement=3,RemoveEngramPreReq=True)
OverrideNamedEngramEntries=(EngramClassName="EngramEntry_Campfire_C",EngramHidden=False)
OverrideNamedEngramEntries=(EngramClassName="EngramEntry_StoneHatchet_C",EngramHidden=False,EngramPointsCost=3,EngramLevelRequirement=3, RemoveEngramPreReq=True)
EngramEntryAutoUnlocks
EngramEntryAutoUnlocks=(EngramClassName="<string>",LevelToAutoUnlock=<integer>)
string |
Имена классов Энграмм
|
integer |
Уровень, который вам нужно получить, чтобы автоматически разблокировать Энграмму
|
Автоматически разблокирует указанную энграмму при достижении указанного уровня.
В этом примере разблокируется Тек Телепорт уровня 0:
EngramEntryAutoUnlocks=(
EngramClassName="EngramEntry_TekTeleporter_C",
LevelToAutoUnlock=0
)
Приведенный здесь пример разделен на несколько строк из соображений экономии места. В файле конфигурации каждая запись должна располагаться целиком в одной строке и без пробелов.
Связанные Предметы
Каждую строку класса предмета можно найти в Dev Kit. На данный момент не меняется стоимость ремонта и снос отредактированных конструкций. Это может привести к потенциальному снижению затрат на изготовление и сделать конструкции непригодными для ремонта.
Примечание: при использовании стековых модов обращайтесь к новым ресурсам мода вместо ванильных (т. е.: PrimalItemResource_Electronics_Child_C вместо PrimalItemResource_Electronics_C).
ConfigOverrideItemCraftingCosts
Это пример того, как для изготовления топора потребуется 1 соломенная и 2 каменные стрелы.
ConfigOverrideItemCraftingCosts=(
ItemClassString="PrimalItem_WeaponStoneHatchet_C",
BaseCraftingResourceRequirements=(
(ResourceItemTypeString="PrimalItemResource_Thatch_C",
BaseResourceRequirement=1.0,
bCraftingRequireExactResourceType=False),
(ResourceItemTypeString="PrimalItemAmmo_ArrowStone_C",
BaseResourceRequirement=2.0,
bCraftingRequireExactResourceType=False)
)
)
Вот пример изготовления факела, для изготовления которого требуется 3 сырых мяса и 2 жареных мяса (потому что вы знаете, мясные факелы — лучшие факелы!)
ConfigOverrideItemCraftingCosts=(
ItemClassString="PrimalItem_WeaponTorch_C",
BaseCraftingResourceRequirements=(
(ResourceItemTypeString="PrimalItemConsumable_RawMeat_C",
BaseResourceRequirement=3.0,
bCraftingRequireExactResourceType=False),
(ResourceItemTypeString="PrimalItemConsumable_CookedMeat_C",
BaseResourceRequirement=2.0,
bCraftingRequireExactResourceType=False)
)
)
Приведенные здесь примеры разбиты на несколько строк из соображений экономии места. В файле конфигурации каждая запись должна располагаться целиком в одной строке и без пробелов.
ConfigOverrideItemMaxQuantity
ConfigOverrideItemMaxQuantity=(ItemClassString="<string>",Quantity=(MaxItemQuantity=<integer>, bIgnoreMultiplier=<boolean>))
Аргументы:
string |
Имя класса предмета, который будет заменен на новый размер стека
|
integer |
Новый размер стека указанного предмета
|
boolean |
Если False , это означает, что реальный размер стека для этого элемента равен ItemStackSizeMultiplier * MaxItemQuantity.
если True , он напрямую использует MaxItemQuantity и игнорирует множитель
|
Позволяет вручную переопределять размер стека предметов для каждого предмета.
Пример создания стопки Tranq Arrows до 543 предметов в каждой стопке.
ConfigOverrideItemMaxQuantity=(
ItemClassString="PrimalItemAmmo_ArrowTranq_C",
Quantity=(MaxItemQuantity=543,bIgnoreMultiplier=True)
)
Приведенный здесь пример разделен на несколько строк из соображений экономии места. В файле конфигурации каждая запись должна располагаться целиком в одной строке и без пробелов.
ConfigOverrideSupplyCrateItems
Позволяет вручную переопределять предметы, содержащиеся в ящиках с добычей. Каждый ящик с добычей может содержать один или несколько наборов предметов. Каждый набор может содержать один или несколько элементов, сгруппированных в одну или несколько записей.
ConfigOverrideSupplyCrateItems=(SupplyCrateClassString="<string>",MinItemSets=<integer>,MaxItemSets=<integer>,NumItemSetsPower=<float>,bSetsRandomWithoutReplacement=<boolean>[,bAppendItemSets=<boolean>][,bAppendPreventIncreasingMinMaxItemSets=<boolean>],ItemSets=([SetName="<string>",]MinNumItems=<integer>,MaxNumItems=<integer>,NumItemsPower=<float>,SetWeight=<float>,bItemsRandomWithoutReplacement=<boolean>,ItemEntries=([ItemEntryName="<string>",]EntryWeight=<float>,ItemClassStrings=("<string>"[,...n]),ItemsWeights=(<float>[,...n]),MinQuantity=<float>,MaxQuantity=<float>,MinQuality=<float>,MaxQuality=<float>,bForceBlueprint=<boolean>,ChanceToBeBlueprintOverride=<float>))[,...m])
Аргументы:
Варианты маяков
|
SupplyCrateClassString
|
string
|
Quoted Имя класса маяка, который будет переопределен.
|
MinItemSets
|
integer
|
Минимальное количество наборов предметов, которые будут находиться в маяке.
|
MaxItemSets
|
integer
|
Максимальное количество наборов предметов, которые будут находиться в маяке.
|
NumItemSetsPower
|
float
|
Качество предметов для всех наборов в маяке. По умолчанию: 1.0.
|
bSetsRandomWithoutReplacement
|
boolean
|
Если True , любой предмет любого набора никогда не будет добавлен несколько раз в один и тот же маяк.
|
bAppendItemSets
|
boolean
|
Необязательно: если True , наборы предметов будут добавлены в маяк, а не полностью заменят его содержимое. По умолчанию: False
|
bAppendPreventIncreasingMinMaxItemSets
|
boolean
|
Необязательно, если True , динамически увеличивает количество отбрасываемых предметов на количество добавленных дополнительных наборов предметов. Если False , исходные значения контейнера MinItemSets и MaxItemSets будут увеличены на указанные значения. Требуется bAppendItemSets=True . По умолчанию: False
|
ItemSets
|
string
|
Определяет один или несколько наборов предметов.
|
Устанавливает параметры
|
SetName
|
string
|
Необязательное имя набора в кавычках.
|
MinNumItems
|
integer
|
Минимальное количество предметов из этого набора, которое может находиться в ящике с добычей.
|
MaxNumItems
|
integer
|
Максимальное количество предметов из этого набора, которое может находиться в ящике с добычей.
|
NumItemsPower
|
float
|
Множитель качества предмета для этого набора.
|
SetWeight
|
float
|
Весовой коэффициент для этого набора должен находиться в ящике. Чем выше вес, тем выше шанс. По умолчанию: 1.0.
|
bItemsRandomWithoutReplacement
|
boolean
|
Если True , каждый предмет этого набора никогда не будет добавлен дважды в один и тот же ящик с добычей.
|
ItemEntries
|
string
|
Определяет одну или несколько записей предмета в этом наборе.
|
Варианты записей
|
ItemEntryName
|
string
|
Необязательное имя предмета в кавычках.
|
EntryWeight
|
float
|
Весовой коэффициент для этой записи должен быть в ее наборе. Чем выше вес, тем выше шанс. По умолчанию: 1.0.
|
ItemClassStrings
|
string
|
Разделенный запятыми список предметов, добавленных в эту запись. Имя классов. Каждое имя класса должно быть заключено в кавычки. Количество его элементов должно соответствовать списку ItemsWeights . Несмотря на свою длину, список должен быть заключен в круглые скобки.
|
ItemsWeights
|
float
|
Список весовых коэффициентов, разделенных запятыми, в этой записи. Количество его элементов должно соответствовать списку ItemClassStrings . Несмотря на свою длину, список должен быть заключен в круглые скобки.
|
MinQuantity
|
float
|
Минимальное количество предметов из этой записи, которые могут находиться в ящике с добычей. Примечание. Это значение по-прежнему ограничено заданными значениями MinNumItems и MaxNumItems .
|
MaxQuantity
|
float
|
Максимальное количество предметов из этой записи, которые могут находиться в ящике с добычей. Примечание. Это значение по-прежнему ограничено заданными значениями MinNumItems и MaxNumItems .
|
MinQuality
|
float
|
В этой записи предметы минимального качества. По умолчанию: 1.0.
|
MaxQuality
|
float
|
В этой записи предметы максимального качества. По умолчанию: 1.0.
|
bForceBlueprint
|
boolean
|
Если True , элементы этой записи всегда будут представлять собой схему. По умолчанию: false.
|
ChanceToBeBlueprintOverride
|
float
|
Нормализованная вероятность того, что элементы этой записи являются чертежом. Примечание. 1.0 означает 100%. По умолчанию: 0.0.
|
Начиная с патча 273.7 SupplyCrateClassString
также принимает часть имени класса [3]. " переопределит все ящики с припасами.
Все строки классов предметов и названия ящиков с припасами можно найти в комплекте разработчика ARK и на странице ID Маяков.
В этом примере полностью переопределяются предметы, содержащиеся в обычном ящике с припасами 3-го уровня, чтобы они содержали только камень и солому:
ConfigOverrideSupplyCrateItems=(
SupplyCrateClassString="SupplyCrate_Level03_C",
MinItemSets=1,
MaxItemSets=1,
NumItemSetsPower=1.0,
bSetsRandomWithoutReplacement=True,
ItemSets=(
(MinNumItems=2,
MaxNumItems=2,
NumItemsPower=1.0,
SetWeight=1.0,
bItemsRandomWithoutReplacement=True,
ItemEntries=(
(EntryWeight=1.0,
ItemClassStrings=("PrimalItemResource_Stone_C"),
ItemsWeights=(1.0),
MinQuantity=10.0,
MaxQuantity=10.0,
MinQuality=1.0,
MaxQuality=1.0,
bForceBlueprint=False,
ChanceToBeBlueprintOverride=0.0),
(EntryWeight=1.0,
ItemClassStrings=("PrimalItemResource_Thatch_C"),
ItemsWeights=(1.0),
MinQuantity=10.0,
MaxQuantity=10.0,
MinQuality=1.0,
MaxQuality=1.0,
bForceBlueprint=False,
ChanceToBeBlueprintOverride=0.0)
)
)
)
)
Приведенный здесь пример разделен на несколько строк из соображений экономии места. В файле конфигурации каждая запись должна располагаться целиком в одну строку и без пробелов.
HarvestResourceItemAmountClassMultipliers
HarvestResourceItemAmountClassMultipliers=(ClassName="<string>",Multiplier=<float>)
string |
Класс Имя ресурса, см. ID Предметов
|
float |
Default: 1.0
|
Масштабируется в зависимости от типа ресурса, количества собранных ресурсов. Более высокие значения увеличивают количество ударов/атак. Имена классов ресурсов можно найти по адресу ID Предметов. Он работает так же, как глобальный параметр HarvestAmountMultiplier
, но только для типа ресурса, указанного в этой строке. Дополнительные линии могут быть добавлены с другими типами ресурсов, такими как дерево, камень и т. д.
Пример, который дает вдвое больше урожая при сборе соломы с дерева:
HarvestResourceItemAmountClassMultipliers=(
ClassName="PrimalItemResource_Thatch_C",
Multiplier=2.0
)
Приведенный здесь пример разделен на несколько строк из соображений экономии места. В файле конфигурации каждая запись должна располагаться целиком в одной строке и без пробелов.
ItemStatClamps
ПРИМЕЧАНИЕ: Для аргумента командной строки ClampItemStats
необходимо установить значение True
, чтобы ограничение было включено на вашем сервере. См. Синтаксис командной строки.
ItemStatClamps[<attribute>]=<value>
Аргументы:
attribute |
integer |
0: Общее качество
1: Броня
2: Максимальная прочность
3: Процент урона от оружия
4: Боеприпасы для оружия
5: Гипотермическая изоляция
6: Вес
7: Гипертермическая изоляция
|
value |
integer |
Используемый алгоритм выглядит следующим образом:
<Initial Value Constant> + ((<ItemStatClamps[<attribute>]> * <State Modifier Scale>) * (<Randomizer Range Multiplier> * <Initial Value Constant>))
Каждый элемент имеет свои собственные данные, которые можно найти в Dev Kit.
|
Например, вот значения, необходимые для того, чтобы иметь такое же ограничение, как на официальных серверах, для Armor
и Процент урона от оружия
:
ItemStatClamps[1]=19800
ItemStatClamps[3]=19800
Это приведет к ограничению брони Сёдла до 124.0
(74.5
для существ-танков, таких как Дедикурус, Горный Элементаль и т. д. ), Металлическая Броня — до 496,0
брони, Длинная Винтовка — до 298,0%
урона и т. д.
ВНИМАНИЕ: Это навсегда изменит характеристики любых существующих предметов, поэтому обязательно сделайте резервную копию текущего сохранения, прежде чем изменять и играть с фиксированными значениями.
Уровни игроков и прирученных связаных между собой
LevelExperienceRampOverrides=(ExperiencePointsForLevel[<n>]=<points>,[ExperiencePointsForLevel[<n>]=<points>],...,[ExperiencePointsForLevel[<n>]=<points>])
Arguments:
n |
integer |
Уровень для настройки
|
points |
integer |
Очки, необходимые для достижения уровня
|
Настраивает общее количество уровней, доступных игрокам и существам, а также количество очков опыта, необходимых для достижения каждого уровня.
Эту директиву можно указать дважды в файле конфигурации. При первом появлении предоставленные значения будут настраивать уровни игроков. При втором появлении предоставленные значения будут настраивать уровни прирученных существ.
По этой причине каждый раз, когда используется директива, она должна перечислять все уровни, которых игроки/прирученные могут достичь на сервере. Для каждого желаемого уровня должен присутствовать один аргумент ExperiencePointsForLevel
Значения для <n>
должны быть последовательными, начиная с нуля. Имейте в виду, что последние 100 уровней используются для вознесения, получения опыта чиби, заметок исследователя и рунических наград, а это означает, что вам нужно добавить 100 дополнительных уровней в файл конфигурации.
В этом первом примере указано 50 уровней игрока и 15 уровней вознесения.
LevelExperienceRampOverrides=(
ExperiencePointsForLevel[0]=1,
ExperiencePointsForLevel[1]=5,
...
ExperiencePointsForLevel[64]=1000)
Второй пример (при размещении в файле конфигурации после первого) определяет 35 уровней прирученных существ.
LevelExperienceRampOverrides=(
ExperiencePointsForLevel[0]=1,
ExperiencePointsForLevel[1]=5,
...
ExperiencePointsForLevel[34]=1000)
Приведенные здесь примеры разбиты на несколько строк из соображений экономии места. В файле конфигурации каждая запись должна располагаться целиком в одной строке и без пробелов.
Связанные Характеристики
Таблица Индексов Атрибутов
В этой таблице показаны связи между каждым атрибутом характеристики и его кодированным индексом.
MutagenLevelBoost
MutagenLevelBoost[<Stat_ID>]=<integer>
Stat_ID |
Индекс атрибута, который необходимо переопределить. См. таблицу Индекс атрибута.
|
integer |
Очки уровня. Значения по умолчанию: 5, 5, 0, 0, 0, 0, 0, 5, 5, 0, 0, 0
|
Количество уровней, которые
Мутаген добавляет к прирученным диким предкам.
В приведенном примере удваивается количество очков уровня, которые мутаген добавляет к характеристикам здоровья и урона, но убирает дополнительный прирост уровня в выносливости и весе:
MutagenLevelBoost[0]=10
MutagenLevelBoost[1]=0
MutagenLevelBoost[7]=0
MutagenLevelBoost[8]=10
MutagenLevelBoost_Bred
MutagenLevelBoost_Bred[<Stat_ID>]=<integer>
Stat_ID |
Индекс атрибута, который необходимо переопределить. См. таблицу Индекс атрибута.
|
integer |
Очки уровня. Значения по умолчанию: 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0
|
Как MutagenLevelBoost
, но для выведенных прирученных существ.
В приведенном примере удваивается количество очков уровня, которые мутаген добавляет к характеристикам здоровья и урона, но убирает дополнительный прирост уровня в выносливости и весе:
MutagenLevelBoost_Bred[0]=2
MutagenLevelBoost_Bred[1]=0
MutagenLevelBoost_Bred[7]=0
MutagenLevelBoost_Bred[8]=2
PlayerBaseStatMultipliers
PlayerBaseStatMultipliers[<attribute>]=<multiplier>
Аргументы:
attribute |
integer |
См. таблицу Индекс атрибута.
|
multiplier |
float |
По умолчанию: 1.0, значение по умолчанию см. в таблице ниже.
|
Изменяет базовую статистику игрока путем умножения на значение по умолчанию. Имеется в виду стартовая статистика нового появившегося персонажа.
Значения по умолчанию:
Атрибут |
по умолчанию |
вывод
|
0 Здоровье |
1.0 |
100.0
|
1 Выносливость |
1.0 |
100.0
|
2 Оцепенение |
1.0 |
200.0 (вы все равно теряете сознание на 50, независимо от общего количества)
|
3 Кислород |
1.0 |
100.0
|
4 Еда |
1.0 |
100.0
|
5 Вода |
1.0 |
100.0
|
6 Температура |
0.0 |
0.0 (Неиспользованный показатель)
|
7 Вес |
1.0 |
100.0
|
8 MeleeDamageMultiplier |
0.0 |
100% (Базовое не может быть увеличено)
|
9 SpeedMultiplier |
0.0 |
100% (Базовое не может быть увеличено)
|
10 TemperatureFortitude |
0.0 |
0 (Базовое не может быть увеличено)
|
11 CraftingSpeedMultiplier |
0.0 |
100% (Базовое не может быть увеличено)
|
PerLevelStatsMultiplier
PerLevelStatsMultiplier_DinoTamed<type>[<attribute>]=<multiplier>
PerLevelStatsMultiplier_DinoWild[<attribute>]=<multiplier>
PerLevelStatsMultiplier_Player[<attribute>]=<multiplier>
Аргументы:
type |
text |
тип не указан: множитель применяется за каждую точку повышения уровня прирученного.
_Add: Множитель сразу же добавляется для прирученного существа.
_Affinity: множитель, применяемый в зависимости от близости.
|
attribute |
integer |
См. таблицу Индекс атрибута.
|
multiplier |
float |
По умолчанию: 1.0 или см. таблицу ниже.
|
Позволяет изменить количество получаемых характеристик за каждый уровень:
PerLevelStatsMultiplier_Player
меняет сумму для игроков.
PerLevelStatsMultiplier_DinoTamed
изменяет количество прирученных существ.
PerLevelStatsMultiplier_DinoWild
меняет сумму для диких существ.
Чтобы практически отключить получение характеристик, используйте 0.01, поскольку установка значения 0 делает его по умолчанию равным 1.0.
Значения по умолчанию:
Атрибут |
Дикий |
Прирученный |
Прирученный_Добавить |
Прирученный_Запечатление
|
0 Здоровье |
1 |
0.2 |
0.14 |
0.44
|
1 Выносливость |
1 |
1 |
1 |
1
|
2 Оглушение |
1 |
1 |
1 |
1
|
3 Кислород |
1 |
1 |
1 |
1
|
4 Еда |
1 |
1 |
1 |
1
|
7 Вес |
1 |
1 |
1 |
1
|
8 Урон |
1 |
0.17 |
0.14 |
0.44
|
9 Скорость |
1 |
1 |
1 |
1
|
Пример того, как удвоить увеличение веса за уровень для игроков:
PerLevelStatsMultiplier_Player[7]=2.0
Пример различных типов, влияющих на здоровье прирученных существ:
PerLevelStatsMultiplier_DinoTamed[0]=1.0
PerLevelStatsMultiplier_DinoTamed_Add[0]=1.0
PerLevelStatsMultiplier_DinoTamed_Affinity[0]=1.0
Настройки Одиночной Игры
Если bUseSingleplayerSettings=True
, чем следующие параметры применяются дополнительно к настроенным (или значениям по умолчанию):
Опция |
Базовое значение |
Дополнительный множитель
|
BabyCuddleIntervalMultiplier |
ini |
x 0.17
|
BabyMatureSpeedMultiplier |
ini |
x 35.0
|
AllowRaidDinoFeeding |
True |
N/A
|
bAllowUnlimitedRespecs |
True |
N/A
|
CropGrowthSpeedMultiplier |
ini |
x 4.0
|
EggHatchSpeedMultiplier |
ini |
x 9.0
|
HairGrowthSpeedMultiplier |
ini |
x 0.69999999
|
MatingIntervalMultiplier |
ini |
x 0.15000001
|
PerLevelStatsMultiplier_DinoTamed_Add[0] |
ini |
x 3.5714285
|
PerLevelStatsMultiplier_DinoTamed_Add[8] |
ini |
x 3.5714285
|
PerLevelStatsMultiplier_DinoTamed_Affinity[0] |
ini |
x 2.2727273
|
PerLevelStatsMultiplier_DinoTamed_Affinity[8] |
ini |
x 2.2727273
|
PerLevelStatsMultiplier_DinoTamed[0] |
ini |
x 2.125
|
PerLevelStatsMultiplier_DinoTamed[8] |
ini |
x 2.3529413
|
RaidDinoCharacterFoodDrainMultiplier |
ini |
x 0.40000001
|
TamingSpeedMultiplier |
ini |
x 2.5
|
UseCorpseLifeSpanMultiplier |
6.0 |
N/A
|
Где ini означает, что опция по умолчанию или уже установленная опция масштабируется на значение в столбце Дополнительный множитель, например:
- Если
BabyMatureSpeedMultiplier
не был установлен или оставлено значение по умолчанию 1.0, при настройках одиночной игры окончательное значение будет 35.0.
- Если вместо этого для
BabyMatureSpeedMultiplier
установлено значение 2.0, при настройках одиночной игры окончательное значение будет 70.0.
Наконец, станет доступна энграмма ТЕК багги.
Ark ID
ID необходим для идентификации любого пользователя, подключающегося к серверу, будь то для внесения в белый список администратора,Белый список игроков или для какой-либо другой цели.
Для
ARK: Survival Ascended игра использует Epic Online Services (EOS). Следующие методы могут быть использованы для получения необходимого Ark ID (32-символьная буквенно-цифровая строка, также известная как EOS ID):
- Запустите одиночную карту и после создания выжившего откройте и разверните консоль (на ПК дважды нажмите на Tab ↹), и введите команду
whoami
. Запишите идентификатор OSS, 32-символьную буквенно-цифровую строку.
- При подключении к выделенному серверу после создания персонажа откройте и разверните консоль (на ПК дважды нажмите на Tab ↹) и введите команду
whoami
. Запишите идентификатор OSS, 32-символьную буквенно-цифровую строку. Кроме того, после включения читов можно также использовать команду cheat ListPlayers
для отображения всех подключенных в данный момент игроков и их Ark ID.
- В журнале работающего сервера при попытке подключения ID пользователя Ark указывается как
UniqueNetId
.
Для
ARK: Survival Evolved игра использует API Steam. Следующие методы могут быть использованы для получения необходимого Ark ID (17-значная строка для игроков Steam, также известная как Steam ID, и 19-значная строка для игроков Epic Game Store):
- Запустите карту локального хоста и после создания выжившего откройте консоль и разверните ее двумя нажатиями на Tab ↹, введите команду
whoami
или ListPlayers
.
- При подключении к выделенному серверу после создания персонажа откройте консоль и разверните ее двумя нажатиями на Tab ↹, введите команду
whoami
. После включения читов также можно использовать команду cheat ListPlayers
для отображения всех подключенных в данный момент игроков и их Ark ID.
- Игроки, использующие Steam, также могут использовать калькулятор SteamDB для определения своего Steam ID:
- Откройте Steam и нажмите на имя своего профиля в верхней панели, чтобы отобразить страницу профиля аккаунта Steam.
- Щелкните адресную строку чуть ниже, чтобы скопировать URL-адрес профиля.
- Откройте Калькулятор SteamDB и вставьте URL профиля в предоставленное поле и нажмите Enter. В таблице под суммами валют будет указан
SteamID
.
Примечание: команда whoami
отобразит два значения: идентификатор сетевой подсистемы (OSS Id) и Ark ID: игрокам Epic Game Store необходимо учитывать только Ark ID (для игроков Steam это буквально то же самое значение).
Белый Список Администратора
Игроки могут быть внесены в белый список в качестве администраторов на сервере через свой SteamID. Эти игроки могут автоматически использовать чит-команды на сервере, как если бы они прошли аутентификацию с помощью команды enablecheats
(описанной ниже).
Чтобы внести администраторов в белый список, создайте файл ShooterGame/Saved/AllowedCheaterSteamIDs.txt
. В файле укажите SteamID каждого игрока, по одному в строке.
Steam ID всех подключенных игроков можно просмотреть в игре с помощью команды cheat ListPlayers
. Игроков можно выкинуть с сервера (используя их SteamID) с помощью команды cheat KickPlayer
. Подробную информацию см. в следующем разделе.
Примечание: При использовании этого метода нет необходимости указывать пароль администратора сервера. Пароль по-прежнему может быть указан и может использоваться игроками, не входящими в белый список, для получения прав администратора, но сервер будет работать без него и по-прежнему будет автоматически предоставлять привилегии администраторам из белого списка.
Белый Список Игроков
Для начала получите необходимые Ark ID.
Белый список игроков может быть двух видов:
- Белый список, который позволяет игрокам подключаться к серверу, когда
-exclusivejoin
добавлен в командную строку (подтверждено, что работает как в
ARK: Survival Ascended, так и в
ARK: Survival Evolved), или UseExclusiveList=true
присутствует в GameUserSettings.ini
в разделе [ServerSettings]
, или присоединен к параметрам командной строки с синтаксисом ?
(примечание: не документировано WildCard и не было подтверждено, что работает в
ARK: Survival Ascended). Игроки, которые не включены в этот белый список, не смогут присоединиться к серверу. Обычный пароль сервера можно сбросить, если этот белый список используется. Если пароль сервера оставить на месте, игрокам из белого списка все равно придется его вводить. Этот белый список использует файл /ShooterGame/Binaries/<PLATFORM>/PlayersExclusiveJoinList.txt
. Чтобы использовать белый список, вставьте необходимые Ark ID в этот файл, по одному на строку, и используйте один из трех методов выше, чтобы включить белый список.
- Белый список, который позволяет игрокам обходить максимальное количество игроков на сервере. Игроки, не входящие в этот белый список, по-прежнему подпадают под ограничение максимального количества игроков. Этот белый список использует файл
/ShooterGame/Binaries/<PLATFORM>/PlayersJoinNoCheckList.txt
. Чтобы использовать белый список, вставьте необходимые Ark ID в этот файл, по одному на строку.
Примечание: В путях к файлам <PLATFORM>
— это либо Linux
, либо Win64
, в зависимости от операционной системы хоста.
Для любого добавления или удаления ID в файле сервер должен быть перезапущен. Однако администраторы сервера могут использовать команду Cheat AllowPlayerToJoinNoCheck <ARK_ID>
в игровой консоли, чтобы добавить новых игроков в PlayersJoinNoCheckList.txt
без перезапуска сервера.
Передача данных между ARK
В Официальных выжившие могут 'загружать' или 'передавать' с любого сервера в любой Ящик с поставками, Терминал, Обелиск и
Тек Трансмитер. Затем выжившие могут быть 'загружены' на любой Официальный сервер того же игрового режима.
Для Неофициальных Серверов для обеспечения динамического Cross-ARK Travel необходимо запустить как минимум два сервера с одинаковым идентификатором кластера и каталогом кластера, запущенных с помощью похожих командных строк:
ShooterGameServer TheIsland?SessionName=MySession1 -clusterid=<CLUSTER_NAME> -ClusterDirOverride="<PATH>"
ShooterGameServer ScorchedEarth_P?SessionName=MySession2 -clusterid=<CLUSTER_NAME> -ClusterDirOverride="<PATH>"
Терминалы затем выведут список всех серверов с одинаковым clusterid
. Затем Выживший будет автоматически перенесен на выбранный сервер.
clusterid
должен быть одинаковым на всех серверах, в противном случае им не будет разрешено видеть друг друга.
Также необходимо указать место хранения между серверами с помощью параметра командной строки -ClusterDirOverride=<PATH>
, например:
- В Linux:
-ClusterDirOverride="/MyARKClusterStorage"
- В Windows:
-ClusterDirOverride="C:\MyARKClusterStorage"
В противном случае сервер по умолчанию будет использовать ShooterGame\Saved\clusters
, что не позволит каждому серверу работать одновременно и с разных путей, чтобы видеть друг друга.[4]
Настройки данных ARK
Можно контролировать, какие загрузки/загрузки разрешены в племенах, с помощью следующих параметров (командная строка или GameUserSettnigs.ini):
noTributeDownloads=<boolean>
PreventDownloadSurvivors=<boolean>
PreventDownloadItems=<boolean>
PreventDownloadDinos=<boolean>
PreventUploadSurvivors=<boolean>
PreventUploadItems=<boolean>
PreventUploadDinos=<boolean>
Таймер повторной загрузки Прирученных можно контролировать с помощью следующей опции:
MinimumDinoReuploadInterval=<float>
Также можно изменить таймер истечения срока действия для загруженных прирученных существ, предметов (включая криокапсулу) и выживших.
TributeCharacterExpirationSeconds=<integer>
TributeDinoExpirationSeconds=<integer>
TributeItemExpirationSeconds=<integer>
Каждый доступ к данным ARK будет учитывать настройки каждого сервера и в конечном итоге удалит данные, если они истекли в соответствии с настройками сервера, с которого осуществляется доступ к данным. Поэтому предлагается сохранять одинаковые сроки действия на каждом сервере кластера.
Еще одна осторожность, которую следует учитывать, заключается в том, чтобы не использовать слишком высокие значения для таких настроек, поскольку они суммируются со временем загрузки в формате Unix Epoch time и могут привести к переполнению.
Наконец, если TributeCharacterExpirationSeconds
не задано, загруженные выжившие не будут иметь таймера истечения срока действия (тот же результат достигается при использовании значения, равного или меньшего 0). Это не относится к настройкам истечения срока действия предметов и существ.
Подробнее о файлах кластера и запуске нескольких серверов
Файлы кластера всегда будут сохраняться в каталоге <ClusterDirOverride>/<clusterid>
. Это подразумевает несколько вещей:
- Для конкретного игрока загрузка (а значит, и передача) Выжившего на сервер всегда перезаписывает любые данные Выжившего, которые были там ранее. И наоборот, может быть только один Выживший "Загружен".
- Если два сервера используют один и тот же
clusterid
, но не используют один и тот же каталог кластера (разные <ClusterDirOverride>
), игроки все равно будут видеть такие серверы в списке переноса, но они не смогут загружать (и, следовательно, передавать) что-либо загруженное с одного сервера на другой.
- Если вы выберете
clusterid
, который является общим, есть большая вероятность того, что ваш список серверов в конечном итоге будет "загрязнен" другими серверами, которые настроены на использование того же clusterid
, что может сбить с толку игроков, поскольку данные не передаются этим другим серверам. Учитывая эту проблему, рекомендуется не использовать общее имя clusterid
, поскольку другие неподключенные серверы могут быть перечислены, пока игроки используют трансферы.
Расширенные пояснения по управлению кластером
Следующие соображения оставлены на усмотрение только опытных администраторов и требуют надлежащего тестирования перед запуском таких настроек в эксплуатацию:
Можно задать общее расположение между различными физическими или виртуальными машинами для использования общего -clusterid
. Если по сети, это может немного увеличить вероятность сбоя передачи из-за проблем с сетью, что обычно заканчивается потерей всех данных игроком. Для такой более сложной настройки обычно предлагается использовать сторонние приложения для динамической обработки резервных копий кластера и данных игрока.
Чтобы сэкономить место на диске, увеличить попадания в кэш, обеспечить лучшее распределение ресурсов и время установки/обновления, можно использовать одну и ту же установку для запуска нескольких серверов. Это также можно комбинировать с ?AltSaveDirectoryName
.
- Обратите внимание, что таким образом они также будут использовать одни и те же настройки
INI
, поскольку загружают одни и те же файлы, если только не используются сложные трюки со связыванием файлов. Чтобы они все равно отличались, можно задать большинство параметров GameUserSettings.ini
в командной строке с помощью синтаксиса ?
. Вы также можете использовать динамически сгенерированный файл INI
для изменения некоторых настроек Game.ini
. Ручное редактирование файлов INI
обычно не рекомендуется. Сервер больше не загружает данные INI
после того, как PID
процесса отображается в консоли вывода. Поэтому необходимо быть осторожным и загружать сервер с правильными интервалами, чтобы не использовать неправильные параметры INI из предыдущего запуска сервера. Кроме того, следует помнить, что при обычном выходе из сервера процесс перезаписывает часть содержимого файлов INI своими текущими настройками.
- Сервер удаляет старые файлы сохранений, используя возраст файла, если они называются
.ark
. Это означает, что независимо от используемой вами карты файлы сохранений в конечном итоге будут удалены из каталога. Если вы остановите карту, больше не будет сделано автосохранений, поэтому оставление любых файлов .ark
приведет к их удалению. Обратите внимание, что если это произойдет, вы, по крайней мере, все еще можете использовать ваши файлы резервных копий .bak
, когда сервер был запущен в последний раз, которые не удаляются, учитывая, что на сервере не запущено другое решение для резервного копирования.
-clusterid
/ -NoTransferFromFiltering
:
- Если
-clusterid
не задан и -NoTransferFromFiltering
не задан: игроки все равно смогут использовать кнопки 'download'/'upload' на терминалах. Данные Tribute будут затем храниться на собственных машинах игроков, так же, как и данные их одиночной игры. Это также позволит им загружать их на другой сервер с такой настройкой.
- Если
-clusterid
не задан, а -NoTransferFromFiltering
также задан: переносы игроков из одиночной игры отключены. Учитывая, что данные Tribute сохраняются в каталоге SavedArks
, все еще возможно создать "поддельный кластер", разделив каталог SavedArks
между серверами, что позволит игрокам использовать кнопки "загрузить"/"выгрузить" на терминалах. Наконец, игрокам необходимо знать, какие серверы связаны.
Невозможно смешивать и сопоставлять эти типы серверов между собой, поскольку формат данных Tribute будет разным: при использовании -clusterid
данные Tribute сохраняются в каталоге -clusterid
, а если -NoTransferFromFiltering
не установлен, они будут сохраняться на собственных машинах игроков.
Для
ASA каждая карта теперь находится в своем собственном каталоге, даже при использовании ?AltSaveDirectoryName
. Чтобы воспроизвести эту функциональность, вам нужно будет связать/объединить каждый из отдельных каталогов карт в один.
DynamicConfig
DynamicConfig позволяет администраторам сервера изменять настройки ниже без необходимости перезапуска сервера. Руководства по использованию DynamicConfig можно найти ниже:
РАЗМЕЩЕННЫЕ НЕОФИЦИАЛЬНЫЕ СЕРВЕРЫ
DynamicConfig можно использовать на размещенных серверах, например, предоставляемых Nitrado, выполнив следующие действия на каждом сервере, на котором вы хотите использовать DynamicConfig. В следующем руководстве будут приведены шаги по использованию хоста для файла, похожего на pastebin или github. Это, вероятно, будет самым простым методом для большинства пользователей. Файл также можно загрузить и разместить в другом месте, при условии, что текст будет доступен в обычном виде.
- Создать файл динамической конфигурации
- введите все нужные настройки из списка ниже, каждую в отдельной строке
- назовите и сохраните файл (убедитесь, что файл общедоступный и не защищен паролем)
- нажмите "RAW" и захватите URL-адрес из адресной строки браузера
- Настройте GameUserSettings.ini (перед внесением этих изменений выключите сервер)
- следующие строки идут под заголовком [ServerSettings]
- добавить
UseDynamicConfig=True
- добавить
CustomDynamicConfigUrl="yoururlhere"
- URL-адрес должен быть заключен в кавычки
После настройки файла gameusersettings.ini сохраните его и подождите рекомендуемое время перед перезапуском сервера.
Динамическое обновление файла DynamicConfig
Если вы используете вышеуказанный метод для размещения файла dynamicconfig, вы можете редактировать его на месте, а не редактировать и повторно загружать файл. Сделайте следующее:
- Откройте файл и нажмите "Изменить"
- Измените настройки
- Сохраните файл
Любые изменения, внесенные с помощью описанного выше метода, будут отправлены на сервер при следующем чтении.
Примечание: Хотя можно заставить сервер прочитать файл dynamicconfig с помощью ForceUpdateDynamicConfig
для обновления самого файла может потребоваться время. Вам следует убедиться, что "RAW" обновлен, прежде чем принудительно выполнять обновление, иначе внесенные вами изменения не вступят в силу немедленно.
ДРУГИЕ СЕРВЕРЫ
- Создайте файл dynamicconfig, как описано выше
- Добавьте
-UseDynamicConfig
и CustomDynamicConfigUrl="yoururlhere"
в командную строку и перезапустите серверы.
Вы будете вносить динамические изменения в свой файл конфигурации таким же образом, как описано выше.
ASA
|
ASE
|
Переменная
|
Описание
|
С патча
|
|
|
ActiveEventColors
|
Значение по умолчанию: N/A Тип значения: строка Это активирует соответствующие цвета события:
| 356.11 |
|
|
BabyCuddleIntervalMultiplier
|
Значение по умолчанию: 1.0 Тип значения: всплывающий См. ту же опцию в Game.ini. | 316.18 |
|
|
BabyFoodConsumptionSpeedMultiplier
|
Значение по умолчанию: 1.0 Тип значения: всплывающий См. ту же опцию в Game.ini. |  |
|
|
BabyImprintAmountMultiplier
|
Значение по умолчанию: 1.0 Тип значения: всплывающий См. ту же опцию в Game.ini. | 316.18 |
|
|
BabyMatureSpeedMultiplier
|
Значение по умолчанию: 1.0 Тип значения: всплывающий См. ту же опцию в Game.ini. | 307.2 |
|
|
bDisableDinoDecayPvE
|
Значение по умолчанию: False Тип значения: логический То же, что и DisableDinoDecayPvE в GameUserSettings.ini. |  |
|
|
bDisableStructureDecayPvE
|
Значение по умолчанию: False Тип значения: логический То же, что и DisableDinoDecayPvE в GameUserSettings.ini. |  |
|
|
bPvPDinoDecay
|
Значение по умолчанию: False Тип значения: логический То же, что и PvPDinoDecay в GameUserSettings.ini. |  |
|
|
bPvPStructureDecay
|
Значение по умолчанию: False Тип значения: логический То же, что и PvPStructureDecay в GameUserSettings.ini. |  |
|
|
bUseAlarmNotifications
|
Значение по умолчанию: N/A Тип значения: логический Переключает уведомления веб-сигнализации. Подробности см. в Веб-уведомлениях. Недокументировано Wildcard. |  |
|
|
CropGrowthSpeedMultiplier
|
Значение по умолчанию: 1.0 Тип значения: всплывающий См. ту же опцию в Game.ini. |  |
|
|
CustomRecipeEffectivenessMultiplier
|
Значение по умолчанию: 1.0 Тип значения: всплывающий См. ту же опцию в Game.ini. |  |
|
|
DinoCharacterFoodDrainMultiplier
|
Значение по умолчанию: 1.0 Тип значения: всплывающий См. ту же опцию в GameUserSettings.ini. |  |
|
|
DisableTimestampVerification
|
Значение по умолчанию: False Тип значения: логический Недокументировано. |  |
|
|
DisableWorldBuffs
|
Значение по умолчанию: N/A Тип значения: строка Отключение определенных мировых баффов на Genesis: Часть 2, которые будут увеличены сверх обычных значений на этих Ark с другими изменениями множителя. Примечание: баффы должны быть указаны в одной строке, разделенной запятыми, без пробелов. Известные ID баффов: MATINGINTERVAL_DOWN_HARD , MATINGINTERVAL_DOWN_MEDIUM , MATINGINTERVAL_DOWN_EASY , BABYMATURE_BOON_EASY , BABYMATURE_BOON_MEDIUM , BABYMATURE_BOON_HARD . |  |
|
|
DynamicUndermeshRegions
|
Значение по умолчанию: 1.0 Тип значения: строка Принудительное динамическое обновление объема подсетки. Недокументировано. |  |
|
|
DynamicColorset
|
Значение по умолчанию: N/A Тип значения: строка Разделенный запятыми список названий цветов, имена должны быть **точными**, с учетом специальных символов и пробелов. DynamicColorset будет использоваться только при использовании ActiveEventColors=custom . | 356.11 |
|
|
EggHatchSpeedMultiplier
|
Значение по умолчанию: 1.0 Тип значения: всплывающий См. ту же опцию в Game.ini. | 307.2 |
|
|
EnableFullDump
|
Значение по умолчанию: False Тип значения: логический Принудительно делает полный дамп памяти сервера при сбое сервера. Недокументировано Wildcard. |  |
|
|
EnableWorldBuffScaling
|
Значение по умолчанию: False Тип значения: логический То же, что и bEnableWorldBuffScaling в Game.ini. |  |
|
|
GMaxFlameThrowerServerTicksPerFrame
|
Значение по умолчанию: 5 Тип значения: целое число Управляет скоростью тика Огнемёта за тик сервера, то есть: скоростью стрельбы Flamethrower за тик сервера, а не за фиксированное время. Более высокие значения заставят Flamethrower использовать больше боеприпасов за тик сервера. Использование слишком высоких значений может привести к проблемам с производительностью сервера. Недокументировано Wildcard. |  |
|
|
GlobalSpoilingTimeMultiplier
|
Значение по умолчанию: 1.0 Тип значения: всплывающий См. ту же опцию в Game.ini. |  |
|
|
GUseServerNetSpeedCheck
|
Значение по умолчанию: False Тип значения: логический Это должно предотвратить накопление игроками слишком большого количества данных о перемещениях за один тик сервера, отбрасывая последние, если их слишком много. Также может быть включено с помощью параметра командной строки -UseServerNetSpeedCheck . Включено на официальных кластерах. Может быть полезно для серверов со слишком большим количеством игроков и нагрузкой на процессор. Недокументировано Wildcard. |  |
|
|
HarvestAmountMultiplier
|
Значение по умолчанию: 1.0 Тип значения: всплывающий См. ту же опцию в GameUserSettings.ini. | 307.2 |
|
|
HexagonRewardMultiplier
|
Значение по умолчанию: 1.0 Тип значения: всплывающий См. ту же опцию в Game.ini. | 316.18 |
|
|
MatingIntervalMultiplier
|
Значение по умолчанию: 1.0 Тип значения: всплывающий См. ту же опцию в Game.ini. | 307.2 |
|
|
MatingSpeedMultiplier
|
Значение по умолчанию: 1.0 Тип значения: всплывающий См. ту же опцию в Game.ini. |  |
|
|
NPCReplacements
|
Значение по умолчанию: N/A Тип значения: строка Глобально заменяет определенных существ другими, используя имена классов. См. раздел, связанный с спавном существ. |  |
|
|
PvEDinoDecayPeriodMultiplier
|
Значение по умолчанию: 1.0 Тип значения: всплывающий См. ту же опцию в GameUserSettings.ini. |  |
|
|
PvEStructureDecayPeriodMultiplier
|
Значение по умолчанию: 1.0 Тип значения: всплывающий См. ту же опцию в GameUserSettings.ini. |  |
|
|
StructureDamageMultiplier
|
Значение по умолчанию: 1.0 Тип значения: всплывающий См. ту же опцию в GameUserSettings.ini. |  |
|
|
TamingSpeedMultiplier
|
Значение по умолчанию: 1.0 Тип значения: всплывающий См. ту же опцию в GameUserSettings.ini. | 307.2 |
|
|
TributeDinoExpirationSeconds
|
Значение по умолчанию: 86400 Тип значения: целое число См. ту же опцию в GameUserSettings.ini. |  |
|
|
TributeItemExpirationSeconds
|
Значение по умолчанию: 86400 Тип значения: целое число См. ту же опцию в GameUserSettings.ini. |  |
|
|
XPMultiplier
|
Значение по умолчанию: 1.0 Тип значения: всплывающий См. ту же опцию в Game.ini. | 307.2 |
|
|
WorldBuffScalingEfficacy
|
Значение по умолчанию: 1.0 Тип значения: всплывающий См. ту же опцию в Game.ini. |  |
Конфигурация проверяется каждый раз при (автоматическом) сохранении мира (проверено в Windows, поведение Linux может отличаться), если только администратор не выполнит немедленное обновление с помощью команды ForceUpdateDynamicConfig
.
The Survival of the Fittest
The Survival of the Fittest в настоящее время официально поддерживает следующие параметры сервера, за исключением тех настроек и параметров, которые указаны выше, которые должны работать, если они применимы к игровому режиму.
Командная строка
Вариант |
Эффект |
С патча
|
-gameplaylogging |
Только серверы Survival of the Fittest могут запускаться с этой опцией для вывода датированного файла журнала в папку \Saved , которая будет содержать журнал убийств с меткой времени и список победителей, а также ID Steam, имя Steam, имя персонажа и т. д. Удобно для автоматических записей турниров. |
205.0
|
GameUserSettings.ini
поместите следующие настройки под тегом [TSOTF]
или добавьте тег, если его нет в файле
Вариант |
Значение |
Эффект
|
EnableDeathTeamSpectator=<boolean> |
false |
Если True , включает режим наблюдателя игрока после смерти команды. Можно задать в командной строке с помощью синтаксиса ? .
|
MaxPlayersPerTribe=<integer> |
4 |
Устанавливает максимальное количество игроков, разрешенное для одного племени.
|
MinPlayersToQuickStartMatch=<integer> |
32 |
Управляет количеством игроков, необходимым для запуска быстрого таймера.
|
MinTribesToStartMatch=<integer> |
5 |
Контролирует, сколько племен необходимо для запуска обычного таймера.
|
PreventBosses=<boolean> |
0 |
Установите значение 1, чтобы отключить боссов.
|
PreventDinoSupplyCrates=<boolean> |
0 |
Установите значение 1, чтобы отключить систему POI Dino Crate.
|
PreventRetameBoss=<boolean> |
1 |
Установите значение 0, чтобы включить повторное приручение боссов.
|
PreventSpectator=<boolean> |
0 |
при значении 1 отключает наблюдателя как выбывшего игрока.
|
PreventTribes=<boolean> |
0 |
Значение 1 отключает племена.
|
TimeToQuickStartMatch=<integer> |
120 |
Быстрый таймер для автоматического начала матча за считанные секунды.
|
TimeToStartMatch=<integer> |
600 |
Обычный таймер для автоматического начала матча через несколько секунд.
|
Поместите следующие настройки под тегом [ServerSettings]
или добавьте тег, если его нет в файле
Вариант |
Значение |
Эффект
|
AutoCreateTribes=<boolean> |
true |
Автоматически заставляет игроков объединяться в племя (подходит для серверов с запретом на объединение в племя (1 игрок)).
|
BadWordListURL=<string> |
Н/Д |
Добавляет URL для размещения вашего собственного списка плохих слов.
|
BadWordWhiteListURL=<string> |
Н/Д |
Добавляет URL для размещения вашего собственного списка хороших слов.
|
bEnablePlayerMoveThroughAlly=<boolean> |
false |
Если установлено значение true, игроки могут проходить сквозь союзных динозавров.
|
bEnablePlayerMoveThroughSleeping=<boolean> |
false |
Если установлено значение true, игроки могут проходить сквозь бессознательных динозавров.
|
bFilterCharacterNames=<boolean> |
true |
Фильтрует имена персонажей на основе списка плохих/хороших слов.
|
bFilterChat=<boolean> |
true |
Фильтрует имена персонажей на основе списка плохих/хороших слов.
|
bFilterTribeNames=<boolean> |
true |
Фильтрует названия племен на основе списка плохих/хороших слов.
|
RiderDinoCollision=<boolean> |
false |
Это новая конфигурация, которая была добавлена в игровой режим, чтобы минимизировать некоторые проблемы, связанные с тем, что существа собираются вместе, когда у них есть армии последователей, что делает их более простыми для убийства -- однако это также означает, что они не будут следовать так же легко из-за столкновений со своими союзниками -- поэтому мы пытаемся найти лучший/оптимальный способ. На данный момент мы не планируем включать это на наших официальных серверах. Если включить, произойдет следующее:
- Оседланные и одержимые существа могут проходить сквозь трупы, бессознательных существ и прирученных союзников
- Существа, управляемые ИИ (то есть режим командира, не оседланные и не одержимые), не могут проходить сквозь прирученных союзников
- Существа, управляемые ИИ (то есть режим командира, не оседланные и не одержимые), могут проходить сквозь спящих существ и трупы.
|
Game.ini
поместите следующие настройки под тегом [/script/shootergame.shootergamemode]
или добавьте тег, если его нет в файле
Вариант |
Аргументы |
Эффекты
|
DinoClassDamageMultipliers=( ClassName="<classname>", Multiplier=<multiplier> )
TamedDinoClassDamageMultipliers=( ClassName="<classname>", Multiplier=<multiplier> )
|
classname = string
multiplier = float По умолчанию 1.0
|
Умножает урон, наносимый определенными динозаврами через имя класса. Более высокие значения увеличивают наносимый урон.
Названия классов динозавров можно найти на странице ID Существ.
Приведенные здесь примеры разбиты на несколько строк для экономии места. В файле конфигурации запись должна быть размещена на одной строке. В файле можно указать несколько записей DinoClassDamageMultipliers и TamedDinoClassDamageMultipliers , но значения ClassName не должны повторяться в нескольких записях.
Примеры
DinoClassDamageMultipliers=(
ClassName="MegaRex_Character_BP_C",
Multiplier=0.1
)
TamedDinoClassDamageMultipliers=(
ClassName="Rex_Character_BP_C",
Multiplier=10.0
)
Разрывы строк и пробелы здесь для лучшей читаемости примера. Сохраните его в виде одной строки в вашем файле конфигурации.
|
DinoClassSpeedMultipliers=(ClassName="<classname>",Multiplier=<value>)
|
classname = string
multiplier = float по умолчанию 1.0
|
позволяет переопределить скорость дикого динозавра.
Названия классов динозавров можно найти на странице ID Существ.
|
PreventDinoTameClassNames=<classname>
|
classname = string
|
предотвратить появление динозавров Например, PreventDinoTameClassNames=Yutyrannus_Character_BP_TSOTF_C
Имена классов Dino можно найти на странице ID Существ.
|
TamedDinoClassSpeedMultipliers=(ClassName="<classname>",Multiplier=<value>)
|
classname = string
multiplier = float по умолчанию 1.0
|
позволяет переопределять скорость прирученного динозавра
Имена классов Dino можно найти на странице ID Существ.
|
TamedDinoClassStaminaMultipliers=(ClassName="<classname>",Multiplier=<value>)
|
classname = string
multiplier = float по умолчанию 1.0
|
позволяет переопределять выносливость прирученного динозавра
Имена классов Dino можно найти на странице ID Существ.
|
Ссылки
Внешние Ссылки
- Новые команды/опции сервера для версии 242.0: [3]
- Заметки между 1.556 и 171.1: [4]
- Заметки между 171.1 и 171.3: [5]
- Заметки между 171.31 и 171.8: [6]
- Заметки между 172.3 и 172.5: [7]
- Заметки между 173.0 и 287.103 (excluding from 232.0 to 240.6): [8]
- Заметки между 232.0 и 278.73: [9]
- Заметки с 285.104: [10]
Технические и Настройки |
---|
|
Технические | |
---|
|
Приватные Серверы | |
---|
|
Моды | |
---|
|
Внешние Ресурсы | |
---|