Steamworks Belgeleri
Steam Ağ Oluşturma
Oyuncular arasında mesaj göndermek için kullanılabilecek birkaç farklı ağ oluşturma API'ımız mevcut.

En yeni API'mız, paketleri varsayılan olarak Valve ağı üzerinden aktarır ve böylece oyuncuların ve oyun sunucularının korunmuş olmasını sağlar. Daha yüksek performansa ve daha yüksek kaliteli güvenilirlik katmanına sahiptir. Ayrıca sıradan UDP bağlanılabilirliğini de destekler. github adresinde açık kaynaklı sürümü mevcuttur.
  • ISteamNetworkingMessages rastgele kullanıcılara mesaj göndermeye yönelik üst düzey bir arayüzdür. Bağlantı tanıcıtılarının kullanılmaması açısından UDP'ye benzer. sendto() soketine benzer şekilde, her mesaj gönderdiğinizde mesaj alıcısını belirtirsiniz. Bir kullanıcıyı "istemci" seçmenize ve bağlantıyı başlatmanıza gerek yoktur. Ayrıca sunucunun istemci bağlantılarını "dinlemesine" veya onları "kabul etmesine" de gerek yoktur. İki kullanıcı da anında mesaj gönderebilir. UDP'ye çok benzer olduğu için, mevcut UDP kodunu bağlamak en kolay API olabilir. Ancak UDP'den farklı olarak, API tek paketten büyük mesajları ve güvenilir mesaj teslimini destekler. Trafik Valve omurgasından yönlendirilir veya uygun olduğunda doğrudan bağlantı kurulabilir.
  • ISteamNetworkingSockets Mesaj göndermek ve almak için kullanılan alt düzey bir bağlantı tanıtıcısı odaklı bir arayüzdür.
  • ISteamNetworkingUtils] - Rastgele internet sunucuları arasındaki ping sürelerini tahmin etmek gibi çeşitli araçları içeren yardımcı programlardır.
  • steamnetworkingtypes birçok yaygın türü ve yardımcı programı içeren bir başlıktır.
  • Steam Datagram Relay Oyun trafiğinizi Valve omurgası üzerinden aktarmaya yönelik bir hizmet. Bu IP adreslerinin ifşa olmasını önler ve çoğu durumda ping sürelerini ve bağlantı kalitesini iyileştirir. Tüm P2P bağlantılar uygun olduğunda otomatik olarak Vave omurgasından yönlendirilir. Bu belgede özelleştirilmiş sunucu oyunları için SDR kullanmak, ping sürelerini optimize etmek ve sunucuları DoS saldırısından korumak için neler yapmanız gerektiği açıklanmaktadır.

ISteamNetworking daha eski, onaylanmamış bir API'dır. Gelecekteki bir sürümde bu API'ı SDK'den kaldırabileceğimiz için, bunu kullanıyorsanız kısa süre içinde yeni bir API'ya geçmeniz daha iyi olur.

Bu API en iyi Steam Eşleştirmesi ve Lobileri ile birlikte kullanıldığı zaman çalışır. Paket türlerine bağlı olarak her şeyi sunucu görevi gören tek bir kullanıcı üzerinden (genellikle lobi sahibi) veya oyun sunucusu üzerinden gönderebilir ya da her şeyi doğrudan her oyuncuya gönderebilirsiniz.

İnternette ağ oluşturmayla ilgili birçok kapsamlı yazı bulabilirsiniz. Bunlardan size tavsiye ettiklerimiz aşağıdadır:

İstemci-sunucu iletişimi için ISteamNetworkingSockets kullanımının örneği için bkz. Steamworks API Example Application (SpaceWar).