PlayPendium

Roomshade · চিন্তার খাবার

চারটি নিয়ম, যারা পরস্পরে আটকে থাকে

প্রতিটি Roomshade ধাঁধা দাঁড়িয়ে আছে চারটি শর্তের উপর, যারা একসঙ্গে কাজ করে একটিমাত্র, অনিবার্য সমাধান তৈরি করে।

ইংরেজিতে লেখা ও সম্পাদিত। এই বাংলা সংস্করণটি যন্ত্রানুবাদের মাধ্যমে তৈরি; যেখানে নির্ভুলতা গুরুত্বপূর্ণ, সেখানে ইংরেজি মূলটিই প্রামাণ্য। ইংরেজিতে মূল লেখাটি পড়ুন →

শর্তের স্থাপত্য

একটি Roomshade ধাঁধা শুরু হয় একটি খালি গ্রিড হিসেবে, যাকে মোটা রেখা দিয়ে আয়তাকার কক্ষে ভাগ করা হয়। কিছু কক্ষে একটি সংখ্যা থাকে, বাকিগুলো ফাঁকা থাকে। খেলোয়াড়ের কাজ হলো প্রতিটি সংখ্যাওয়ালা কক্ষে ঠিক ততগুলো ঘর ছায়াচ্ছন্ন করা, আর একই সঙ্গে আরও তিনটি শর্ত মেনে চলা যেগুলো গোটা বোর্ড জুড়ে বিস্তৃত। এই চারটি নিয়ম—কক্ষ-প্রতি গণনা, সংলগ্নতার নিষেধাজ্ঞা, সংযুক্তির শর্ত, আর রেখা-বিস্তারের সীমা—বিচ্ছিন্নভাবে কাজ করে না। তারা এমন একটি পরস্পর-সংলগ্ন ব্যবস্থা গড়ে তোলে যেখানে একটি নিয়ম মেনে চলা প্রায়ই আরেকটি মেনে চলার প্রয়োজনীয় পরিস্থিতি তৈরি করে, আর যেকোনো একটিকেও লঙ্ঘন করলে ধাঁধাটি অবৈধ হয়ে যায়। 3 1

এই নকশার লালিত্য নিহিত আছে প্রতিটি নিয়ম কীভাবে অন্যগুলোকে বেঁধে রাখে তার মধ্যে। কক্ষ-প্রতি গণনার নিয়ম স্থানীয়ভাবে কাজ করে, কেবল একটি কক্ষের সীমানার ভেতরের ঘরগুলোকেই নিয়ন্ত্রণ করে। সংলগ্নতার নিয়মও স্থানীয়ভাবে কাজ করে, কিন্তু প্রতিবেশী কক্ষগুলোর মধ্যে সম্পর্ক তৈরি করে। সংযুক্তির নিয়ম কাজ করে সামগ্রিকভাবে, গোটা সাদা অঞ্চলটিকে একটিমাত্র অবিচ্ছিন্ন পথ হতে বাধ্য করে। রেখা-বিস্তারের নিয়ম কাজ করে সরলরেখা বরাবর, যে রেখা একাধিক কক্ষ পেরিয়ে যেতে পারে। একত্রে এই শর্তগুলো এমন এক ধাঁধা তৈরি করে যেখানে স্থানীয় অনুমিতি সামগ্রিক সিদ্ধান্তে গড়িয়ে যায়, আর যেখানে সমাধান আসে আন্দাজ থেকে নয়, বরং নিয়মগুলো কীভাবে পরস্পরে আটকে গিয়ে একটি ছাড়া বাকি সব সম্ভাবনা মুছে দেয় তা চিনে নেওয়া থেকে। 3

চারটি নিয়ম, একটি সমাধান।

কক্ষ-প্রতি গণনার নিয়ম

প্রথম আর সবচেয়ে চোখে-পড়া নিয়মটি বলে, সংখ্যাওয়ালা একটি কক্ষে ঠিক ততগুলোই ছায়াচ্ছন্ন ঘর থাকতে হবে। এটিই ধাঁধার প্রধান সংকেত-ব্যবস্থা, প্রতিটি কক্ষের ভেতর সম্পর্কে খেলোয়াড় যে তথ্যটুকু পান। তিন ঘরের একটি কক্ষে দুইয়ের সংকেত থাকলে ঠিক দুটি ছায়াচ্ছন্ন আর একটি সাদা ঘর দরকার। ছয় ঘরের একটি কক্ষে তিনের সংকেত থাকলে তিনটি ছায়াচ্ছন্ন আর তিনটি সাদা ঘর দরকার। সংখ্যাহীন কক্ষ এমন কোনো শর্ত চাপায় না, যদিও সংলগ্নতার নিয়ম তবু তার ছাদ বেঁধে দেয়: তাতে শূন্য থেকে শুরু করে ততগুলো পর্যন্ত ছায়াচ্ছন্ন ঘর থাকতে পারে যতগুলো দুটি পরস্পরকে না ছুঁয়ে ধরতে পারে, আর একটি আয়তক্ষেত্রের ক্ষেত্রে সেটি তার ঘরসংখ্যার অর্ধেক, ঊর্ধ্বমুখী পূর্ণসংখ্যায়। 3

এই নিয়ম একা বেশির ভাগ ধাঁধা সমাধানের পক্ষে যথেষ্ট নয়। যেমন, দুইয়ের সংকেতওয়ালা একটি 3×2 কক্ষে দুটি ছায়াচ্ছন্ন ঘর পনেরোটি ভিন্ন উপায়ে সাজানো যায়। নিয়মটি স্থানীয় তথ্য জোগায়, কিন্তু যথেষ্ট অস্পষ্টতা রেখে যায়। তবে এই অস্পষ্টতাই ঠিক সেই জিনিস যা অন্য নিয়মগুলো মিটিয়ে দেয়। সংলগ্নতার নিয়ম, সংযুক্তির নিয়ম আর রেখা-বিস্তারের নিয়ম—প্রত্যেকেই এমন কিছু বিন্যাস বাদ দেয় যা কেবল গণনার নিয়মের অধীনে অনুমোদিত হতো। গণনার নিয়ম মঞ্চ সাজায়; অন্য নিয়মগুলো ঠিক করে কোন অভিনেতারা মঞ্চে আসতে পারবেন। 3

সংলগ্নতার নিষেধাজ্ঞা

দ্বিতীয় নিয়মটি যেকোনো দুটি ছায়াচ্ছন্ন ঘরকে লম্ব-সংলগ্ন হতে নিষেধ করে। দুটি ছায়াচ্ছন্ন ঘর কখনও একটি ধার ভাগাভাগি করতে পারে না; তারা কেবল কোণাকুণি ছুঁতে পারে। এই নিয়ম এমন একটি ফাঁক-রাখার দাবি তৈরি করে যা কক্ষের সীমানা পেরিয়ে ছড়িয়ে পড়ে। কোনো ঘর ছায়াচ্ছন্ন হলে সেটি তৎক্ষণাৎ তার লম্ব-সংলগ্ন প্রতিবেশীদের ছায়াচ্ছন্ন হওয়া নিষিদ্ধ করে, ওই প্রতিবেশীরা একই কক্ষের হোক বা পাশের কক্ষের। এতে একটি তরঙ্গ-প্রভাব তৈরি হয়: একটি ঘর ছায়াচ্ছন্ন করলে প্রতিবেশী কক্ষগুলোয় সম্ভাবনা মুছে যেতে পারে, যা আবার অন্য ঘরগুলোকে ছায়াচ্ছন্ন বা সাদা হতে বাধ্য করতে পারে। 1

গণনার নিয়মের সঙ্গে জুড়লে সংলগ্নতার নিয়ম বিশেষভাবে শক্তিশালী। দুইয়ের সংকেতওয়ালা একটি 1×3 কক্ষের কথা ভাবুন। দুটি ছায়াচ্ছন্ন ঘর পাশাপাশি বসতে পারে না, তাই তাদের দুই প্রান্ত নিতে হবে আর মাঝের ঘরটিকে সাদা থাকতে হবে: গণনার নিয়ম ঠিক করে কতগুলো, আর সংলগ্নতার নিয়ম ঠিক করে কোনগুলো। উল্টো দিকে, এমন একটি কক্ষের কথা ভাবুন যেখানে কেবল একটি ঘরই ছায়াচ্ছন্ন হতে পারে। সংলগ্নতার নিয়ম বেঁধে দেয় প্রতিবেশী কক্ষগুলোর কোন ঘরগুলো ছায়াচ্ছন্ন হতে পারবে, কারণ ওই একমাত্র ছায়াচ্ছন্ন ঘরের সংলগ্ন কোনো ঘর ছায়াচ্ছন্ন করলে নিয়ম ভাঙা হবে। গণনার নিয়ম আর সংলগ্নতার নিয়মের এই পারস্পরিক খেলাতেই ধাঁধার অনেকটা অনুমিতি শুরু হয়। 3

একটি ঘর ছায়াচ্ছন্ন করলে তার লম্ব-প্রতিবেশীরা নিষিদ্ধ হয়ে যায়।

সংযুক্তির শর্ত

তৃতীয় নিয়মটি দাবি করে যে সব সাদা ঘর একটিমাত্র লম্ব-সংযুক্ত অঞ্চল গড়বে। এর অর্থ, যেকোনো সাদা ঘর থেকে কেবল সাদা ঘরের ভেতর দিয়ে লম্বভাবে চলে অন্য যেকোনো সাদা ঘরে পৌঁছানো যাবে। এই নিয়ম গোটা বোর্ড জুড়ে সামগ্রিকভাবে কাজ করে, আর তাই এটি খেলার সবচেয়ে শক্তিশালী শর্তগুলোর একটি। এটি সাদা অঞ্চলকে বিচ্ছিন্ন পকেটে ভেঙে পড়া থেকে ঠেকায়, যা নইলে তখনই ঘটতে পারত যখন ছায়াচ্ছন্ন ঘরের একটি বলয় সাদা ঘরের একটি পকেটকে বোর্ডের বাকি অংশ থেকে ঘিরে আলাদা করে ফেলে। 3

ধাঁধা সমাধানের শেষ পর্যায়ে সংযুক্তির নিয়ম বিশেষভাবে গুরুত্বপূর্ণ হয়ে ওঠে, যখন বেশির ভাগ ঘর নির্ধারিত হয়ে গেছে আর বাকি প্রশ্ন কেবল এটুকু যে সাদা ঘরগুলো একটিমাত্র সংযুক্ত অঞ্চল গড়ছে কি না। সংলগ্নতার নিয়ম ছায়াচ্ছন্ন হওয়ার অনুমতি দিলেও এই নিয়ম কিছু ঘরকে সাদা হতে বাধ্য করতে পারে। যেমন, কোনো নির্দিষ্ট ঘর ছায়াচ্ছন্ন করলে যদি সাদা ঘরের একটি দল বোর্ডের বাকি অংশ থেকে বিচ্ছিন্ন হয়ে পড়ে, তবে ওই ঘরটিকে সাদা হতেই হবে। এই নিয়ম স্থানীয় সিদ্ধান্তকে সামগ্রিক পরিণতিতে বদলে দেয়, আর খেলোয়াড়কে প্রতিটি আলাদা ঘরের নিষ্পত্তি করার সময়েও গোটা বোর্ডের সাদা কাঠামো সম্পর্কে সজাগ থাকতে বাধ্য করে। 3

রেখা-বিস্তারের সীমা

চতুর্থ আর সবচেয়ে সূক্ষ্ম নিয়মটি বলে, সংযুক্ত সাদা ঘরের কোনো সরল অনুভূমিক বা উল্লম্ব রেখা তিন বা তার বেশি কক্ষ জুড়ে বিস্তৃত হতে পারবে না। সাদা ঘরের একটি সরল ধারা বড়জোর একটি কক্ষ-সীমানা পেরোতে পারে, অর্থাৎ তাতে বড়জোর দুটি কক্ষের ঘর থাকতে পারে। এই নিয়ম কাজ করে সেইসব সরলরেখা বরাবর যারা কক্ষের সীমানা কেটে যায়, আর তাতে এমন একটি শর্ত তৈরি হয় যা বোর্ডের অনুভূমিক ও উল্লম্ব রেখাগুলো খুঁটিয়ে না দেখা পর্যন্ত অদৃশ্যই থেকে যায়। 1

এই নিয়মটি বিশেষভাবে কার্যকর সেইসব বিন্যাস বাদ দিতে যারা নইলে প্রথম তিনটি নিয়ম মেনে চলত। যেমন, দুটি কক্ষ-সীমানা পেরিয়ে যাওয়া সাদা ঘরের একটি লম্বা অনুভূমিক ধারা এই নিয়ম ভাঙবে, এমনকি ঘরগুলো সংলগ্নতার নিয়ম অনুযায়ী ঠিকভাবে ফাঁক রেখে বসলেও আর সঠিক গণনাওয়ালা কক্ষের অন্তর্ভুক্ত হলেও। নিয়মটি সাদা ঘরগুলোকে তাদের রেখা বরাবর কৌশলগত বিন্দুতে ছায়াচ্ছন্ন ঘর দিয়ে বিচ্ছিন্ন হতে বাধ্য করে, আর তাতেই তৈরি হয় সেই দৃশ্যমান নকশা যেখানে সাদা ঘরগুলোকে মনে হয় তাদের আলাদা করে রাখা ছায়াচ্ছন্ন ঘরগুলো দিয়ে খণ্ডে খণ্ডে ভাগ করা। 3

নিয়মগুলো কীভাবে পরস্পরে আটকে থাকে

Roomshade-এর আসল শক্তি জন্ম নেয় এই চারটি নিয়ম কীভাবে একসঙ্গে কাজ করে তা থেকে। কক্ষ-প্রতি গণনার নিয়ম প্রাথমিক তথ্য জোগায়, কিন্তু বহু বিন্যাস সম্ভব রেখে দেয়। সংলগ্নতার নিয়ম লম্ব-সংলগ্ন ছায়াচ্ছন্ন ঘর নিষিদ্ধ করে কিছু বিন্যাস বাদ দেয়। সংযুক্তির নিয়ম সেইসব বিন্যাস বাদ দেয় যারা সাদা অঞ্চলকে টুকরো করে ফেলত। রেখা-বিস্তারের নিয়ম সেইসব বিন্যাস বাদ দেয় যারা বড্ড বেশি কক্ষ পেরোনো সাদা রেখা তৈরি করে। প্রতিটি নিয়ম সম্ভাবনার আলাদা আলাদা উপসেট মুছে দেয়, আর একত্রে তারা একটি ছাড়া বাকি সব বিন্যাসই মুছে ফেলে—সেই অনন্য সমাধানটি। 3

এই পারস্পরিক বন্ধন এমন এক ধাঁধা তৈরি করে যার সমাধান নিয়মগুলোকে বিচ্ছিন্নভাবে মেনে খুঁজে পাওয়া যায় না। কোনো ঘর হয়তো গণনার নিয়ম আর সংলগ্নতার নিয়মের অধীনে অনুমোদিত, অথচ সংযুক্তির নিয়মে নিষিদ্ধ। আরেকটি ঘর হয়তো সংলগ্নতার নিয়ম মানে, কিন্তু এমন একটি সাদা রেখা তৈরি করে যা রেখা-বিস্তারের নিয়ম ভাঙে। খেলোয়াড়কে অবিরাম চারটি নিয়মই একসঙ্গে যাচাই করতে হয়, এটি মনে রেখে যে একটি নিয়মের ভিত্তিতে করা অনুমিতি আরেকটি নিয়মের অধীনে নতুন সম্ভাবনা বা নতুন শর্ত তৈরি করতে পারে। এটিই ধাঁধার অনুমিতির নির্যাস: প্রতিটি নিয়মের পরিণতি গোটা বোর্ড জুড়ে ছড়িয়ে পড়ার সঙ্গে সঙ্গে তার পিছু নেওয়া। 3

প্রতিটি নিয়মই প্রতিটি নিয়মকে বেঁধে রাখে।

গ্রিডের আকার আর কক্ষের মাপ

Roomshade ধাঁধা তিনটি প্রমিত আকারে আসে: ছোট (5×5), মাঝারি (6×6) আর বড় (7×7)। এই মাপ ধাঁধার জটিলতাকে প্রভাবিত করে, নিয়মগুলোকে নয়। একটি 5×5 গ্রিডে 7×7 গ্রিডের চেয়ে কম ঘর আর কম কক্ষ থাকে, তাই সমাধানে সাধারণত কম ধাপের অনুমিতি লাগে। তবে আকার যা-ই হোক, ধাঁধার মৌলিক গঠন একই থাকে। 3

প্রতিটি কক্ষ একটি আয়তক্ষেত্র, যার প্রতিদিকের মাপ এক থেকে তিন ঘরের মধ্যে। এতে কক্ষের পরিসর দাঁড়ায় 1×1 একক ঘর থেকে 3×3 নয়-ঘরের কক্ষ পর্যন্ত। কক্ষের মাপ নিয়মগুলোর প্রয়োগকে চমকপ্রদ কিছু উপায়ে প্রভাবিত করে। একের সংকেতওয়ালা একটি 1×1 কক্ষকে ছায়াচ্ছন্ন হতেই হবে; শূন্যের সংকেতওয়ালা একটি 1×1 কক্ষকে সাদা থাকতেই হবে। পাঁচের সংকেতওয়ালা একটি 3×3 কক্ষে পাঁচটি ছায়াচ্ছন্ন আর চারটি সাদা ঘর দরকার, আর সংলগ্নতার নিয়ম সেগুলো বসানোর ঠিক একটিমাত্র উপায় খোলা রাখে: চার কোণ আর কেন্দ্র। কক্ষের মাপ, সংকেতের মানের সঙ্গে মিলে, সেই প্রাথমিক অবস্থা তৈরি করে যা থেকে নিয়মগুলোকে অনন্য সমাধানটি বের করে আনতে হয়। 3

দেখানো আর ঢেকে-রাখা সংকেত

কিছু কক্ষ তাদের সংকেত-সংখ্যা দেখায়, অন্যগুলো ফাঁকা থাকে। ফাঁকা সংকেত বোঝায় যে ওই কক্ষের উপর কক্ষ-প্রতি গণনার কোনো শর্ত নেই—কক্ষটিতে শূন্য থেকে শুরু করে ততগুলো পর্যন্ত যেকোনো সংখ্যক ছায়াচ্ছন্ন ঘর থাকতে পারে যতগুলো দুটি পরস্পরকে না ছুঁয়ে ধরতে পারে। ফাঁকা কক্ষগুলো তবু সংলগ্নতার নিয়ম, সংযুক্তির নিয়ম আর রেখা-বিস্তারের নিয়ম মেনে চলে, কেবল ধাঁধায় কোনো সাংখ্যিক শর্ত যোগ করে না। 3

ফাঁকা কক্ষের উপস্থিতি ধাঁধায় জটিলতার আরেকটি স্তর যোগ করে। সাংখ্যিক শর্ত না থাকায় খেলোয়াড়কে ফাঁকা কক্ষে কোন ঘরগুলো ছায়াচ্ছন্ন করবেন তা পুরোপুরি বাকি তিনটি নিয়মের ভিত্তিতেই ঠিক করতে হয়। এর জন্য সতর্কভাবে বিশ্লেষণ করতে হয় যে ফাঁকা কক্ষের ঘর ছায়াচ্ছন্ন করলে প্রতিবেশী কক্ষ আর সামগ্রিক সাদা কাঠামোর উপর কী প্রভাব পড়ে। ফাঁকা কক্ষ সংখ্যাওয়ালা কক্ষগুলোর মধ্যে সংযোগকারীর কাজ করতে পারে, তাদের মধ্যে দিয়ে সাদা পথ বইতে দিতে পারে; কিংবা অবাঞ্ছিত সাদা রেখা আটকাতে সেগুলোকে ছায়াচ্ছন্ন ঘরে ভরে দেওয়া যেতে পারে। ফাঁকা আর সংখ্যাওয়ালা কক্ষের এই পারস্পরিক খেলা Roomshade-এর নকশার একটি মূল উপাদান। 3

স্থানীয় থেকে সামগ্রিক অনুমিতিতে

Roomshade-এর সৌন্দর্য নিহিত আছে স্থানীয় অনুমিতি কীভাবে সামগ্রিক সিদ্ধান্তে গড়িয়ে যায় তার মধ্যে। বোর্ডের এক কোণের একটি ছায়াচ্ছন্ন ঘর, নিয়মগুলোর পারস্পরিক বন্ধনের মধ্য দিয়ে, বহু কক্ষ দূরের ঘরগুলোর দশা ঠিক করে দিতে পারে। সংলগ্নতার নিয়ম স্থানীয়ভাবে ছড়ায়, ছায়াচ্ছন্ন ঘরের প্রতিবেশীদের নিষিদ্ধ করে। সংযুক্তির নিয়ম সামগ্রিকভাবে ছড়ায়, গোটা সাদা অঞ্চলকে সংযুক্ত থাকতে বাধ্য করে। রেখা-বিস্তারের নিয়ম সরলরেখা বরাবর ছড়ায়, বড্ড বেশি কক্ষ পেরোনো সাদা ধারা নিষিদ্ধ করে। 1

এই বিস্তার এমন এক ধাঁধা তৈরি করে যেখানে নতুন তথ্য আসার সঙ্গে সঙ্গে খেলোয়াড়কে বোর্ড সম্পর্কে তাঁর বোঝাপড়া অবিরাম হালনাগাদ করতে হয়। এক সময় যে ঘরটি অস্পষ্ট ছিল, প্রতিবেশী একটি ঘর নির্ধারিত হলে সেটি বাধ্যতামূলক হয়ে যেতে পারে। যে কক্ষে মনে হচ্ছিল একাধিক বৈধ বিন্যাস সম্ভব, সংযুক্তির নিয়ম প্রয়োগ করলে তা একটিমাত্র বিন্যাসে নেমে আসতে পারে। সমাধান আসে একটিমাত্র অন্তর্দৃষ্টি থেকে নয়, বরং প্রতিটি ঘর নির্ধারিত না হওয়া পর্যন্ত বারবার চারটি নিয়ম প্রয়োগ করার সঞ্চিত ফল থেকে। 3

নিয়মগুলোই ধাঁধার যুক্তি-ইঞ্জিন।

সমাধানের নিয়তি-নির্ধারিত স্বভাব

প্রতিটি Roomshade ধাঁধার ঠিক একটিই সমাধান আছে। এই অনন্যতা আকস্মিক নয়, ধাঁধার নির্মাণই তার নিশ্চয়তা দেয়। ধাঁধা তৈরিতে ব্যবহৃত ব্যাকট্র্যাকিং সমাধানকারী যাচাই করে নেয় যে চারটি নিয়মই মেনে চলে এমন ছায়া-বিন্যাস কেবল একটিই। এই নিয়তি-নির্ধারিত স্বভাব ধাঁধার নকশার জন্য অপরিহার্য: একাধিক সমাধান সম্ভব হলে ধাঁধাটিকে অবৈধ বলে গণ্য করা হতো। খেলোয়াড়ের কাজ আন্দাজে নয়, অনুমিতির মাধ্যমে অনন্য সমাধানটি আবিষ্কার করা। 3

ধাঁধার এই নিয়তি-নির্ধারিত গুণের মানে হলো, প্রতিটি বৈধ অনুমিতিকে নিশ্চিত হতেই হবে। নিয়মগুলোর সাহায্যে যদি কোনো ঘরকে ছায়াচ্ছন্ন বা সাদা বলে নির্ধারণ করা যায়, তবে অনন্য সমাধানে সেটি ছায়াচ্ছন্ন বা সাদাই। যদি আন্দাজ ছাড়া কোনো ঘরের দশা নির্ধারণ করা না যায়, তবে হয় ধাঁধাটি এখনও অসমাধিত, নয়তো খেলোয়াড় এখনও সঠিক অনুমিতিটি খুঁজে পাননি। এই গুণই Roomshade-কে সেইসব ধাঁধা থেকে আলাদা করে যারা চেষ্টা-ও-ভুলের উপর নির্ভর করে; প্রতিটি ঘরের নিষ্পত্তি নিয়ম আর ইতিমধ্যে প্রতিষ্ঠিত তথ্য থেকে যৌক্তিকভাবেই আসতে হবে। 3

Sources & notes

  1. "Heyawake," Wikipedia, a binary-determination logic puzzle published by Nikoli, first appearing in Puzzle Communication Nikoli #39 in September 1992; the Japanese name means "divided rooms," the grid being divided into variously sized rectangular rooms by bold lines; a number in a room indicates exactly how many painted (shaded) cells it must hold; painted cells may never be orthogonally connected and all the white cells must be interconnected; and a straight line of connected white cells may not contain cells from more than two rooms. en.wikipedia.org/wiki/Heyawake.
  2. "Nikoli (publisher)," Wikipedia, a Japanese publisher specializing in games and, especially, logic puzzles, established in 1980 by Maki Kaji; its Sudoku, the most popular logic problem in Japan, was popularized in the English-speaking world in 2005; it is notable for a vast library of "culture-independent" puzzles focused on logic rather than language; and it has invented or introduced many puzzle genres, including Slitherlink, Nurikabe, Heyawake, and Masyu. en.wikipedia.org/wiki/Nikoli_(publisher).
  3. Roomshade game engine: a Heyawake realization on a rows×cols grid partitioned into axis-aligned rectangular ROOMS, enforcing four rules: (1) a room with a number holds EXACTLY that many shaded cells (unlabeled rooms are free); (2) no two shaded cells are orthogonally adjacent; (3) all unshaded (white) cells form one orthogonally-connected region; and (4) no horizontal or vertical straight run of white cells may span three or more rooms; sizes are small (5×5), medium (6×6), and large (7×7) with rooms of dimension 1–3 and a clue that is either the shaded count or blank; the grid is partitioned by a greedy randomized fill, and a backtracking solver both fills a valid solution and verifies the puzzle's uniqueness, all pure and seeded-deterministic. Read from the game's own source.
  4. Further reading on Heyawake: Markus Holzer and Oliver Ruepp, “The Troubles of Interior Design–A Complexity Analysis of the Game Heyawake,” in Fun with Algorithms (FUN 2007), Lecture Notes in Computer Science; the analysis behind the result that deciding whether a Heyawake instance has a solution is NP-complete. doi.org.
Was this worth reading?
Play Roomshade
PlayPendium · About · Contact · Privacy · Terms · Cookies · Accessibility · Copyright · Browse all games · Classic arcade games · © 2026