Steamworks Belgeleri
TradeSetOwned/v0001
Bu, Steam Ekonomi Sunucusunun daha önce sahipsiz olarak ayarlanmış bir varlığı veya bir parça para birimini bir kullanıcının envanterine transfer etmesi gerektiğinde çağrılır. Bu varlık veya para birimi türünü değiştirmenin yasal olup olmadığının doğrulanması varlık sunucusuna bağlıdır. Varlığın aslında sahipsiz olduğunu, varlık veya para biriminin takaslanabilir olduğunu ve istenilen miktarda varlık olduğunu kontrol etmelidir.

İstiflenebilen varlıklar ve para birimleri için bu isteğin ilk olarak belirtilen sahipsiz miktardan daha az miktarda sağlanabilmesi mümkündür. Bu durumda, sahipsiz varlık veya para biriminin miktarı indirilir ve yeni bir varlık yaratılır.

Bu durum Topluluk Pazarı'nda listelenebilen, istiflenebilir bir öğeye sahipseniz gerçekleştir. Örnek olarak, eğer birisi çokça istiflenmiş bir öğesini pazara tek bir listeleme olarak koyar ise o zaman pek çok küçük satın alımlar gerçekleşebilir.

Varlık sunucusu listeleme oluşturulduğunda bir adet TradeSetUnowned çağrısı alır ve her bir satın alım işlemi için bir adet TradeSetOwned çağrısı daha alır. Birisi pazardaki listeleme için ilk satın alımı gerçekleştirdiğinde, TradeSetOwned çağrısı içerisindeki audit_reference değeri, TradeSetUnowned çağrısı içerisindeki audit_reference değeri ile eşleşecektir. O listelemenin sonraki satın alımları audit_reference için farklı değerlere sahip olacaklardır ancak yinede aynı assetid değeri ile ilgili olacaklardır. Eğer listeleme iptal edilirse, sonucunda oluşacak TradeSetOwned çağrısındaki audit_reference değeri daha önce herhangi bir TradeSetOwned çağrısında kullanılmamış bir değer olacaktır ve böylece listeleme oluşturulduğunda çağrılan TradeSetUnowned çağrısındaki değeri ile eşleşmeyecektir.

Çağıran: Takas Sistemi

HTTP Yöntemi: POST

Parametreler:

İsimTürGereklilikAçıklama
keystringBu, partner sitesinde uygulamanızın Steam Ekonomi Ayarları kısmında sağlamış olduğunuz "Varlık Sunucusu Anahtarı"dır.
appiduint32Varlıklar ile ilişkilendirilmiş uygulamanın 32-bit App ID'si.
owneruint64Varlığın veya para biriminin yeni sahibinin 64-bit Steam ID'si.
contextiduint64Varlık veya para biriminin bulunduğu ortamın 64-bit ID'si.
assetiduint64Transfer edilen varlığın 64 bit ID'si. Ya assetid ya da currencyid hangi tür objenin "sahip" olarak işaretleneceğini bildirmek için ayarlanacaktır.
currencyiduint32Kaldırılmakta olan 32-bit para birimi kodu. Ya assetid ya da currencyid hangi tür objenin "sahip" olarak işaretleneceğini bildirmek için ayarlanacaktır.
amountuint32Transfer edilecek varlık veya para birimi sayısı. Bu sayı, istiflenemeyen varlıklar için her zaman 1 olacaktır.
Bu her zaman, Steam Ekonomi Sunucusunun bu ortam içerisinde varlık veya para biriminin bildiği miktardan az veya eşit olacaktır. Varsayılanı 1'dir.
trade_start_timeuint321 Ocak 1970'den beri geçen saniyelerle ifade edilen, eylemin başlamasından sorumlu takas oturumunun zamanı.
audit_actionuint32Bu varlığın veya para biriminin "sahip" olarak işaretlenmesine neden olan eylemin ne tür bir eylem olduğunu belirten bir 32-bit sayı.
audit_referenceuint64Etkinliğin hangi eylem ile ilişkili olduğunu belirleyen bir 64-bit sayı. Varlık sunucusu denetim ve hata ayıklama amacıyla bu sayıyı kaydetmek isteyebilir.
leave_originalboolEğer bu boolean parametresi 1'e ayarlanmış ise (true olduğunu belirtmek için) o zaman varlık sunucusuna öğeyi kopyalayarak belirtilen varlığın bir kopyası olacak yeni bir "sahip" öğe oluşturması için sorulacaktır. Bu sadece bir destek temsilcisinin yapacağı tek taraflı geri almalar için true olacaktır. Varsayılanı 0'dır (false).
request_repeatedboolEğer bu 1'e ayarlanmış ise (true olduğunu belirtmek için) o zaman Steam Ekonomi sunucusu geçmişte aynı bir istek yaptığını ancak açık bir başarı veya başarısızlık cevabı almadığını belirtir. Eğer varlık veya para birimi hâlihazırda aynı audit_action ve audit_reference için "sahip" olarak ayarlanmışsa, varlık sunucusu başarılı bir yanıt döndürerek, new_assetid ve new_contextid'yi ilk istekte döndürülüne göre ayarlamalıdır.
is_marketboolEğer bu 1'e ayarlanmış ise (true olduğunu belirtmek için) o zaman bu isteğin Steam Topluluk Pazarı'ndaki bir etkinliğe cevap olarak gerçekleştirildiği anlaşılır. audit_action değeri 101 ise (Takas Uygulaması) bu, kullanıcının bu öğeyi satın aldığını belirtir. audit_action değeri 102 ise bu, kullanıcının pazar listelemesini iptal ettiğini veya öğenin kullanıcıya listeleme oluşturulurken oluşan bir hata yüzünden geri gönderildiğini belirtir.

Dönüşler

Bu yöntemin çıktısı JSON biçiminde kodlanmalıdır.

Yanıtlar:
  • result
    • success - Eğer yöntem başarılı ise True. Eğer varlık sunucusunun yanıtı false ise nedenini anlatan bir dizeye error olarak gelecektir.
    • error - Bu çağrının neden başarısız olduğunu anlatan bir dize. Bu mesaj hata kaydına kaydedilecektir. Hata kaydına Steamworks sitesinde bulunan Ekonomi sekmesinin altından erişebilirsiniz.
    • new_assetid (opsiyonel) - Varlığın sahipsiz sürümünün 64-bit varlık ID'si. Bu sadece varlık transferleri içindir. Bu
      yeni bir varlık ID'si veya varlık sunucusunda nasıl uygulandığına bağlı olarak istekte belirtilmiş bir varlık ID'si ile aynı olabilir.
      Gönderilmiş varlık ID'si ile aynı olması varsayılan ayardır.

      NOT: Denetleme amaçları nedeniyle varlık sunucusunu uygulayanların, varlığın yeni bir kopyasını oluşturmalarını ve yeni varlık ID'sini TradeSetOwned cevabı içerisinde döndürmelerini öneririz. Bu uygulamanın aynı zamanda, bir uygulama silindiğinde veya sahipsiz olarak işaretlendiğinde sonsuza kadar bu durumda kalmasına neden olan hatalarında önüne geçtiğini fark ettik. Yeni ve eski varlıkların arasında bir bağlantı olup olmadığının takibi de (mesela, oyununuz içerisinde varlığın ilk oluşturulduğu zamandan kalan bazı "orijinal varlık ID'lerinin" saklanması gibi) kullanışlı bir eylem olabilir. Bunların hiçbiri gerekli değildir. Bu sadece bizim yararlı olarak bulduğumuz bir durum.
    • new_contextid (opsiyonel) - Bu varlık veya para biriminin yeni sahiplenilmiş sürümünün 64-bit ortam ID'si. Bu yeni bir ortam ID'si veya varlık sunucusunda nasıl uygulandığına bağlı olarak istekte belirtilmiş bir ortam ID'si ile aynı olabilir. Gönderilmiş ortam ID'si ile aynı olması varsayılan ayardır.

Denetim Eylemleri

Bunlar, bu yöntem ile gönderilebilecek denetim eylemlerinin geçerli listesidir. Yeni denetim türleri bu listeye herhangi bir zamanda eklenebilir. Bu yüzden varlık sunucuları, bir denetim eylemi olarak herhangi bir işaretsiz 32-bit sayılar ile başa çıkmaya hazır olmalıdırlar.
  • 101 - Takas Uygulaması - İstek bir takas uygulamasının bir parçasıdır. audit_reference bir takas ID'sidir.
  • 102 - Takas Geri Alımı - İstek bir takas geri alımının bir parçasıdır. audit_reference bir takas ID'sidir.