Bloga Dön

UEFN Haritanız Neden Öldü: Fortnite Creative No Discovery Push Sorununu Çözme

Yayınlanma tarihi 30 Mart 2026
UEFN Haritanız Neden Öldü: Fortnite Creative No Discovery Push Sorununu Çözme

Her UEFN geliştiricisi, inşa etmesi 300 saat süren bir haritada "Yayınla" düğmesine basıp, aktif oyuncu sayısının bir hafta boyunca tam olarak sıfırda kalmasını izlemenin o moral bozucu hissini bilir. Daha da kötüsü, korkunç "güncelleme laneti"dir; 5.000 anlık kullanıcı (CCU) çeken bir haritadaki bir spawn hatasını düzeltmek için küçük bir yama yayınlarsınız ve bir gecede algoritma trafiğinizi sıfıra indirir. Yalnız değilsiniz ve hesabınız bozuk değil.

fortnite creative no discovery push olarak bilinen bu fenomen nadiren bir bug'dır. Bu, Epic Games'in Discovery algoritmasının oturum telemetrisini (telemetry) nasıl ağırlıklandırdığının katı, matematiksel bir sonucudur. Haritanız impression (gösterim) almayı bıraktığında, bu, temel metriklerinizin oyuncu deneyimini korumak için tasarlanmış otomatik bir shadowban'i tetiklediği anlamına gelir.

Bu teknik derinlemesine incelemede, Discovery algoritmasının haritaları tam olarak neden terk ettiğini tersine mühendislik (reverse-engineering) ile analiz edeceğiz. Sessiz sunucu çökmelerinin (silent server crashes) nasıl teşhis edileceğini, oyuncu kaybını (churn) izlemek için özel Verse analytics kodlarının nasıl yazılacağını ve güncellemelerinizi algoritmanın kalibrasyon aşamalarından sağ çıkacak şekilde nasıl mimari edeceğinizi ele alacağız.

Discovery Algoritması Kalibrasyonunun Anatomisi

Haritanızın trafiğini neden kaybettiğini anlamak için Discovery sekmesinin yeni içeriği nasıl değerlendirdiğini anlamanız gerekir. Epic'in algoritması bir kara kutudur, ancak yıllar süren kolektif telemetri analizi, her yeni ada kodu yayınladığınızda veya bir güncelleme gönderdiğinizde ortaya çıkan net bir "kalibrasyon aşaması" olduğunu ortaya koymuştur.

Bir harita yayınlandığında, Epic ona bir temel ağırlık atar ve adanıza küçük, kontrollü bir test grubu oyuncu gönderir. Algoritma daha sonra bu test grubundan gelen telemetriyi agresif bir şekilde izler. Veriler kötüyse kalibrasyon başarısız olur ve harita anında gömülür.

Peki, algoritma için tam olarak ne "kötü telemetri" teşkil eder? Bu, dört kritik başarısızlık noktasına indirgenir:

  1. High Bounce Rate: Oyuncuların katıldıktan sonraki ilk 60 saniye içinde ayrılması.
  2. Short Average Playtime: Toplam oturum süresinin 10 dakikanın altında olması.
  3. Low Return Rate: Oyuncuların haritayı favorilere eklememesi veya 2. Gün (D1) veya 7. Gün (D7) oturumları için geri dönmemesi.
  4. High Crash/Error Rate: Dedicated Server'ın takılması veya istemcinin çökmesi (özellikle Nintendo Switch veya Mobil cihazlarda).

Başarılı olan mevcut bir haritaya güncelleme gönderdiğinizde, algoritma yeni build'in kararlılığını test etmek için Discovery yerleşiminizi geçici olarak kısıtlar. Güncellemeniz yanlışlıkla bir memory leak veya test grubunun erken ayrılmasına neden olan bir UI hatası getirirse, haritanız yeniden kalibrasyon kontrolünde başarısız olur. Trafiğiniz sıfırlanır ve yalnızca sosyal medya takipçilerinize güvenmek zorunda kalırsınız.

Adım 1: Sessiz Sunucu Çökmelerini ve Takılmalarını Teşhis Etme

Haritanızın gameplay loop'unu yeniden tasarlamaya başlamadan önce teknik hataları elemeniz gerekir. Discovery algoritması, yüksek network desyncs veya bellek sorunları olan haritaları agresif bir şekilde filtreler. Siz sorunsuz bir şekilde üst düzey bir PC'de oynuyor olabilirsiniz, ancak haritanız düşük özellikli konsollarda çöküyorsa, küresel metrikleriniz yerle bir olacaktır.

Discovery trafiğindeki ani düşüşün en yaygın suçlusu, optimize edilmemiş Verse kodu veya aşırı bellek kullanımı nedeniyle oluşan sessiz bir sunucu takılmasıdır (server hitch). Haritanız Spatial Thermometer kullanıyorsa, hücrelerinizin 100.000 bellek sınırını aşmadığından emin olun. Bir hücre aşırı yüklendiğinde, mobil oyuncular için büyük frame düşüşlerine neden olur ve bu da anında bağlantı kesilmelerine yol açar.

Ayrıca, network drivers'larınızı kontrol edin. Oyuncularınız donuyor ancak bağlantıları kesilmiyorsa, resmi bir çökme olarak kaydedilmeden oturumu mahveden bir network timeout sorunuyla karşı karşıya olabilirsiniz. Bu özel ağ davranışını hata ayıklamak (debug) için Uefn Session Launch Timeout Nightmares Diagnosing Unreal Engine Network Drivers hakkındaki derinlemesine incelememizi okuyun.

Adım 2: Churn'ü İzole Etmek İçin Bir Verse Analytics Pipeline'ı Oluşturma

Sunucunuz kararlıysa ve bellek optimize edilmişse, sorun oyun tasarımınızdadır. Oyuncular ayrılıyor ve tam olarak nerede ve neden bıraktıklarını bilmeniz gerekiyor. Creator Portal'daki genel "Ortalama Oyun Süresi" metriğine güvenmek yeterli değildir. Granüler verilere ihtiyacınız var.

Verse aracılığıyla analytics_device kullanarak belirli oyuncu kilometre taşlarını izleyebilirsiniz. 1.000 oyuncu spawn oluyorsa ancak yalnızca 200'ü "Tutorial Tamamlandı" etkinliğini tetikliyorsa, darboğazınızın tam olarak nerede olduğunu bilirsiniz.

Aşağıda, oyuncu onboarding sürecini izleyen ve AFK churn'ü önlemek için bir failsafe (güvenlik mekanizması) uygulayan sağlam bir Verse uygulaması bulunmaktadır.

Verse Kodu: Özel Analytics ve Anti-Churn Failsafe

using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /EpicGames.com/Temporary/Diagnostics }

# A custom device to track player onboarding and prevent spawn-trapping
analytics_manager_device := class(creative_device):

    @editable
    SpawnPad : player_spawner_device = player_spawner_device{}
    
    @editable
    TutorialZone : mutator_zone_device = mutator_zone_device{}
    
    @editable
    MainArenaTeleporter : teleporter_device = teleporter_device{}
    
    @editable
    AnalyticsDevice : analytics_device = analytics_device{}

    OnBegin<override>()<suspends>:void=
        # Subscribe to critical onboarding events
        SpawnPad.SpawnedEvent.Subscribe(OnPlayerSpawned)
        TutorialZone.AgentEntersEvent.Subscribe(OnTutorialCompleted)

    OnPlayerSpawned(Agent:agent):void=
        # Log that the player successfully loaded into the map
        AnalyticsDevice.RecordPlayerEvent(Agent, "player_spawned")
        Print("Analytics: Player Spawned Logged")
        
        # Start a failsafe timer to ensure they don't get stuck in spawn
        spawn{ StartFailsafeTimer(Agent) }

    OnTutorialCompleted(Agent:agent):void=
        # Log that the player survived the initial onboarding
        AnalyticsDevice.RecordPlayerEvent(Agent, "tutorial_cleared")
        Print("Analytics: Tutorial Cleared Logged")

    StartFailsafeTimer(Agent:agent)<suspends>:void=
        # Give the player 30 seconds to figure out how to leave the spawn room
        Sleep(30.0) 
        
        # If they are still in the spawn zone after 30 seconds, force them into the action
        if (TutorialZone.IsInVolume[Agent] = false):
            MainArenaTeleporter.Teleport(Agent)
            AnalyticsDevice.RecordPlayerEvent(Agent, "failsafe_teleported")
            Print("Failsafe: Teleported stuck player to arena")

Bu Kod Discovery Push'unuzu Nasıl Kurtarır?

Bu script iki kritik şey yapar. İlk olarak, Creator Portal'ınıza özel etkinlik telemetrisi gönderir. Artık player_spawned etkinliklerinin tutorial_cleared etkinliklerine oranını karşılaştırabilirsiniz. Büyük bir düşüş varsa, spawn odanız çok kafa karıştırıcıdır veya UI'ınız bozuktur.

İkinci olarak, bir StartFailsafeTimer içerir. Ortalama Oyun Süresini öldüren en büyük etkenlerden biri, oyuncuların spawn odasında takılıp kalması, hüsrana uğraması ve lobiye geri dönmesidir. Onları 30 saniye sonra zorla ana arenaya ışınlayarak, anında core loop'a dahil edersiniz ve 60 saniyelik bounce rate'i büyük ölçüde azaltırsınız.

Epic'in analytics device'a ilettiğiniz string'lere katı sınırlar getirdiğini unutmayın. Etkinlikleriniz portalda görünmüyorsa, string'iniz çok uzun olabilir. Biçimlendirme kuralları için Cracking The 32 Character Uefn Analytics Device Event Name Limit Verse Tutorial kılavuzumuza göz atın.

Adım 3: Daha Yüksek Retention İçin Oturumlar Arası Progresyon Mimarisi

Oyuncuların ilk 30 saniyeyi geçmesini sağlamak bounce rate sorununuzu çözer, ancak 10 günden fazla bir Discovery push sürdürmek için 1. Gün ve 7. Gün retention (elde tutma) oranlarını fethetmelisiniz. Oyuncuların yarın geri dönmek için bir nedeni yoksa, haritanız kaçınılmaz olarak algoritmadan düşecektir.

Yüksek retention elde etmek için persistent progression (kalıcı ilerleme) sistemine ihtiyacınız vardır. UEFN yerleşik kayıt cihazları sağlasa da bunlar oldukça kısıtlıdır. Yalnızca tek bir haritada çalışırlar ve bir güncellemede değişken yapılarınızı değiştirmek oyuncu kayıt dosyalarını kolayca bozabilir ve kitlesel churn'e yol açabilir.

Gerçekten ölçeklenmek için modern UEFN içerik oluşturucuları harici progresyon sistemleri kuruyor. Birden fazla haritadan oluşan bir evrende oyuncu istatistiklerini izlemek, küresel gerçek zamanlı leaderboards işletmek veya oyunlar arası VIP ödülleri vermek harici bir Backend mimarisi gerektirir.

Bunu kendiniz inşa etmek; load balancers, database sharding, WebSocket bağlantıları ve SSL sertifika yönetimi kurmayı gerektirir — bu da kolayca 4-6 haftalık özel mühendislik çalışması demektir. horizOn ile bu backend hizmetleri önceden yapılandırılmış olarak gelir. Ölçeklenebilir veritabanlarına ve gerçek zamanlı multiplayer altyapısına anında erişim sağlayarak, bulut altyapısıyla boğuşmak yerine oyununuzun progresyon sistemlerini yayınlamanıza olanak tanır.

Adım 4: "Güncelleme Cezası"ndan Sağ Çıkmak

Bir haritanın güncellemenin hemen ardından Discovery push'unu kaybetmesi sorununa değinelim. Daha önce belirtildiği gibi, yeni bir sürüm yayınlamak algoritmayı haritanızı yeniden kalibre etmeye zorlar.

Haritanızın en yüksek anlık kullanıcı (CCU) saatlerinde bir güncelleme yayınlarsanız, kendinizi aktif olarak sabote ediyorsunuz demektir. Sunucular yeni sürümü uygulamak için yeniden başladığında, aktif oyuncular dışarı atılır. Bu, oturum sonlandırmalarında büyük bir artış olarak kaydedilir. Algoritma binlerce oyuncunun aynı anda ayrıldığını görür, haritanızın bozuk olduğunu varsayar ve Discovery yerleşiminizi anında geri çeker.

Güncelleme cezasından kaçınmak için UEFN haritanıza bir live-ops hizmeti gibi davranmalısınız:

  • Asla yoğun saatlerde güncelleme yapmayın. Güncellemeleri her zaman trafiğin en düşük olduğu zaman diliminde (genellikle 03:00 - 05:00 EST arası) gönderin.
  • Güncellemelerinizi toplu hale getirin. Oyun bozan bir exploit olmadığı sürece günlük düzeltmeler yayınlamayın. Değişikliklerinizi haftalık veya aylık "Sezonlar" halinde gruplandırın. Her güncelleme bir risktir; algoritmayı yeniden kalibre etmeye zorladığınız sayıyı en aza indirin.
  • QA için Private Versions kullanın. Bir Verse script'inin çalışıp çalışmadığını test etmek için asla genel yayın (public release) dalını kullanmayın. Özel bir kod oluşturun, 10-15 kişilik bir test grubunu davet edin ve build'i genele açmadan önce çökme oranının %0'da kaldığını doğrulayın.

Discovery Push'u Tetiklemek İçin 5 En İyi Uygulama

10 günden fazla bir süredir trafiksiz kaldıysanız, algoritmayı sizi tekrar fark etmeye aktif olarak zorlamanız gerekir. Bir sonraki güncellemenizde bu beş savaşta test edilmiş en iyi uygulamayı uygulayın:

  1. Time-to-First-Action (TTFA) Optimizasyonu: Giriş sinematiklerinizi kesin. Oyuncular yüklendikten sonraki 5 saniye içinde anlamlı bir girdi yapabilmelidir. TTFA'nız 15 saniyenin üzerindeyse, bounce rate Discovery şansınızı öldürecektir.
  2. Harici Trafik ile Thumbnail A/B Testi: Epic'in algoritması Tıklama Oranına (CTR) büyük ağırlık verir. Organik Discovery'ye güvenmeden önce TikTok veya YouTube Shorts'tan trafik çekin. Dönüşüm oranını izleyin. Harici trafik thumbnail'a tıklamıyorsa, Epic'in organik trafiği de tıklamayacaktır.
  3. Failsafe Spawner'lar Uygulayın: Asla tek bir spawn pad'e güvenmeyin. Gizli konumlara ikincil ve üçüncül spawn pad'leri yerleştirin ve birincil pad bir engel algılarsa bunlar arasında geçiş yapmak için Verse kullanın.
  4. Verse Concurrency Yükünü En Aza İndirin: Sonsuz döngüler çalıştıran 50 farklı spawn{} bloğuna sahip olmak sunucu takılmasına neden olur. Eşzamanlı döngülerinizi, tüm sistemleri kontrollü bir tick rate ile aynı anda güncelleyen tek bir yönetici cihazda birleştirin.
  5. 8 Dakika Eşiğini İzleyin: Creator Portal'ınızı günlük olarak kontrol edin. Discovery algoritması için resmi olmayan "hayatta kalma çizgisi" 8 dakikalık ortalama oyun süresidir. Haritanız bu metriğin altına düşerse, oturum süresini yapay olarak uzatmak için oyun ortası hedefleri ekleyen bir içerik güncellemesini hemen yayınlamalısınız.

Tahmin Etmeyi Bırakın, Ölçmeye Başlayın

fortnite creative no discovery push bir lanet değil, bir optimizasyon eksikliğidir. Algoritma kararlılık, anında etkileşim ve uzun vadeli retention talep eder. Sıkı Verse analytics uygulayarak, sessiz sunucu zaman aşımlarını çözerek ve güncelleme temponuzu dikkatli bir şekilde yöneterek haritanızın görünürlüğünün kontrolünü yeniden kazanabilirsiniz.

UEFN adalarınıza statik haritalar gibi davranmayı bırakın ve onlara live-service ürünleri gibi davranmaya başlayın. Verilerinizi izleyin, onboarding sürecinizi optimize edin ve oyuncuların her gün geri dönmesini sağlayacak progresyon sistemleri kurun.

Multiplayer backend'inizi ölçeklendirmeye ve oyuncuların geri gelmesini sağlayan haritalar arası progresyon sistemleri kurmaya hazır mısınız? horizOn'u ücretsiz deneyin veya harici oyun durumu yönetiminin ne kadar kolay olabileceğini görmek için API dokümanlarına göz atın.


Kaynak: NO DISCOVERY PUSH FOR MORE THAN 10 DAYS WORKING DAILY