Blooded Story Nasıl Yapıldı?

NESDelisi

Müdavim
Müdavim
Katılım
12 Temmuz 2011
Mesajlar
2,709
Reaksiyon puanı
1,316
Puanları
358
Yaş
30
Giriş

Bugün sizlere oyun geliştirme üzerine ve neredeyse bitmek üzere olan Blooded Story oyunu hakkında bir yazı yazacağız. Bugünki konumuza gelecek olursak, Blooded Story Nasıl Yapıldı? Sizlere bundan bahsedeceğiz.

Yazı İçeriği

bs-design-20.05.2020.png



Oyun geliştirme üzerine uzun zamandır, bir yazı yazmadığımızı fark ettik ve bugün bu açığı kapatalım dedik ve yazmak için yola çıktık. Blooded Story oyununu geliştirmeye başlamadan önce oyunu 1280x720 ebadına sığacak şekilde planladık ve sonra Construct 2'yi açtık, arkasından yapmaya başladık oyunu. İlk olarak kullanacağımız nesneleri koyduk ve bu nesneler ise, title (oyunun ve bölümün adını yazan nesne), write (diyalogları yazan nesne), question1 (Oyuna Başla, Sonraki Senaryo ->, Sonraki Bölüm -> ve vereceğin cevapları yazan nesne), question2 (Hakkında, <- Önceki Senaryo ve vereceğin cevapları yazan nesne) ve son olarakta question3 (Menüye Dön, Çıkış Yap ve vereceğin cevapları yazan nesne) kullanıldı.


Arkasından event_sheet dosyası açtık ve bu dosyanın adı core'dir, bu core sayesinde ana sistemi kodladık. Bu ana sistemde fail, dialogue ve svcode sayacı bulunuyor. Fail sayacı, oyunda yapacağınız hata sayısını depoluyor ve bu depodaki sayı 3'e eşitse oyun direktman bitecek şekilde programlandı. Dialogue sayacının amacı, oyundaki her diyalogun bir değeri var. Mesela, dialogue 1: "... kaynaklı olduğundan dolayı irkildim. Bir anlık heyecanla karışmış korkunun içinde kafamı, pencereye çevirdiğimde oradan bana bakan kocaman ve içime korku saçacak kedi gözleri vardı.

O gözlere bir kere odaklandığımda o kadar uzun süre geçiyordu ki. Her ne kadar gözlere bakarken korku içinde dalsam da yaklaşık 2 dakika süre geçmişti. O gözlerin verdiği korkudan sadece 4 kere gözlerimi kırpabildim ki onun bile farkına zar zor varabilmiştim. Gözlerimi uzun süredir kırpamadığımdan acıyordu. Kendime geldiğimde o kedi gözler olduğu yerde değillerdi, lakin bu gece benim için daha yeni başladığından ...
" diyerek devam eder. Diyalogların artması verdiğiniz cevaplara veya sonraki senaryo yazısına basmanız sayesinde tetikleniyor. Diyalogların azalması ise sadece Önceki Senaryo yazısıyla gerçekleşiyor. Oyunun yazı tipini core dosyasından çekecek şekilde programlandı.

bs-core-20.05.2020.png



Bu sayede oyunu daha iyi kodladık ve sondaki değer olan svcode ise oyunun kayıt zamanını bildirecek şekilde kodlandı. Oyunu ilk açtığınız zaman o değer daima 0'dır, bu oradaki yazıyı Oyuna Başla olarak tetikleyecektir. Eğer oyunu sonraki bölüm'ü geçer veya oyuna başlarsanız o değer 1'ye geçer. Eğer oyunu oynuyorsanız -1'er geçer. -1 değeri hiçbir şey yapmayacaktır, sadece oyunun kaydetmesini engelleyecektir. Kayıt sistemi bu oyun motorunda eğer tarayıcıdan giriyorsanız o tarayıcının önbelleğine güveniyor, en azından ona güvenmek zorunda kalıyor. Eğer Windows bilgisayardan giriyorsanız, C:\Users\xx\AppData\Local\xx2 (xx -> bilgisayar adı, xx2 -> Oyun adı) dosyasında barındırılıyor.


Oyunu kodlarken hem mobil ve hemde masaüstünde oynanabilsin diye kodladık ve bu sayede çok fazla platforma uygun geliştirildi. Oyun içinde verdiğiniz cevaplar ise, her odanın kendi eventinde depolanmaktadır. Bu sayede müdahele etmeyi kolaylaştırmak için yapıldı. Aynı zamanda müziklerde odanın kendi eventinden çağırıldı. Oyunun müziklerini, Eylül Elif Aycan, Özgür Diyar Altındağ ve Furkan Altundağ yaptı ve oyuna eklenebilmesi için .ogg dosyasına çevirdik ve ekledik. Arkasından oyunun daha iyi çalışması için core'yi tüm event'in içine ekledik. Son olarak Ali Enes Bağcı'nın yazdığı diyalogları düzenleyerek dialogue değeri atayarak oyuna ekledik.

Son

Bugünlük bizden bu kadar, okuduğunuz için teşekkür ederiz.
 
Üst