この前「またろくでもない事を思いついた」という記事を書いた。





あの時、キュウリの苗は

下隣(画面左下方向に隣)の行と右隣の列は人でふさがっており、

上隣(画面右上方向に隣)の行と左隣の列は「ふち用レンガ/br」でふさがっていた。

パッと見ではふち用レンガの上から普通通り水やりできそうに見えて、しかしできなかった。

水やりするにも隣接タイルの高さが限界を超えているとできなくなるという事に気づいた。

これを読んでいる皆様もこんな経験があるでしょう。

ウッドデッキタイルや雪タイルで庭の地面を飾った時に、

タイルを耕土マスの4つの辺に隣接して置くと水やり・収穫ができなくなった事を。



 遅ればせながら「作物に水やり状態を保てる高さの上限」を考える。

「下限」はもちろん高さゼロの地面。高さが負の値になることは無い。

ここでは「作物のマスに隣接して設置した物は全て上に乗れる性質である」事を前提にする。

ここで導き出した上限よりも低いのに水やりできなくできる物が今後実装されても、

それが「上に乗れない事によって水やりできなくする」物ならば関係無い。

ちなみに現在最も低い位置に設置できる(高さの短い)「上に乗れない」物は高さ14の「ふち用切り株/br」。

柵のようにカーソルに引っかかる事も少なく、回転して隠蔽しやすいので便利。




 まず、ふち用レンガは高さ8だから、この上から水やり・収穫できなかったという事はかなり上限が低いことが分かる。

高さ3の通常タイルで四辺を囲うと水やり・収穫できた。

砂利タイル1枚、通常タイル1枚、合計高さ4で囲っても水やり・収穫できた。

砂利タイル2枚、通常タイル1枚、合計高さ5で囲うとできなかった。

結論:
「上方に十分な空間がある時、耕土に手を加えられる上限の高さは4。ただし、耕土の辺が接しないマスの高さは関係無い。」

「手を加える」=作物を植える、水やりをする、収穫する


ちなみに動物の場合はもっと高い所が上限で、

$beatmixのブログ-内側の四角の高さは50 外側は51

高さ49が上限になる。

画像内側の四角い枠が動物に手を加えられなかった高さ50。

$beatmixのブログ-外側は使わなかった。

そして、アップこの画像でキャラが立っている外側部分が51の高さ。

49で囲ってどこからでも水やりできた。

50と51をせっせと作ってからいざ試してみたら、

50であっさりどの位置からも水やりできなくなった。

51は丸々無駄でがっかり。



 結論で「上方に十分な~」とあいまいな書き方をしているが、ここが今後の目標。

十分に空間が取れない場合はどうなるのか。

地面から高さ97の上にタイルを浮かせて敷き詰めてその下に設置した作物は、

周囲の地面に物が無くても手を加えられなかった。

98の場合はできた。

$beatmixのブログ-数値忘れて使い物にならなくなってしまった。;;

検証してから時間を空けてしまって、メモをちゃんと残していなかった。

この画像の各部の値はいくつだったか。水やり・収穫はできたのかできなかったのか。


もう一度ちゃんと測りたい。


 庭を大きく改造している時に、真上から見た位置関係を緯度と経度によって表現できないかと考えた。

庭を複雑にしすぎて位置関係が把握しづらくなり、頭の中だけでまとめるのももう限界に近い。

紙に書いて考えるにあたって、位置関係を簡潔に書く方法を考えていた。


 しかしよく考えなくても、この村がどこに位置しているのかについて皆無と言っていいほど情報が無い。

いったいこの村は地球のどこにあると設定されていて、自分達の庭はどの方角が東西南北なのだろう。

もしや地球上ではないどこかメルヘン的な場所にあるのか。

インターネット上のデータに過ぎないと言われれば身も蓋も無いが、設定くらいはあってしかるべきだと思う。

イベントで演出しているだけで、季節は無いだろう。

季節外れの作物も年中同じ調子で生長する。

まさか作物1種類にしか影響しない季節もあるまい。

太陽光(と思しき光)は画面左手前側の方角から下に向けて降り注いでいる。

これは小屋の外装の色合いと動物の影から分かる。

・・・

そういえば、置物について、回転させる事ができる物は光の当たり方も左右逆になったりする。

作物ののように回転できない物について、

バラやチャノキなどの低灌木の類は右上手前側から光が当たっているかのような描写になっている。

・・・

光の差し込む方角は左下の方角ではないのか?

小屋の外装の色合いはただの塗装?

夜になっても灯りがいらないほど明るいなんておかしくないか?

背景が昼と夕方と夜の模様になっているだけで、昼でも夕方でも夜でもない状態が延々と続いているのでは?


……だんだん恐ろしくなってきた。


 ゲームのキャラクターは本質はただのデータだが、普通は設定・物語の上では生きている。

しかし、ピグ村の住人は設定上でも生きている存在ではないのではないだろうか。

物理法則を無視した箱庭で、ユーザーに操られる事によって庭造りの真似事をする人形。

ピグ村は黄泉の国にあるのかもしれない。





 そんなことはどうでもいい。

位置関係を数値で表わせればいいのだから、何をおいても最初に決めるべきは「基準点」だ。

庭を拡張する度に基準が変わってしまうのでは面倒だ。

ここは小屋の一番奥を基準にしよう。

経緯度で表現するより、行列で表現する方が合理的な事にここでやっと気がつく。

左下に行くに従って1行、2行、・・・となり、
右下に行くに従って1列、2列、・・・となり、

庭の入り口地点を表わすには

小屋の一番奥から左下方向に9つ目、右下方向に1つ目にあるので(9,1)

高さの情報も入れれば(9,1,0)となる。

庭は8マス×8マスの集まりなので、その1かたまりごとに名前をつけてもいいだろう。

例えば初期状態(小屋の手前側に3つ8マス×8マスが隣接)なら

一番奥が「小屋ブロック」や「ホームブロック」、左が(9,1)ブロック、

中央手前側が(9,9)ブロック、右が(1,9)ブロックなど。

却ってややこしくなるか。

行 = row → r  列 = column → c で 「r2c1区」とか?

どうもこういう事にはセンスが足りなくていけない。


追記:野球グラウンドの各位置で呼べばいいのか。

あの位置に席は無いけど、バックスクリーンから見たと考える。
まずはこの写真を見ていただきたい。




久しぶりに庭を再開した水友のお庭にて撮影。

レンガと人に囲まれた双葉。

植えて3時間以内のキュウリの苗だが、この状態では水やりができなかった。

今まで気に留めていなかったが、そういえば「植物に水やりできる範囲」を探ったことは無かった。

楽しみの種がまた一つ増えた。