PacMan oyununu JavaScript programlama dilini kullanarak web üzerinde çalışacak şekilde geliştirdim.
Oyunda kendi haritalama şekli olarak labirenti kendim oluşturdum. Ayrıca seviyelendirme kullandığım oyunda seviyelerde labirentin duvar renk değişiminden büyük noktacıkların dizilimi, hayaletlerin ve Sarı Canavar’ın hızlandırılması gibi özellikleri dahil ettim.
Haritalandırmada kullandığım labirentte oyunun 40.yılına atıfta bulunarak rakamlı bir tema kullanmak istedim. Oyundaki hayaletlerin her birinin kendine özgü özelliklerini ekleyerek orijinal oyundaki kuralları da kullanmak istedim. Kurallarına göre hareket eden hayaletleri seviye değişiminde birbirlerinin görevlerini değişerek oyuna zorluk kazandırdım.
Oyunda ayrıca geliştiriciler için düşündüğüm tanrı modu Sarı Canavar’ın tek başına labirentleri dolaşıp noktalama dizilimini ve haritalandırmayı görebileceğiniz ve oyunun aslında bir nevi mantığını anlatan bir moddur. Mod aynı zamanda puanlama sistemini de görebileceğiniz bir şekilde tasarlanmıştır.
Oyun yön tuşları veya W,A,S,D tuşlarıyla oynanmaya izin verecek şekilde hazırlanmıştır. Yönlendirmelerden ayrı olarak Q ile oyunu duraklatma, E ile oyunu devam ettirme,F5 ile oyuna yeniden başlama tuşlarını oyuna dahil ederek daha kaliteli bir oyun deneyimi sunmak istedim. Ayrıca bahsettiğim tanrı moduna veya normal modda oyun başlamak için giriş ekranındayken G ile tanrı moduna,S ile normal modda oyuna giriş yapabilirsiniz.
PacMan Oyun Alanı Ve Ögeleri
1.Oyun Alanı(Labirent)
Labirentin genişlik ve yüksekliği kare olacak şekilde 510*510 piksel olarak ayarlanmıştır. Duvar sınır genişliği eşit olarak ayarlanmış olup çerçeveleme olarak grid’lerden yararlanılmıştır. Duvar sınırları Şekil.1’de de görüldüğü üzere rakam oluşturacak şekilde özel tasarlanmıştır.
Labirentin oyun alanı dışında kalan sol altında yer alan kısım menü olarak veya bilgilendirme alanı olarak kullanılmıştır. Labirentin oyun alanı dışındaki sağ üst alanı ise kalan PacMan can hakkını ve oyuncunun kazandığı puanları görebileceği skor alanı için ayrılmıştır.
![]() |
Şekil 2.Boş Labirentte Sağ Üst Ve Sol Alt Menü Görünümü
Labirentte oyuncu tarafından yönlendirilen Sarı Canavar’ın amacı labirentteki noktacıkların tamamını labirentte dolaşan hayaletlerden kaçarak bitirmektir. Sarı Canavar oyuncu tarafından W,A,S,D tuşlarıyla veya klavyedeki yön tuşlarıyla hareket ettirilebilmektedir.
Labirentte bazı noktalara bırakılan büyük noktacıkları Sarı Canavar yediğinde hayaletler mavi renge dönüşür. Ve belirli bir süreliğine yenilebilir olur. PacMan’in Sarı Canavarı’nı yönlendiren oyuncu büyük noktacıklardan ve yediği hayaletlerden yüksek puanlar elde ediyor.
![]() |
Şekil 3.Sarı Canavar
3.Hayaletler
Hayaletler labirentte oyun başlarken belirli bir yerde durmaktadır. Bu yer onların evi olarak adlandırılır. Oyunda Sarı Canavar’ın kaçtığı 4 çeşit hayalet bulunmaktadır.
lKırmızı hayalet her zaman Sarı Canavar’a en yakın yolu seçer.
lPembe hayalet Sarı Canavar’ın 4 adım önünde olan yolu seçer.
lTurkuaz hayaletlerin hareketi öngörülemez, rastgele hareket ederler.
lTuruncu hayaletlerin hareketi öngörülemez, rastgele hareket ederler.
Sarı Canavar büyük noktacıkları yediğinde hayaletler mavi renge dönüşür. Sarı Canavar tarafından yenilebilir olurlar ve hareketleri rastgele olup yavaşlar. Canavar tarafından yenen hayaletler evlerinde renklerine göre sıralanarak yeniden doğmayı beklerler ve süreleri dolduğunda tekrar labirente dönerler.Şekil.4’te oyun başlarken hayaletlerin labirentteki evlerinde konumları görülmektedir. Şekil.5’te ise büyük noktacığı yiyen Sarı Canavar’ın yediği hayaletler ve mavi şekilde yenilebilir dolaşan hayaletler görülmektedir.
![]() |
Şekil 4.Hayaletler ve Evleri |
![]() |
Şekil 5.Mavi Hayaletler Ve Yenilen Hayaletler |
4. Noktacık
Labirentin yollarında sadece Sarı Canavar’ın yiyebileceği oyuncuya puan kazandıran noktacıklar vardır. Belirli noktalarda ise büyük noktacıklar vardır. Bu noktacıklar oyuncuya fazla puan kazandırdığı gibi aynı zamanda da hayaletlerin mavi renge bürünüp,yenilebilir olmalarını sağlamaktadır.
Mavi renge bürünen hayaletleri yiyen Sarı Canavar oyuncuya fazla puan kazandırır. Ve hayaletleri başlangıç noktası olan hayaletlerin evine gönderir. Şekil.6’da labirent üzerindeki noktaların dizilimini ve büyük noktacıkları görebilirsiniz.
![]() |
Şekil 6.Noktacıkların Dizilimi
5.Menü ve Skor Tablosu ve Kalan Canlar
Oyun alanının sol alt bölümünde yer alan menüde karşılama mesajı,oyun oynanış ve yönlendirme tuşları, oyunun duraklatılıp devam ettirileceği ve yeniden başlatılacağının hangi tuşlarla yapılacağının bilgilendirmesi yer alıyor.
Oyun alanının sağ üst bölümünde ise oyuncunun topladığı puanları görebileceği skor tablosu ve Sarı Canavar’ın oyundaki Sarı Canavar hariç kalan haklarını gösteren sembol bulunuyor. Ve ayrıca oyuna başlamadan önce 3 saniye geri sayım da bu alanda yer alıyor. Şekil.7’de menü,skor tablosu ve kalan canların oyun alanındaki yerleşimini görebilirsiniz.
![]() |
6.Karşılama Ekranı
Oyunu açtığımızda önümüze gelen karşılama ekranında oyunun isminin üstte yer aldığı bir yapı ve oyuna başlamak için basılacak tuşun ibaresi,Tanrı Modu’na giriş yapmak için basılacak tuşun ibaresi görülmektedir. Animasyonlu olarak Sarı Canavar ve hayaletlerden kırmızı ve turkuaz olanların sembolleri yer almaktadır.
Oyunun geliştiricisi olarak açılış ekranına imza niteliğinde isim,soyisim kısmımı ekleyerek bu ekranın tamamlandığını görebilirsiniz. Şekil.8’de bu ekranı görebilirsiniz.
![]() |
7.Tanrı Modu
Tanrı Modu için God kelimesinin ilk harfi olan “G” tuşuna basılarak oyuna giriş yapılır.
Tanrı Modu’nda sadece Sarı Canavar ve noktacıklar oyun alanı içerisinde oluşur. Hayaletler oluşmaz. Geliştiriciler için eklediğim bu modda Sarı Canavar ile rastgele dolaşarak noktacıkları toplayarak puanlama sistemini,oyun içindeki yerleşimi,menülerin kullanımını görebilirsiniz. Ve bu modda olduğunuzu sol altta yer alan menünün en altında “TANRI MODU” olarak görebilirsiniz.
Şekil.9’da Tanrı Modu’nda başlamış bir oyun görüntülemektesiniz.
![]() |
8.Tuşlar ve Oynanış
Oyuna başlarken Start(Başlat) kelimesinin baş harfi olan S tuşuna basarak oyuna normal modda başlayabilirsiniz. Geliştiriciler oyunun yerleşim alanlarını noktacıkların dizilimini ve oyunu hayaletsiz şekilde görmek için God Mode(Tanrı Modu) kelimesinin baş harfi olan G tuşuna basarak oyuna Tanrı Modu’nda başlayabilirsiniz.
Oyunda Sarı Canavar’ı yön tuşları veya W ile yukarı yönlü hareket,A ile sol yönlü hareket,S ile aşağı yönlü hareket,D ile sağ yönlü hareket ettirebilirsiniz.
Oyun içinde duraklamak için Q,devam etmek için E,yeniden başlatmak için F5 tuşlarına basabilirsiniz.
Oyunda tüm Sarı Canavar haklarını kullanıp bittiğinde, ekranda kırmızı çerçeve içinde “OYUN BITTI.Tekrar başlamak için F5’ye bas.” mesajı belirir.
Oyunda Sarı Canavar’ın hayaletlerden kaçarak tüm noktacıkları toplaması amaç olduğundan, tüm noktacıklar tamamlandığında ekranda yeşil çerçeve içinde “Tebrikler! Oyunu tamamladınız.Diğer bölüme geçmek için R’ye bas.” mesajı belirir.
Şekil 10.Oynanış ve Oyun İçi Tuşları Gösteren Menü
Şekil 11.Tüm Hakların Tükendiği İçin Biten Oyunun Mesajı
Şekil 12.Oyundaki Noktacıkların Tamamı Yendiğinde Gösterilen Başarı Mesajı
9.Seviye ve Zorluk
Oyun başlarken yani 1.seviyede labirent karşımıza mavi olarak gelmektedir. Ve oyun orijinalindeki kurallar çerçevesinde ilerlemektedir. 2.seviyede labirentin rengi yeşile dönüşmektedir. 3.seviye ve sonrasında oyun hem zorlaşmakta,hem hızlanmaktadır hem de labirent kırmızı renge dönüşmektedir. Oyundaki zorlaşma şu şekilde sağlanmıştır. Hayaletler oyun başlarken belirli bir kurala göre ilerler. Yukarıda 2.3’te belittiğim hayaletlerin hareket etme mantığı 3.seviyeden sonra tamamen değişmektedir ve oyunu zorlaştırmaktadır.
Şekil.13,Şekil.14,Şekil.15’te değişen labirent renklerini görebilirsiniz.
![]() |
![]() |
![]() |
10.Puanlama Sistemi
Labirentin yollarındaki noktacıkların her birinin belirli puanları vardır. Sarı Canavar bu noktacıkları yiyerek puan biriktirir. Labirentin bazı noktalarında bulunan büyük noktacıklar diğer noktacıklara göre daha fazla puana sahiptir. Ayrıca büyük noktacıkları yiyen Sarı Canavar, hayaletleri mavi renge döndürür. Ve artık hayaletlerde Sarı Canavar tarafından yenilebilir olacaktır.
lNormal noktacıklar 10’ar puandır.
lBüyük noktacıklar 50’şer puandır.
Yenilebilir mavi renkli hayaletler 200 puandır.Fakat aynı renk değişim süresi içerisinde yenilen 2.hayalet 400 puan,3.hayalet 800 puan şeklinde ilerlemektedir.
![]() |
Şekil 17.Yenilebilir Mavi Hayalet
PacMan oyununun Javascript ile yazdığım kodlarına GitHub linkinden erişebilirsiniz. Sizde bilgisayarlarınıza indirerek 40.yılında olan PacMan oyununun macerasına kaldığı yerden devam edebilirsiniz.
Github Linki: https://github.com/sburakbahceci/PacManJS
KAYNAKLAR
1. https://en.bandainamcoent.eu/
2. https://tr.wikipedia.org/wiki/Bandai_Namco
3. https://tr.wikipedia.org/wiki/Pac-Man
Yorumlar
Yorum Gönder