1. Gerekli Dosyaların Bulunması
- ArkServer.exe başlatıldığında oluşturulan
Saved\Server\Mapsklasörünü açın. - Burada, sunucunuzun haritasının
.mapdosyası (örn.ARKSurvivalEvolved_WildRocks_Dedicated.map) bulunur. - Aynı klasörde
Objective Templatesadında bir dizin yoksa, oluşturun.
2. Özel Script Dosyasını Hazırlama
Objective Templatesklasörüne yeni bir dosya ekleyin, adınıMyCustomObjective.0olarak koyun.- İçerik örneği – Sıcaklık‑Dayanım hedefi:
Kod:
{
"m_Name": "HeatResistance",
"m_Description": "Oyuncuların ısıya dayanılmasını ölçer.",
"m_ObjectiveType": 0,
"m_Threshold": 100,
"m_ScoreType": 1,
"m_BossAI": null,
"m_RewardInterval": 30,
"m_RewardMultiplier": 1.0,
"m_RewardThreshold": 100,
"m_RewardMinScore": 50
}
- Açıklama:
m_Thresholdhedefin tamamlanma şartı (puan).m_RewardIntervalvem_RewardMultiplierpuan kazanım hızı ve çarpanı belirler.
Not: Dosya adının.0ile bitmesini unutmayın; ARK, bu uzantıyı script dosyası olarak tanır.
3. Sunucu Konfigürasyonuna Scripti Eklemek
- Sunucu kök dizinindeki
ShooterGame/Saved/Config/LinuxServer/MyServer.ini(ya da Windows içinMyServer-Windows.ini) dosyasını açın. - Aşağıdaki satırları ilgili bölüme ekleyin:
INI:
[/Script/ShooterGame.ShooterGameMode]
; Özel hedef dosyası ekle
MapObjectives=MyCustomObjective.0
- Bu satır, Oyun Modu sınıfına yeni scripti yüklemesini söyler.
4. Sunucuyu Yeniden Başlatmadan Önce Yedek Alma
Bash:
# Linux için örnek
cp -r /home/arkserver/Saved/Server /home/arkserver/Saved/Server_backup
- Sunucu dosyalarında doğrudan değişiklik yapmadan önce yedek alın; geri alma süreci kritik olabilir.
5. Sunucuyu Yeniden Başlatma
Bash:
# Linux
./ShooterGameServer.BeatSaber?listen?port=7777?queryPort=7778?log=ShooterGame.log? +serverOnly
- Başlangıçta terminalde
objectiveile ilgili mesajların logda görünüp görünmediğini kontrol edin.
6. Hedefin Çalıştığını Doğrulama
- Oyun içinde
!objective listkomutuyla aktif hedefleri listeleyin. - HeatResistance adlı hedefin listede yer alıp, puan kazanma mekanizmasının aktif olup olmadığını kontrol edin.
7. Hata Giderme İpuçları
| Problem | Çözüm |
|---|---|
| Script yok olarak görülüyor | Dosya adının tam olarak .0 ile bitmesini kontrol edin. |
| Hedef listede görünmüyor | MyServer.ini dosyasındaki MapObjectives satırının doğru bölümde olduğundan emin olun. |
| Puan kazanımında gecikme | m_RewardInterval değerini düşürün veya m_RewardMultiplier'ı artırın. |
8. İlave Yöntemler
- Mod Kullanımı:
ARK: Survival Evolvedmodlarından “Objective Mod” gibi hazır paketler de ekleyebilir, script dosyasını mod içerisine koyabilirsiniz. - Çoklu Hedef: Aynı anda birden fazla script eklemek istiyorsanız,
MapObjectivessatırına virgülle ayrılmış liste ekleyin:MapObjectives=MyCustomObjective.0,AnotherObjective.0.
Bu adımları uygularken karşılaşılan soru işaretlerini paylaşmayı unutmayın. Örneğin, “Hedef puanlaması beklediğimden farklı mı gerçekleşiyor?” gibi sorular, topluluğun daha hızlı çözüm bulmasına yardımcı olabilir.