• 13-07-2023, 09:16:20
    #1
    oyunumuzun içerisinde bir enerji kısmı var ve bu kısım oyuncu işlem yaptıkça oyun içerisinde belirli sayılarda düşmektedir. Örneğin toplam 100 enerjimiz var ve bir işlem yapıldığında 20 enerji düşmektedir. Bu enerjiyi enerji<100 olduğu zaman her 90 saniyede +1 enerji şeklinde gelmesini istiyorum. Bu durum sadece oyun açıkken değil oyun dışarısında da işlemesini istiyorum. Bunun için hangi koda başvurmalıyım. Sayaç mı kullanmalıyım yoksa o anki saat-dakika alıp değişik kodlar mı yazmalıyım. Bilen biri varsa örnek kodlu şekilde açıklarsa çok memnun olurum. Cevaplarınız için teşekkür ederim şimdiden.
  • 13-07-2023, 09:24:33
    #2
    arti10net adlı üyeden alıntı: mesajı görüntüle
    oyunumuzun içerisinde bir enerji kısmı var ve bu kısım oyuncu işlem yaptıkça oyun içerisinde belirli sayılarda düşmektedir. Örneğin toplam 100 enerjimiz var ve bir işlem yapıldığında 20 enerji düşmektedir. Bu enerjiyi enerji<100 olduğu zaman her 90 saniyede +1 enerji şeklinde gelmesini istiyorum. Bu durum sadece oyun açıkken değil oyun dışarısında da işlemesini istiyorum. Bunun için hangi koda başvurmalıyım. Sayaç mı kullanmalıyım yoksa o anki saat-dakika alıp değişik kodlar mı yazmalıyım. Bilen biri varsa örnek kodlu şekilde açıklarsa çok memnun olurum. Cevaplarınız için teşekkür ederim şimdiden.
    Oyun kapalıyken yada arka plana atıldığında unity kodları çalışmaz.
  • 13-07-2023, 09:27:31
    #3
    Oyun kapanmadan önce bilgisayarınızın tarih ve saatini kaydettirip, oyun açıldığındaki tarih ve saatle karşılaştırabilir daha sonrasında da aradaki saat farkını 90 saniyeye bölerek can eklemesini sağlayacak bir algoritma yazabilirsiniz. Böylece kullanıcı oyunun giriş ekranında giriş yapana kadar gerekli can karakterine eklenmiş olur ve sistem bilgisayar saati ile eş zamanlı çalışır.
  • 13-07-2023, 09:28:36
    #4
    Oyundan çıkış veya background durumuna geçildiği anda o anki time bilgisini kayıt edersiniz. Oyun tekrar açıldığında o anki time bilgisi ile kayıt ettiğiniz time bilgisini karşılaştırıp ona göre işlem yapabilirsiniz.
    Araştırmanız gereken datetime kullanımı ve dosyaya yazma/okuma işlemleri.
  • 13-07-2023, 09:39:19
    #5
    Arkadaşlarında dediği gibi giriş çıkış anlarının bilgisini tutup arasındaki farkı saniyeye dönüştürüp 90'a bölebilirsiniz. Eğer online bir oyunsa bu bilgileri bir veritabanında tutup işlem yapmanız güvenlik açısından daha sağlıklı olacaktır.
  • 13-07-2023, 09:43:18
    #6
    Hile yapılmasını istemiyorsanız telefonun local saatini kullanmayın, internetten çektirin saati
  • 13-07-2023, 10:00:17
    #7
    m_kycn adlı üyeden alıntı: mesajı görüntüle
    Oyun kapanmadan önce bilgisayarınızın tarih ve saatini kaydettirip, oyun açıldığındaki tarih ve saatle karşılaştırabilir daha sonrasında da aradaki saat farkını 90 saniyeye bölerek can eklemesini sağlayacak bir algoritma yazabilirsiniz. Böylece kullanıcı oyunun giriş ekranında giriş yapana kadar gerekli can karakterine eklenmiş olur ve sistem bilgisayar saati ile eş zamanlı çalışır.
    İşlem yapıldı 100 enerjiden 20 enerji düştü yine aynı fonksiyonun son satırında datetime ile gün saat dakika alındıktan sonra sisteme nasıl bir şey mi eklemem gerekiyor ki en son yapılan işlemleri veya kullanıcı ne oyun içerisinde ne yaptıysa aklında tutabilsin?
    Bir de bu fonksiyonu update kısmında mı çalıştırmalıyım? Enerji kayıbından itibaren datetime alınıyor ve her 90 saniyede 1 artacak şekilde datetime fonksiyonu yazılıyor. Fakat oyun kapalıyken update fonksiyonu çalışmayacağı için fonksiyonda çalışmayacak ve oyun kapalıyken enerji dolumu gerçekleşmeyecektir. Bunun için bir biri ile bağlantılı hem startta hem update’te çalışan fonksiyonlar yazmalıyım? Veya farklı bir sorgu ile update fonksiyonunda oyun kapalıyken de açıkkende enerji dolumu yapabilecek bir fonksiyon yazabilir miyim?
    Galiba ilk sorum cevaplandığında bu sorum da cevaplanacaktır.
  • 13-07-2023, 10:12:21
    #8
    oguzhane adlı üyeden alıntı: mesajı görüntüle
    Hile yapılmasını istemiyorsanız telefonun local saatini kullanmayın, internetten çektirin saati
    Bu yoruma katılıyorum. Online olmayan bir çok oyunu hızlı oynamak istediğimde emilatör saatini ileriye alıp enerji vs. gibi şeyleri toplayabiliyoruz.
    Ancak bir noktada eğer oyununuzda lider tablosu vs. yoksa buna izin verin. Diğer türlü sıkıcı olabiliyor oyuncu açısından
  • 13-07-2023, 10:20:44
    #9
    ChostFreak adlı üyeden alıntı: mesajı görüntüle
    Bu yoruma katılıyorum. Online olmayan bir çok oyunu hızlı oynamak istediğimde emilatör saatini ileriye alıp enerji vs. gibi şeyleri toplayabiliyoruz.
    Ancak bir noktada eğer oyununuzda lider tablosu vs. yoksa buna izin verin. Diğer türlü sıkıcı olabiliyor oyuncu açısından
    Liderlik tablosu yok. Oyun online bir oyun değil fakat oyun içi satın alımlardan kaçmak için bu dediklerinizi kullanarak hile yapılabilir.