MariOCaml के बारे में
MariOCaml को Cornell University में Matthew Hsu, Liam Bui और Ashley Xue ने फ़ंक्शनल प्रोग्रामिंग कोर्स के फ़ाइनल प्रोजेक्ट के रूप में बनाया था, और यह GitHub पर सबसे लोकप्रिय OCaml प्रोजेक्ट्स में से एक बन गया।
पूरा गेम — फ़िज़िक्स, दुश्मन, आइटम, कैमरा और रेंडरर — OCaml में लिखा गया है और js_of_ocaml की मदद से JavaScript में क्रॉस-कंपाइल किया गया है, इसलिए यह एक सामान्य वेब पेज में चलता है। इसके नीचे एक “डायरेक्टर” है जो गेम की स्थिति संभालता है और मुख्य लूप चलाता है, जबकि एक प्रोसीजरल जनरेटर ग्रिड पर हर लेवल बनाता है और ध्यान रखता है कि वह खेलने लायक रहे।
नतीजा SNES दौर के Mario गेम जैसा दिखता है, लेकिन एक अनोखे अंदाज़ के साथ: हर बार लोड करने पर आपको ईंटों के टावर, सिक्कों के बादल और Koopa Troopa की अलग ही व्यवस्था मिलती है। कुछ लेआउट बेहद सुंदर होते हैं, कुछ अफ़रा-तफ़री भरे — यही रैंडम लेवल का मज़ा है।
कंट्रोल
| इनपुट | एक्शन |
|---|---|
| ← → या A D | चलना |
| Space, ↑ या W | कूदना |
| ↓ या S | झुकना |
खूबियाँ
- 100% फ़ंक्शनल लैंग्वेज OCaml में लिखा गया
- रैंडम लेवल जनरेटर जो ब्लॉक, सिक्के, दुश्मन और गैप रखता है
- स्कोर, सिक्कों का काउंटर, गेम ओवर और गेम जीतने की स्क्रीन
- ब्लॉक टूटने और दुश्मनों को कुचलने पर पार्टिकल इफ़ेक्ट
टिप्स
- ऊपर बाएँ कोने का काउंटर फ़्रेम रेट है, टाइमर नहीं — इसलिए आराम से खेलें।
- शेल को दूसरे दुश्मनों की ओर किक करें तो अंकों की चेन बन जाती है।
- अगर कोई लेवल अटपटे ढंग से बन जाए, तो रीस्टार्ट बटन से फ़्रेम को फिर से लोड करें और नया लेआउट पाएँ।


