Çimenliği 5 sıra ve 9 sütuna bölen, sağdan gelen zombilere karşı bitki dikip savunma yaptığın bir oyun promptu. Oyunun tamamı yerine tek bir gündüz bölümü isteniyor: altı bitki kartı, gökten düşen ve bitkilerin ürettiği güneşle kart açma, son savunma olarak bir kez çalışan çim biçme makineleri ve son dalgada yoğun bir saldırı.
Karakterlerin sürekli küçük hareketlerle canlı görünmesi özellikle isteniyor. Prompt Three.js ile tarayıcıda çalışan bir yapım tarif ediyor.
Sen deneyimli bir Three.js oyun geliştiricisi ve görsel yeniden yapım uzmanısın. Görevin, 2009 PC sürümü Plants vs. Zombies oyununu tarayıcıda çalışan, yüksek görsel sadakatli ve gerçekten oynanabilir bir deneyim olarak yeniden oluşturmaktır. Referans olarak orijinal PC sürümünün ekran görüntülerini ve oynanışını esas al; özellikle EA’nın resmî Plants vs. Zombies sayfasındaki görselleri ve orijinal Windows sürümünün gameplay/menu referanslarını kullan. EA TEKNİK TEMEL - Three.js kullan. - Projenin giriş noktası çalışan bir index.html olsun. - Tarayıcıda doğrudan çalışsın; mümkünse ek build süreci gerektirme. - HTML/CSS/JavaScript dosyalarını düzenli fakat gereksiz karmaşıklık yaratmadan yapılandır. - Oyun masaüstünde fare ile rahat oynanmalı. - Performans ile görüntü kalitesini dengele; hedef akıcı oynanıştır. - Önce temel oynanabilir döngüyü bitir, ardından görsel detayları geliştir. - Gereksiz framework, backend, hesap sistemi veya oyunda görünmeyecek sistemler ekleme. - Uzun test/yeniden yazım döngülerine girme; token kullanımını verimli tut. HEDEF DENEYİM Oyunun tamamını yeniden üretmeye çalışma. Bunun yerine Plants vs. Zombies'in kimliğini en güçlü şekilde temsil eden, tamamlanmış bir Adventure Mode gündüz çim bölümü oluştur. Bu bölüm basit bir teknoloji demosu gibi görünmemeli; ana menüsü, bitki seçim ekranı, oynanış, zombie dalgaları, HUD, kazanma/kaybetme durumları ve animasyonlarıyla küçük ama cilalı bir gerçek oyun hissi vermeli. Orijinal yapıda çim alan yatay zombie saldırılarına karşı kullanılan 5 sıra × 9 sütunluk bir savunma alanıdır; zombiler sağdan gelir, bitkiler hücrelere yerleştirilir ve lawn mower'lar son savunma görevi görür. MobyGames GÖRSEL YÖN Plants vs. Zombies'in gerçekçi değil, son derece karakteristik renkli, elle çizilmiş, hafif abartılı ve mizahi çizgi-film estetiğini yakala. Basit Three.js küpleri, silindirleri veya düşük detaylı prototip şekillerini ekranda nihai grafik olarak kullanma. Tercihen: - yüksek kaliteli sprite/texture tabanlı karakterler, - plane geometry üzerinde şeffaf dokular, - CSS/Canvas/texture tabanlı detaylı UI, - gerekiyorsa çok katmanlı 2.5D efektler kullan. Sabit OrthographicCamera ile orijinal oyuna yakın üstten-eğik görünümü oluştur. Kamera FPS/TPS gibi hareket etmesin. Tüm oyun alanı aynı anda okunabilir olmalı. Çimde kare grid çizgilerini aşırı belirgin yapma. Hücre yapısı yerleştirmeyi kolaylaştırmalı ancak orijinalde olduğu gibi çim dokusunun içine doğal biçimde karışmalı. Sahne şu görsel öğeleri içersin: - solda evin küçük bir bölümü, - taş yürüyüş yolu, - parlak yeşil ve hafif düzensiz çim, - arka tarafta beyaz çit, - çalı/ağaç detayları, - sağdan gelen zombie giriş alanı, - her sıra için kırmızı lawn mower. Orijinal gündüz bölümlerinin parlak yeşil çim, sıcak güneş ışığı ve güçlü renk kontrastını referans al. ANA MENÜ Oyun açıldığında doğrudan savaş başlamasın. Plants vs. Zombies'in klasik ana menüsünü çağrıştıran bir sahne oluştur: - mavi gökyüzü, - uzakta banliyö evi ve çim alan, - büyük mezar taşı biçimli ana menü, - büyük “START ADVENTURE” seçeneği, - dekoratif küçük taşlar / çiçekler / toprak, - Options ve Help gibi küçük yan seçenekler. Orijinal menünün dev mezar taşı üzerine yerleştirilmiş Adventure / Mini-Games / Puzzle / Survival yapısını görsel referans olarak kullan ancak bu projede yalnızca Adventure'ın gerçekten çalışması yeterlidir. MobyGames Adventure'a basınca kısa ve akıcı bir kamera/UI geçişi ile bitki seçim ekranına git. BİTKİ SEÇİM EKRANI Orijinal “CHOOSE YOUR PLANTS!” ekranının kahverengi seed tray tasarımını taklit et. Kartlarda: - bitki görseli, - isim, - sun maliyeti, - seçildi/seçilmedi durumu bulunsun. En az şu bitkiler tamamen işlevsel olsun: - Günebakan – 50 Sun - Bezelyeci – 100 - Kiraz Bombası – 150 - Ceviz Duvar – 50 - Patates Mayın – 25 - Kar Bezelyesi – 175 Seed packet görünümünü orijinaldeki krem renkli kart, yeşil bitki illüstrasyonu ve alt bölümde sun maliyeti yaklaşımına yakın tasarla. Seçilen kartlar üst seed bar'a geçsin. Alt bölümde “LET'S ROCK!” düğmesi olsun. Orijinal seçim ekranını düzen ve oran açısından aktif referans kabul et. HUD Oyun başladığında üst tarafta klasik kahverengi seed bank bulunmalı. Sol tarafta büyük bir güneş simgesi ve mevcut Sun miktarı gösterilsin. Yanında seçilen bitkilerin kartları yer alsın. Kartlarda: - maliyet, - recharge/cooldown durumu, - kullanılabilirlik net biçimde görülsün. Sağ üstte küçük Menu düğmesi, seed bar'ın sonunda ise shovel simgesi bulunabilir. Alt sağda oyunun ilerleyişini gösteren küçük zombie-wave progress bar oluştur. Orijinal gameplay HUD düzenini mümkün olduğunca yakından referans al. OYNANIŞ Fareyle seed packet seç → çimde hücrenin üzerine gel → uygun hücreyi highlight et → tıkla → bitkiyi yerleştir. Sun yetmiyorsa kart kullanılamasın. Güneş: - belirli aralıklarla gökyüzünden aşağı düşsün, - Günebakan tarafından üretilsin, - oyuncu üzerine tıklayarak toplasın, - toplandığında HUD'daki sun counter'a doğru küçük animasyonla uçsun. Bitkiler: Günebakan - düzenli aralıklarla güneş üretir. - yüzü hafifçe hareket eder. - yaprakları/baş kısmında idle animation bulunur. Bezelyeci - kendi sırasında zombie varsa ateş eder. - kafa/hedef hareketi ve ateş sırasında küçük recoil bulunur. - bezelye projectile olarak ilerler. Kar Bezelyesi - benzer şekilde ateş eder. - vurduğu zombie'yi yavaşlatır. - projectile rengi ve hit efekti farklıdır. Ceviz Duvar - saldırmaz. - yüksek HP'li bariyerdir. - hasar aldıkça yüz/görsel durumu değişir. Patates Mayın - ilk yerleştirildiğinde toprağın altında olur. - kısa süre sonra aktifleşir. - üzerine zombie bastığında patlar. Kiraz Bombası - kısa fuse animasyonundan sonra yakın çevrede büyük hasar verir. - hızlı, çizgi-film tarzı patlama efekti oluştur. ZOMBIELER En az: - Normal Zombie - Konili Zombi - Kovalı Zombi - Bayraklı Zombi bulunsun. Zombie'ler sağdan kendi lane'lerine girsin, sola doğru yürüsün. Karakterleri basit humanoid kutularla oluşturma. Büyük kafa, soluk gri-yeşil ten, iri gözler, kahverengi ceket, kırmızı kravat, yıpranmış kıyafetler ve komik dengesiz yürüyüş siluetiyle orijinal tasarım diline yakın oluştur. Her zombie için: - yürüyüş, - bitki yeme, - hasar alma, - ölüm animasyonu olsun. Konili ve Kovalı Zombi'nin kafasındaki koruma ayrı dayanıklılığa sahip olsun; hasar aldıkça önce aksesuarları yok olsun. COMBAT VE DALGALAR Zombie kendi sırasında önüne bitki gelince durup bitkiyi yemeye başlasın. Bitki ölürse yürümeye devam etsin. Projectile collision güvenilir çalışmalı. Bir zombie sol uçtaki mower'a ulaşırsa mower hızla o lane boyunca sağa giderek sıradaki tüm zombileri temizlesin. Lawn mower yalnızca bir kez kullanılabilsin. Bu davranış orijinal oyundaki son savunma sistemine uygun olmalı. MobyGames Seviye yaklaşık 5–8 dakika sürecek şekilde ayarlansın. Başlangıçta az sayıda zombie gelsin, ardından yoğunluk yükselsin. Önemli dalgalarda ekran üzerinde orijinal hissi veren kısa uyarılar göster: “A huge wave of zombies is approaching!” Son dalgada Bayraklı Zombi ve daha yoğun bir grup gelsin. Tüm zombiler öldürüldüğünde level tamamlanmış sayılsın. ANİMASYON VE CİLA Plants vs. Zombies'in karakteristiği hareketsiz sprite'lardan değil, sürekli küçük hareketlerden gelir. Bu nedenle: - bitkiler hafif sallansın, - Bezelyeci namlusu ateş ederken tepki versin, - Günebakan yüzü canlı görünsün, - zombiler dengesiz şekilde yürüsün, - kafalar/gövdeler farklı ritimde hareket etsin, - projectile'larda küçük squash/stretch kullan, - sun objeleri hafif pulse etsin, - patlamalarda kısa screen shake uygulanabilir. Animasyonları çok hızlı veya mekanik yapma. Menü ve HUD etkileşimlerinde de küçük hover, press ve geçiş animasyonları ekle. SES Uygun ve yasal olarak kullanılabilir sesler varsa: - pea atışı, - sun toplama, - bitki yerleştirme, - zombie homurtuları, - zombie'nin bitki yemesi, - patlama, - mower, - UI tıklamaları ekle. Kaynak bulunamazsa oyunu ses sistemi yüzünden geciktirme. ÖNCELİK SIRASI Geliştirmeyi şu sırayla gerçekleştir: 1. Sahne + orthographic kamera + 5×9 lawn. 2. Grid ve bitki yerleştirme. 3. Sun ekonomisi. 4. Bezelyeci + zombie temel combat. 5. Zombie dalgaları. 6. Diğer bitkiler ve zombie türleri. 7. Seed selection. 8. HUD. 9. Main menu. 10. Karakter animasyonları ve grafik cilası. 11. Efektler, geçişler ve ses. 12. Son performans/hata kontrolü. Kodlama sırasında erken aşamada gereksiz ayrıntılara takılma. Önce tam oynanabilir döngüyü kur, sonrasında ekrandaki görsel sadakati yükselt. Nihai sonuç açıldığında birkaç kutu ve placeholder'dan oluşan bir prototip değil; ilk bakışta klasik Plants vs. Zombies olduğu anlaşılabilecek kadar güçlü görsel kimliği olan, ana menüden başlayıp bitki seçimine ve tamamlanabilir gerçek bir savaşa uzanan cilalı bir browser oyunu olmalıdır. Tokenlerim limitli bunun bilincinde hareket et ve programı oluştur.
Sitedeki Bahçe bu promptla yapıldı ve iki ayrı sürümü var: ilki ve ikincisi.
Yorumlar
Yorum Yap