EDİT; Youtube data api v3 ile chatten mesajları vesaire çekiyoruz ve yaptığım yeni güncelleme ile apinin kota sorununu aşmış bulunmaktayım. İsteyen, arzu eden olursa yönlendirmesini yapabilir, dosya paylaşımını da yapabilirim.
Herkese merhabalar,
ücretsiz olarak sunulan bir projenin ücretli olarak satılması garibime gittiği için projeyi açık kaynak haliyle burada paylaşmak istedim.
Projemizin amacı youtube üzerinde canlı yayındayken chate yazılan mesajlar ile etkileşim oluşturarak bunları oyuna yansıtması ve insanların canlı yayınınıza yaptığı yorumlarla öne çıkarması gibi gibi...
Proje python dilinde yazılmış olup, gayet geliştirilmeye açık bir proje (: Kendi yaptığım geliştirmeleri eklemeden paylaşıyorum, üzgünüm.
Oyuna ait görsel;
Projeyi çalıştırmak için gerekli adımları aşağıda anlatacağım, takıldığınız yapamadığınız bir adım olursa seve seve yardımcı olurum.
Gerekli kurulum talimatı ve detaylar aşağıda.
Projeyi çalıştırmak için aşağıdaki Python paketlerinin yüklü olması gerekir:
pygame==2.6.1
pymunk==6.11.1
google-api-python-client==2.165.0
google-auth==2.38.0
google-auth-oauthlib==1.2.1
google-auth-httplib2==0.2.0
python-dateutil==2.9.0.post0
Kurulum
1. Python Kurulumu
Python 3.7 veya daha yeni bir sürümün sisteminizde yüklü olduğundan emin olun.
2. Bağımlılıkları Yükleme
Terminal veya komut istemcisinde proje klasörüne gidin ve aşağıdaki komutu çalıştırın:
pip install -r requirements.txt
3. Konfigürasyon Dosyası
Proje ilk çalıştırıldığında default.config.json dosyası otomatik olarak config.json olarak kopyalanacaktır.
YouTube entegrasyonu kullanmak istiyorsanız config.json dosyasını düzenleyin:
{
"CHAT_CONTROL": true,
"API_KEY": "YOUR_YOUTUBE_API_KEY",
"CHANNEL_ID": "YOUR_CHANNEL_ID",
"LIVESTREAM_ID": "YOUR_LIVESTREAM_ID"
}
Çalıştırma
Yöntem 1: Python ile Doğrudan Çalıştırma
python src/main.py
Yöntem 2: PowerShell Script ile Çalıştırma (Windows)
Windows'ta otomatik yeniden başlatma özelliği ile çalıştırmak için:
.run.ps1
Bu script, oyun kapandığında otomatik olarak yeniden başlatır. Durdurmak için Ctrl+C tuşlarına basın.
Oyun Kontrolleri
T Tuşu: TNT yerleştirme
M Tuşu: Mega TNT yerleştirme
Bunun dışında chat üzerinde yazılan tnt, fast, slow, big, wood, stone, iron, gold, diamond, netherite mesajları ile tnt yerleştiriyor, kazmanın görünümünü değiştiriyor ve kazmanın vuruşunu hızlandırıp yavaşlatıyor.
TNT_AMOUNT_ON_SUPERCHAT: Super Chat başına TNT sayısı
SAVE_PROGRESS_INTERVAL_SECONDS: Otomatik kaydetme aralığı
FRAMERATE: Oyun FPS'i (constants.py'de)
Açık kaynak olduğu için virüs total vesaire eklemedim, gerekli ise eklerim. Teşekkürler ^^ herkese iyi bir bayram ve mutlu bir gün geçirmesini dilerim.
EDİT: Amacım kimsenin işini baltalamak vesaire değil. Sadece ücretsiz olarak internet/forum/github gibi yerlerde paylaşılan dosyaların, ücretli olarak satılması ve ben yazdım, ben ettim diyerek paylaşılmasına karşıyım.
Siz ne gibi değişiklikler yaptınız hocam ve bu şekilde direkt kullanılabilir öi
Evet kullanılabilir, yaptığım değişiklikler;
Puan sistemi, liderlik tablosu, özelleştirilebilir tnt görünümü, mini-game gibi ekstralar ekledim. Bunlarda puanlar ile alınıyor gibi gibi durumlar mevcut. Ek olarak chatte ki mesajları dinliyor ama mesaj göndermiyor, oauth sistemi ile bunuda entegre ettim ve artık chate mesajda gönderiyor ve daha kullanışlı duruyor. Görünümler aşamasında geliştirmeye devam ediyorum. (:
Evet kullanılabilir, yaptığım değişiklikler;
Puan sistemi, liderlik tablosu, özelleştirilebilir tnt görünümü, mini-game gibi ekstralar ekledim. Bunlarda puanlar ile alınıyor gibi gibi durumlar mevcut. Ek olarak chatte ki mesajları dinliyor ama mesaj göndermiyor, oauth sistemi ile bunuda entegre ettim ve artık chate mesajda gönderiyor ve daha kullanışlı duruyor. Görünümler aşamasında geliştirmeye devam ediyorum. (:
Herhangi bir satış düşünmüyorum normal şartlarda hocam fakat geliştirmeyi tamamladıktan sonra hatasız bir halde sorunsuz şekilde geliştirmiş bulunur isem ( tnt görünümü gibi şeylerde çözüm arıyorum sadece ) olabilir...