MARIO.GAME
tr

MariOCaml

OCaml ile yazılmış, rastgele bölümlere sahip bir Super Mario platform oyunu

MariOCaml

MariOCaml hakkında

MariOCaml, Cornell Üniversitesi'nde Matthew Hsu, Liam Bui ve Ashley Xue tarafından fonksiyonel programlama dersinin dönem sonu projesi olarak geliştirildi ve GitHub'daki en popüler OCaml projelerinden biri hâline geldi.

Oyunun tamamı — fizik, düşmanlar, eşyalar, kamera ve çizim motoru — OCaml ile yazıldı ve js_of_ocaml ile JavaScript'e çapraz derlendi, böylece sıradan bir web sayfasında çalışıyor. Altta oyun durumunu elinde tutan ve ana döngüyü çalıştıran bir “yönetmen” bulunuyor; prosedürel üretici ise her bölümü bir ızgara üzerinde oluştururken oynanabilir kalmasına dikkat ediyor.

Sonuç, SNES dönemi bir Mario oyununu andırıyor ama bir farkla: oyunu her yüklediğinizde tuğla kuleleri, madeni para bulutları ve Koopa Troopa'lar farklı bir düzende karşınıza çıkıyor. Bazı düzenler zarif, bazıları kaotik — rastgele bir bölümün cazibesi de bu.

Kontroller

TuşEylem
← → veya A DHareket et
Boşluk, ↑ veya WZıpla
↓ veya SEğil

Özellikler

  • Tamamen fonksiyonel bir dil olan OCaml ile yazıldı
  • Blokları, madeni paraları, düşmanları ve boşlukları yerleştiren rastgele bölüm üreticisi
  • Skor, madeni para sayacı, oyun bitti ve oyun kazanıldı ekranları
  • Bloklar kırıldığında ve düşmanların üstüne basıldığında parçacık efektleri

İpuçları

  1. Sol üst köşedeki sayaç bir zamanlayıcı değil, kare hızıdır — acele etmeyin.
  2. Kabuklara tekme atıp diğer düşmanlara çarptırarak zincirleme puan kazanabilirsiniz.
  3. Bir bölüm garip şekilde üretilirse, yeniden başlat düğmesiyle çerçeveyi yenileyip yeni bir düzen elde edebilirsiniz.

Sık sorulan sorular

OCaml nedir?

OCaml, akademide ve sektörde kullanılan fonksiyonel bir programlama dilidir. MariOCaml, JavaScript'e derlendiğinde tam teşekküllü bir gerçek zamanlı oyunu çalıştırabildiğini gösteriyor.

Bölümler her zaman farklı mı?

Evet — bölüm her yüklemede rastgele üretilir, yani her yeniden başlatışta yeni bir harita elde edersiniz.

MariOCaml'i kim yaptı?

Matthew Hsu, Liam Bui ve Ashley Xue. Proje, MIT lisansı altında açık kaynaklıdır.

Oynayabileceğin diğer oyunlar