yazilimcibey

Yeni üye
20 May 2021
8
0
0
(34) İstanbul Avrupa
Merhabalar
Unreal Engine'yi uzun zamandır takip ediyorum ve sonunda bende eğitimlerimi detaylıca alarak oyun yapmaya başladım. Oyunun hikayesi ve oynanışı baya detaylı olacak ancak kafamdaki fikri bir türlü hayata geçiremedim. Soruya geçmeden önce yıllardır yazılımla uğraşıyorum ve büyük bir firmada yazılımcı olarak çalışıyorum. Ona göre cevaplar verirseniz çok sevinirim.

Şuana kadar yaptıklarım

1 - Steam pluginlerini kurdum. ( Advanced Steam Session vs. )
2 - Oyunun menüsünü , karakterlerini vs. hepsini hazırladım.
3 - API'mi hazırladım ve dedicated sunucum var.

İstediğim İlerleyiş

1 - Oyunu yeni satın alan kullanıcı , oyuna Steam'den giriş yaptığı zaman Steam'dan geldiğini doğrulasın ve API'ye yeni kullanıcıyı yazdırsın.
2 - Yeni oluşturulan kullanıcıyı UE , API ile tekrar çeksin ve oyuna bilgilerini yazdırsın.
3 - Oyunda yapılan her işlemi API'ye yazdırsın.

Sorularım şudur

Güvenli bir model oluşturmak istediğimden sadece Steam'dan giriş yapan kullanıcıları API ile sorgulatmak istiyorum. Ancak yeni gelen kullanıcıyı güvenilir şekilde nasıl API'ye insert edicem ? Çünkü reverse engineering ile oyunun kodlarını görmek isteyenler olacak ve kendini yeni kullanıcı olarak API'ye yazdırabilcek. Bundan dolayı steamdan bir doğrulama alıp o şekilde post etmem gerekiyor.

İlerleyişi yanlışta kurmuş olabilirim. Yanlışım varsa düzeltebilirsiniz.

Son olarak daha yeni oyun yapmaya başladım. Steam ile ilgili bu konuda fazla bilgi bulamadığından ya da ben göremedim sizlere sormak istedim.

Şimdiden teşekkür ediyorum herkese.
 
Büyük bir şirket değilsen yapamazsın bunu. Tanınan biri olsaydın steam ile iletişime geçip belli bir ücret karşılığında bu hizmeti alabilir ve özel api bile yazdırabilirdin bence. Ama şuan elindeki apilerle ne yapabiliyorsan onu yapabilirsin.
 
Kripto ile ilgili ya da ülke güvenliği ile ilgili bir oyun mu bu? Normal oyunlara göre 2 kat fazla güvenlik düşünmen için bir neden varmı?
 
Normal oyuna göre 2 kat güvenlik derken :D Sizlere "Oyunu şifrelemek istiyorum kodlarının kimseye gözükmesini istemiyorum" demiyorum ki. Oyunu satın alanla oyunu satın almayanı belli etmek için bir yöntem var mıdır bunu soruyorum sadece. Çünkü kullanıcıların bilgileri API'ye kaydedilecek ve bu oyun girişinde belli olcak. En küçük oyunun bile crackini bir süre sonra çıkarıyolar sizlerde biliyorsunuz. Amacım steamdan satın almış oyuncunun bilgilerini API'ye yazdırmak. Yoksa veritabanı oyunu satın alanlar ve almayanlar olarak ilerde elbet karışacak ve oyunun temeli veritabanı üzerine.

Örnek olarak bedava olmadan önce CS:GO'nun sistemi benim anlattığım gibiydi. Cracklisini indirenler official serverlere giremiyordu ve bilgileri tutulmuyordu.


Mesela şöyle bir şey yok mudur steam'de ? Oyunu alan kullanıcıları steam otomatik olarak Steamid'sini API'ye göndersin gibisinden.
 
Cracksiz online bir sistem için, Satışa çıkarmış olduğun platformla veya kendine özel wep mağza oluşturarak " bu kullanıcı bu oyunu satın almıştır. "  verilerini sql' de barındırmak. Mesela oyunu satın alan kullanıcının üzerinde tik işareti olur. Satın almayanda çarpı işareti olur. Ue4 sql plugin sayesinde verileri çekebilir, değiştirebiliriz. Çarpı olan giremez, tik olan girer. Steam böyle bir destek, entegrasyon veya ue4 için plugin sağlıyor mu ? bilmiyorum. Yani lafın kısası bir yerde,  bir şekilde oyunu satın alan kişilerin, user havuzunda barındırmanız gerekiyor.
 
Öncelikle olumlu cevabınız için teşekkürler. Ancak bunu yapmak için yöntem var mı onu arıyordum zaten ahahaha yinede çok teşekkür ederim. Bence steam'ın böyle bir destek sunması kesinlikle gerekiyor. Şuan hala araştırma yapıyorum :D
 
Varest plugin ile steamden bağımsız login sistemi kurup, serverında bilgileri tutabilirsin ancak bu sana yine de steamden oyunu kimin alıp almadığını göstermez, zaten steam in sana şu bu isimli kullanıcı oyununu satın aldı gibi bir bilgi vermesi söz konusu değil. steam destek sayfasına bakmanı veya desteğe sormanı tavsiye ederim, belki paylaştıkları bazı bilgiler vardır onları çakıştırabilirsin
 
https://partner.steamgames.com/doc/features/auth
Şu linki muhtemelen görmüşsündür ama ben her ihtimale karşı bırakayım. Steam e koyduğun uygulamanın kopya korumasını zaten steam yapıyor. Yani oyunu satın alanla almayanı zaten steam ayırıyor. Senin burda istediğin muhtemelen daha fazla bir koruma. Oyun dünyasında kırılamayan oyun hatta oyunu bırakalım yazılım ben bilmiyorum. AAA stüdyoların bile oyunları çatır çatır kırılıyor ve heryerde oynanıyor. Steam zaten genel olarak tüm auth işlemlerini sağlıyor. Oyunu başka bir kanaldan daha dağıtacağın için mı ikinci bir api ile tekrar kayıt tutuyorsun. O yaptığın ekstra sistemin güvenliği nasıl sağlanacak. Yani maksat crack lenemeyen bir şey yapmaksa öyle bir şey şu ana kadar yapılamadı. En azından kullanıcıyı rahatsız etmeden olmadı. Bence steamwork dokümanlarını gözden geçir. Çoğu şey kafanda canlanacaktır.
 
Öncelikle tavsiyen için teşekkür ederim. Login sistemini kendim yazabilirim aslında ki kafam o mantığa doğru gidiyor zaten  :D


Önerin için teşekkürler. Cidden ordan ayrılmadım bütün gündür ama tam olarak istediğimi veremiyor. Aslında cracklenemeyen bir oyun yapmak değil amacım. Sadece API'ye satın alan oyuncuları yazdırıp oyunu onlar üstünden döndürmek istiyorum. Çünkü eminim ki o yazdığım API ilerde bedava accountlar oluşturcak. Secret Key , OAuth2 vs. hepsini araştırdım ama web değil ki kodlar değiştirilmesin görülmesin  :D Steam desteğe yazdım belki dikkate alıp istediğimi yaparlar. Eminim ki herkesin çok işine yarar bu dediğim olay ki zor bir şeyde değil steam gözünden baktığım zaman.

Peki şöyle bir olay var mıdır ? Oyunu steamdan satın alsın kullanıcı ve steam ona kodu da versin oyunu da versin. Daha önce vardı böyle bir sistem şuan var mı bilmiyorum.
 
Bence kodun içine daldığında istediğini yapabileceksindir. Dökümantasyonda bir anda görülmeye bilir açık açık. Bı arada ue4 de server binary tamamen farklı derleniyor. Ve herşey serverdan yapılıyor. Dolayısı ile sen istemezsen lokal kullanıcının herhangi bir şey yapması zor. Şimdi aklıma geldi.
 
Kodlamaya çalışıyorum da olmuyor hep bi mantık hatası oluyor. Güvenlik sıfır yani. Steam ile iletişime geçtim şuanda yardımcı olmaya çalışıyolar bakalım belki istediğimi yaparlar.  :D Online oyun yapmak isteyenler güzel bir gelişme olur. Öbür türlü kendi login sistemimi yapcam artık.