Game Maker

Game Maker, YoYo Games tarafından Delphi programlama dili ile geliştirilmiş bir oyun yapımı programıdır.Game Maker'ın ücretli ve ücretsiz sürümleri vardır. Ücretsiz sürümü dll kullanımı, multiplayer oyun desteği ve gelişmiş GML (Game Maker Language) komutları gibi bazı özellikleri desteklemez. Ücretli sürümünde ise bu sınırlamalar bulunmamaktadır. Game Maker'ın ücretsiz veya ücretli sürümü kullanılarak oluşturulan oyunlar herhangi bir lisans ile dağıtılabilir ya da satılabilir.Game Maker, exe uzantılı dosyalar üretir. Programın kaynak kodunun dosya formatı sürüm 4 ve 5 için gmd, sürüm 6 için gm6, sürüm 7  ve 8 için gmk'dır.Programdaki partikül sistemi ile yağmur, kar, bulutlar, ateş, yıldırım, duman, patlama ve daha birçok efekt oluşturulabilir. Programın içinde bulunan aksiyon kütüphanesinde birçok hazır efekt vardır. Aksiyon kütüphanesi haricinde istenirse GML ile tamamen kullanıcıya özgü bir efekt geliştirilebilir.Aksiyon kütüphanesi bir oyunun yapımında gerekebilecek temel işlemleri kod yazmadan kullanabilmek için geliştirilmiştir. Örnek olarak, bir patlama efekti sürükle-bırak yöntemi ile oyuna eklenebilir, efektin rengi, boyutu ve nerede gözükeceği gibi ayarlar tek satır kod yazmadan belirlenebilir. Hazır aksiyonlar kullanarak karmaşık oyunlar geliştirilebilse de, Game Maker'ın gerçek gücünün ortaya çıkması için GML dili kullanılmalıdır.Game Maker dll'ler ve ek aksiyon kütüphaneleri ile geliştirilebilir. dll desteği sayesinde Game Maker'a birçok özellik eklenebilir. Buna verilebilecek en iyi örnek MySQL desteğidir.Game Maker, içinde resim düzenleyicisi ile birlikte gelir. Resim düzenleyicisi profesyonel özelliklerden yoksun olsa da temel işlemler için oldukça yeterlidir. Game Maker ile grafiklerin yanı sıra seslere de efekt verebilmek mümkündür, ama bu özellik çok sınırlıdır.Game Maker, betik dili ile oldukça esnek bir geliştirme ortamı sağlamasının yanı sıra, sürükle-bırak yöntemleri ile programlamaya yabancı olanların da kolayca oyunlar geliştirebilmesi için yaratılmış bir programdır.Game Maker, daha çok 2 boyutlu oyunlar üzerine yoğunlaşmıştır. Ancak diğer benzer programların aksine oldukça esnektir ve çeşitli tiplerde oyunlar geliştirmeye uygundur. Bu oyunlara örnek olarak platform oyunları, simülasyonlar, FPS, TPS ve multiplayer oyunlar da verilebilir. Programın kullanımı diğer oyun yapma programlarına göre çok daha kolaydır. Program içerisinde örnek oyunlar da mevcuttur.Odalar: Bir oyunu çalıştırabilmek için en azından bir oda oluşturmak gerekir. Oyun ile ilgili her şey odalarda geçer ve her şey odalar sayesinde ekrana yansıtılır. Bir oyunun her bölümü farklı bir odada geçebilir. Aynı zamanda her arabirim ekranı için de ayrı bir oda kullanılabilir (giriş, ayarlar, bölüm seçimi ekranları, vb.). Oda sayısı tercihi kullanıcıya bırakılmıştır .Nesneler: Nesneler oyunun iş yapan parçalarıdır. Nesneler oyundaki her türlü varlığı (karakterleri, düşmanları, kurşunları, duvarları vb.) canlandırır. Aynı zamanda görünmez nesneler de olabilir. Görünmez nesnelerin amacı belirli kodları çalıştırmaktır. Örnek olarak, oyunda her 20 saniyede bir düşman çıkmasını sağlayan kod görünmez bir nesne ile çalıştırılabilir. Nesneler "olaylara" tepki verirler. Bir nesnenin oluşturulmasını, yok olmasını, üzerine tıklanmasını, odanın dışına çıkmasını, başka bir nesne ile çarpışmasını, klavyeden bir tuşa basılmasını ve benzeri birçok olay nesnelere örnek olarak verilebilinir. Olaylar aksiyonları çağırır. Aksiyonlar bir olay gerçekleştiğinde ne olacağını belirlerler. Aksiyon listesine aksiyon kütüphanesinden hazır aksiyonlar konulabileceği gibi GML kodları yardımı ile oluşturulan aksiyonlar da çalıştırılabilir.Sprite'lar: Her türlü grafik ve animasyonları oluştururlar. Nesnelere oyun tasarımı sırasında atanabilir ya da dinamik olarak çizdirilebilirler.Yazı tipleri: Oyunda kullanılacak yazılar farklı yazı tiplerinde olabilir. Ayrıca, eklenen yazı tipleri kullanıcının bilgisayarında olmasa da çalışır.Arkaplanlar: Oyunda kullanılacak arka plan resimleridir. Bir grafik herhangi bir aksiyon içermiyorsa arka plan olarak eklenmelidir.Yollar: Belirli bir yolu izlemesi istenen nesneler için yollar tanımlanabilinir. Örnek olarak, oyunda sürekli belirli bir alanda dolaşan bir karakter için bir yol belirlenebilir.Game Maker'ın "6.x" ve daha düşük versiyonları ve onlarla oluşturulan ".exe" dosyaları "Windows Vista ve Windows 7" ile uyum probleminden ötürü çalışma problemlerine neden olabilmektedir.Game Maker genellikle çok karmaşık projelerde performansının düşmesi nedeni ile eleştirilmektedir. Ayrıca, kullandığı motor yapısıyla oyunun FPS değerini düşürebilir.