Оптимізація серверної продуктивності в Arma Reforger: ліміти ШІ та чистка карти
Динамічні режими Conflict та Combat Operations в Arma Reforger пропонують гравцям масштабну симуляцію бойових дій, де фракції б'ються за контрольні точки, викликають підкріплення та постачають ресурси на бази. Серцем цих режимів є система динамічного спавну ШІ (Штучного Інтелекту), керована ігровими майстрами або автоматичними скриптами сценарію.
Проте в умовах затяжної ігрової сесії та високого онлайну сервер починає накопичувати «ігрове сміття»: десятки кістяків спаленої техніки, кинуту зброю, порожні магазини та трупи солдатів. У поєднанні з безконтрольним спавном ботів це призводить до лавиноподібного падіння серверного FPS. У цій статті ми розберемо, як за допомогою прихованих налаштувань JSON та консольних параметрів обмежити ліміти ШІ та налаштувати автоматичну чистку карти на вашому хостингу.
Частина 1: Керування навантаженням від динамічного спавну ШІ
У движку Enfusion кожен бот — це не просто фізична модель, а важкий комплекс систем: прорахунок тактичної поведінки, навігаційна сітка (NavMesh), симуляція огляду, слуху та вузол інвентарю. Одночасне перебування на карті понад 80–100 активних ботів здатне знизити продуктивність сервера до критичних значень.
Для керування цим навантаженням в офіційних сценаріях передбачена вбудована система динамічної десимуляції та лімітів (Garbage Collector & Spawn Limits), параметри якої можна перевизначити через конфігураційний файл сервера config.json або файл налаштувань конкретної місії server_header.json.
Налаштування лімітів ШІ в конфігураційних файлах:
Додайте або змініть такі параметри в блоці налаштувань сценарію (gameProperties / scenarios), щоб жорстко обмежити апетити системи спавну підкріплень:
"gameProperties": {
"SCR_AISpawnParams": {
"m_iMaxActiveAI": 60,
"m_fDespawnRadius": 1000,
"m_fMinSpawnRadius": 300,
"m_bEnableDynamicSimulation": true
}
}
Як це працює: При увімкненні m_bEnableDynamicSimulation сервер перестає витрачати ресурси процесора на прорахунок логіки ботів, які охороняють далеку базу, якщо поруч немає гравців. Бот переходить у статичний стан («засинає») доти, доки до бази не наблизиться техніка чи піхота вашої фракції.
Частина 2: Налаштування автоматичної чистки карти (Garbage Collector)
Движок Enfusion має вбудований збирач сміття — GarbageSystem. За замовчуванням його параметри налаштовані занадто м'яко (заради збереження атмосфери затяжної війни), через що знищені Урали та Хамві можуть стояти на дорогах годинами, перевантажуючи фізичний рушій сервера колізіями.
Щоб змусити сервер оперативно утилізувати знищені сутності, пропишіть у блоці "game" вашого config.json приховані параметри утилізації движка:
"game": {
"GarbageSystem": {
"m_fDeadBodyLifetime": 180,
"m_fDestroyedVehicleLifetime": 300,
"m_fDroppedItemLifetime": 120,
"m_iMaxDeadBodies": 20,
"m_iMaxDestroyedVehicles": 5
}
}
Частина 3: Консольні команди адміністратора для екстреного очищення
Якщо під час івенту або спецоперації серверний FPS різко впав через непередбачені лаги (наприклад, гравці підірвали колону постачання з 10 машин в одній точці), адміністратор сервера з правами суперкористувача може виконати принудительну чистку через вбудовану внутрішньоігрову консоль (викликається клавішею ~ після авторизації по RCon).
| Консольна команда | Що саме вона робить? | Коли застосовувати? |
|---|---|---|
#clear dead |
Моментально видаляє всі мертві тіла піхоти на карті. | Після важких штурмів великих баз у режимі Conflict. |
#clear wrecks |
Знищує всі кістяки підірваної та згорілої техніки. | Якщо дороги заблоковані згорілими машинами, що викликають лаги фізики. |
#clear items |
Очищає карту від кинутих предметів (рюкзаки, зброя, патрони). | Для тотального розвантаження дискової підсистеми та RAM хостингу. |
Інженерні поради для стабільного серверного FPS
- Контролюйте бази постачання (Supply Depots): У режимі Conflict гравці часто акумулюють на головній базі десятки ящиків із припасами. Кожен ящик — це динамічна сутність із реплікацією. Просіть гравців вчасно витрачати припаси на побудову укріплень, а не збирати їх тисячами в одній зоні.
- Регулярні автоматичні рестарти: Навіть при ідеальному налаштуванні Garbage Collector, движок Enfusion схильний до накопичення кешу геометрії. Оптимальний режим роботи для заселеного сервера Arma Reforger — проведення автоматичних рестартів через планувальник завдань хостингу кожні 6–12 годин. Це гарантує повне очищення оперативної пам'яті контейнера.
Резюме для власника сервера: Підтримання високого FPS сервера (бажано не нижче 40–60 кадрів за графіком панелі хостингу) безпосередньо залежить від вашої жорсткості щодо ігрового сміття. Впровадження лімітів на спавн ШІ та швидка утилізація знищених машин дозволять вашому серверу працювати плавно, без просадок і фризів, навіть при максимальному завантаженні слотів.