------------------------------------------------------------ BlindLogic 開発: 諸熊 更新: 2021年10月29日 ------------------------------------------------------------ ◆はじめに  画像や文字を使って、ノノグラムを行なうゲームです。  思い立ったので作ってみました。 ◆特徴  ・任意の画像ファイル、または、文字をお題にしてノノグラムを楽しむことができます。  ・パズルの大きさを選択できます。同じお題でも、難易度を調節して楽しめます。  ・スクリーンリーダーとキーボード操作で楽しめます。 ◆ルール  ノノグラムとは、縦横の数字をヒントに、指定された絵を完成させるパズルゲームです。「お絵描きロジック」、「ピクロス」などとも呼ばれます。  現実では、オセロ版のように縦横にマス目が敷かれた用紙の該当箇所を塗りつぶして、モノクロの絵を描く遊びとなっています。塗りつぶす場所は、ヒントとして一緒に提示される情報から推測、判断していきます。  縦横の大きさが 10マス のパズルを例に説明します。  まず、 1行目のヒントに 「横: 10」 と記載されていたとします。  「横: 10」 が記載された行は、以下のように解釈します。  任意のマス目 から右方向に 10マス 塗りつぶし、 残りは空白で埋める  今回のパズルは横幅が 10マス であるため、ヒントから導かれる結論は、「この行は塗りつぶす」になります。 1マス目 から 10マス目 を塗りつぶすからです。  次に、 1列目のヒント に、 「縦: 5, 2」 と記載されていたとします。  「縦: 5, 2」 が記載された列は、以下のように解釈します。  任意のマス目 から下方向に 5マス 塗りつぶし、 1マス以上 空白を空けて、 2マス ぬりつぶし、 残りは空白で埋める。  現在の例では、既に 1行目 が塗りつぶされています。だから、 1行目 を塗り始めの場所として 下方向に5マス 塗りつぶすことができます。  さらに 1マス以上 の空白を空けて、 7行目、またはそれ以降の位置 から 2マス 塗りつぶす必要があります。  ただし、現時点では、 7行目 から塗るのか、 8行目 から塗るのか、はたまた 9行目 から塗るのかを断定することができません。  こういう時は、いったん保留とし、他の行や列を確認します。他の行や列を塗っていると、それに関連して答えが見つかることがあるからです。  まず、 7行目 の ヒントを見ると、 「横: 0」 と記載されていました。  「横: 0」 とは、その行は一切塗りつぶさないことを表しています。つまり、 7行目 から塗り始めることは無い ということが確定します。  さらに 8行目 のヒントを見ると、「横: 3, 4, 1」という記載がありました。  「横: 3, 4, 1」が記載された行は、以下のように解釈します。  任意のマス目 から右方向に 3マス 塗りつぶし、 1マス以上 空白を空けて、 4マス 塗りつぶし、さらに 1マス以上 空白を空けて、 1マス 塗りつぶす。最後に、 残りは空白で埋める  このヒントは複雑なように見えますが、実は既に正解が出ている行です。今回のパズルの横幅は 10マス であるため、最低1マスの空白を空けながら塗っていくと、ぴったり10マス塗りつぶすことができるからです。結果、 1列目 から右方向に 3マス、 5列目 から右方向に 4マス、 そして、 10列目の 1マス を塗りつぶします。  ここで、 8行目 の 1列目 を塗りつぶしたことで、 1列目 のヒントだった「縦: 5, 2」の「2」が、 8行目から2マス となることが確定します。ヒントに従うと、 10行目以降は空白で埋める ので、 1列目 が塗り終わったことになります。 以上のように思考を繰り返して、お題の絵を完成させるのが、本ゲームの目的になります。 なお、本ゲームで主に重要な要素は、立体や空間の認識能力、記憶力、そして、計算能力です。 上の説明を読んで頭がパンクした方や、ノノグラムに馴染みの無い方は、まず 大きさ5マス のパズルで練習してみて下さい。その後、 大きさ10マス や 大きさ15マス に挑んでみることで、より理解を深められるでしょう。  なお、晴眼者向けですが、以下のページで詳しく解説がされています。  ノノグラム - Wikipedia  ・https://ja.wikipedia.org/wiki/%E3%81%8A%E7%B5%B5%E3%81%8B%E3%81%8D%E3%83%AD%E3%82%B8%E3%83%83%E3%82%AF ◆動作環境  ・OS: Windows10以上 (Windows7でも動作はするはず)  ・必要メモリー: 15MB程度 (お題に大きな写真を使う場合、もっと必要)  ・必要CPU性能: ブラウザーでのネット閲覧や表計算ソフトの操作ができる程度  ・必要空き容量: 10MB程度  ・音声読み上げ: PC-Talker, NVDA, JAWSなどのスクリーンリーダー、または、SAPI5対応の日本語音声エンジン  ・ディスプレイの大きさ: 解像度に応じて自動スケールする。ただし、文字小さめのため、見て遊ぶなら寸法の大きなディスプレイを推奨 ◆遊び方  ゲームを起動すると、設定画面が表示されます。お題にする絵、マス目の数などを選択してください。  このゲームでは、任意の画像ファイルをお題にすることができます。また、画像の代わりに、指定した文字をお題にすることもできます。  マス目の数は、ゲームの難易度に直結します。少ないほど、絵は荒くなりますが、難易度も低くなります。  そして、3種類のゲームモードを搭載しています。お好みに合わせて選んで下さい。  1. アシストモード  ・練習用のモードです。誤った場所を塗ると、「間違っている」ことを何回でも教えてくれます。ヒントの案内内容が丁寧です。  2. ノーマルモード  ・一般的なモードです。誤った場所を塗ると、ミスとしてカウントされます。5回ミスをするとゲームオーバーになりますが、「間違えた」ということを教えてくれます。  3. ハードモード  ・誤った場所を塗っても、間違いであることを教えてくれなくなります。正解がわかるのは、パズルが完成した時のみです。  その他に、お好みで変更できる設定がいくつかあります。  1. BGM  ・パズル中のBGMを選ぶことができます。 OFF にするとBGMなしになります。  2. 文字パズルのフォント  ・お題に文字を指定する場合に、文字に使用するフォントを変更できます。フォントを変えると文字の形状が変わるので、お題の難易度も変わります。  3. 番地の読み上げ  ・カーソルを移動した時に、番地を読み上げるか否か、及び、読み上げ方を選択できます。なお、ゲーム中にも CTRL+Q キーで変更することが可能です。  4. 画面描画  ・パズル中、マス目の状態、およびカーソルを描画するか否かを選択できます。チェックを外すと、スクリーンリーダー利用者と完全に同じ条件でパズルを楽しむことができます。なお、完成時の描画などはあります。  必要な設定が終わったら、「スタート」ボタンを押すと、パズルが始まります。  パズル画面では、上下左右矢印キーを押して、マス目を選択し、エンターキーを押して塗ります。  マス目を選択すると、そのマスが属する横、縦軸に記載された数字が読み上げられます。この読み上げを頼りに、塗りつぶすマス目を検討して下さい。  ところで、「塗ってはいけない」と思うマス目には、チェックを付けておくことができます。チェックを付けるにはスペースキーを押します。  さらに、すでに一行、または一列が塗り終わった所は通知をさせないようにすることができます。これらのヒントや工夫を駆使して、パズルを楽しんで下さい。 指定されたマスを全て塗り潰すことができればパズルクリアになります。 ゲームクリア後は、エンター、スペース、またはエスケープキーを押すと前の画面に戻ります。なお、クリア後も、上下左右矢印キーを押して、仕上がった絵を確認することができます。 ◆パズル内でのキー操作  ・上下左右矢印キー: 押した方向にカーソルを移動  ・エンターキー: 指定した場所を塗る。塗った所に対して押すと、解除できる。  ・スペースキー: 指定した場所にチェックを付ける。  ・Qキー: 現在の座標位置を読み上げ  ・Rキー: 横方向のヒントを読み上げ。通知をミュートにしていても読むことができる。  ・Cキー: 縦方向のヒントを読み上げ。通知をミュートにしていても読むことができる。  ・タブキー: 横縦のヒントの内容をリストボックス上で確認できる。一度に読み上げられても混乱する人はこちらで。  ・CTRL+Qキー: 番地の読み上げ方法を変更する。  ・CTRL+Rキー: 現在の横方向ヒント通知を切り替える。ミュートにすると、カーソルを移動した時に横方向の通知がなくなる。塗り終わった行の通知がうるさい場合に使う。  ・CTRL+Cキー: 現在の縦方向ヒント通知を切り替える。ミュートにすると、カーソルを移動した時に縦方向の通知がなくなる。塗り終わった列の通知がうるさい場合に使う。  ・CTRL+エンターキー: 選択した範囲を塗る。始点の位置で押し、続いて終点の位置で押すと、その範囲を強制的に塗る。なお、ノーマルモード等で「ミス」が発生した場合、その位置で中断する。  ・CTRL+スペースキー: 選択した範囲にチェックを付ける。始点の位置で押し、続いて終点の位置で押すと、その範囲を強制的にチェック状態にする。なお、ノーマルモード等では正しく塗られている部分は無視してくれる。  ・エスケープキー: 範囲選択を解除するか、パズルを中断して設定画面に戻る。中断する時は確認ダイアログが表示される。  ※ctrlキーを同時に押すキー操作は、CTRLキーの代わりにShiftキーを使うこともできます。 ◆いつでもできるキー操作  ・F5キー: BGM音量を下げる  ・F6キー: BGM音量を上げる  ・F7キー: 効果音音量を下げる  ・F8キー: 効果音音量を上げる  ・F11キー: 読み上げに使うスクリーンリーダーを変更する ◆制限他  ・このゲームでは基本的に、暗い色で塗られた部分がパズルの対象になります。このため、暗い背景の画像を用いると、背景を塗ることになります。  ・細い線で描かれた絵など、大部分が背景色と等価な画像からは、パズルデータが生成できない可能性があります。  ・カラフルな写真や画像からは、期待するパズルデータが生成できない場合があります。モノクロにした時に輪郭がはっきりする画像を重視して下さい。  ・画像や文字画像から直接パズルデータを生成するという性質のため、実際の形状とは異なるパズルになることがあります。また、達成に運が絡むお題になることがあります。  ・お題とする画像の縦横比は、 1対1 に近いほど望ましいです。本作では縦横のマス数が同一であるため、極度に縦、または横に長い画像は無理やり正方形に縮小されてしまうからです。  ・複数の文字をお題にすることができます。ただし、複数の文字を用いるとお題が横長になるため、上述した縮小の影響を受けます。  ・文字パズルでは、フォントを指定することができますが、反映されるのはフォント名だけです。スタイルは常に「太字+アンチエリアス」になります。  ・普通のノノグラムでは、ヒント内にある個々の数字にも印となるマークを付けることができます。しかし、音声読み上げでの区別が困難なため、本作では取り入れていません。  ・普通のノノグラムでは、常に縦横全てのヒントが表示されています。が、本作では、スクリーンリーダーで遊ぶ人に対し不平等になるため取り入れていません。  ・マウス操作は考慮していません。マウスが滑ってミスすると悲しいので考慮する予定もありません。  ・点字ディスプレイで遊ぶことは考慮していません。  ※著作権や開発履歴等は、「doc」フォルダ内のテキストに記載してあります。 ------------------------------------------------------------  (C) 2021-, 諸熊の館