ফ্যান্টাসি ফুটবল ক্লায়েন্ট প্রকল্প fumbbl.com-এর জন্য 1920x1080 রেজোলিউশনের ফুলস্ক্রিন অ্যাডাপটেশন
একটি টেবিলটপ গেম রয়েছে, যা Games Workshop কোম্পানির কর্মীদের দ্বারা আবিষ্কৃত, সম্পর্কে খুব কম লোকই জানেন। এটি সেই টেবিলটপ গেমগুলির একটি, যেখানে নির্দিষ্ট শর্তাবলীর অধীনে পরিস্থিতি কীভাবে বিকশিত হয় তা প্রভাবিত করার নিয়মের পরিমাণ এতটাই বেশি যে, একজন মানুষকে এটিতে খেলতে গেলে গভীর গেমিং ট্র্যান্সে ডুবতে হয়, যেখানে তার চেতনা সম্পূর্ণরূপে গেম উপাদানগুলোর ওপর ফোকাস করে এবং তাদের মধ্যে স্যুইচ করে। Games Workshop-এর এই ধরণের একমাত্র গেম নয়। তাদের প্রতিটি গেম ঠিক একই ধরনের। আমার প্রিয় গেম এখনও Warhammer Underworlds, এবং একই সাথে Blood Bowl-এর প্রতি আমার আকর্ষণ ঠিক ততটাই বিশাল এবং সর্বব্যাপী, যা আমাকে এই দুটি গেমই সমান মাত্রায় উপভোগ করতে দেয়।
গেমের আকর্ষণের একটি অংশ প্রতিপক্ষের সাথে ইন্টারঅ্যাকশনের প্রক্রিয়ায় নিহিত, এবং গেম প্রক্রিয়ার আরও বড় অংশ কল্পনা এবং গেমের বিশ্বব্রহ্মাণ্ডে জড়িত থাকায় নিহিত, এবং এতে অনেক শিল্পীদের চমৎকার শিল্পকর্ম বড় সাহায্য করে, যারা এই গেমের বিশ্বব্রহ্মাণ্ড থেকে হৃদয়স্পর্শী গতিশীল দৃশ্য তৈরি করেন। :) অন্যান্য শিল্পীরা, যারা এই গেম এবং বিশ্বব্রহ্মাণ্ডের চরিত্রের মিনিেচারগুলে রঙ দেন, তারা কল্পনাকে চকিত করে দেয় এমন চমৎকার কাজ করে। এবং আমার কথার প্রমাণ হিসেবে আমি আপনাদের তাদের সৃষ্টির কিছু উদাহরণ দেখার প্রস্তাব দিচ্ছি।
চমৎকার এবং গতিশীল আর্টওয়ার্ক, যা মুহূর্তে আপনাকে জড়িয়ে দেয় এবং প্রশ্ন উদ্ভাবন করে: "ওহ, এটি কী?" এবং "এই দুটি বামন কারা? এবং তার কাঁখের নিচে জ্বলদ্যমান পাথর কেন? এবং এই নিষ্ঠুর দৃষ্টির চূড়া কারা?" এবং "তার মুখ থেকে বেরিয়ে আসা বিশাল দাঁত বিশাল অর্কের বিরুদ্ধে এই মানুষ কী করতে পারে?"। এই আর্টটি আমার মধ্যে গেমপ্লে, বিভিন্ন ফ্যাকশন এবং তাদের প্লেস্টাইলের পার্থক্য, তাদের বৈশিষ্ট্য এবং গেমের বিশ্বের লোরের বিবরণ পড়ার ইচ্ছা জাগিয়ে দিয়েছে।
নিচে আমি স্থানীয় (অস্টিন, টেক্সাসের জন্য) খেলোয়াড়-শিল্পীদের কাজের ছবির উদাহরণ দিচ্ছি। এটি আপনার মনোযোগের যোগ্য এবং সৌন্দর্যিক আনন্দ দেবে।
চমৎকার কাজ, ঠিক নাকি? :) প্রতিটি রঙ করা মিনিেচার শিল্পকর্মে পরিণত হয় এবং সৃষ্টিশীলতার মাধ্যমে মানব মানব মানব আত্মার অভিব্যক্তি হয়।
অবশ্যই, অনেক লেখক গেমের ঘটনাস্থল বিশ্বব্রহ্মাণ্ডের একটি স্বীকৃত এবং অনন্য পরিবেশ তৈরি করার ওপর কাজ করেন। :) আমি নিয়মবইয়ের একটি পৃষ্ঠার উদাহরণ দিচ্ছি, যেখানে এই গেমের বিশ্বব্রহ্মাণ্ডে ব্লাড বাউল খেলার ঐতিহ্যের উৎপত্তি বর্ণিত হয়েছে।
ইংরেজি পড়া না যারা তাদের জন্য অনুবাদ দিচ্ছি:
প্রাচীন রক্তরঞ্জিত ইতিহাস!
খুব দিন আগে, মানুষ গুহার মাটি খাওয়ানো বন্ধ করার আগে; এলফরা কোকাট্রিস চর্বির উপকারিতা খুঁজে পাওয়ার আগে তাদের চুল সাজানোর জন্য; এবং এমনকি বামনরা চিরকালের মদপানকারী হওয়ার আগে, প্রাচীনরা অস্তিত্বে ছিল। এই পৌরাণিক সত্তারা শক্তিশালী এবং পরাক্রমশালী ছিল, এবং তারা বিশ্বকে এবং এর জনগণকে অসংখ্য চমৎকার উপহার দিয়েছিল। এই উপহারগুলির মধ্যে সর্বোচ্চ ছিল পবিত্র নাফল সম্পর্কে জ্ঞান, নৃশংস খেলার দেবতা এবং তার পবিত্র খেলা।
তখন থেকে নাফলের পূজা কখনো বাড়ত, কখনো কমত। লাস্ট্রিয়ান স্টিলা স্ল্যানদের संরক্ষণে অনুষ্ঠিত খেলাগুলোর কথা বলে। প্রাচীন নেহেকহারার হায়ারোগ্লিফ রাজা-পুরোহিতদের কথা বলে, যাদের বিশাল স্টেডিয়ামে সমাধি দেওয়া হয়েছিল যাতে তারা সেখানে অনন্তকাল খেলে। পূর্বের ভূমির পত্রলিখে "নব স্বর্গীয় লিগ" এর কথা বলা হয়েছে, যেখানে দরবারের মতভেদ সবচেয়ে সুন্দর উপায়ে সমাধান করা হত।
তবে শতাব্দীর পর শতাব্দী বিত্তে, সাম্রাজ্য পতিত হয়, এবং নাফলের পবিত্র খেলা ভুলে যাওয়া পড়ে। ক্রূর খেলার মাধ্যমে শান্তি এবং সমৃদ্ধি বদলে দাঁড়াল, রক্তরঞ্জিত দ্বন্দ্বযুদ্ধ এবং যুদ্ধের মতো আরও দূষণমূলক কাজগুলো দখল করল। এই যুদ্ধগুলো নাফলকে বेस্বাদ এবং ঘৃণিত মনে হয়েছিল, তাই সে স্রষ্টিকে ত্যাগ করল সেই দিনের অপেক্ষায় cando, যখন নশ্বর জাতিগুলি আবার তার পবিত্র খেলার মহিমার জন্য প্রস্তুত হবে...
প্রায় একশো বছর আগে
পুরোনো বিশ্বে কোথাও দুটি সেনাবাহিনী, লড়খড়ে রক্তাক্ত রণক্ষেত্র থেকে আলাদা হল। ভোর থেকে তারা লড়াই করছিল; বরন করা সারিগুলো একে অপরের সাথে ধাক্কা খাচ্ছিল এমন উদ্যমে, যা 점차 রণক্ষেত্রের অনিবার্য নীরসতা দ্বারা দমন করা হচ্ছিল। অবশেষে সন্ধ্যা হলে বিশ্বকে তার ছায়া দিয়ে ঢাকলে দুটি সেনাবাহিনী আলাদা হয়ে তাদের শিবিরে এবং প্রতিরক্ষামূলক অবস্থানে চলে গেল।
যখন বামনরা রাত বিতানোর জন্য বসে, হাতিয়ার ধার দিয়ে, অসীম কুড়কুড় করে এবং বিয়ার টুকরো টুকরো পিয়ে, অর্করা নিজেদের মজার জন্য কিছু খুঁজছিল। একটি বিশেষভাবে লোভী অর্ক স্বাদিষ্ট বৃষ্টি কেঁচো খুঁজে ভিজা মাটি খনন করছিল; তার বদলে সে একটি প্রাচীন দরজা পেল। তার পেছনে একটি রত্নজটিত পিডেস্টেল ছিল, যার ওপর একটি ধুলো আচ্ছাদিত গ্রন্থরক্ষা ছিল। অর্করা এই খুঁজে পাওয়া জিনিসটি গবেষণা করার জন্য জমা হল, কিন্তু ভিতরের শব্দগুলো তাদের বোঝার বাইরে ছিল — যা সম্পূর্ণরূপে প্রত্যাশিত ছিল, কারণ অর্করা সে বইগুলো পছন্দ করে যেখানে ১৩টি শব্দের জন্য একটি ছবি থাকে। দূত পাঠানো হয় কাউকে খুঁজে বের করার জন্য যিনি পড়ালেখা জানেন, এবং যখন খবর বামনদের কাছে পৌঁছাল, তারা বিষয়টি নিজেদের হাতে নেওয়ার প্রস্তাব দিল, বাকি সবার চেয়ে নিজেদের শ্রেষ্ঠত্ব প্রদর্শনের সুযোগ পেয়ে আনন্দিত হয়ে।
প্রাচীন ভাষার বিশেষজ্ঞ হিসেবে একটি বুড়ো, অর্ধঅন্ধ বামনকে মনোনীত করা হয়েছিল — এবং অর্কদের হাতে খেয়ে যাওয়া হলে সে একটি গ্রহণযোগ্য ক্ষতির तौरেও গণ্য হত — যাতে সে বইটি ডিকোড করতে পারে। সে ঠিক তাই করল, সবকে भूলে যাওয়া দেবতা "নাফল" এবং তার পবিত্র অনুষ্ঠান "অ্যামোরিয়ান ফুটবল" সম্পর্কে কাহিনী বলায় সবকে মুগ্ধ করে দিল, যেখানে যোদ্ধাদের ছোট ছোট দল নির্দিষ্ট সময় ধরে একে অপরের সাথে লড়াই করে, ফুলা हुआ শূকরের মূত্রাশয়কে শত্রু দলের মাঠের শেষ প্রান্তে পৌঁছে দিয়ে পয়েন্ট বানাতে হত। বামনটি ঘোষণা করল যে নাফল শত্রু সেনাবাহিনীদের দুর্দশা দেখে তাদের মতভেদ সমাধানের উপায় দিয়েছেন।
এভাবেই অনেক শতাব্দী পর প্রথমবার পুরোনো বিশ্বে নাফলের অ্যামোরিয়ান ফুটবল খেলা হয়েছিল। এটি একটি হাহাকারকরী ঘটনা ছিল, কোনো আসল মাঠ, রেখা বা খেলার নিয়মের মৌলিক ধারণা ছাড়া। তবুও, খেলার আদিম সৌন্দর্য পূর্ণাঙ্গভাবে প্রকাশ পেল, যথাযথ পরিমাণ হিংসা এবং বিনোদন এই সত্যকে লুকিয়ে রেখেছিল যে কেউ বুঝতে পারল না কী হচ্ছে। যুদ্ধের চিন্তা বাদ দিয়ে দিয়ে, খেলা শেষ হলে দুপক্ষেই সম্পূর্ণরূপে তৃপ্ত ছিল। সেনাবাহিনীগণ এই চমৎকার নতুন আবিষ্কারের খবর लेकर বাসা ফিরে গেল।
ঠিক আছে, গেম সম্পর্কে পর্যাপ্ত পরিচিতি দেওয়া হয়েছে, এখন মূল আলোচনায় যাই।
বর্তমানে (১৯ জুন ২০২৬) ব্লাড বাউল খেলার অফিসিয়াল ক্লায়েন্টে ব্যবহারকারী ইন্টারফেসের ৪টি বিকল্প রয়েছে। এবং আমার ১৯২০x১০৮০ রেজোলিউশনের মনিটরে সেগুলো নিচের মতো দেখায়। স্ক্রিনশটগুলো পুরো স্ক্রিনের নেওয়া হয়েছে, যাতে মনিটরের স্ক্রিনে ইউজার ইন্টারফেস কতটুকু জায়গা घেরে সেটা বোঝা যায়। উল্লেখ্য, ক্লায়েন্টে স্কেল পরিবর্তনের সুবিধা রয়েছে, তবে প্রদর্শিত স্ক্রিনশটগুলোতে স্কেল ১০০% এ সেট করা আছে।
- ১. মাঠে খেলোয়াড়াদের আমার কাছে কম-বেশি সুবিধাজনকভাবে দেখা দরকার। যথেষ্ট ভালো যাতে মাউস কーソর ঘুরিয়ে না দিয়ে তাদের ধরন ভিন্ন করা যায়, যখন আমাকে বুঝতে হয়: এটি লাইনম্যান (lineman) নাকি ব্লিটজার (blitzer), নাকি থ্রোয়ার (thrower), অথবা কেউ অন্য।
- ২. ইন্টারফেসের পার্শ্ব প্যানেলগুলোর খেলোয়াড়াদের বৈশিষ্ট্যের বর্ণনা টেক্সট, যা মাউস কーソর খেলোয়াড়ার ওপর নেওয়ায় দেখায়, সেটি যথেষ্ট বড় হতে হবে যাতে আমি শরীরের অবস্থান পরিবর্তন না করে, মাথা স্ক্রিনের ১০ সেন্টিমিটার নিকটে আনতে না পারি, খেলোয়াড়ের বৈশিষ্ট্য (stats), কীওয়ার্ড (keywords) এবং দক্ষতা (skills) পড়তে পারি। এটি কমফোর্ট এবং গেমিং প্রসেস থেকে প্রাপ্ত আনন্দকে প্রভাবিত করে, সেটি মেনে নেবেন।
- ৩. আমার ইন্টারফেসের সেই এলাকাটি দেখতে পাওয়া উচিত যেখানে পাসা ফেলার ফলাফল দেখানো হয়। এটি গেমিং ইন্টারফেসের বাম নিচের কোণে অবস্থিত।
- ৪. উপরের সব শর্ত একসাথে এবং একই সময়ে পূরণ হওয়া উচিত আরও কমফোর্টেবল গেমিং প্রসেসের জন্য।
- ১. পার্শ্ব প্যানেলগুলো বড় করা হয়েছে, যাতে বড় ফন্ট সাইজের খেলোয়াড়াদের বর্ণনা (তাদের বৈশিষ্ট্য এবং দক্ষতা) ধারণ করতে পারে।
- ২. পার্শ্ব প্যানেলের কিছু বাটনের সাইজও বড় করা হয়েছে, যাতে সেগুলো পার্শ্ব প্যানেলের নতুন পূর্ণ আকার ধারণ করে।
- ৩. ফুলস্ক্রিন মোড (fullscreen) যোগ করা হয়েছে, যা এই পথে পাওয়া যায়: "User Settings -> Client Settings -> Client Layout -> Full screen (Alt + Enter)"।
- ৪. ফুলস্ক্রিন মোডে ১৯২০x১০৮০ রেজোলিউশনের জন্য ইন্টারফেস অ্যাডাপ্ট করা হয়েছে এবং এই পথে পাওয়া যায়: "User Settings -> Client Settings -> Client Layout -> Wide 1920x1080"।
- ৫. পার্শ্ব প্যানেলের নতুন আকার অনুযায়ী বাকি ছোট ছোট ভিজুয়াল এলিমেন্টের আকার পরিবর্তন করা হয়েছে।
সারসংক্ষেপ
ফলাফলটি আমার দ্বারা দুটি গেমে পরীক্ষা করা হয়েছে, এবং এখনো কোনো সমস্যা লক্ষ্য করা যায়নি, এবং আমি ফলাফল থেকে সন্তুষ্ট। যাইহোক, আমি অন্য ইন্টারফেস বিকল্পগুলোর (Landscape, Portrait, Square, Wide) সাথে পরিবর্তনগুলো পরীক্ষা করিনি, এবং ফলস্বরূপ আমি দাবি করতে পারি না যে আমি ইতিমধ্যে বিদ্যমান ইন্টারফেস স্কিমগুলোর কোনোটিই ভাঙিনি। আমি স্কেলিং পরিবর্তন করার সময় আমার আনার নতুন স্কিমসহ অন্যান্য স্কিমগুলোর ওপর এই পরিবর্তনগুলোর প্রভাবও পরীক্ষা করিনি। আমি আপনাদের ক্লায়েন্ট ডাউনলোড করে আপনার পছন্দের সেটিংসে পরীক্ষা করতে এবং ডিসকর্ড বা ইমেইল pasha@programmer-underworlds.dev এ স্ক্রিনশট এবং আপনার অপারেটিং সিস্টেমের তথ্য সহ কোনো ত্রুটি পাওয়া যেতে পারে সেটি জানাতে অনুরোধ করছি, এবং আমি সুযোগ অনুযায়ী সেগুলো ঠিক করার চেষ্টা করব। :) ভবিষ্যতে এই পরিবর্তনগুলো fumbbl.com-এর মাধ্যমে বিতরণ হওয়া অফিসিয়াল গেম ক্লায়েন্টে ইন্টিগ্রেট করা হয়ে পারে, যদি আপনি এটিকে সুবিধাজনক পান এবং সব ত্রুটি দূর হয়ে যাওয়ার পর। এছাড়া, যদি আপনি এই ক্লায়েন্ট ভার্সন ব্যবহার করেন এবং পুরনো ইউজার ইন্টারফেস স্কিমগুলো (landscape, portrait, square, wide) দিয়ে খেলেন, তবে আমি আপনাকে অনুরোধ করছি জানাতে, যদি এক বা দুটি গেম খেলার পর আপনি কোনো ত্রুটি **নहीं পান**; তবে ইমেইল করুন pasha@programmer-underworlds.dev, আপনি কোন স্কিম ব্যবহার করেছেন সেটি উল্লেখ করে এবং যে কোনো ত্রুটি পাওয়া যায়নি সেটি বলুন। এটি আমার এবং অফিসিয়াল ক্লায়েন্টের ডেভেলপারদের জন্য মূল্যবান টেস্ট তথ্য সংগ্রহের জন্য প্রয়োজন, যা নিশ্চিত করবে যে আমার আনার পরিবর্তনগুলো পুরনো স্কিমগুলোকে অক্ষত রেখেছে। এটি fumbbl.com অফিসিয়াল ক্লায়েন্টে পরিবর্তনগুলো ইন্টিগ্রেট করার প্রক্রিয়াকে সহজ করবে। আমি আন্তরিকভাবে খুশি হব যদি এই পরিবর্তনগুলো তার ব্যবহারকারীদের পায় এবং গেমিং প্রসেস থেকে আনন্দ বাড়ায় এবং খেলার সময় কমফোর্ট যোগ করে! :)নতুন ইন্টারফেস উপলব্ধ ক্লায়েন্টটি কোথা থেকে ডাউনলোড এবং কীভাবে চালাবেন?
যদি আপনি Windows-ব্যবহারকারী হন
যদি আপনি Windows ব্যবহার করেন, তবে আপনি exe-ফাইলটি নিচের লিংক থেকে ডাউনলোড করতে পারেন: এখানে। এটি একটি 7zip-সেলফ-এক্সট্র্যাক্টিং আর্কাইভ, যাতে নিজে ক্লায়েন্ট এবং Java 21 JVM রয়েছে, যা আলাদা JVM ডাউনলোড ও ইনস্টল না করেই এটি চালানোর জন্য প্রয়োজনীয়। আপনি এই ফাইলটি ডাউনলোড করে চালালে, আপনাকে একটি ডায়লগ বক্স দেখাবে, জিজ্ঞেস করবে আপনি ক্লায়েন্টটি কোথায় এক্সট্র্যাক্ট করতে চান।
পথ নির্বাচন করুন এবং Extract বাটনে ক্লিক করুন, এরপর নির্দিষ্ট জায়গায় FantasyFootballClient ডিরেক্টরি তৈরি হবে। এই ডিরেক্টরির ভিতরে আপনি নিচের কন্টেন্ট দেখবেন:
fumbbl.com-এ যান এবং সত্যিকারের মতো খেলা শুরু করার জন্য jnlp-ফাইলটি ডাউনলোড করুন।
এবং খোলা ক্লায়েন্ট উইন্ডোতে Start game/spectate using JNLP file বাটনে ক্লিক করুন, এবং আপনি jnlp-ফাইল নির্বাচনের জন্য খোলা উইন্ডোটি দেখবেন; সেটি নির্বাচন করুন, এবং এরপর ক্লায়েন্ট jnlp-ফাইলটি লোড করবে, এবং আপনি স্ট্যান্ডার্ড উইন্ডোটি দেখবেন, যেন আপনি fumbbl.com-এর অফিসিয়াল ক্লায়েন্ট দিয়ে চালিয়েছিলেন। এই মুহূর্ত থেকে আপনি জানেন आगे কী করতে হবে! ;)
যদি আপনি Linux বা macOS ব্যবহার করেন
যদি আপনি Linux বা macOS-ব্যবহারকারী হন, তবে আমি নতুন ক্লায়েন্ট চালানোর আগে Java 21 ইনস্টল করার পরামর্শ দিচ্ছি। আপনি যদি Linux-এ হন, তবে আপনি জানেন কীভাবে করবেন, তাই আমি এখানে ব্যাখ্যা করব না। ;) আপনি যদি macOS-ব্যবহারকারী হন, তবে আমাকে লিখুন, এবং যদি নিচের ধাপগুলো আপনার জন্য পর্যাপ্ত না হয়, তবে আমি এই পৃষ্ঠাটি macOS-ব্যবহারকারীদের জন্য নির্দেশিকা যোগ করে আপডেট করব। আমি অনুমান করি fumbbl.com-এর মাধ্যমে BB-তে игра করার লোকেরা যথেষ্ট অভিজ্ঞ যাতে নিচের লেখা বুঝতে পারেন এবং তাদের অপারেটিং সিস্টেমে প্রয়োগ করতে পারেন। Java 21 ইনস্টল করার পর, আপনি jar-ফাইলটি এখানে থেকে ডাউনলোড করতে পারেন। এবং ক্লায়েন্ট চালানোর জন্য আপনি নিচের কমান্ডটি ব্যবহার করতে পারেন:
java -jar -Dsun.java2d.uiScale.enabled=false FantasyFootballClient.jar -noCoachNoConnection -build programmer-underworlds.dev
- -Dsun.java2d.uiScale.enabled=false — আর্গুমেন্টটি আপনার অপারেটিং সিস্টেমকে স্কেলিং প্রয়োগ করতে বাধা দেবে, যদি আপনি আপনার সুবিধার জন্য সিস্টেমের ভিতরে সেট করে থাকেন। এর ফলস্বরূপ, JVM জানবে যে আপনার চালানো Java-অ্যাপ্লিকেশনটিকে অতিরিক্তভাবে স্কেল করার প্রয়োজন নেই। ক্লায়েন্টের ভিতরের স্কেলিং এখনও কাজ করবে।
- -noCoachNoConnection -build programmer-underworlds.dev — অ্যাপ্লিকেশনের আর্গুমেন্টগুলো ক্লায়েন্টের জন্য প্রয়োজনীয় যাতে সে সঠিকভাবে ইন্টারফেস আরম্ভ কর सके।
java -Dsun.java2d.uiScale.enabled=false -jar FantasyFootballClient.jar -jnlpOnInput "/path/to/jnlpFile.jnlp"
রিপোজিটরি এবং অফিসিয়াল fumbbl.com ক্লায়েন্টে আনার পরিবর্তন সম্পর্কে তথ্য
এই ফ্যাক্টটি উল্লেখ করার যোগ্য যে, ক্লায়েন্টে আনার পরিবর্তনগুলো পাবলিক রিপোজিটরিতে এখানে উপলব্ধ। আমি আমার কাজ একটি ব্রাঞ্চে করি, যার নাম my-live, এবং সব পরিবর্তন সেখানে আনি (আমি জানি, এটি জেদাই পথ নয়)। my-live ব্রাঞ্চটি অফিসিয়াল রিপোজিটরির বর্তমান Live ব্রাঞ্চের ওপর ভিত্তি করে তৈরি।সম্রাট রক্ষা করেন।