Demo (ve gerçek oyun) Koruması


9

Birkaç ay içinde (umarım ticari) halka açık (internette) çalıştığım oyunu göstermeye başlamayı planlıyorum. Mesele şu ki, ekran görüntülerinin ve bir römorkun (özellik işlevselliği gibi) yanı sıra, korunabilen bir demo yapmak nasıl düzgün bir şekilde yapılır?

Biraz açıklayayım. Oyun bir tür platformlar arası RPG. Şu anda, oyunu kodladığım yol, dosyalardan harita, karakter vb.Veriyi okuması ve sadece yapılandırma dosyaları ve varlık ekleyerek dünyayı / hikayeyi genişletmemi sağlayan her şeye karar vermesidir.

Yani, benim endişem, oyunun bir demo versiyonunu yaparsam, ki bu gerçek oyun demek, ancak daha sonra tüm varlıklar / yapılandırma dosyaları / vb. Kaldırılır, böylece ilk harita / seviye ile sadece bir demo. Birine karşı korumanın bir yolu var mı o zaman gerçek oyunun veri paketini (yayınlandığında) ve şimdi aniden demo EXE olan herkes gerçek oyunu oynayabilir?

Gerçek oyun piyasaya sürülmeden önce demoyu bir süre dışarıda görmek istediğim için demo koruması benim ilk önceliğim. Daha sonra gerçek oyundan hangi koruma yöntemlerini seçtiğime her zaman karar verebilirim (piyasaya sürülmeden önce, ancak daha sonra ..)

Zaten oyunu korumak için herhangi bir gerçek yolu var sanırım (Bu oyun çapraz platform olacak ve oynamak için internet gerektirmez çünkü herhangi bir çevrimiçi kontrol yapmak zorunda kullanıcıları kısıtlamak istemiyorum). Yapmak istediğim son şey yasal kullanıcılarla uğraşmak. Ve eğer mümkünse varlıkları açık bırakmak istiyorum, çünkü bu sadece klasörleri kolayca yamalamak ve modemlerin biraz karışmasına izin vermek anlamına geliyor.

Yani, temel bir anahtar lisans sistemi kursam bile, 1 kişinin anahtarlarını ve oyunun bir kopyasını bir yere yüklemesini gerçekten engelleyen nedir? İnsanların sık sık güncelleme yapmaktan bahsettiğini gördüm, böylece ikili değişiklikler ve oyunu yeniden kırmak zorundalar. Ancak, 1 yasal kopyayı alabildiğinizde ve daha sonra yaydığınızda kimin oyunu kırması gerekir?

Bir şey eksik olup olmadığımdan emin değilim, sadece olmadığımdan emin olmaya çalışıyorum. Gerçekten sadece kaynıyor mu?

  1. Temel anahtar lisans korumasını tokatlayın.
  2. Varlık / yapılandırma dosyalarını demodan kaldırma
  3. En iyisi için umut

Her türlü tavsiye takdir! Bütün bunlar için çok yeniyim; -;)

Bu bir kopya ise özür dilerim! Demo konseptinde fazla bir şey bulunamadı.


Yalnızca ilk düzey dosyayı okuyacak ve diğerlerinin hiçbirini okuyamayacak bir yürütülebilir dosya olarak bırakın? Bu bir demo değil, son ürün. Belki demo çalıştırılabilir neden ne olursa olsun bir "veri paketi" ekleyerek aniden tam yetenekleri olacak ayrıntılı olabilir? Dürüst olmak gerekirse, bu endişe, "bir kişi tam oyunu başka birine bırakırsa, bu sorunun genel olarak korsanlıkla ilgili olması ve sadece demo'nuzu gayri meşru bir şekilde yükseltilmesinden korumakla sonuçlanacak kadar yasal gibi görünüyor.
SpartanDonut

Bir dal falan yapmak istemedikçe kod gerçekten tam oyun. Demek istediğim çok fazla işlevsellik var ve oluşturduğum demo, yayınlandıktan sonra bile satın almadan önce indirip oynayabilecekleri bir şey olmak istiyorum. Bu yüzden sanırım bir anlamda tam oyunla aynı. Hala son 3 mermi noktasıyla doğru yolda olup olmadığımı merak ediyorum, yani yapabileceğiniz çok şey yok. Bunları yapın ve en iyisini umun. x:
Zyaga

Yanıtlar:


12

Motorun demo sürümüne zaman sınırı gibi bir şey kodlamayı düşündünüz mü?

Mesele şu ki, demonuzu ne kadar korursanız koruyun, oyun bir kez çıktığında bir şekilde korsan olacaktır. İster demoyu ister sadece ana oyunu kullanarak olsun, oyun yeterince popülerse gerçekleşecek.

Oyununuz için ödeme yapmak istemeyen kişiler oyununuz için ödeme yapmaz.

Oyununuz için ödeme yapmak isteyen kişiler oyununuz için ödeme yapacaklardır.

Bu, en küçük indie oyunundan en büyük üçlü A başlığına kadar her şey için geçerlidir - etrafta dolaşmanın tek yolu, sunucularınıza bağlanmak için sadece zorunlu değil, oyunla ilgili değil, yani bir aptal Assassin yerine bir MMO yapmaktır. Creed her zaman çevrimiçi DRM. Bunun bir seçenek olmadığını zaten söylediğin için, onu kucaklamanı öneririm.

Bağımsız bir geliştirici olarak, daha fazla satış almanın en iyi yolu oyununuza daha fazla göz atmaktır. Korsanlığa yatkın olmayan insanlar demonuzu oynayacak ve daha sonra oyunu satın alıp almayacaklar. Korsanlığa yatkın insanlar demoyu oynayabilir, tanımladığınız varlıkları bulabilir ve bu şekilde devam edebilir ve yine de oyunu satın alabilir veya almayabilir.


Bu beklediğim gibi. Biraz cesaret kırıcı, ya da daha doğrusu bu böyle berbat, ama sadece rulo gibi! Ben ne yapabilirim varsayılan biraz (hiçbir yük menüsü kullanılabilir) oynayabilir sonra kodu biraz biraz şube ve daha sonra oyun ana harita (mevcut tüm temel / ana özellikleri olan tanımazsa) sabit kod olduğunu düşünüyorum içinde), o zaman çıkacaktır. Birisi onu kırıp gerçek verileri oynatmayı başardı, ancak bu noktada gerçek oyunu seri olarak çıkaracaklar ve yapılacaklar. : P
Zyaga

2
Oyunu satın almasalar bile, oyunu gören arkadaşları beğenebilirler ve sonra satın alabilirler. Korsanlığı durduramayacaksınız (büyük bütçeli korsanlıkla mücadele çözümleri bile gerçekten durduramadı), bu yüzden çok fazla endişelenmemenizi öneririz. Çok kolay yapmaktan kaçınmak için , demo exe'ye bir şey sabit kodlayabilirsiniz, böylece ne kadar olursa olsun sadece ilk haritayı veya @ Amadeus9'un söylediği gibi bir zaman sınırını okur, ancak o zaman sadece en iyisini umabilirsiniz.
Christian

Teşekkürler @Christian! Daha fazla geri bildirim bu doğru yol! ^ _ ^
Zyaga

@WeakDev, tüm iyi noktalar burada. "Aşırı kısıtlayıcı" rotadan inenler sadece müşteri tabanlarına zarar verdiler. Tüm DRM 24 saat içinde atlatıldığından korsanlar kolay vakit geçiriyorlar. Oyunun ve hedef kitlenizin kalitesine odaklanın, yanlış gidemezsiniz :)
Moo-Juice

Kendine fazla düşmezdim, Zayıf Dev. Her şeyden önce, sanırım bir demo sunarak korsanlığı hafifletmek için oldukça büyük bir adım atıyorsunuz. Ben indie oyun korsanlığı için büyük bir nedeni, satın almak için dalma almadan önce denemek için fırsat eksikliği olduğunu düşünüyorum. Demo olmayan oyunların bir tür deneme olarak korsan hale getirilmesinin oldukça yaygın olduğunu düşünüyorum. Kişi olumlu bir deneyime sahipse satın almak hiç de sorun değil.
Sean O'Hollaren

5

Yorumunuzda "şube" ile ne kastettiğinizden emin değilsiniz, ancak koşullu derleme kullanarak aynı kaynak kod ağacından iki farklı yürütülebilir dosya (demo ve tam sürüm) yapmak mümkündür . Yalnızca ilk bölümü oynatma yeteneğini dahil etmek için bir derleme zamanı seçeneği yapabilirsiniz. (Örneğin, C ++ uygulamasında, #ifdefyalnızca tam sürüm için tasarlanan kodun çevresindeki komutları kullanabilirsiniz .) Demo sürümünün en azından aşağıdaki oyun efektlerini üretmesini sağlayabilirsiniz:

  • İlk bölümün öğeleri bir zip dosyasında saklanır ve demo sürümü başlamadan önce bu zip dosyasında dijital bir imza olup olmadığını kontrol eder. Modları kullanmak için, oyuncuların tam sürüm için ödeme yapması gerekir.
  • Demoyu derlerken, kodlama bayt kodunuzdaki opkodların kodlamasını yeniden düzenleyin.
  • Yalnızca sonraki bölümlerde kullanılan bir veya daha fazla komut dosyası işlemcisi için işleyicileri tamamen kaldırın. Bu, sonraki bölümlerdeki ayar parçalarının dosya değişiklik denetimi ve opcode kodlaması yamalanmış olsa bile başarısız olmasına neden olur.

1
Bir başka numara, her bir demo seviyesi dosyasının MD5 / SHA karmalarını demo sürümüne sabitlemek olacaktır. Bunun avantajı, tek bir karma / imza anahtarının değiştirilmesinin bir hex editörü ile oldukça kolay olmasına rağmen, en azından aşağıdaki diğer birçok veri varsa, karma sayısını arttırmak (oynatılabilir düzeylerin sayısını arttırmak) biraz daha zor olmasıdır. onlar.
Ilmari Karonen
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.