paint-brush
Kazanmak İçin Oynamanın İçinde Neler Var?ile@systerr
13,173 okumalar
13,173 okumalar

Kazanmak İçin Oynamanın İçinde Neler Var?

ile Andrey Logunov17m2024/04/27
Read on Terminal Reader

Çok uzun; Okumak

Blockchain (EVM), NFT'ler, NFT Meta Veri Standartları, Oyun Ekonomileri, Yetkilendirme ve NFT'leri Oyunlara Nasıl Dahil Edebiliriz Konularına Derinlemesine Bakış Kod yok, teknolojiye kısa genel bakış.
featured image - Kazanmak İçin Oynamanın İçinde Neler Var?
Andrey Logunov HackerNoon profile picture
0-item


Merhaba! Kazanmak için oynanan oyunları biraz inceleyelim. Nasıl bir tane oluşturulacağını ve NFT'lerin buna nasıl dahil edileceğini tartışacağız. Bu makale yalnızca blockchain mekaniğine odaklanacak ve oyun geliştirme konusuna girmeyecektir. Her şeyi basit bir dil kullanarak, tüm önemli kısımların açıklamalarıyla açıklamayı hedefleyeceğim. Öyleyse başlayalım!


Bu konu neden (oyunun gelişimi ve durumu)

2018'den beri blockchain geliştirmeyle ilgileniyorum ve bu süre zarfında birçok insanın nasıl çalıştığına dair hiçbir fikri olmadan "kazanmak için oyna" (p2e) oyunları oynadığını gördüm. Pek çok kötü proje mevcut ve birçok kişi 'Ponzi şeması' kavramını veya teknik uygulamayı anlamadan kendi p2e oyunlarını yapmaya çalışıyor.


Bu makalenin fikri ilk olarak 2022'nin ortasında bir kripto etkinliğinde çevrimdışı konuşma yaptığım sırada doğdu. Daha sonra makalenin içeriği, farklı ülkelerdeki farklı etkinliklerde yaptığım konuşmalar aracılığıyla birçok kez gelişti. Ayrıca bu alanda bir teknoloji startupı kurarak tüm bu sorunları kendim çözmeye çalıştım. Yol boyunca konuya olan ilginin çokluğuna ve temel konularda birçok yanlış anlamalara tanık oldum.


İnternet, kullanıcı olarak çoğunlukla bilgi tüketicisi (okuma) olduğunuz web1 olarak başladı. Daha sonra kullanıcıların internete (sosyal ağlar) da yazmaya başladığı web2'ye dönüştü. Artık kullanıcıların içerik tüketmenin ve oluşturmanın yanı sıra internette gerçekten bir şeye sahip olabileceği web3'e bakıyoruz.


1960'larda basit bilgisayar oyunlarının yaratılmasından bu yana oyunlar hızla gelişti. Bağımsız oyunlar olarak başladılar ve şimdi oyuncuların bazı oyun öğelerine veya karakterlere "sahip olduğu" birçok çevrimiçi oyun görüyoruz. Ayrıca, bazıları eşler arası (p2p) öğe ticareti sunan oyun öğesi pazar yerleri de vardır. Ancak çoğu durumda bu öğeler gerçekten oyunculara ait değildir; oyunlara aittirler. Gelecekteki evrim, eşya sahipliğini oyundan oyuncuya aktaracak ve bazı oyunlar bunu zaten yapıyor, ancak bu özelliğin kullanımı hâlâ sınırlı.


Kripto oyunları patlaması 2021'de yaşandı. 2024 itibariyle pazar hâlâ bağımsız stüdyoların elinde ve büyük satıcılar neredeyse yok. Oyunların çoğu hala EVM uyumlu blok zincirlerinde bulunuyor ancak genel blok zincirlerden oyun amaçlı özel olarak oluşturulmuş blok zincirlere geçiş eğilimi var.


2023'te birçok kripto oyunu kapandı ve oyuncular da kripto pazarındaki gerileme nedeniyle depresyona girdi, bu da oyuncuların zaman ve para kaybetmesine neden oldu. Ancak teknoloji hala mevcut ve giderek daha fazla geliştiricinin kendileri (web3) ve oyuncular için yeni bir şeyler arayacağını düşünüyorum. Umarım makalem, teknik açıdan nasıl çalıştığının temellerini anlamalarına yardımcı olur.


Bu makale yalnızca EVM blok zincirlerini kapsayacaktır çünkü bunlar hala en popüler zincirlerdir. Ancak aşağıda açıklanan sorunların bazılarını çözen başka birçok zincir türünün de mevcut olduğunu bilmelisiniz.


Blockchain'in temelleri

Blockchain çok basit bir kavram; bazı işlemleri içeren bloklarımız var. Yeni blok önceki bloğa bağlıdır ve bu nedenle mevcut bloğun değiştirilmesi mümkün değildir.


Basit, değil mi? Ancak gerçekte bizi bazı önemli blockchain özelliklerine yönlendiren birden fazla sorunla karşılaşabiliriz:

  1. Oluşturma süresini engelle
  2. Kesinlik zamanı
  3. İşlem ücreti


Farklı blockchain türlerinin farklı yaklaşımları vardır ancak biz en yaygın EVM türü blockchain'e (Ethereum, Polygon, BNB Chain vb.) odaklanacağız.


Genellikle bloklar sabit bir sürede oluşturulur (Ethereum için 12 saniye, BNB Chain için 3 saniye vb.). Bu bizim için blockchainin ilk temel özelliğidir.


Gerçek dünyada bir blockchain, internet bağlantıları aracılığıyla birbirine bağlanan birden fazla düğüme (sunucuya) dağıtılır. Bazı nadir durumlarda, aynı ebeveyni temel alan birden fazla bloğa sahip olmak mümkündür, bu da 'çatallara' neden olur.


Blockchain çatalı


Blockchain bu gibi durumlar için tasarlanmıştır ve bu durumu çözecektir. Ancak kırmızı blokta (artık blok) işlem yapan son kullanıcı olarak siz pek memnun değilsiniz, çünkü işleminiz geçersiz hale gelebilir. İşte 'kesinlik' burada devreye giriyor. Kesinlik, bir işlemin geri alınamayacağı zamandır. Bu bizim için blockchain'in ikinci temel özelliğidir.


Blockchain'e yapılan herhangi bir yazma işleminin size veya kullanıcınıza bir maliyeti vardır. Blockchain'lerin kendi iç ekonomik modelleri vardır ve merkeziyetsizlik için birçok farklı düğümü tutmak ve çalıştırmak çok fazla kaynak gerektirir. Çoğu durumda bu kaynak, kullanımı karşılığında son kullanıcıya fatura edilen bir işlem ücretidir. Blok zincirlerinin saniyede kendi işlem limitleri vardır ve dinamik işlem ücretleri, blok zincirine yapılan DDoS saldırılarını önlemek için dahili bir mekanizmadır.


Çoğu durumda, işlemi başlatan kişinin ücretleri oyun jetonları veya NFT'lerle değil, yerel para biriminde ödemesi gerekir.


İşlem ücretleri bizim için blockchain'in üçüncü temel özelliğidir.


Bu üç ölçüm bizim için neden önemli? Bu öncelikle son kullanıcı deneyiminden kaynaklanmaktadır. Oyuncular teknik engellere değil oynanışa odaklanmak istiyor. Bir oyun geliştiricisi olarak, sezgisel UI/UX tasarımına ve basit katılıma öncelik vererek bu süreci kolaylaştırmak sizin görevinizdir.


Her satranç hamlesinin blok zincirinde saklandığı saf bir satranç oyunu hayal edelim. Oyuncular her hamle için küçük bir işlem ücreti ödemeli ve blok tamamlanana kadar beklemelidir (bu, oyuncunun hamleleri arasında dakikalar sürebilir). Bu pek iyi görünmüyor, değil mi? Kullanıcılar kullanıcı deneyimini blockchain kullanımıyla takas edecek mi? Çoğu oyuncu, orada blockchain kullanmanın acısını yaşamak yerine, şu anda yaptıkları gibi oyun oynamayı tercih edecektir.


Ama umut var! Blockchain oyunları ile geleneksel oyunlar arasındaki boşluğu doldurabilecek çeşitli çözümler mevcuttur.


Jetonlar, bu nedir

Blockchain'in özünde sınırlı sayıda özellik bulunur ve çoğu durumda bu yeterli değildir. Birinci nesil blok zincirlerin (Bitcoin gibi) özelleştirilme yeteneği sınırlıdır. İkinci nesil blok zincirleri (Ethereum), özel programlar (uygulamalar) yazma ve bunları Akıllı Sözleşmeler adı verilen kendi alanlarında blok zincirine koyma yeteneğini tanıttı. Daha sonra kullanıcı bir şeyler yapmak için bu akıllı sözleşmeyle etkileşime girebilir ve akıllı sözleşme diğer akıllı sözleşmelerle etkileşime girebilir. Akıllı sözleşmeler, Ethereum Sanal Makinesi (EVM) adı verilen özel bir ortamda yürütülür. Şimdilik piyasada farklı sanal makineler var ancak EVM hala en popüler olanı.


Basit bir benzetme; cep telefonlarının evrimi. Eski cep telefonları sadece arama yapabiliyor ve sms gönderebiliyordu. Modern telefonlar hala arama yapma ve sms gönderme özelliğine sahiptir ancak yeni özellikler eklemek için ek yazılımlar yükleyebilirsiniz.


Akıllı sözleşmeler, kendi para biriminizi (token) oluşturma olanağını açar. Bu tokenleri herhangi bir cüzdan yazılımıyla uyumlu hale getirmek için birden fazla token standardı vardır. En popüler olanları ERC20, ERC721 ve ERC1155'tir.


Standartlar bir akıllı sözleşmenin yalnızca dış arayüzünü açıklar ancak uygulamanın farklı olabileceğini ve bazı ek özellikler içerebileceğini bilmek gerçekten önemlidir.


İki tür token vardır: Değiştirilebilir Tokenlar (FT) ve Değiştirilemez Tokenlar (NFT). FT tokenleri gerçek para gibidir; aynı tokenın birden fazla kopyasına sahip olabilirsiniz. NFT'ler bir tablo, belirli bir oyun öğesi veya karakter gibi benzersizdir.


ERC20 standardı FT'yi tanımlar. İşte arayüzü:

 function name() public view returns (string) function symbol() public view returns (string) function decimals() public view returns (uint8) function totalSupply() public view returns (uint256) function balanceOf(address _owner) public view returns (uint256 balance) function transfer(address _to, uint256 _value) public returns (bool success) function transferFrom(address _from, address _to, uint256 _value) public returns (bool success) function approve(address _spender, uint256 _value) public returns (bool success) function allowance(address _owner, address _spender) public view returns (uint256 remaining)


Tokenların fiziksel olarak akıllı sözleşmelerden ayrılmadığını anlamak önemlidir. Akıllı sözleşme yalnızca kullanıcı belirteçlerini takip eder. Bir jetonu aktardığınızda, yalnızca tablo gibi dahili bir kayıttaki tutarı günceller. Bu nedenle bazı durumlarda akıllı sözleşme adresini cüzdan yazılımınıza eklemeniz gerekir.


ERC20 dahili bileşenleri


NFT standardının kendisi aynıdır ancak ek yöntemlerimiz vardır:

 function ownerOf(address _owner) public view returns (uint256 balance) function tokenURI(uint256 _tokenId) external view returns (string )


Her NFT tokeninin benzersiz bir tanımlayıcısı (ID) vardır ve her zaman birisine aittir. Bu, genellikle hem belirteç kimliğini hem de mevcut sahibini kaydetmek için bir tablo kullanan belirteç depolama uygulamasına yansıtılır.


ERC721 dahili bileşenleri


Token Meta Verileri

Peki jetonun resmi nerede diye sorabilirsiniz? Ve burada 'belirteç meta verileri' fikrine sahibiz. Temel NFT standardından farklı olarak token meta verileri ayrı olarak depolanır ve farklı özellikler kullanır. Aslında bazı NFT'lerin kendileriyle ilişkili herhangi bir meta verisi bile olmayabilir!


tokenURI adı verilen akıllı sözleşme yöntemi bu meta veri URI'sini (konum) döndürebilir. Token meta verilerini zincir üzerinde ve zincir dışı olarak saklamanın birkaç yolu vardır.

  • Zincir içi: Burada veriler özel bir kod formatına (base64 kodlu) dönüştürülür ve doğrudan blok zincirinin kendisinde saklanır. Güvenli olmasına rağmen sınırlı depolama alanı nedeniyle bu pahalı olabilir.
  • Zincir dışı: Bu, daha fazla esneklik ve daha düşük maliyetler sunar. Burada veriler harici olarak depolanır.


Zincir dışı depolama iki ana kategoriye ayrılabilir:

  • Değişmez depolama: Bu, IPFS (InterPlanetary Dosya Sistemi) veya Arweave gibi verilerin değiştirilememesini sağlar.
  • Merkezi depolama: Bu, oyun geliştiricisinin sunucusu veya Amazon S3 depolama alanı gibi tek bir varlık tarafından kontrol edilir.


Token meta verileri genellikle JSON dosyası olarak biçimlendirilir, ancak teorik olarak herhangi bir biçimde olabilir. Tipik bir meta veri yapısına bir örnek:


 { "description": "Token description", "external_url": "Some external link with more details", "image": "Link to image", "name": "Token name", "attributes": [ // array of attributes { "trait_type": "Attribute type", "value": "Attribute value" }, .... ] }


Değiştirilebilir meta verilerin (düzenlenebilir veriler) gerçek Web3 sahipliğini zayıflatabileceğini anlamak önemlidir. Değiştirilebilir meta verilerle, esasen simge kimliğinin sahibi olursunuz, temsil ettiği içeriğin değil.


Bir oyunda "enerji 5'li sihirli bir eşya" NFT satın aldığınızı hayal edin. Bu bilgiyi içeren meta veriler oyun geliştiricisinin sunucularında (merkezi depolama) saklanıyorsa, oyun geliştiricisi daha sonra oyunu yeniden dengelemeye ve öğenizin enerjisini 3'e değiştirmeye karar verebilir. Teknik olarak jetonun sahibi siz olsanız da, bu bir değeri temsil eder. farklı öğe. Bu senaryo, değiştirilebilir, merkezi meta verilerin potansiyel dezavantajlarını vurgulamaktadır.


Buna karşılık Web3, değişmez meta veriler (değişemeyen veriler) üzerinde gelişir. Bu, NFT'nizle ilişkili bilgilerin kalıcı ve doğrulanabilir kalmasını sağlar.


Meta verilerin pazar yeri tarafından nasıl kullanıldığını açıklayan iyi bir belge https://docs.opensea.io/docs/metadata-standards .

Gerçek meta veriler

Popüler bir kazan-kazan (P2E) oyunundan gerçek meta verileri keşfedelim: STEPN. Bu oyun yakın zamana kadar popülerdi ve büyük olasılıkla spor ayakkabılarına çok fazla para harcayan insanları duymuşsunuzdur.


Token kimliğinin ' 105026695079 ', akıllı sözleşme adresinin ' 0x69d60ad11feb699fe5feeeb16ac691df090bfd50 ' olduğunu ve BNB Zinciri üzerine inşa edildiğini biliyoruz. Peki meta verilere nasıl erişeceğiz?


İki ana yaklaşım vardır:

  • Düşük seviyeli blockchain çağrıları: Bu, teknik uzmanlık gerektirir.
  • Blockchain kaşifleri: Bunlar, daha kolay erişim için blockchain verilerini indeksleyen kullanıcı dostu web siteleridir.


Akıllı sözleşmeyi keşfetmek için BSCScan gezginini kullanalım. 'Oku' sekmesine gidin ( https://bscscan.com/address/0x69d60ad11feb699fe5feeeb16ac691df090bfd50#readContract ) ve tokenURI işlevini bulun. Belirteç kimliğini girin ve 'Sorgu'ya tıklayın. Gezgin, bu durumda şu şekilde olan belirteç URI'sini alacaktır: https://api.stepn.com/run/nftjson/104/105026695079


Bu meta verilere daha yakından bakın. STEPN'in ona sahip olduğunu ve potansiyel olarak onu değiştirebileceğini fark edeceksiniz. Ayrıca Dayanıklılık ve Seviye gibi bazı özellikler zaman içinde değişebilir gibi görünüyor. Kendi P2E oyunumuzu oluştururken bu konsepti daha derinlemesine inceleyeceğiz.


Blockchain hesabı

Artık bazı temel blockchain kavramlarını ele aldığımıza göre, herkesin aşina olduğu bir kavramı tekrar gözden geçirelim: Yetkilendirme. Onsuz blockchain üzerinde eylemler gerçekleştiremezsiniz. Öyleyse geriye şu soru kalıyor: Nasıl yetki alacağız?


Blockchain, iki anahtar çiftinin bulunduğu bir asimetrik şifreleme sistemi kullanır: özel anahtarlar ve genel anahtarlar. Özel anahtarınızdan genel anahtar oluşturabilirsiniz ancak bunun tersi mümkün değildir (bu tek yönlü bir matematiksel işlemdir).


EMV blok zincirlerinde iki ana hesap türü vardır: harici sahipli hesap (EOA) ve akıllı sözleşme hesabı.


Harici sahipli hesaplar özel anahtarlar tarafından kontrol edilir. Özel anahtar, genellikle uzun bir onaltılık karakter dizisiyle (64 karakter) temsil edilen 32 baytlık bir veri parçasıdır. Bu format son kullanıcı için pek uygun değildir ve ezberlenmesi zordur.


Unutulmazlık sorununu çözmek için "anımsatıcı ifade" adı verilen bir kavram tanıtıldı. Anımsatıcı, özel anahtarınızın insanlar tarafından okunabilir bir temsili görevi gören 12, 24 veya daha fazla yaygın kelimeden oluşan bir listedir. Daha da önemlisi, bu gerçek özel anahtarın kendisi değil, onu güvenli bir şekilde oluşturmanın bir yoludur.

Kendiniz için sınırsız sayıda özel anahtarı ücretsiz olarak oluşturabilirsiniz.


EOA'lardan farklı olarak akıllı sözleşme hesapları, zaten blockchain üzerinde yer aldığından etkileşim için özel anahtarlara ihtiyaç duymaz. Bu, gelişmiş işlevlere sahip programlanabilir cüzdanlar oluşturmanın kapılarını açar.


Son kullanıcılar özel anahtarları kullanarak doğrudan blockchain ile etkileşime girmezler. Bunun yerine, özel anahtarları güvenli bir şekilde saklayan ve bunları sizin adınıza işlemleri imzalamak için kullanan yazılım uygulamaları olan kripto cüzdanlara güveniyoruz.


İki ana cüzdan modeli vardır: saklama cüzdanı ve saklama dışı cüzdan


Saklama, birinin sizin için özel anahtarlarınızı elinde tutması anlamına gelir. Uygun olmalarına rağmen, saklayıcının güvenlik uygulamalarına güvendiğiniz için merkezi bir arıza noktası ortaya koyarlar.


Saklama amaçlı olmayan cüzdanlar için, onları güvende tutmaktan sorumlu olduğunuz için özel anahtarlarınız üzerinde tam kontrole sahip olursunuz. Daha fazla güvenlik ve kontrol sunarken aynı zamanda güvenliğin sorumluluğunu tamamen kullanıcıya yükler.


Blockchain alanında özel anahtarınız çok önemlidir. Kripto para varlıklarınıza erişim sağlar. Özel anahtarınızı kaybetmek, paranızı kaybetmek anlamına gelir çünkü onsuz yerleşik bir kurtarma veya aktarım mekanizması yoktur.


Geleneksel hesapların aksine, blockchain hesapları e-posta veya sosyal giriş seçenekleri sunmaz. Bazı cüzdanlar kimlik doğrulama için gelişmiş şifreleme yöntemlerini araştırırken, bu yaklaşım henüz başlangıç aşamasındadır. Diğer cüzdanlar, kullanımı daha kolay olan ancak Web3'ün kullanıcı kontrolünü vurgulayan temel ilkelerinden ayrılan saklama çözümleri sunarak kullanıcı deneyimine öncelik verir.


Tarayıcı uzantıları ve mobil cüzdanların en popüler seçenekler olduğu çeşitli blockchain cüzdan türleri vardır. Mobil cüzdanlar, daha fazla rahatlık için genellikle tarayıcılara sorunsuz bir şekilde bağlanabilir.


Tipik bir saklama dışı cüzdan, özel anahtarınızı güvenli bir şekilde dahili olarak saklar ve asla bir API aracılığıyla açığa çıkarmaz (böylece güvenliğinin ihlal edilmesi riski yoktur). M-cüzdan iki harici bileşen sunar: kriptonuzla etkileşim kurmak için bir kullanıcı arayüzü (UI) ve geliştiricilerin cüzdanın işlevleriyle entegre olması için harici bir API.


tipik saklama dışı cüzdan


Oyna-Kazan Oyunumuzu Oluşturuyoruz (P2E)

Artık blockchain'in temellerini keşfettiğimize göre bir sonraki adıma geçmeye hazırız: kendi oyunumuzu tasarlamaya! Merak etmeyin, henüz kodlamaya dalmayacağız. Bunun yerine, yeni keşfettiğimiz bilgimizi kullanarak bir oyun konsepti hayal edelim ve üst düzey bir genel bakışla başlayarak onu adım adım parçalara ayıralım.


Güçlü bir temel oluşturmak için gelin Super Mario Bros. gibi bir klasikten ilham alalım ve onu heyecan verici P2E unsurlarıyla dolduralım.


Mario oyunu


Oyun ekonomisi

Mario oyunumuzun kritik bir yönü sürdürülebilir bir ekonomik model oluşturmaktır. Bu, birçok kazan-kazan (P2E) oyununda yaygın olan "ponzi şemalarından" kaçınmak anlamına gelir. Sürdürülebilir bir modelde kullanıcı kazançları, oyunun genel gelir akışıyla dengelenecek. Uzun vadeli sağlığa odaklanmak çok önemlidir, çünkü oluşturulması kolay ancak sonuçta sürdürülemez olan ponzi şemalarının aksine, gelişen bir P2E ekonomisi oluşturmak dikkatli bir tasarım ve planlama gerektirir.


Kullanıcılar oyunumuzda nasıl para kazanabilir? Toplanan oyun içi paraların (Mario Coin - MC) bir kripto para birimi (FT) ile değiştirilebileceğini varsayalım.


"Hiçbir şeyden para kazanmayı" önlemek için oyuncuların MC'lerini anlamlı oyun içi öğelere ve güçlendirmelere harcamaları için çeşitli yollar sunacağız:

  • Benzersiz karakter görünümleri (NFT'ler): Oyuncular, kişiselleştirme ve potansiyel değer takdiri için bunları bir pazardan satın alabilirler.
  • MC kullanılarak yapılan dayanıklılık şarjları, oyun süresinin devam etmesine olanak tanır.
  • MC kullanarak isteğe bağlı seviye atlamaları (bunun dengeyi bozup bozmadığını düşünün) oyunculara kolaylık sağlar.
  • MC'yi kullanarak yeni karakterler basmak, kendini adamış oyuncuları teşvik eder ve oyun süresini uzatır.


Mario oyunumuz çeşitli yöntemlerle kullanıcı harcamalarının ötesinde gelir elde edebilir:

  • Özellikle Pokemon Go gibi konuma dayalı oyunlar için stratejik reklam yerleşimleri.
  • İkincil NFT piyasa ücretleri (telif hakları) oyun için sürekli gelir sağlar.
  • "Savaş arenası". Bu özellikler, oyun jetonu enflasyonunun yönetilmesine yardımcı olacak ücretler üretebilir.
  • NFT kiralama. Hem oyuncular (kira ücretleri yoluyla) hem de oyun için bir gelir akışı oluşturun.


Genel token arzını kontrol altında tutmak ve döviz kuru üzerindeki baskıyı azaltmak için staking seçenekleri gibi ek özellikleri entegre edebilirsiniz. Bunlar kullanıcıları token tutmaya teşvik ederek dolaşımı ve enflasyonu azaltır.


Geliştirmeden önce oyunun ekonomisinin kapsamlı bir şekilde planlanması çok önemlidir. Google E-Tablolar gibi araçlar, dengeli ve sürdürülebilir bir sistem sağlamak için farklı senaryoların modellenmesine yardımcı olabilir.


Blockchain seçimi

Artık ilerlemeye hazır olduğumuza göre, bir sonraki önemli adım Mario oyunumuzu barındıracak blok zincirini seçmektir. Çok sayıda seçenek olduğundan bu karar önemli bir ağırlık taşıyor: Ethereum Sanal Makinesi (EVM) ve EVM olmayan blok zincirleri. Hatta oyunumuzun ihtiyaçlarına göre uyarlanmış özel bir blockchain oluşturmayı bile keşfedebiliriz. Ek olarak, birden fazla blok zincirini aynı anda kullanma olasılığı da dikkate alınmalıdır.


Daha sonra blockchainler arasında geçiş yapmak teknik olarak mümkün olsa da karmaşık bir süreçtir.


Tek zincirli çözümler, çoklu zincirli uygulamalara göre daha basit bir yaklaşım sunar. Bazı oyunlar, esas olarak bağımsız oyunlar (bağlantısız token değerleri ile) olarak çoklu zincir seçenekleri sunar; bu da sonuçta aynı oyunun birden fazla örneğine dönüşür. Gerçek bir çok zincirli deneyim, zincirler arasında tutarlı token fiyatlarının sağlanmasını ve oyun içindeki çeşitli zincirlerdeki NFT'leri sorunsuz bir şekilde bağlama becerisini gerektirir.


Bir blockchain seçerken, güçlü güvenlik önlemleri alırken 'kesinlik' süresini ve ücretleri en aza indirmeyi hedeflersiniz. Ayrıca seçilen zincirin yeterli likiditeye sahip olması da çok önemlidir.


Veriler için akıllı bir sözleşmeyi doğrudan okumanın her zaman verimli olmadığını ve uygulanmasının zaman alıcı olabileceğini anlamak önemlidir. Bunun yerine, meta verileri uygun bir formatta sunan harici yazılım ve hizmetlerden yararlanılması tavsiye edilir.


Kullanıcılar, token ve NFT ticaretinin sorunsuz bir şekilde yapılabilmesini bekliyor. Dolayısıyla blockchainin bu tür işlemler için gerekli altyapıyı sağlaması gerekiyor. Aksi takdirde, bunu bağımsız olarak uygulamanız gerekecektir.


Mario oyununuzun başarılı bir şekilde başlatılması için doğru blockchain'i seçmek kritik öneme sahiptir. Bu, seçilen blok zincirinin kullanmayı planladığımız tüm gerekli altyapıya sahip olmasını sağlamayı içerir. Ek olarak, sağlam test ağı ortamları, geliştirme boyunca oyun işlevlerimizi kapsamlı bir şekilde test etmek için çok önemlidir. Bu, olası sorunları erkenden tespit etmemize ve çözmemize olanak tanır.


Kullanıcı katılımı

Bu aşamada blockchaini seçtik ve kullanıcıdan oyuna giriş yapmasını istedik. Kullanıcıların oyuna erişmek için bir cüzdanlarının olması gerekirken, çoğunun cüzdanı yok ve yeni karmaşıklıkları önceden öğrenmeden oynamak istiyorlar.


Oyunun başında kullanıcıdan bir cüzdan oluşturmasını isterseniz dönüşüm oranınız düşük olur. Yeni bir cüzdanın en iyi şekilde nasıl oluşturulacağı konusunda birçok talimat verebilirsiniz, ancak çoğu kullanıcı yine de rahatsız olacaktır.


İyi bir çözüm, kullanıcıların web2 seçeneklerini kullanarak oturum açmalarına ve yalnızca kullanıcı doğrudan blockchain ile etkileşime geçmek istediğinde bir kullanıcı cüzdanı talep etmelerine izin vermektir.


Kullanıcının cüzdanını gözetim altında kendiniz yönetmeyi seçebilirsiniz. Ancak bu yaklaşım hem siz hem de kullanıcı için en güvenli veya en uygun yaklaşım olmayabilir.


Alternatif olarak piyasada web3auth ve magicklink gibi kullanıcılar için cüzdanları yönetmenize olanak tanıyan saklama dışı çözümler de mevcuttur. Ancak blockchain desteği şu anda sınırlıdır ve bu hizmetleri platformunuza entegre etmeniz gerekir.


Yerel jeton ödeme sorunu

Kullanıcıların oyun içi blockchain işlemleri yapması için yalnızca oyunun yerel jetonuna sahip olmak yeterli değildir. Bu, kullanıcının katılımının önünde büyük bir engeldir ve birçok oyuncu bu sorunla karşılaşmaktadır.


Örneğin, bir kullanıcı "Mario Token"ımızı elinde tutuyor ve onu aktarmak istiyor olabilir. Ancak, aktarımı başlatmak için gerekli olan temel yerel blockchain tokenından yoksundurlar. Blockchain üzerinde işlem yapmak için kullanıcıların bu yerel tokenı edinmesi gerekiyor.


Kullanıcılar yerel jetonu nasıl edinir? Harici satın alma seçenekleri mevcut olsa da bunlar web3'e aşina olmayan yeni oyuncular için engel teşkil edebilir.


İdeal olarak oyun geliştiricileri bu sorunu ele almalı ve süreci kullanıcılar için kolaylaştırmalıdır. Bu engelleri en aza indirerek oyuncular oyunun tadını çıkarmaya odaklanabilirler.


Oyun geliştiricileri, cüzdan hizmeti içerisinde dahili bir değişim sistemi uygulayabilir veya düşük seviyeli proxy sözleşmeleri uygulayabilir. Ancak bu çözümlerin uygulanması karmaşıktır.


'Hesap soyutlama' adı verilen umut verici yeni bir teknoloji nihayet bu sorunu çözebilir. Ancak henüz erken günler ve kesin sonuçlara varmak için henüz çok erken.


Geliştiriciler için daha kolay bir çözüm, yeni cüzdan kaydı üzerine kullanıcı cüzdanlarını küçük miktarda yerel tokenla finanse etmektir.


NFT bağlantısı

Kullanıcılar NFT'lere sahip olsa da, bu verileri doğrudan blok zincirlerden okumak çoğu oyun için verimsizdir. Blockchain harici bir hizmet olarak çalışır ve içindeki olaylar oyununuzu etkileyebilir. Bu olaylardan haberdar olmak çok önemlidir.


Neyse ki akıllı sözleşmeler olaylar üretebilir, geliştiricilerin bunları izlemesine ve gerçek zamanlı yanıtları tetiklemesine olanak tanır. Bir kullanıcının bir cilt NFT'si ile bir seviyeye girdiği bir senaryo hayal edin. Görünüm oyun sırasında başka bir oyuncuya aktarılırsa oyun, aynı anda kullanılmasını engelleyerek tepki vermelidir.


Çeşitli web projeleri (attarius, moralis, kovalent, alchemy, vb.) süreci kolaylaştıran NFT API'leri sunar. Bu API'ler, meta verileri okuma ve izlemenin yanı sıra belirteç sahipliği gibi görevleri de yerine getirir. Bu, geliştirme süresini önemli ölçüde azaltarak geliştiricilerin düşük seviyeli blockchain entegrasyonu yerine temel oyun mekaniğine odaklanmasına olanak tanır.


Oyuna NFT


Ancak meta verinin değişebilirliği konusunda başka bir zorluk ortaya çıkıyor. Bazı NFT'lerin, "yakılmadan" (yok edilmeden) önce yalnızca 100 kez kullanılabilen bir görünüm gibi sınırlı kullanımları vardır. Bu kullanımın izlenmesi kritik bir sorun teşkil etmektedir.


Yalnızca oyun içi izlemeye güvenmek, dış pazarları hedef alan dolandırıcıları güçlendirebilir. Bu pazarlar yalnızca belirteç URI'sinden gelen verilere bağlıdır ve oyunun dahili izleme sistemine erişimleri yoktur.


Sunucu tarafı depolama, STEPN tarafından kullanılan yaklaşıma benzer şekilde kolaylık sağlar ancak meta veri manipülasyonu potansiyeli nedeniyle güvenlik endişelerini artırır.


Zincir üstü depolama, meta verileri blok zincirinde depolayarak değişmezlik sunar. Ancak bu, zincirdeki her kullanımın izlenmesini gerektirir ve bu da işlem ücretlerine neden olur.


Pazarlama

Mario oyunumuzun blockchain entegrasyonu tamamlanmak üzere. Şimdi NFT'lerin kullanıcıları nasıl çekebileceğini keşfedelim.


Bazı oyunlar, erken aşamalarda premium NFT'ler satarak geliştirme fonları topluyor. Bu yaklaşım, finansmanı güvence altına alır ve oyunun çıkışını sabırsızlıkla bekleyen sadık bir oyuncu tabanı oluşturur.


'Vampir pazarlamasını' kullanmak mümkündür. Bu benzersiz pazarlama stratejisi, kullanıcıların diğer oyunlardaki NFT'leri Mario oyununuza entegre etmelerine olanak sağlamayı içerir. Oyuncuların oyununuzda STEPN spor ayakkabılarını kullanmalarına olanak tanıdığınızı hayal edin! Bu yaklaşım, farklı oyunların kullanıcılarını hedef alır ancak zorluklarla birlikte gelir.


NFT standartları farklılık göstererek kusursuz entegrasyonu zorlaştırır. Ayrıca meta veri değişikliklerini izlemek bazı durumlarda karmaşık olabilir. Bu engellere rağmen, oyunlar arası NFT entegrasyonu, geleneksel Web2 oyunlarında bulunmayan yeni bir pazarlama yaklaşımıdır.


"Vampir pazarlaması", yeterince kullanılmayan NFT'lere sahip kullanıcıları hedeflerken özellikle etkili olabilir. Bu NFT'leri Mario oyununuza entegre etmelerine izin vererek bu kullanıcıları etkinleştirebilir ve potansiyel olarak onları aktif oyunculara dönüştürebilirsiniz.


Gelecekteki Zorluklar

Blockchain'in teknik entegrasyonu tamamlanırken Mario oyunumuz çeşitli zorluklarla karşı karşıyadır:


Blockchain teknolojisini çevreleyen yasal kısım karmaşık olmaya devam ediyor.


Blockchain'e ve faydalarına aşina olan kullanıcıların ilgisini çekmek, kullanıcı eğitimi için ek kaynaklar gerektirir.


Birçok oyun pazarında, blockchain tabanlı oyunlara yönelik kısıtlamalar vardır ve bu da yayınlama seçeneklerini sınırlandırır.


Geleneksel oyun içi öğelerin aksine NFT'ler, oyuncular oyunu oynamayı bıraktıktan sonra bile kullanıcıya ait olmaya devam ediyor. Bu durum enflasyona yeni bir meydan okuma getiriyor. Oyuncular oyundan ayrıldıklarında, bir miktar değer kazanmak için NFT'lerini indirimli olarak satmaya çalışabilirler. Bu, oyun içinde sürekli olarak indirimli NFT akışına yol açarak oyun içi NFT öğelerinin genel değerinin düşmesine neden olabilir. Bu enflasyonla mücadele etmek için, oyuncuları NFT'lerine bağlı kalmaya ve Mario oyunumuzu oynamaya devam etmeye teşvik edecek yeni özellikler ve içerikleri sürekli olarak geliştirmemiz gerekecek.


Çözüm

İşte Mario oyunumuzun yapısına üst düzey bir genel bakış:


P2E oyun şeması



Her konu hakkında saatlerce ve saatlerce birçok bilgi var. Bu bilgiyi sıkıştırıp sadece önemli noktaları belirtmeye çalıştım. Umarım sizin için faydalı olmuştur