প্রকল্প সম্পর্কে

BlazorRogue হলো একটি ব্রাউজার-ভিত্তিক rogue-like গেম যা সম্পূর্ণভাবে C# এবং Blazor ব্যবহার করে তৈরি করা হয়েছে এবং এতে একটি কাস্টম-বিল্ট গেম ইঞ্জিন রয়েছে। এটি tileset-ভিত্তিক ভিজ্যুয়াল (Oryx’s Ultimate Fantasy Tileset ব্যবহার করে) এবং একটি ASCII রেন্ডারার উভয়ই সমর্থন করে, যা রানটাইমে পরিবর্তন করা সম্ভব। গেমটিতে অ্যানিমেটেড লিকুইড পুল (জল, কাদা, অ্যাসিড, লাভা) সহ প্রসিডিউরাললি জেনারেটেড ডানজন, CSS অ্যানিমেশন এবং মাউস-ওভার টুলটিপসহ মনস্টার, সাউন্ড ইফেক্ট, হিটের সময় স্ক্রিন-শেক এবং দরজা ও চেস্টের মতো ইন্টারঅ্যাক্টিভ এনভায়রনমেন্ট অবজেক্ট অন্তর্ভুক্ত রয়েছে। কমব্যাট সিস্টেমটি Warhammer-অনুপ্রাণিত রুলসেট অনুসরণ করে এবং ইনভেন্টরি আইটেমগুলো (পোশন, গিয়ার) JSON ফাইলে সংজ্ঞায়িত করা হয়েছে। মনস্টারের স্ট্যাটস থেকে শুরু করে ম্যাপ জেনারেশন ওয়েট পর্যন্ত প্রায় সমস্ত গেম এলিমেন্ট ডেটা-ড্রিভেন, যা কোড পরিবর্তন ছাড়াই সহজ কাস্টমাইজেশনের সুযোগ দেয়। প্রজেক্টটিতে কোর লজিকের জন্য ইউনিট টেস্ট, Docker সাপোর্ট রয়েছে এবং এটি .NET 10 SDK-এর মাধ্যমে লোকালি চলে। Tileset অ্যাসেটগুলো ঐচ্ছিক; যদি সেগুলো না থাকে, তবে গেমটি ডিফল্টভাবে ASCII মোডে চলে। এর আর্কিটেকচারে কম্পোনেন্ট-ভিত্তিক GameObjects, localStorage-এর মাধ্যমে সেশন পারসিস্টেন্স এবং স্ট্যাটিক সার্ভিস রেফারেন্স ব্যবহার করা হয়েছে। কন্ট্রিবিউশনের জন্য CI টেস্ট পাস করা এবং ওয়ার্নিং-মুক্ত বিল্ড বজায় রাখা প্রয়োজন।