Adventure Game Studio - Başlangıç

+ Yorum Gönder
Programlar ve Programların Resimli Anlatımları Bölümünden Adventure Game Studio - Başlangıç ile ilgili Kısaca Bilgi
  1. 1
    Hasan
    Özel Üye
    Reklam

    Adventure Game Studio - Başlangıç

    Reklam



    Adventure Game Studio - Başlangıç

    Forum Alev
    Adventure Game Studio - Başlangıç


    Merhaba,
    Bu makalede Adventure Game Studio (AGS) ile oyun yapmaya nasıl başlanılması gerektiğinden bahsedeceğim.

    Programa Ait Konu için >

    AGS, bir adventure oyunu yapmak için en kullanışlı programlardan biridir. Basit arayüzü ile yapmak istediğiniz macera oyunlarındaki karakter, envanter eşyaları, dialoglar gibi macera oyunlarındaki önemli öğelerin ayarlarını yapabilirsiniz. Ve AGS ile basit bir macera oyunu yapmak için programlama bilmenize gerek yoktur. Ama AGS ile beraber gelen AGS Script'i öğrenirseniz yaptığınız oyuna yeni özellikler ekleyebilirsiniz. Mesela Asporia: Gizli Tehdit gibi bir RPG yapmak için AGS scripting'i bilmek gerekiyor. Yani AGS sadece adventure oyunları yapmaya yaramıyor, isterseniz script kullanarak bir dövüş oyunu bile yapabilirsiniz. Belki ileride istek gelirse AGS Script hakkında da bir makale yazarım. AGS-Başlangıç seviyesi için script öğrenmek bence erken.
    AGS Arayüzü
    Arayüzdeki bazı bölümler AGS-Başlangıç seviyesi için uygun değil ve bir macera oyunu yapabilmeniz için o bölümlere girmek zorunda değilsiniz. Bu bölümlerde "Başlangıç için gerekli değil" yazıyor. O kısımların nasıl kullanıldığını daha sonra yazacağım makalelerde açıklamayı düşünüyorum.
    Game Editor
    General Setting: Buradan oyunumuzla ilgili genel ayarları yapabiliriz. Mesela Room transition style ile oyundaki odaların değişme efektini ayarlayabiliriz. Başlangıç için gerekli değil
    GUIs: Oyununuzdaki arayüzlerin ayarları. Mesela default bir AGS oyununda mouse imlecini ekranın üstüne getirirseniz bir menü ortaya çıkıyor. İşte bunları GUIs bölümünden ayarlıyorsunuz. Başlangıç için gerekli değil
    Inventory Items: Oyundaki envanter eşyaları. Bunlar da anahtar, dergi, yumurta, kalem gibi adventure oyunlarında kullanılacak eşyalar.
    Global Messages: Bütün oyun boyunca kullanılabilecek mesajlar. Mesela oyundan çıkmak istediğiniz zaman gelen "Are you sure you want to quit?" sorusu. Başlangıç için gerekli değil
    Palette: Oyunun renk derinliği. Change Colour Depth bölümünden renk deriniğini 16 veya 32 bit yapmanızı tavsiye ederim. Başlangıç için çok gerekli değil
    Dialogs: Oyundaki karakterler arası konuşmalar.
    Text Parser: Eğer bir text adventure yapıyorsanız kullanmanız gereken bir kısım. Başlangıç için gerekli değil
    Sprite Manager: Oyunda kullanılacak olan bütün 2D grafik öğelerini bu Sprite Manager'dan oyuna ekleyebilir ve kullanabilirsiniz.
    Views: Sprite Manager ile oyuna eklediğiniz sprite'ları karakterler ve (eğer animasyon kullanıyorsa) objeler için kullanırken View bölümünden gerekli sprite'ları düzenlemeniz gerekir.
    Characters: Oyununuza karakter ekleyeceğiniz ve gerekli ayarları yapacağınız yer.
    Fonts: Oyundaki yazıların fontlarını düzenleme. Başlangıç için gerekli değil
    Lip Sync: Oyundaki karakterlerin konuşurkenki ağız hareketlerini oldukça ayrıntılı bir şekilde ayarlama. Mesela "O" derken ağızlarının yuvarlanması. Sadece belki çok ileri seviyede, parayla satılacak AGS oyunları için gerekli bir özellik. Başlangıç için hiç gerekli değil
    Room Editor
    Settings: Üzerinde çalıştığınız odanın arkaplanını değiştirmek, müziğin sesinin yüksekliğini ayarlamak, odayı kaydetmek ve yüklemek gibi işlerin yapıldığı yer.
    Areas: Odadaki yürünebilir alanlar, hotspotlar gibi alanların ayarları.
    Objects: Odadaki nesneler. Mesela yerden bir anahtar almak.


    İlk Oyunumuzu Yapalım
    Eveet, artık işe başlayabiliriz. Şimdi AGS'yi açın ve Start a new game'i seçin. Oradaki boşluğa oyunun data dosyalarının yer almasını istediğiniz bir klasör ismi yazın ve Default Game'i seçin. Yeni çıkan ekrandan oyunun çözünürlüğünü seçeceğiz. Size tavsiyem 320*240'ı seçmeniz. General Settings'te Game Name'e oyunun ismini girin.
    Şimdi Paint'i açın ve 320*240 boyunda bir oda resmi yapın.


    Bu resmi de bilgisayarınıza kaydedip kullanabilirsiniz.
    Sonra Room Editor/Settings'e gelin ve (Room)/Import Background.ile o resmi import edin. Sonra odayı "room1.crm" olarak kaydedip File/Test Game ile oyunu test edin.
    Şimdi odanın tam ortasında hareketsiz bir adamın (adı Roger ) olması gerekiyor.
    Roger odanın tam ortasında, çünkü henüz 2 boyutlu düzlemdeki koordinatlarını belirlemedik, ve default olan x=160 y=120 koordinatı kullanılıyor.
    Roger hareket edemiyor, çünkü henüz Walkable Area'ları düzenlemedik.
    Room Editor'de mouse'u odanın üstünde gezdirdiğimizde Mouse Pos. yazısının sağındaki sayıların değiştiğini fark ettiniz mi? İşte bunlar oyundaki koordinatlar. Oyuncu karakterin odanın neresinde başlamak istediğini belirleyin (örneğin x=150 y=210 benim yaptığım oda için uygun bir koordinat) ve bu sayıları Characters ekranında Roger'ın Start in room bölümündeki boşluklarına yazın.(160 - 120'nin yerlerine).
    Walkable Area'ları ayarlamak için ise Room Editor/Areas'a girin ve sol üstte Show this room's bölümünden walkable areas'ı seçin. Sonra sağ üstteki çizim butonlarından birini seçerek (mesela Draw Freehand) aynı Paint'te olduğu gibi oyuncunun yürüyebileceği alanları çizin (ve Fill Area ile içini doldurmayı unutmayın.). Mesela benim çizdiğim odadaki gir renkli zemin. Tekrar odayı kaydedip oyunu test edin. Eğer bir şeyleri yanlış yapmadıysanız bu sefer Roger'ın yürüyebildiğini göreceksiniz.
    Şimdi işi biraz daha ilerletelim. Size hotspotları anlatayım.
    Hotspotlar, bir adventure oyununda örneğin bir kapıya tıkladığınızda yeni bir odaya geçmeniz veya bir vazoyu incelemek için göz ikonuyla tıkladığınızda size o vazo hakkında bilgi verilmesi gibi olayların sağlandığı room içindeki arealardır. AGS'de hotspotları oyuna nsaıl walkable area eklediyeseniz öyle de ekleyebilirsiniz. Show this room's bölümünden Hospots'u seçin ve kapının üstünü bu hotspot ile kaplayın. Şimdi kapıyı incelediğimiz zaman bir mesaj çıkmasını istiyoruz. Interaction bölümünden "Look at hotspot" 'u seçin. Configure Action penceresinden Game - Display Message'ı seçin ve Edit Message'tan New Message'a tıklayarak bir şeyler yazın (Türkçe karakter kullanmayın). Sonra her şeye OK deyip odayı kaydedin ve oyunu test edin. Sağ mouse tuşu ile göz ikonunu seçip kapıyı incelediğiniz zaman o yazdığınız mesajın çıkması gerekiyor. Eğer mesaj çıktıysa o zaman artık hotspot kullanımını öğrenmişsiniz demektir.
    İşi biraz daha ilerletelim ve size oyunda odalar arası değişimin nasıl yapıldığnı göstereyim.
    Oyunda değişen odalar olabilmesi için önce ne lazım? Tabi ki yeni bir oda... Room/New Room ile yeni bir oda yaratın ve room2.crm olarak kaydedin.


    İsterseniz 2'nci odanın arkaplanı bu olsun?
    Sonra Room Editor ile 1'nci odaya geri dönün ve kapının üzerindeki hotspot'un interaction bölümünü bulun ve Interact Hotspot/ Configure Action bölümünden Player- Go to a different room(at specific coordinates'i seçin. Buradan da hangi odada hangi koordinatlara geçmesini istediğinizi yazın.
    Şimdilik sanırım bu kadar yeter. Eğer ihtiyaç duyarsanız karakter hazırlama, dialog scripti yazma gibi konular hakkında da makale yazabilirim.




  2. 2
    Hasan
    Özel Üye

    --->: Adventure Game Studio - Başlangıç

    Reklam



    Ana Menü Hazırlama
    AGS oyunlarında genellikle ana menü olarak bir GUI yerine; içinde Yeni Oyun, Oyun Yükleme, Oyundan Çıkma gibi bir ana menüde olması gereken butonların ve bu butonların çalışması için gerekli olan komutların bulunduğu odalar kullanılır. Şimdi ana menü yapmayı ayrıntılı şekilde anlatayım.

    İlk önce ana menü olarak kullanılacak olan bir room yapın. Oyuncu karakterin odada gözükmemesi için Hide Player Character'ı işaretlemeyi unutmayın. Bu yapacağınız yeni odanın background'unu içinde Yeni Oyun, Oyun Yükle gibi yazılarının bulunduğu ana menü grafiği olarak belirleyin. Oyuncunun ana menüde kullanacağı butonların herbirinin üzerlerine hotspotlar yapın. Hotspotları daha önceki yazıda anlatmıştım, ama burada dikkat etmeniz gereken bir noktayı tekrar belirteyim: Her bir hotspot farklı bir renkte olmalı, çünkü farklı fonksiyonları gerçekleştiriyorlar. Mesela New Game'in hotspot'u kırmızı iken Load Game'inki mavi olsun. (Hatırlatayım, Show this room's Hotspots yazısının sağında editing bölümü var, oradan farklı hotspotlar yaratabilirsiniz.). Sonra hotspotların Interaction bölümünden "Any click on hotspot" 'a Run Script komutunu verin ve aşağıda yazdığım komutları oraya girin.

    Ana Menü Komutları
    Yeni Oyun: Oyuncunun oyuna başlayacağı odaya gitmesi. Mesela 2 no'lu odada 120,200 koordinatları için NewRoomEx(2,120,200);


    Oyun Yükleme: RestoreGameDialog();
    Oyun Kaydetme: SaveGameDialog();
    Oyundan Çıkış: QuitGame(1);
    (Eğer 1 yerine 0 yazarsanız oyundan çıkmadan önce oyuncuya "çıkmak istediğinizden emin misiniz?" diye sorulmuyor.)


    Obje/Envanter Eşyası Kullanımı
    Diyelim ki oyununuzda ana karakter yerde bir anahtar görüyor ve bu anahtar ile bir kapıyı açıyor. (ben burayı anlatırken yine copy+paste devreye giriyor.)

    Bir objeyi almak: İlk önce Room Editor'de Objects kısmına geçin ve New Object ile yeni bir obje yaratın. Change Image ile objenin sprite'ını belirledikten sonra Interactions kısmına geçin ve Interact Object kısmına sağ tıklayıp New action'ı seçin. Player - Give the player a new inventory item'ı seçin ve oraya oyuncunun almasını istediğiniz inventory item'ın numarasını girin. (Inventory item'ların nasıl ayarlandığını sanırım önceki tutorial'da anlatmıştım).

    Objenin ekrandan silinmesi: Oyuncu yerden bir anahtar aldığına göre anahtarın artık yerden silinmesi gerekir. Bunu ayarlamak için Player - Give the player a new inventory item'a sağ tıklayın ve add action after this'i seçin (eğer komut vermek için AGS Script değil de AGS'nin Interaction arabirimini kullanıyorsanız bütün komutları böyle dizmen gerekiyor). Bunun altına Object-Remove object from room 'u seçin ve oraya ekrandan silinmesini istediğiniz objenin numarasını girin.(ilk obje için 0)

    Anahtarı almadan kapıyı açamamak: Önceki tutorial'da anlattığım gibi bir kapı üzerine hotspot yapın. Conditional - if the player has an inventory item'ı seçin ve oraya anahtarın inventory items'daki numarasını girin. Conditional'ların dallandığını göreceksiniz. Eğer oyunda belli bir koşul sağlanmışsa o conditional'ların alt dallarındaki komutlar çalışır ve Stop running more commands komutunu yazmadığınız sürece o koşulun altında olmayan daha sonraki diğer komutlar da çalışmaya başlar. Conditional'ın alt dalına Player - Go to a new room komutunu girin (böylece eğer oyuncunun anahtarı varsa o kapıdan girebilecek). Sonra yine sağ tıklayıp add action after this'i seçin ve Stop running more commands'ı seç. Böylece eğer oyuncunun anahtarı varsa artık daha fazla komut çalışmayacak (mesela "buradan geçemiyorum, anahtarım yok" gibi bir mesajın çıkması).
    Conditional- if the player has an inventory item'ın altına (ama alt dalı değil) eğer oyuncunun anahtarı yoksa ne olmasını istiyorsanız onların komutlarını girin. ("Buradan geçemiyorum, anahtarım yok" mesajı gibi).


    Karakter Yaratma
    Her ne kadar http://www.freewebs.com/skimbleshanks/gamepacks.htm adresinde pek çok hazır karakter ve diğer yararlı materyal bulmanız mümkün olsa da, kendi oyununuz için kendi karakterlerinizi yaratmak isteyebilirsiniz.
    İlk önce karakterimizin grafiklerini hazırlayalım. Hazırladığınız karakter grafiklerini oyuna entegre edebilmek için Sprite manager'ı kullanmanız gerekiyor. Sprite manager'da herhangi bir klasöre sağ mouse tuşuyla tıklayarak Import new sprite'ı seçin. Import from file veya Paste from clipboard'dan birini seçtikten sonra Grab Image ile resmi oyuna entegre edin.

    Sonra View'e gelin ve New View ile yeni bir view yaratın. Burada Loop'lar göreceksiniz, bu loop'lar karakterin aşağı-yukarı-sağa-sola yürümesi için gereken animasyonların ayarlandığı yer (AGS ile beraber default olarak gelen Roger karakterinin View'ini inceleyerek ne demek istediğimi daha iyi anlayabilirsiniz.). İşte New Frame ile Sprite Manager'daki imajlarımızı View'a ekliyoruz. Eğer karakterin konuşma animasyonu olmasını da istiyorsanız Speech View için ayrı bir view hazırlayın.

    Şimdi yeni bir karakter yaratmak için en önemli yere geldik: Characters ekranına. Eğer verdiğim linkteki hazır karakter paketlerden birini kullanıp Import Character ile oyununuza o karakterleri eklemediyseniz New Character'a tıklatın ve karakterin adını ve script adını girin (script adını AHM gibi kısa bir şey tutmanızı tavsiye ederim, sonra böylece o karakter için kod yazmanız gerektiği zaman 1000 saat boyunca character[ABDURTTURRAHMANKERIM].x gibi bir şey yazmak zorunda kalmazsınız ^^). Sonra Normal View bölümünden biraz önce View'da hazırladığımız karakter view'inin numarasını girin. Sonra karakterin oyuna nerede başlayacağını Start in room'dan ve X-Y koordinatlarından belirleyin.

    Eğer "This is the player character" 'ı seçerseniz, bu karakter oyuncu karakter olur; ve oyun biraz önce Start in room'a girdiğimiz noktada başlar. Bu kısma -eğer varsa- oyunun intro veya ana menü için kullandığı oda numarasını girin.

    Karakterin konuşma rengi: Orada ayrıca "talking color" diye bir yer var. Buraya herhangi bir rengin AGS'deki sayısal değerini girerek (yani RGB falan değil) karakterin konuşmalarının rengini belirliyoruz. Peki istediğimiz bir rengin AGS'deki sayısal değerini nasıl öğreneceğiz?

    Palette kısmına gelin. Eğer oyununuzun renk derinliği 256 Color değil de Hi-Color'sa, (ki kesinlikle Hi-Color yapmanızı öneririm.) bir Colour Finder çıkması ve yanlrında R,G,B yazılı olan 3 barın çıkması lazım. Buradan istediğiniz bir rengi arayabilirsiniz. Orada Color Number'ın yanında siz renk buldukça değişen sayı da o rengin sayısal değeri. Mesela "12754" güzel bir mavi.







  3. 3
    ahmwer
    Yeni Üye
    Hemmen Deniyorum Eline Sağlıkkk :D;)







  4. 4
    felix38
    Yeni Üye
    AGS Script hakkında da makaleni yazarmısın kardeş(lütfen)?

  5. 5
    qwert2000
    Yeni Üye
    cok guzel anlatmissin Valla emegine saglik

  6. 6
    husotluk
    Yeni Üye
    sağol gerçekten işime yaradı teşekkürler.

  7. 7
    Ziyaretçi
    Kardeş güzelde söylediğin şeylerin yerlerini bulamıyorum bira detaya insen.

+ Yorum Gönder
adventure game studio dersleri
5 üzerinden 5.00 | Toplam : 1 kişi