Skip to content

Konfiguracja zaawansowana

Zaawansowane opcje konfiguracji dla administratorów doświadczonych w zarządzaniu serwerami ARK.

Edycja plików INI

SGS Hub oferuje wbudowany edytor INI z podświetlaniem składni. Pliki konfiguracyjne ARK znajdują się w zakładce Files.

GameUserSettings.ini

Główny plik konfiguracyjny serwera ARK. Zawiera ustawienia rozgrywki, serwera i administracji.

Lokalizacja: ShooterGame/Saved/Config/WindowsServer/GameUserSettings.ini

Jak edytować:

  1. Przejdź do panelu serwera → zakładka Files
  2. Znajdź GameUserSettings.ini w drzewie plików
  3. Kliknij plik aby otworzyć edytor
  4. Edytuj wartości
  5. Kliknij Save
  6. Zrestartuj serwer aby zastosować zmiany

Najważniejsze sekcje:

[ServerSettings] - Ustawienia serwera

ini
[ServerSettings]
ServerPassword=                    # Hasło serwera (puste = publiczny)
ServerAdminPassword=YourAdminPass  # Hasło administratora (WYMAGANE)
RCONEnabled=True                   # Włącz RCON
RCONPort=27020                     # Port RCON
ServerCrosshair=True               # Celownik na serwerze
AllowThirdPersonPlayer=True        # Widok TPP
ShowMapPlayerLocation=True         # Pokaż gracza na mapie

[/Script/ShooterGame.ShooterGameMode] - Parametry rozgrywki

ini
[/Script/ShooterGame.ShooterGameMode]
DifficultyOffset=1.0               # Trudność (0.0-10.0)
OverrideOfficialDifficulty=5.0    # Override poziomu trudności

# XP Multipliers
XPMultiplier=3.0                   # 3x XP (domyślnie 1.0)
KillXPMultiplier=2.0               # 2x XP za zabójstwa

# Taming
TamingSpeedMultiplier=5.0          # 5x szybciej oswajasz
DinoCharacterFoodDrainMultiplier=2.0  # Dinozaury głodnieją 2x szybciej (przyspiesza taming)

# Harvesting
HarvestAmountMultiplier=3.0        # 3x więcej surowców
ResourcesRespawnPeriodMultiplier=0.5  # Surowce respawnują 2x szybciej

# Breeding
MatingIntervalMultiplier=0.5       # 2x szybsze rozmnażanie
EggHatchSpeedMultiplier=10.0       # 10x szybsze wylęganie
BabyMatureSpeedMultiplier=10.0     # 10x szybsze dojrzewanie
BabyImprintingStatScaleMultiplier=2.0  # 2x bonusy z imprintingu

Popularne presets:

PresetXPTamingHarvestingBreeding
Oficjalny1.01.01.01.0
Lekki boost2.03.02.03.0
Casual5.010.05.020.0
Ultra casual10.050.010.0100.0

Testowanie ustawień

Po zmianach w INI, przetestuj serwer przez 1-2 dni i zbierz feedback od graczy. Łatwiej jest stopniowo zwiększać mnożniki niż zmniejszać je później (gracze narzekają na "nerfy").

Game.ini

Zaawansowane ustawienia mechanik gry, stacków, engram points, spawn rates.

Lokalizacja: ShooterGame/Saved/Config/WindowsServer/Game.ini

Przykładowe konfiguracje:

Zwiększenie stack sizes (więcej itemów w stacku):

ini
[/Script/ShooterGame.ShooterGameMode]
ConfigOverrideItemMaxQuantity=(ItemClassString="PrimalItemResource_Stone_C",Quantity=(MaxItemQuantity=1000,bIgnoreMultiplier=true))
ConfigOverrideItemMaxQuantity=(ItemClassString="PrimalItemResource_Wood_C",Quantity=(MaxItemQuantity=1000,bIgnoreMultiplier=true))
ConfigOverrideItemMaxQuantity=(ItemClassString="PrimalItemResource_Thatch_C",Quantity=(MaxItemQuantity=500,bIgnoreMultiplier=true))

Custom loot drops:

ini
ConfigOverrideSupplyCrateItems=(SupplyCrateClassString="SupplyCrate_Level03_C",MinItemSets=1,MaxItemSets=3,NumItemSetsPower=1.0,bAppendItemSets=True,ItemSets=(...))

Engram points per level:

ini
OverridePlayerLevelEngramPoints=10  # 10 punktów engramów per poziom zamiast domyślnych

Custom dino spawns (więcej Rexów, mniej Dodów):

ini
DinoSpawnWeightMultipliers=(DinoNameTag="Rex",SpawnWeightMultiplier=2.0)
DinoSpawnWeightMultipliers=(DinoNameTag="Dodo",SpawnWeightMultiplier=0.1)

Ostrożnie z Game.ini

Błędna konfiguracja Game.ini może sprawić, że serwer nie wystartuje lub będzie crashować. Zawsze zrób backup przed edycją!

Jeśli serwer nie startuje po zmianie Game.ini:

  1. Przywróć z backupu
  2. Dodawaj zmiany po jednej linijce
  3. Testuj restart po każdej zmianie

Parametry uruchomieniowe

Launch parameters (command-line arguments) pozwalają dostosować sposób uruchamiania serwera ARK.

Gdzie edytować:

  1. Panel serwera → zakładka Settings
  2. Sekcja "Advanced" → "Launch Parameters"
  3. Edytuj pole tekstowe
  4. Zapisz i zrestartuj serwer

Format:

-option1 -option2=value -option3?query1=value1?query2=value2

Najważniejsze parametry:

Performance & Stability:

bash
-NoHangDetection          # Wyłącz detekcję zawieszenia (zapobiega false positives)
-UseDynamicConfig         # Ładuj konfigurację dynamicznie
-ForceAllowCaveFlyers     # Pozwól na latające stworzenia w jaskiniach
-PreventHibernation       # Zapobiegnij hibernacji dinozaurów (lepsza wydajność)
-ServerRCONOutputBuffer=2048  # Zwiększ bufor RCON (dla długich komend)

Memory Management:

bash
-lowmemory                # Tryb niskiej pamięci (dla serwerów <8GB RAM)
-StasisKeepControllers    # Utrzymuj kontrolery w stasis (oszczędza RAM)
-NoMemoryBias             # Nie preferuj pamięci (lepsze dla Linux)

Logging:

bash
-EnableIdlePlayerKick     # Wyrzucaj nieaktywnych graczy
-servergamelog            # Włącz szczegółowe logi gry
-ServerGameLogIncludeTribeLogs  # Logi tribe w game logu

Multi-threading:

bash
-USEALLAVAILABLECORES     # Użyj wszystkich rdzeni CPU
-usecache                 # Włącz cache (szybsze ładowanie)

Przykładowa konfiguracja (serwer PvP):

bash
-NoHangDetection -USEALLAVAILABLECORES -usecache -PreventHibernation -servergamelog -ServerRCONOutputBuffer=2048

Przykładowa konfiguracja (serwer PvE casual):

bash
-NoHangDetection -ForceAllowCaveFlyers -USEALLAVAILABLECORES -EnableIdlePlayerKick -usecache

Testuj po zmianach

Niektóre parametry mogą destabilizować serwer w zależności od konfiguracji hardware. Po dodaniu nowych parametrów, monitoruj serwer przez 24h i sprawdzaj logi pod kątem crashy.

Klastry ARK

Klastry pozwalają graczom przenosić swoje postacie, dinozaury i przedmioty między serwerami ARK.

Czym jest klaster?

Cluster to grupa serwerów ARK, które dzielą dane o graczach i umożliwiają transfer między mapami.

Przykładowy scenariusz: Gracz rozpoczyna na serwerze "The Island", oswaja Rexa, farmuje metal, następnie transferuje swoją postać + Rexa + metal na serwer "Scorched Earth" aby zdobyć Wyverna, po czym wraca z Wyvernem na "The Island".

Co można transferować:

  • ✅ Postać gracza (poziom, engrams, inventory)
  • ✅ Oswojone dinozaury (stats, saddles, inventory)
  • ✅ Przedmioty (w inventory gracza lub dino)

Czego NIE można transferować:

  • ❌ Struktury (budynki, crafting stations)
  • ❌ Dzikie dinozaury
  • ❌ Tribe ownership (trzeba recreate na nowej mapie)

Wymagania:

  • Wszystkie serwery w klastrze muszą być własnością tego samego użytkownika SGS Hub
  • Wszystkie serwery muszą być na tym samym planie Pterodactyl (ta sama instancja)
  • Serwery mogą być na różnych mapach, ale muszą być tą samą wersją gry (ASE lub ASA)

Popularne konfig klastra

Najczęściej używane kombinacje map:

  • Story Cluster: The Island → Scorched Earth → Aberration → Extinction → Genesis 1 & 2
  • Farming Cluster: The Island (base) + Ragnarok (resources) + Valguero (dinos)
  • PvP Cluster: The Island (PvP arena) + Crystal Isles (farming safe zone)

Tworzenie klastra

Krok 1: Utwórz serwery

Najpierw utwórz wszystkie serwery, które mają być w klastrze. Zobacz Tworzenie serwera.

Krok 2: Skonfiguruj cluster w SGS Hub

  1. Przejdź do panelu pierwszego serwera
  2. Otwórz zakładkę Settings
  3. Znajdź sekcję Cluster Configuration
  4. Kliknij Create Cluster
  5. Wprowadź nazwę klastra (np. "My ARK Cluster")
  6. Kliknij Save

Krok 3: Dodaj pozostałe serwery do klastra

  1. Przejdź do panelu drugiego serwera
  2. Zakładka SettingsCluster Configuration
  3. Wybierz klaster z listy dropdown
  4. Kliknij Join Cluster
  5. Powtórz dla wszystkich serwerów

Krok 4: Zrestartuj wszystkie serwery

Ważne: Wszystkie serwery w klastrze muszą być zrestartowane, aby zmiany weszły w życie.

Co się dzieje w tle:

SGS Hub automatycznie:

  1. Tworzy współdzielony katalog cluster data w Pterodactyl
  2. Aktualizuje GameUserSettings.ini na każdym serwerze:
    ini
    [ServerSettings]
    ClusterDirOverride=/path/to/shared/cluster
    ClusterId=my-ark-cluster-id
  3. Montuje współdzielony storage do wszystkich kontenerów Docker
  4. Konfiguruje uprawnienia dostępu

Transfer wymaga restartu

Po pierwszym utworzeniu klastra, gracze nie będą mogli transferować dopóki wszystkie serwery nie zostaną zrestartowane. Upewnij się, że ostrzegasz graczy przed restartem!

Zarządzanie klastrem

Dodawanie nowego serwera do klastra:

  1. Utwórz nowy serwer (np. nowa mapa)
  2. W ustawieniach nowego serwera → Join existing cluster
  3. Zrestartuj wszystkie serwery w klastrze

Usuwanie serwera z klastra:

  1. Panel serwera → Settings → Cluster Configuration
  2. Kliknij Leave Cluster
  3. Potwierdź akcję
  4. Zrestartuj serwer

Dane gracza pozostają w klastrze

Gdy serwer opuszcza klaster, dane transferów graczy NIE są usuwane z shared storage. Jeśli gracz zrobił transfer na ten serwer, jego postać będzie "uwięziona" i nie będzie mógł wrócić bez ręcznego restore save'a.

Zalecane: Przed usunięciem serwera z klastra, ogłoś to graczom z 7-dniowym wyprzedzeniem i poproś aby przenieśli postacie na inne serwery klastra.

Usuwanie całego klastra:

  1. W panelu dowolnego serwera w klastrze
  2. Settings → Cluster Configuration → Delete Cluster
  3. Potwierdź usunięcie
  4. Wszystkie serwery opuszczą klaster
  5. Zrestartuj wszystkie serwery

Monitorowanie transferów:

SGS Hub nie oferuje jeszcze widoku transfer history, ale możesz sprawdzić:

  • Logi serwera (Console) - szukaj "Player transferred" lub "Upload character"
  • Pliki cluster data w zakładce Files: /cluster/ (zawiera .arkprofile i .arktributedata)

Backup cluster data:

Dane klastra są backupowane wraz z serwerem podczas Full Backup. Thin Backup NIE obejmuje cluster data.

Troubleshooting:

Problem: Gracz nie może się transferować, komunikat "Character upload failed"

  • Przyczyna: Serwery nie są w tym samym klastrze lub ClusterId się nie zgadza
  • Rozwiązanie: Sprawdź GameUserSettings.ini wszystkich serwerów - ClusterId musi być identyczne

Problem: Po transferze gracz straci przedmioty z inventory

  • Przyczyna: Upload timeout - gracz został rozłączony podczas transferu
  • Rozwiązanie: Sprawdź folder /cluster/ - plik .arkprofile zawiera dane gracza, możesz restore ręcznie

Problem: Transfer działa tylko w jedną stronę (A→B działa, B→A nie działa)

  • Przyczyna: Serwer B nie ma zamontowanego shared storage lub uprawnienia są złe
  • Rozwiązanie: Skontaktuj się z supportem SGS Hub

Optymalizacja wydajności

Zaawansowane techniki optymalizacji serwerów ARK dla lepszej wydajności i stabilności.

CPU optimization

ARK to gra wymagająca CPU, szczególnie przy dużej liczbie graczy i dinozaurów.

1. Włącz multi-threading

Dodaj do launch parameters:

bash
-USEALLAVAILABLECORES -usecache

To pozwoli ARK używać wszystkich rdzeni CPU dostępnych w kontenerze Docker.

2. Ustaw affinity CPU (zaawansowane)

Jeśli masz dedykowany serwer z wieloma rdzeniami, możesz przypisać konkretne rdzenie do kontenera ARK w Pterodactyl. Skontaktuj się z supportem SGS Hub, jeśli potrzebujesz custom CPU affinity.

3. Ograniczcie liczbę aktywnych dinozaurów

W GameUserSettings.ini:

ini
[/Script/ShooterGame.ShooterGameMode]
MaxNumberOfPlayersInTribe=20       # Ogranicz rozmiar tribe
MaxTamedDinos=500                  # Max oswojonych dino na mapie
bLimitTurretsInRange=True          # Limit turrets w obszarze (PvP)
LimitTurretsRange=10000            # Zasięg limitu turrets
LimitTurretsNum=100                # Max turrets w zasięgu

4. Włącz dino hibernation

W GameUserSettings.ini:

ini
[ServerSettings]
bForceCanRideFliers=True

Bez -PreventHibernation w launch params, dinozaury daleko od graczy wejdą w hibernację (oszczędza CPU).

Monitorowanie CPU:

  • Panel serwera → Overview → CPU Usage
  • Normalne: 30-60%
  • Wysokie: 70-85% (rozważ upgrade planu)
  • Krytyczne: >90% (serwer będzie lagować)

RAM optimization

ARK może zużywać 8-12 GB RAM dla dużych serwerów. Optymalizacja pamięci zapobiega crashom.

1. Regularnie restartuj serwer

ARK ma memory leak - RAM rośnie z czasem. Ustaw automatyczny restart co 6-12h:

Schedules → Create Schedule → Restart → Cron: 0 */6 * * *

2. Ograniczcie liczbę struktur

W GameUserSettings.ini:

ini
MaxStructuresInRange=10500         # Max struktur w obszarze (domyślnie 10500)

Niższa wartość = mniej struktur = mniej RAM, ale gracze będą mieć limit budowania.

3. Włącz -lowmemory dla serwerów z <8GB RAM

W launch parameters:

bash
-lowmemory -StasisKeepControllers

4. Wyczyść stare logi

Stare pliki logów mogą zajmować GB miejsca i pamięci. Ustaw schedule do czyszczenia:

  1. Schedules → Create Schedule
  2. Action: CUSTOM
  3. Command: find /ShooterGame/Saved/Logs -type f -mtime +7 -delete
  4. Cron: 0 3 * * 0 (co niedzielę o 3:00 AM)

Monitorowanie RAM:

  • Panel serwera → Overview → RAM Usage
  • Bezpieczne: <70% limitu
  • Uwaga: 70-85%
  • Krytyczne: >90% (serwer może crashować)

RAM limit = crash

Gdy ARK osiągnie 100% limitu RAM, kontener Docker zabije proces (OOM killer). Serwer natychmiast crashnie bez graceful shutdown, ryzykując korupcję save'ów.

Jeśli często crashujesz z powodu RAM:

  1. Upgrade do wyższego planu (więcej RAM)
  2. Skróć interval restart (4-6h zamiast 12h)
  3. Ogranicz liczbę modów (każdy mod = więcej RAM)

Network optimization

Optymalizacja sieci poprawia responsywność i zmniejsza lag.

1. Ustaw odpowiedni tick rate

W GameUserSettings.ini:

ini
[/Script/OnlineSubsystemUtils.IpNetDriver]
NetServerMaxTickRate=60            # Max tick rate serwera (domyślnie 30)
LanServerMaxTickRate=60            # Tick rate dla LAN

Wartości:

  • 30 Hz (domyślny) - Standardowy, oszczędny
  • 60 Hz - Płynniejsza rozgrywka, wymaga lepszego CPU i sieci
  • 120 Hz - Tylko dla bardzo małych serwerów (<10 graczy) z mocnym hardware

2. Zwiększ bandwidth limits

W GameUserSettings.ini:

ini
[/Script/OnlineSubsystemUtils.IpNetDriver]
MaxClientRate=100000               # Max KB/s per klient (domyślnie 10000)
MaxInternetClientRate=100000       # Max KB/s internet (domyślnie 10000)

Wyższe wartości = mniej throttling, ale więcej bandwidth użycia.

3. Ograniczcie connectionów

W GameUserSettings.ini:

ini
[ServerSettings]
MaxPlayers=50                      # Max graczy

Im mniej graczy, tym mniej obciążenie sieci.

4. Monitoruj ping graczy

W panelu Overview → Players → kolumna Ping:

  • <50ms - Doskonały
  • 50-100ms - Dobry
  • 100-200ms - Akceptowalny
  • 200ms - Lag, gracze narzekają

Troubleshooting lag:

Problem: Gracze mają wysoki ping (>150ms), ale serwer CPU/RAM są OK

  • Przyczyna: Geograficzna odległość lub przeciążona sieć Pterodactyl node
  • Rozwiązanie: Rozważ zmianę lokalizacji serwera (EU-West vs EU-Central) lub skontaktuj się z supportem

Problem: Serwer laguje tylko gdy >20 graczy online

  • Przyczyna: Tick rate za wysoki dla CPU lub bandwidth limit
  • Rozwiązanie: Zmniejsz NetServerMaxTickRate do 30 lub upgrade CPU

Problem: Desync (gracze widzą różne rzeczy, dinozaury "teleportują się")

  • Przyczyna: Packet loss lub tick rate za niski
  • Rozwiązanie: Sprawdź logi pod kątem "Connection timeout", zwiększ tick rate do 60

Następne kroki

Po optymalizacji serwera, poznaj:

Dokumentacja SGS Hub