Genel Bakış
Yapılandırmaları barındırmak için Steam Atölyesi kullanmaya ek olarak oyunun yapılandırmalarını doğrudan oyunun depolarıyla birleştirebilirsiniz. Yapılandırmaları oyunun depolarıyla birleştirmenin birden fazla faydası vardır:
- Resmî yapılandırmalar, Perforce veya diğer revizyon kontrolü araçlarıyla doğrulanabilir.
- Oyununuzun farklı dalları ya da herkese açık ve gizli appID'ler arasında yapılandırmaları daha kolay yönetebilirsiniz.
- Güncellemeler Steamworks'teki iki yayınlama adımından geçmez, atomik olarak yapılır.
Biçim
Eylem bildirimi (action manifest) dosyası
Oyun İçi Eylemler Dosyası uzantısıdır ve resmî yapılandırmaların türe göre sıralanmış listesini içeren ilave bir kısma sahiptir:
"Action Manifest"
{
"configurations"
{
}
"actions"
{
}
"localization"
{
}
}
Eylem (action) ve yerelleştirme (localization) kısımlarıyla ilgili daha fazla bilgi almak için lütfen
Oyun İçi Eylemler Dosyası belgesine bakın.
Yapılandırma Listesi
Kontrolcü yapılandırma kısmında yapılandırmalar, sırasıyla kontrolcü türüne ve yüklenme önceliğine göre listelenir. "path" değeri eylem bildirimi dosyasının (action manifest) diskteki konumuna göre listelenir.
"Action Manifest"
{
"configurations"
{
"controller_xboxone"
{
"0"
{
"path" "xbox_controller.vdf"
}
}
"controller_steamcontroller_gordon"
{
"0"
{
"path" "steam_controller.vdf"
}
"1"
{
"path" "steam_controller_motion_controls.vdf"
}
}
}
"actions"
{
}
"localization"
{
}
}
Desteklenen kontrolcü türü dizeleri:
Steam Deck Kontrolcüsü | controller_neptune |
Steam Kontrolcüsü | controller_steamcontroller_gordon |
Xbox 360 | controller_xbox360 |
Xbox One | controller_xboxone |
Xbox Elite Kontrolcüsü | controller_xboxelite |
PlayStation 4 Kontrolcüsü | controller_ps4 |
PlayStation 5 Kontrolcüsü | controller_ps5 |
Nintendo Switch Pro Kontrolcüsü | controller_switch_pro |
Genel Kontrolcüler | controller_generic |
Eylem Bildirimi Dosyası Yapılandırmak
Eylem bildirimi dosyanızı iki ana şekilde yapılandırabilirsiniz; sıfırdan başlayarak ya da mevcut bir IGA (oyun içi eylemleri) dosyası kullanarak.
Oyun içi eylemleri dosyası kullanarak:
1. Adım: Steam Girdisi için geliştirici modunu ayarlayın
Eylem bildirimi dosyasını düzenlemeden önce Steam Girdisi geliştirici modunu etkinleştirmemiz gerekir. Böylelikle yapılandırmaları geliştirici olarak dışa aktarabilir ve eylem bildirimlerini düzenlerken hata yaparsak hata mesajlarını alabiliriz.
1) Geniş Ekran modu ->Ayarlar->Sistem'e gidin ve Steam geliştirici modunu etkinleştirin.
2) Geliştirici bölümüne gidin ve "Steam Girdisi Düzeni - Geliştirici Modu"u etkinleştirin.
2. Adım: Yapılandırmanızı kaydedin.
Hâlihazırda bir IGA dosyanız varsa, mevcut kontrolcü yapılandırmanızı kontrölcü yapılandırması ekranında kaydedebilirsiniz.
1) Dişli simgesini seçin.
2) "Düzeni Dışa Aktar"ı seçin
3) Oyununuz için bir başlık ve açıklama seçip yapılandırmayı dışa aktarın.
Hatırlatma: Oyununuzun desteklediği bütün diller için eylem bildiriminde yerelleştirme belirteci ayarladığınızı kontrol etmenizde fayda var.
3. Adım: Yapılandırmanızı bulun
Yapılandırmanızı işletim sistemine özel klasörlere (ör. Windows'ta "Belgelerim" klasörü) koymak için aşağıdaki Steam URL'ini çalıştırın. URL:
Windows Komut Satırı
start steam://dumpcontrollerconfig?appid=X
Linux Komut Satırı
xdg-open steam://dumpcontrollerconfig?appid=X
Hem yapılandırmayı hem de mevcut IGA dosyanızı oyun klasörünün içinde istediğiniz yere kopyalayın.
4. Adım: IGA dosyasını eylem bildirimi dosyasına dönüştürün
IGA dosyanızı bir eylem bildirimi dosyasına dönüştürmek için dosyayı düzenleyin ve az önce dışarı aktarmış olduğunuz kontrolcü yapılandırmasının listelemesini içeren bir "configuration" kısmı ekleyin. Aşağıda bunun Steamworks SDK örneğini görebilirsiniz:
"configurations"
{
"controller_xboxone"
{
"0"
{
"path" "xbox_controller.vdf"
}
}
"controller_steamcontroller_gordon"
{
"0"
{
"path" "steam_controller.vdf"
}
}
}
5. Adım: Steamworks ayarlarınızı yapın
Steamworks ayarlarınızı partner sitesinden yapmak için Steam Girdisi ayarlarına gidin. Açılır menüden "Özel Yapılandırma (Oyunla birlikte gelir)" seçeneğini seçin ve eylem bildiriminin bulunduğu dizini girin:
Eylem bildirimi dosyası kullanan bir oyunda hata ayıklamak
Oyunu Steam'den çalıştırdığınızda eylem bildirimi dosyası otomatik olarak oyun depolarınızdan çekilir. Oyunu IDE aracılığıyla çalıştırıyorsanız ve oyun hâlihazırda yüklüyse, Steam ayrıca Steam depolarınızdaki eylem bildirimi dosyasını da kullanacaktır. Ancak oyunu Steam'de yüklü olmadan çalıştırıyorsanız veya yapmanız gereken yerel değişiklikler varsa, SetInputActionManifestPath API çağrısı ile eylem bildirimi dizinini geçersiz kılabilirsiniz. Bu geçersiz kılma, Steam oturumunun geri kalanı boyunca hatırlanacaktır. Bunun bir örneği Steamworks SDK'de mevcuttur:
char rgchCWD[1024];
if ( !_getcwd( rgchCWD, sizeof( rgchCWD ) ) )
{
strcpy( rgchCWD, "." );
}
char rgchFullPath[1024];
#if defined(_WIN32)
_snprintf( rgchFullPath, sizeof( rgchFullPath ), "%s\\%s", rgchCWD, "steam_input_manifest.vdf" );
#elif defined(OSX)
_snprintf( rgchFullPath, sizeof( rgchFullPath ), "%s/steamworksexample.app/Contents/Resources/%s", rgchCWD, "steam_input_manifest.vdf" );
#else
_snprintf( rgchFullPath, sizeof( rgchFullPath ), "%s/%s", rgchCWD, "steam_input_manifest.vdf" );
#endif
SteamInput()->SetInputActionManifestFilePath( rgchFullPath );