Topへなちょこソフト > 市松0.5.4 > 問題ファイルの作り方

2004年03月07日

0. 問題を手早く作成

市松を作った目的のひとつに、

雑誌のパズルをじっくり解きたい

というのがあります。

雑誌のパズルって、解き応えのあるものが多いんですけど、鉛筆でやるとつらいんですよね。
間違えやすいし消しにくいし、手が真っ黒になっちゃいますし。

でも、

問題の入力がけっこうめんどくさい

のも確かです。



そこで。市松では、

問題の入力はExcelで行う

という方法を採ることにしました。

一度試してみてください。意外にさくさく入力できますよ。

ただ、やはり「てきとーに入力すればなんとかなる」といぅわけにはいきません。
市松で問題として読み込めるようにするには、それなりのルールに則って入力しなければなりません。

ので、本コンテンツでは、Excelでの問題ファイルの作り方をご紹介します。
もちろん、未レジスト状態の方でも作って遊べますよ。ご安心ください。



ご注意!!
雑誌・書籍・その他一般に公開されたパズルには、著作権が存在します。
ご自分で作成した問題、あるいは著作権者から直接転載許諾を受けた問題以外の公開はご遠慮ください。

もちろん、公開しないのであれば、雑誌等の問題を自分で入力して自分で遊ぶのは、認められた正当な権利です。安心してどんどん入力して楽しんでください。
市松で問題を解いて、その雑誌の懸賞に応募しても全然大丈夫です。



Excelなんか持ってないよ、といぅ方は。

この際、OpenOffice.org(OOo)といぅ無料のオフィスソフトをインストールしてみてはどうでしょうか。

OOoは無料ながら、Microsoft Officeとほぼ同じことができる優れものです。
OOoの中のCalc(スタートメニューからは「表計算ドキュメント」で起動)は、ほぼExcelと同じ操作性で同じことができます。
正直、市松で使う「CSVファイルの保存」機能であれば、Excelより性能がいいです。

1. Excelを準備する

まず、Ezcelの準備をしましょう。

やはり起動した時に表示されるシートに入力すると、いろいろめんどくさいので。
いえ、簡単な作業ですので、気軽にさくっとやっちゃってください。



Excelを起動します。

imt04_02_01.gif

これからパズルの問題を入力するわけですから、セルサイズは正方形っぽい感じの方が視覚的に楽ですよね。
ので、セルの横幅を調整しましょう。

ワークシートの左上隅を左クリックして、シート全体を選択します。

imt04_02_02.gif


imt04_02_03.gif

次に、列見出しを右クリックします。
列見出しというのは、シートの上縁にあるA、B、C、…と書かれている灰色の部分です。

imt04_02_04.gif

列用のプルダウンメニューが出てきますので、「列の幅」を左クリックします。

imt04_02_05.gif


imt04_02_06.gif

ここで、「列幅」を入力して[OK]を左クリックします。
お使いのフォントサイズ9ポイントなら「2」、11ポイントなら「2.7」(決定すると2.67に変わっちゃいますけど、まぁ気にしないでください)くらいが具合がいいようです。
それ以上小さくすると、数字が2桁入らなくなる(「#」表示になってしまいます)のでご注意ください。

で、全部の列の列幅が変わります。

imt04_02_07.gif

以上で、準備は完了です。

準備作業の終わったシートを雛形として保存しておくと、次から楽ですよ。

2.問題を入力する

では、さっそく問題を入力してみます。
まずは、左側に書かれている部分から。

imt04_03_01.gif

列がずれちゃっても、気にしないでどんどん入力していきます。
マスカーソルの移動は、矢印キーを使うと楽ですよ。

入力が終わったら、列ずれを直します。

ずれた行をマウスで選択して、

imt04_03_02.gif

選択領域の端で左ボタンを押しっぱなしにし、正しい位置までずらします。

imt04_03_03.gif

他にもずれている行があったら、同様に直します。

imt04_03_04.gif

こんな感じになりました。

次に、上側に書かれている部分も入力します。

imt04_03_05.gif

行ずれがあったら、同じように直しておきます。

3.体裁を整える

入力が終わったら、問題っぽく体裁を整えましょう。

まず、左側ヒントの右上と、上側ヒントの左下を合わせます。

imt04_04_01.gif


imt04_04_02.gif

こんな感じで。

次に、左隅の不要な行を削除します。
いらない列の列見出しをドラッグして、

imt04_04_03.gif

右クリックメニューを表示させて、「削除」を左クリック。

imt04_04_04.gif


imt04_04_05.gif

上隅の不要な行も同様に削除します。

imt04_04_06.gif

4. 入力ミスをチェックする

ここまでできたら、入力ミスがないかどうかをチェックします。

簡単なチェックとして、

左側ヒントの総和と上側ヒントの総和が同じかどうか

をチェックしてみましょう。

左側ヒントを、全部ドラッグして選択します。

imt04_05_01.gif

それだけでもぅ、選択領域の総和が表示されます。

imt04_05_02.gif

同じように、上側ヒントの総和も確認してみます。

imt04_05_03.gif

左側のヒントも上側のヒントも、「塗りつぶすマスの数」を表していますから、この総和は必ず同じになります。
総和が合わない場合は、どこかで入力ミスをしていますので、一通り確認してみましょう。

もっとも、この方法では、数字の順番だけを間違えた場合はチェックできません。
これは、実際に元ネタと突き合わせない限り、絶対にわかりません。気になる方は、どなたかと読み合わせてチェックすることをお勧めします。

ここまでできれば、問題の入力は完了です。



シェアウェアとして、資料や調査費用が充分まかなえるようになれば。
市松に、スキャナから問題を読み取るOCR機能も付けてみたいと思っていますが…そううまくいくかどうか(^^;)。

5. CSV形式でファイルを保存する

問題の入力が終わったら、CSVファイルとして保存します。

Excelで普通に保存すると、xlsファイルというExcel独自の形式で保存されてしまいます。
このxls形式では、市松で読み込むことができません。

ですから、ちょっとそのへんに気をつけながら、保存しましょう。



メニューバーから[ファイル]-[名前を付けて保存...]と左クリックしてください。

imt04_06_01.gif

「名前を付けて保存」ダイアログウィンドウが表示されます。

imt04_06_02.gif
(クリックで拡大します)

ファイル名はお好みで付けていただくとして。

imt04_06_03.gif
(クリックで拡大します)

保存ファイル形式を指定しましょう。
ダイアログの、「ファイルの種類」コンボボックスの[▼]ボタンを左クリックして、プルダウンリストを表示させます。

imt04_06_04.gif
(クリックで拡大します)

プルダウンリストを下の方にスクロールさせ、「CSV(カンマ区切り) (*.csv)」という行を探し出します。

imt04_06_05.gif
(クリックで拡大します)

「CSV(カンマ区切り) (*.csv)」行を左クリックします。

imt04_06_06.gif
(クリックで拡大します)

ファイル名の拡張子が、「.csv」に変わったら、[保存]ボタンを左クリックします。

imt04_06_07.gif
(クリックで拡大します)

すると、Excelから注意を促すメッセージが表示されます。

imt04_06_08.gif
(クリックで拡大します)

これは必ず表示されますので、気にしなくてかまいません。
[はい]ボタンを左クリックしましょう。

imt04_06_09.gif

これで、CSV形式で問題データを保存できました。



以上で、問題データの作成はおしまいです。
Excelはもう不要ですので、終了させてしまってかまいません。

次、市松での「CSV形式ファイル」から「市松形式ファイル」への変換と進みます。

6. CSVファイルを市松で読み込む

さて、いよいよ。
作成した問題ファイルを、市松で読み込んでみましょう。

まず、市松を起動します。

imt04_07_01.gif

メニューバーから[ファイル]-[開く...]の順に左クリックして、「ファイルを開く」ダイアログを表示させます。

imt04_07_02.gif


imt04_07_03.gif

(クリックで拡大します)

「ファイルを開く」ダイアログの表示初期値は「市松ファイル(*.imt)」ですので、ここを「CSVファイル (*.CSV)」に変更しましょう。
「ファイルの種類」コンボボックスのプルダウンボタンを左クリックします。

imt04_07_04.gif
(クリックで拡大します)

プルダウンリストが表示されたら、「CSVファイル (*.CSV)」行を左クリックします。

imt04_07_05.gif
(クリックで拡大します)

CSVファイルの一覧が表示されますので、先ほど入力したファイルを左クリックで選択してから、[開く]ボタンを左クリックします。

imt04_07_06.gif
(クリックで拡大します)

開いた問題の情報ダイアログが表示されます。

imt04_07_07.gif

[新規作成]ボタンを左クリックします。

imt04_07_08.gif

これで、先ほど作成した問題ファイルが市松で読み込まれました。

imt04_07_09.gif

もちろんこのまま遊び始めることもできますが、問題のタイトルや難度の情報はCSVファイルでは設定することができません。
もう一手間かけて、市松ファイルとして保存しておきましょう。

7. プロパティを設定する

CSVファイルとして読み込んだ問題には、「タイトル」「難度」「著作権者」等の情報が含まれていません。
ので、今度はこれらの情報を問題に設定していきます。

[ファイル]-[(読み込んだファイル名)のプロパティ]を左クリックします。

imt04_08_01.gif

「(読み込んだファイル名)のプロパティ」が表示されます。

imt04_08_02.gif

必要な項目を入力してから、[OK]ボタンを左クリックします。

imt04_08_03.gif

ちなみに、「難度」は「1」が一番簡単→「5」が一番難しい、という設定です。
今のところ特に基準もありませんので、どのくらいの難しさかは各々でお決めください(^^;)。



これで、問題に付帯する情報の設定まで終わりました。
後は、市松ファイルとして保存するだけです。

8. 市松形式でファイルを保存する

さぁて、長々と説明してきました問題ファイルの作り方も、これで最終章。
もうちょっとですよ。

付帯情報まで設定し終わったら、今読み込んでいる問題を市松ファイルとして保存しましょう。

ただし。ここでは純粋な問題ファイルとして保存します。
普通に保存すると、やりかけ情報やUndo情報も一緒に保存されてしまいますので、特に問題だけを保存する場合には、問題だけを保存コマンドを使います。
間違えないよう、気をつけてくださいね。



メニューバーから、[ファイル]-[問題だけを保存]を左クリックします。

imt04_09_01.gif

「問題だけを保存」ダイアログが表示されます。

imt04_09_02.gif
(クリックで拡大します)

「ファイル名」にファイル名を入力し(拡張子は省略しても大丈夫です)、[保存]ボタンを左クリックします。

imt04_09_03.gif
(クリックで拡大します)

これで、市松用問題ファイルの完成です。ふぅ。



だめ押し。

できあがった市松ファイルを、もう一度読み込んで確認してみましょう。

メニューバーから[ファイル]を左クリックします。

imt04_09_04.gif

「最近使ったファイル」行に、今保存したばかりのファイルが表示されていますので、

imt04_09_05.gif

その行をクリックします。

imt04_09_06.gif

するとそのファイルが改めて読み込まれ、問題の情報ダイアログが表示されます。

imt04_09_07.gif

CSVファイルの時には「なし」だった各欄に、今度はきちんと情報が表示されていますね。



特に問題ファイルを公開される方は、このへんの情報をきちんと設定しておいた方がいいかもしれません。

未レジストの方はこの保存機能は使えませんので、Upload掲示板にアップする際に、このへんの付帯情報をコメントにお書きください。
こちらで情報を設定して、imtファイルに変換させていただきます。