CodeBlanks Logo Icon CodeBlanks

Steam için derleme

Steam için Windows derleme ve Steamworks entegrasyonunu öğrenirsin.

Steam için Windows derlemesi

Steam platformu masaüstü için çoğunlukla Standalone Windows 64-bit (x86_64) derlemesi talep eder. Derleme alındığında bir ana çalıştırılabilir dosya (Oyun.exe) ve oyun varlıklarını barındıran veri klasörü (Oyun_Data) üretilir.

// SteamPipe araci ile Steam sunucularina depot yuklenir:
// Klasor yapisi: Oyun.exe ve UnityPlayer.dll ayni dizinde kalmalidir

Steamworks SDK entegrasyonu başarımlar, bulut kayıtları ve atölye desteği için gereklidir.

Steamworks başlatma ve SteamPipe

Steam API, oyun döngüsünün en başında SteamAPI.Init() çağrısı ile başlatılır. Steam istemcisi açık değilse bu fonksiyon false döner ve oyun yetkisiz çalıştırmayı engellemek için kapatılabilir.

if (!Steamworks.SteamAPI.Init()) {
    Debug.LogError("Steam istemcisi bulunamadi!");
    Application.Quit();
}

Hazırlanan derlemeler SteamPipe komut satırı aracıyla Steamworks paneline otomatik olarak yüklenir.

Uygulama Steam bağlantı durumunu doğrula

steamConnected bayrağını bir if bloğu ile kontrol et. Değer true ise Console.WriteLine ile "SteamAPI Baslatildi: AppID 480" metnini yazdır.

Başlangıç kodu

Player.cs
using System;

class SteamLauncher
{
    static void Main()
    {
        int appId = 480;
        bool steamConnected = true;
        // Steam durumunu kontrol et ve konsola yazdir
        
    }
}

Örnek çözüm

Player.cs
using System;

class SteamLauncher
{
    static void Main()
    {
        int appId = 480;
        bool steamConnected = true;
        if (steamConnected)
        {
            Console.WriteLine($"SteamAPI Baslatildi: AppID {appId}");
        }
    }
}

Beklenen çıktı

SteamAPI Baslatildi: AppID 480

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Steamworks entegrasyonu içeren bir projede editör içinde yerel test yapabilmek için proje kökünde hangi dosya bulunmalıdır?

  • steam_manifest.json
  • steam_appid.txt Doğru cevap
  • steam_config.ini
  • steam_license.key

Açıklama: steam_appid.txt dosyası içinde oyunun Steam AppID numarası yer alır ve yerel editör testinde Steam API bağlantısını mümkün kılar.

2 SteamAPI başlat

Soru
// Steamworks baglantisini baslat
bool isSteamReady = Steamworks.SteamAPI.____();
Cevap
// Steamworks baglantisini baslat
bool isSteamReady = Steamworks.SteamAPI.Init();

Açıklama: Steamworks API kütüphanesi SteamAPI.Init() metoduyla başlatılır.

3 Steam dağıtım araçları

Kavram Anlamı
Standalone Windows PC için bağımsız oyun derlemesi
steam_appid.txt Editör testi için Steam App ID tutar
SteamAPI.Init() Steam istemcisiyle bağlantı kurar
SteamPipe Steam'e derleme yükleme aracı

Uzman bölümündeki tüm dersler