Bazı bölgelerde ve platformlarda hangi ada içi eşyaları nasıl sunabileceğine dair kurallar ve kısıtlamalar bulunmaktadır. Bu doküman, sana başlangıç için yardımcı olacak bazı ek bilgiler içermektedir. Daha fazla bilgi için lütfen Fortnite Ada Geliştiricisi Kuralları ve SSS’ye göz at.
Epic aşağıdaki bilgileri yalnızca bilgilendirme amaçlı sağlamaktadır. Epic hukuki tavsiye vermemektedir ve burada yer alan bilgiler hukuki tavsiye niteliğinde değildir. Geliştirici olarak, ilgili tüm yasalara ve Epic politikalarına uymak senin sorumluluğundadır. Fortnite’ta yayınladığın içeriklerin yasalara nasıl ve ne zaman tabi olacağını belirlerken bir hukuk danışmanına başvurmalısın.
Ücretli Rastgele Eşyalar
Yasalara uyma sorumluluğuna ek olarak, ücretli rastgele eşyalar sunulduğunda geçerli olan belirli kısıtlamalara da uyman gerekir. Aşağıda açıklanan işlevlerin kullanılmaması Epic politikalarının ihlali anlamına gelecektir.
Satın Alma API’sini Kullanan Teklifler
V-Papel karşılığında ücretli rastgele eşyalar sunarken, ilgili eşya için PaidRandomItem değerini true olarak ayarlaman gerekir. Böylece Epic, ücretli rastgele eşyalarını aşağıdaki kısıtlamalara uygun şekilde kısıtlayabilecektir.
Verse’ü Kullanan Teklifler
Diğer ücretli ada içi eşyalar kullanılarak alınabilen ücretli rastgele eşyalar sunarken RestrictPaidRandomItems fonksiyonunu kullanmalısın. Bunun için geliştirici olarak, kısıtlamalara kodunda yer vermen gerekir.
Ücretli rastgele eşyalar, yerel yasaların öngördüğü şekilde, aşağıdaki ülkelerde kısıtlanmıştır:
Singapur
Katar
Avustralya
Hollanda
Belçika
Birleşik Krallık (U18)
Brezilya (U18, Mart 2026’dan itibaren geçerlidir)
Mart 2026’dan itibaren, 18 yaş altı oyunculara yönelik veya onların erişebilmesi muhtemel adalarda Brezilya’daki oyunculara ücretli rastgele eşyalar sunman da mümkün olmayacaktır.
Son olarak, uygun API’leri kullanmanın yanı sıra oyuncu bir satın alma işlemi gerçekleştirmeden önce onun ilgili eşyayı alabilmesine dair fiili sayısal olasılığı belirtmen gerekir. Örneğin, rastgele olarak 5, 10 veya 50 iksir verme olasılığı olan bir can iksiri paketi sunuyorsan satın alma öncesinde bunların verilme olasılığını belirtmen gerekir (örn. 5 iksir verme olasılığı %60, 10 iksir verme olasılığı %30 ve 50 iksir verme olasılığı %10).
Satın Alma İçin Doğrudan İstemler
Tekliflerinde, işlemlere ilişkin olarak kullandığın dilin yanıltıcı veya açıkça baskıcı olmadığından emin olmalısın. Ayrıca, reşit olmayan bir oyuncuya (bu kısıtlama için, aşağıda aksi belirtilmediği sürece 18 yaşın altındaki oyuncular) bir satın alma işlemi yapması veya ebeveynlerinden kendisi adına bir satın alma işlemi yapması için baskı yapmamalı veya ondan sözü edilen konularda doğrudan istemde bulunmamalısın.
Teklif dilinde veya teklif dışında oyunundaki diğer mesajlarda, örneğin bir cümlenin başında “satın al” veya “sipariş ver” gibi bir komut kullanarak bir oyuncuya doğrudan bir satın alma işlemi yapmasını söylüyorsan veya “HEMEN SATIN AL!” gibi bir istemde bulunurken tamamen büyük harfler veya ünlem işareti kullanıyorsan bu muhtemelen doğrudan bir istem olarak kabul edilir ve yaş ile konum kısıtlamalarına tabi olabilir.
Aşağıda yasaklanmış dile dair bazı örnekler ve buna karşılık kabul edilebilir bazı örnekler yer almaktadır.
| Kabul Edilemez Örnekler | Kabul Edilebilir Örnekler |
|---|---|
Hemen satın al! | Şimdi oyunda! |
Kaçırmadan al! | Satın alınabilir! |
Yükselt!/Oyna!/Dene!/Kilidini aç! (satın alma gerektiğinde) | Ayrıntılar için [geliştirici adı] Mağazası’na bak! |
Bir tane alana bir tane bedava! | Bir tane alırsan ikincisi bedava! |
Adandaki tekliflerde veya mesajlarda satın alma için doğrudan bir istem bulunuyorsa RestrictDirectPromptsToPurchase fonksiyonunu kullanmalısın. Her bir oyuncuya özel bu fonksiyon, bir teklifin veya mesajın belirli bir oyuncu için görünür olmamasını sağlaman gerekip gerekmediğini gösterecektir. RestrictDirectPromptsToPurchase, aşağıda listelenen bölgelerdeki oyuncular için true değerini döndürecektir:
Teklifinde satın alma için doğrudan bir istem bulunuyorsa bu teklifin aşağıda sıralanan bölgelerde görünmesini kısıtlayacak olan RestrictDirectPromptsToPurchase fonksiyonunu kullanmalısın:
Avusturya | Fransa (17 yaş altı) | Hollanda |
Belçika | Almanya | Polonya |
Bulgaristan | Yunanistan | Portekiz |
Kanada (13 yaş altı) | Macaristan | Romanya |
Hırvatistan | İrlanda | Slovakya |
Kıbrıs | İtalya | Slovenya |
Çekya (Çek Cumhuriyeti) | Letonya | İspanya |
Danimarka | Litvanya | İsveç |
Estonya | Lüksemburg | Birleşik Krallık (16 yaş altı) |
Finlandiya | Malta |
RestrictDirectPromptsToPurchase fonksiyonunun, teklifleri uygun oyuncularla sınırlamak için nasıl kullanılacağına dair bir örnek aşağıda verilmiştir:
if (RestrictDirectPromptsToPurchase[Player1]):
# Player is unable to receive direct prompts to purchase.
ShowAvailableNowMessageToPlayer(Player1)
else:
# Player is able to receive direct prompts to purchase.
ShowBuyNowMessageToPlayer(Player1)
Ada İçi Eşya Paketleri
Brezilya
Brezilya’da paket teklifleri konusunda bazı kısıtlamalar vardır. Brezilya’daki oyunculara açık olan tekliflerde, ada içi bir eşya bir paketin parçası olarak satılıyorsa genellikle tek başına bir eşya olarak da satılıyor olması gerekir (bunun yapılmaması için ticari bir sebep veya gereklilik olmadığı sürece).
Örneğin, bir düzine yumurtayı veya bir çift ayakkabıyı birlikte satmak ve tek bir yumurta veya tek bir ayakkabı satmamak muhtemelen makuldur. Ancak bir oyuncunun yedi farklı kazağı bir arada satın almasını zorunlu tutmak ve her kazağı ayrı ayrı satmamak muhtemelen makul değildir ve yasaklanacaktır. Brezilyalı oyuncular için yayınladığın içeriklerin bu yasaya nasıl ve ne zaman tabi olacağını belirlerken bir hukuk danışmanına başvurmalısın.
Satın Alımlarda İsteğe Bağlı Ek Kısıtlamalar
Tekliflerinin nerede gösterileceği ve onları kimlerin görüntüleyebileceği konusunda ilave kısıtlamalar uygulamayı tercih edebilirsin. Aşağıdaki örnekte gösterildiği gibi, Antarktika’daki oyunculara veya Antarktika’daki 18 yaş altı oyunculara belirli eşyaların satışını yasaklamaya karar verebilirsin. Bunu GetMinPurchaseAge fonksiyonunu kullanarak yapabilirsin. Bu fonksiyon kısıtlamalar eklemene izin verir, ancak mevcut ve yerleşik kısıtlamaları baypas etmen teknik olarak mümkün değildir.
GetMinPurchaseAge bir geliştiricinin, bir oyuncunun ülkesini, alt kategorisini ve platformunu kullanarak bir teklifin nerede ve nasıl yapılabileceğini belirlemesine olanak tanıyan bir <computes> fonksiyonudur. Bu oyuncu bilgisi geliştiriciye anonim olarak sağlanır ve fonksiyon, geliştiricinin herhangi bir oyuncuya ait herhangi bir bilgiyi kaydetmesini engeller. Geliştirici, istediği oyuncu ülkesini, alt kategorisini ve platformunu belirler ve GetMinPurchaseAge’i kullanarak bir evet/hayır çağrısı yapar veya söz konusu ülke, alt kategori ve platform kombinasyonu için minimum yaşı döndürür. Bu, geliştiricinin ihtiyaç duyduğu bilgileri içeren teklifler belirtmesine olanak tanırken, geliştiriciye bireysel oyuncu bilgileri sağlanmasını da önler.
Satın Alma API’sinde, ShowOffersDialog ve BuyOffer fonksiyonları, teklifin bir oyuncuya satış için uygun olup olmadığını belirlemek üzere bir mantık uygular. Bir teklif oluşturduğun sırada GetMinPurchaseAge’i kullanarak söz konusu mantığı geçersiz kılabilir ve böylece isteğe bağlı olarak bir kısıtlama mantığı ekleyebilirsin.
Aşağıda, GetMinPurchaseAge fonksiyonuyla teklifleri nasıl daha fazla sınırlayabileceğine dair bir örnek bulacaksın:
basic_sword_offer<public> := class(entitlement_offer):
# Offer name, description, etc...
EntitlementType<override>:concrete_subtype(entitlement) = Entitlements.basic_sword
GetMinPurchaseAge<override>(CountryCode:string, SubdivisionCode:string, PlatformFamily:string)<decides><computes>:int =
# A Hypothetical example where you only want to sell swords to people who don't live in Antarctica
CountryCode <> "AQ"
return 0