Това ръководство покрива всичко, което трябва да конфигурирате и стартирате вашия Factorio dedicated сървър на Legion Hosting, включително удостоверяване на акаунт, стартови променливи, настройки на сървъра, генериране на свят, свързване на играчи и управление на записи. За инсталация на модове, вижте Инсталация на модове за Factorio.
1. Получаване на Factorio Account Token
Factorio account username и token са задължителни, ако искате вашият сървър да се появи в публичния multiplayer server browser. Те също са необходими за изтегляне на модове от официалния mod portal.
- Отидете на factorio.com/login и влезте във вашия Factorio акаунт.
- Навигирайте до страницата си Profile.
- Превъртете до секцията API Authentication Tokens.
- Кликнете Generate, за да създадете нов token (или копирайте съществуващия си token).
- Копирайте token низа -- ще го поставите в раздела Startup на GPanel в полето
SERVER_TOKEN.
SERVER_USERNAME и SERVER_TOKEN празни. Въпреки това сървърът няма да може да изтегля модове от mod portal автоматично без валидни идентификационни данни.
2. Първо стартиране
След закупуване на вашия Factorio сървър от Legion Hosting, следвайте тези стъпки, за да го стартирате за първи път:
- Влезте в GPanel и изберете вашия Factorio сървър.
- Отидете на раздела Startup.
- Задайте променливата FACTORIO_VERSION:
latest-- инсталира текущата стабилна версия (препоръчително за повечето играчи).experimental-- инсталира най-новата експериментална/бета версия с най-новите функции, но може да има бъгове.
- Задайте вашия SERVER_NAME на каквото искате да се показва в server browser.
- Попълнете SERVER_USERNAME и SERVER_TOKEN, ако искате публично сървърно листване (вижте секцията по-горе).
- Отидете на раздела Console и кликнете Start.
- Сървърът ще изтегли файловете на Factorio dedicated сървъра и ще генерира запис по подразбиране. Това може да отнеме няколко минути при първото стартиране.
FACTORIO_VERSION в раздела Startup и рестартирайте сървъра си. Новата версия ще бъде изтеглена автоматично.
3. GPanel стартови променливи
Тези променливи са конфигурирани в раздела Startup на GPanel и контролират основното поведение на сървъра. Те влизат в сила при всяко стартиране на сървъра.
| Променлива | По подразбиране | Описание |
|---|---|---|
FACTORIO_VERSION |
latest |
Версия на сървъра за инсталиране. Използвайте latest за стабилна или experimental за най-новата бета. |
SAVE_NAME |
gamesave |
Име на файла за запис, който сървърът зарежда при стартиране (без разширение). |
SERVER_NAME |
|
Име на сървъра, показвано в multiplayer browser. |
SERVER_DESC |
|
Кратко описание, показвано редом с името на сървъра в браузъра. |
SERVER_USERNAME |
|
Вашето Factorio account име. Изисква се за публично сървърно листване и изтегляне на модове. |
SERVER_TOKEN |
|
Вашият Factorio account token за удостоверяване. Изисква се заедно с username за публично листване. |
MAX_SLOTS |
20 |
Максимален брой слотове за играчи на сървъра. |
SAVE_INTERVAL |
10 |
Интервал на автоматично записване в минути. |
SAVE_SLOTS |
5 |
Брой ротиращи слотове за автоматично записване. По-старите записи се презаписват, когато се достигне този лимит. |
AFK_KICK |
0 |
Минути преди неактивен играч да бъде изритан. 0 деактивира AFK kick. |
4. server-settings.json
Основният конфигурационен файл на сървъра се намира в:
data/server-settings.json
Редактирайте този файл чрез File Manager в GPanel или чрез SFTP. По-долу са най-важните настройки.
SERVER_NAME, SERVER_DESC, MAX_SLOTS, SERVER_USERNAME и SERVER_TOKEN) могат да заменят съответните стойности в server-settings.json при стартиране. Винаги проверявайте стойностите в раздела Startup първо, ако настройките изглежда не влизат в сила.
| Настройка | По подразбиране | Описание |
|---|---|---|
name |
"" |
Име на сървъра, показвано в multiplayer browser. |
description |
"" |
Описание на сървъра, показвано в браузъра. |
tags |
[] |
Масив от tag низове (напр. ["modded", "vanilla", "friendly"]) за филтриране в браузъра. |
max_players |
0 |
Максимален брой играчи. 0 означава неограничено (използвайте вместо това стартовата променлива MAX_SLOTS). |
visibility |
{"public": true, "lan": true} |
Контролира дали сървърът се появява в публичния браузър и/или LAN браузъра. Изисква валидни username и token за публична видимост. |
game_password |
"" |
Парола, изисквана за присъединяване. Оставете празно за без парола. |
require_user_verification |
true |
Когато е true, само играчи с потвърден Factorio акаунт могат да се присъединят. |
autosave_interval |
10 |
Интервал на автоматично записване в минути (може да бъде заменен от стартовата променлива SAVE_INTERVAL). |
autosave_slots |
5 |
Брой ротиращи файлове за автоматично записване (може да бъде заменен от стартовата променлива SAVE_SLOTS). |
afk_autokick_interval |
0 |
Време за AFK kick в минути. 0 го деактивира. |
auto_pause |
true |
Поставя играта на пауза, когато няма свързани играчи. Спестява ресурси на вашия сървър. |
only_admins_can_pause_the_game |
true |
Ограничава възможността за пауза само до администраторите на сървъра. |
admins |
[] |
Масив от Factorio потребителски имена, които имат администраторски привилегии (напр. ["YourUsername"]). Администраторите могат да изритват, банват и изпълняват команди. |
Пример за server-settings.json
{
"name": "My Factorio Server",
"description": "A Legion Hosting Factorio Server",
"tags": ["vanilla", "friendly"],
"max_players": 0,
"visibility": {
"public": true,
"lan": true
},
"username": "YourFactorioUsername",
"token": "YourTokenHere",
"game_password": "",
"require_user_verification": true,
"max_heartbeats_per_second": 60,
"allow_commands": "admins-only",
"autosave_interval": 10,
"autosave_slots": 5,
"afk_autokick_interval": 0,
"auto_pause": true,
"only_admins_can_pause_the_game": true,
"max_upload_in_kilobytes_per_second": 0,
"max_upload_slots": 5,
"minimum_latency_in_ticks": 0,
"ignore_player_limit_for_returning_players": false,
"admins": ["YourFactorioUsername"]
}
5. Генериране на карта
Factorio използва два конфигурационни файла, за да контролира как се генерират нови карти и как се държи светът по време на геймплей.
map-gen-settings.json (Генериране на света)
Намира се в:
data/map-gen-settings.json
Този файл контролира терена, разпределението на ресурсите и поставянето на врагове, когато се създава нова карта. Промените в този файл влизат в сила само при генериране на свежа карта -- те не променят съществуващ запис.
| Настройка | Описание |
|---|---|
width / height |
Размери на картата в плочки. 0 означава безкрайно (по подразбиране). Задайте конкретни стойности, за да ограничите размера на картата. |
seed |
Seed за генериране на карта. Използвайте null за случаен seed или посочете число, за да възпроизведете конкретна карта. |
peaceful_mode |
false по подразбиране. Когато е true, враговете няма да атакуват първи. |
autoplace_controls |
Контролира честотата, размера и богатството на ресурсите и характеристиките на терена. Всеки запис (напр. iron-ore, copper-ore, coal, stone, crude-oil, trees, enemy-base) приема стойности за frequency, size и richness. |
cliff_settings |
Контролира генерирането на скали: name, cliff_elevation_0 (надморска височина на първата скала), cliff_elevation_interval (разстояние между нивата на скалите), richness (плътност на скалите). |
starting_area |
Размер на безопасната стартова зона (без врагове). По подразбиране е 1. По-високите стойности дават повече място, преди да се сблъскате с biters. |
property_expression_names |
Разширени изрази за терен за покритие с вода, надморска височина и влажност. control-setting:moisture:bias и подобни ключове коригират генерирането на терена. |
Стойности на честота, размер и богатство на ресурси
За всеки ресурс в autoplace_controls можете да коригирате три свойства. Стойностите са множители, където 1 е нормално:
| Свойство | Ефект |
|---|---|
frequency |
Колко често се появява ресурсът. По-високо = повече участъци, разпръснати из картата. |
size |
Колко голям е всеки участък с ресурс. |
richness |
Колко единици доставя всяка плочка от ресурса преди изчерпване. |
Пример за map-gen-settings.json
{
"width": 0,
"height": 0,
"seed": null,
"peaceful_mode": false,
"autoplace_controls": {
"iron-ore": { "frequency": 1, "size": 1.5, "richness": 2 },
"copper-ore": { "frequency": 1, "size": 1.5, "richness": 2 },
"coal": { "frequency": 1, "size": 1, "richness": 1.5 },
"stone": { "frequency": 1, "size": 1, "richness": 1.5 },
"crude-oil": { "frequency": 1, "size": 1, "richness": 2 },
"uranium-ore": { "frequency": 1, "size": 1, "richness": 1 },
"trees": { "frequency": 1, "size": 1, "richness": 1 },
"enemy-base": { "frequency": 1, "size": 1, "richness": 1 }
},
"cliff_settings": {
"name": "cliff",
"cliff_elevation_0": 10,
"cliff_elevation_interval": 40,
"richness": 1
},
"starting_area": 1,
"property_expression_names": {
"control-setting:moisture:frequency:multiplier": "1",
"control-setting:moisture:bias": "0"
}
}
map-settings.json (Поведение на света в реално време)
Намира се в:
data/map-settings.json
Този файл контролира поведението в реално време, като разпространение на замърсяването, еволюция на враговете и експанзия. За разлика от map-gen-settings.json, някои от тези настройки могат да повлияят на съществуващ запис, когато бъдат променени и картата бъде презаредена.
| Секция | Ключови настройки | Описание |
|---|---|---|
pollution |
enabled, diffusion_ratio, ageing, min_to_diffuse |
Контролира дали замърсяването се разпространява, колко бързо се разпространява и колко бързо се разпада. Деактивирането на замърсяването също деактивира атаките на врагове, задвижвани от замърсяване. |
enemy_evolution |
enabled, time_factor, destroy_factor, pollution_factor |
Контролира как враговете еволюират с времето, от унищожаване на spawners и от замърсяване. По-ниски фактори = по-бавна еволюция. Задайте enabled на false, за да замразите еволюцията напълно. |
enemy_expansion |
enabled, max_expansion_distance, settler_group_min_size, settler_group_max_size, min_expansion_cooldown, max_expansion_cooldown |
Контролира дали враговете строят нови бази и колко агресивно се разширяват. Деактивирайте, за да предотвратите разпространението на biters из картата. |
steering |
default, moving |
Поведение на pathfinding за единици. Рядко изисква корекция. |
Пример за map-settings.json
{
"pollution": {
"enabled": true,
"diffusion_ratio": 0.02,
"min_to_diffuse": 15,
"ageing": 1,
"expected_max_per_chunk": 150,
"min_to_show_per_chunk": 50
},
"enemy_evolution": {
"enabled": true,
"time_factor": 0.000004,
"destroy_factor": 0.002,
"pollution_factor": 0.0000009
},
"enemy_expansion": {
"enabled": true,
"max_expansion_distance": 7,
"settler_group_min_size": 5,
"settler_group_max_size": 20,
"min_expansion_cooldown": 14400,
"max_expansion_cooldown": 216000
}
}
6. Създаване на нова карта
По подразбиране вашият сървър генерира карта със стандартни настройки при първото стартиране. За да създадете свежа карта с персонализирани настройки за генериране:
- Спрете вашия сървър в GPanel.
- Редактирайте
data/map-gen-settings.jsonиdata/map-settings.jsonс желаните от вас настройки за генериране на света и поведение в реално време (вижте секцията по-горе). - Навигирайте до директорията saves в File Manager.
- Изтрийте или преименувайте съществуващия файл за запис (напр.
gamesave.zip), за да може сървърът да генерира нов. - Уверете се, че стартовата променлива
SAVE_NAMEсъответства на името на файла за запис, който искате (по подразбиране еgamesave). - Стартирайте сървъра. Той ще установи, че няма запис с това име, и ще генерира нова карта, използвайки актуализираните настройки.
seed в map-gen-settings.json на конкретно число преди генериране. Използвайте null за случаен seed.
7. Как да се свържете
Има два начина играчите да се свържат към вашия Factorio сървър.
Опция A: Публичен Server Browser
Ако сте конфигурирали SERVER_USERNAME и SERVER_TOKEN с валидни Factorio идентификационни данни и visibility.public е зададено на true:
- Отворете Factorio и кликнете Play.
- Изберете Multiplayer.
- Кликнете Browse public games.
- Използвайте лентата за търсене, за да намерите вашия сървър по име.
- Кликнете върху сървъра, за да се присъедините. Въведете game паролата, ако е зададена.
Опция B: Директна връзка
- Отворете Factorio и кликнете Play.
- Изберете Multiplayer.
- Кликнете Connect to address.
- Въведете IP адреса и порта на вашия сървър във формат:
IP:Port - Кликнете Connect.
8. Управление на записи
Конфигуриране на автоматично записване
Автоматичните записи се контролират от две стартови променливи:
SAVE_INTERVAL-- Колко често сървърът прави автоматичен запис, в минути (по подразбиране: 10).SAVE_SLOTS-- Броят на ротиращите автоматични файлове за запис (по подразбиране: 5). След достигане на лимита най-старият автоматичен запис се презаписва.
Автоматичните файлове за запис се съхраняват в директорията saves с имена като _autosave1.zip, _autosave2.zip и т.н.
Ръчни записи
Можете да задействате ръчен запис по всяко време, като изпълните следната команда в конзолата на GPanel:
/server-save
Това създава запис, използвайки текущия SAVE_NAME. Можете също да запишете под конкретно име на файл:
/server-save my-backup
Качване на съществуващ запис
За да прехвърлите съществуващ Factorio свят на вашия сървър:
- Спрете вашия сървър в GPanel.
- Намерете локалния си файл за запис. На повечето системи Factorio записите се намират в:
- Windows:
%APPDATA%\Factorio\saves\ - Linux:
~/.factorio/saves/ - macOS:
~/Library/Application Support/factorio/saves/
- Windows:
- Качете
.zipфайла за запис в директорията saves на вашия сървър чрез File Manager или SFTP. - В раздела Startup на GPanel задайте
SAVE_NAMEна името на качения файл (без разширението.zip). - Стартирайте сървъра.
FACTORIO_VERSION с версията, с която вашият запис е създаден.
Свързани статии
- Инсталация на модове за Factorio
- Как да намерите IP и порта на вашия сървър
- Как да качвате файлове чрез SFTP
- Ръководство за стартиране на сървъра
Нуждаете се от помощ?
Ако имате проблеми, които не са покрити в това ръководство, отворете тикет за поддръжка с подробности за вашия сървър и описание на проблема.