{"text_format":"1","workbook":"xlsx","n_sheets":3,"sheets":["解説","Sheet1","Sheet2"],"not_rendered":{"charts":0,"images":0,"macros":1,"external_links":0,"defined_names":10,"comments":0,"pivot_tables":0},"unopened":[],"bounds":{"document_bytes":16777216,"sheet_cells":100000,"rows_first":2000,"rows_last":500,"rows_between":2000,"halvings":0,"cell_chars":16384,"cell_head_chars":4096},"cells_cut":0,"cells_raw":0,"read":"whole","date_system":"1900"}

{"sheet":"解説","index":0,"n_rows":45,"n_cols":55,"rows_kept":45,"cut":false,"hidden":false,"merged":[]}
["ちょっとした解説とパラメータの説明",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"muneyuki 2019/9/29"]
[]
["１. 迷路を作る手法"]
[null,"迷路を作成するには、大別して２つの方式があります。"]
[null,"①","埋められた部屋を次々に掘り開けて広げていく (以下「穴掘り式」と呼びます)"]
[null,"②","何もない大広間に、周囲から壁を生やして延ばしていく (以下「壁延ばし式」と呼びます)"]
[]
[null,null,"[穴掘り式 のイメージ]",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"[壁延ばし式 のイメージ]"]
[null,null,null,"start",null,null,null,"step 1",null,null,null,"step 2",null,null,null,"step 3",null,null,null,"step 4",null,null,null,null,null,"finish",null,null,null,null,null,null,"start",null,null,null,"step 1",null,null,null,"step 2",null,null,null,"step 3",null,null,null,"finish"]
[null,null,null,null,null,null,null,"→"]
[null,null,null,null,null,null,"→",null,null,null,"→",null,null,null,"→",null,null,null,"→",null,null,null,"→","…","→",null,null,null,null,null,null,null,null,null,null,"→",null,null,null,"→",null,null,null,"→",null,null,null,"→"]
[]
[]
[null,"このエクセルファイルでは、「迷路」シートの「穴掘り！」「壁延ばし！」ボタンにより、それぞれの方式で迷路を作成します。"]
[null,"左上から右下へ抜ける道を探す、という風にしていますが、迷路上のどの地点からどの地点でも必ず１通りの道でつながっています。"]
[null,"堂々巡りとなるループはありません。また、正解の道を塗りつぶしても絵が浮かび上がったりはしません。"]
[]
["２. 迷路を作成するパラメータ"]
[null,"迷路を作る際に、いくつか要素や特性値が影響してきます。これらを指定することで同じロジックで作ったとは思えないほど多彩な迷路が作成できます。"]
[]
[null,"①","サイズ : これは、あまり説明は要りませんね。このファイルでは長方形の迷路を作りますが、「縦サイズ」で縦方向の長さ、「横サイズ」で横方向の長さを指定します。"]
[null,null,"いずれも３以上の整数で指定します。２以下だと迷路になりません。"]
[]
[null,"②","キマグレ : 「穴掘り式」で部屋を掘り広げていくにしても、「壁延ばし式」で壁を延ばしていくにしても、直前の部屋/壁を基準に次へつないでいくのか、"]
[null,null,"別の場所にジャンプしてそこから新たに延ばしていくのかという選択があります。周りに進める方向が無いときには当然、別の場所から再開するとして、"]
[null,null,"進める方向があっても別の地点にジャンプする傾向を「キマグレ」で指定します。０から１の間の数で、大きいほど場所を変える確率が高くなります。"]
[null,null,"０ のときは、できる限り直前の部屋/壁を起点に次へ進み、１ のときはランダムな別の場所から部屋/壁を延ばします。"]
[null,null,"一般的に、「キマグレ」が小さい方が行き止まりまでの道が長くなりイヤらしさが増しますが、難しくなるとは限りません。"]
[]
[null,"③","クネクネ : 直前の部屋/壁から続けて次へ延ばすとき、まっすぐ同じ方向に延ばすのか、曲がって別の方向に進むのかという選択があります。"]
[null,null,"曲がろうとする傾向を「クネクネ」で指定します。０から１の間の数で、大きいほど曲がりくねった迷路を作ろうとします。"]
[null,null,"０ のときは、できるだけ直進して、 １のときは曲がれるときは必ず曲がります。ただし、「キマグレ」の値が１に近いと「クネクネ」はあまり効いてきません。"]
[]
[null,"④","パターン :掘削不可能な\"硬い\"壁や、特定の移動を強制する部屋などを配置することで、迷路に模様を施すことができます。"]
[null,null,"いくつかパターンを用意していますので、「パターン」で 整数を指定してください。０ は通常のプレーンな迷路です。"]
[]
[null,"⑤","ナナメ(壁延ばし式の場合のみ) : 「壁延ばし式」の場合は、ひとつひとつの部屋の形というのはあまり関係なくなります。"]
[null,null,"エクセルの斜め罫線機能を使って、縦横だけでなく、斜めの方向にも壁を延ばすことができるようにしました。"]
[null,null,"斜め方向に壁を延ばそうとする傾向が「ナナメ」です。マイナスまたは０から１の間の数で指定します。"]
[null,null,"正値のときは大きいほど、斜め方向の壁の割合が高まります。０ のときは縦横方向の壁だけ、１ のときは斜め方向の壁だけで迷路を作成します。"]
[null,null,"マイナスだと、縦横と斜めの区別なしです。「パターン」を指定するときは、マイナスがお勧め。"]
[null,null,"「ナナメ」を １ にすると相当に凶悪な迷路ができますが、その理由は考えてみてください。(ヒントは密度とパリティ)"]
[]
["３. 注意"]
[null,"このファイルのマクロやアルゴリズムは自由に引用してもらってかまいませんが、ファイル自体の再頒布や改変は禁止です。"]

{"sheet":"Sheet1","index":1,"n_rows":29,"n_cols":2,"rows_kept":29,"cut":false,"hidden":false,"merged":[]}
["[共通パラメータ]"]
["縦サイズ(2~)",20]
["横サイズ(2~)",30]
[]
["キマグレ(0~1)",0.05]
["クネクネ(0~1)",0.5]
[]
[]
[]
["[壁伸ばし式パラメータ]"]
["ナナメ占率(＊)",-1]
["＊: マイナス(割合自由) or 0~1"]
["パターン",0]
[" 0: 模様無し"," 10: 中庭"]
[" 1: 右肩上がり"," 11: 日の丸"]
[" 2: 鳥瞰"," 12: 市松"]
[" 3: 左右両相"]
[]
[]
[]
["[穴掘り式パラメータ]"]
["パターン",12]
[" 0: 模様無し"," 10: 横縞"]
[" 1: 格子"," 11: 三崩し"]
[" 2: 段違い格子"," 12: 渦紋"]
[" 3: 斜め格子"," 13: 桧垣"]
[null," 14: ジグザグ"]
[null," 15: 青海波"]
[null," 16: 雷文"]

{"sheet":"Sheet2","index":2,"n_rows":0,"n_cols":0,"rows_kept":0,"cut":false,"hidden":false,"merged":[]}