ほむのアトリエ

不思議な単位の錬金術士

君も房総半島一周しないか?

この記事はCCS Advent Calendar 2021 5日目の記事です。

adventar.org

 

前日の記事はこちら。

note.com

私はじっとしているのが無理すぎるので多分向いてないですね()

 

こんにちは。

CCSでは珍しい常識人枠、ほむです。

 

f:id:homu_neko:20211202024818p:plain

CCS †旅† Advent Calendar 2021?

適当に旅って書いたら後ろに2人並んでしまった。

これ旅か怪しいんだけど

 

さて、本題へ。

新型何とは言わんウイルスのせいで旅に行きづらいですよね。

この前まで都道府県を跨ぐ外出は控えろ~って言われていましたし。

 

あと大学生って(クソデカ主語)お金ないんですよね。

 

予算を限界までケチって、千葉県の外に出ないで旅行……

 

そうだ、房総半島一周しよう。

 

※この記事は鉄分を多く含んでおりますので苦手な方はブラウザバック推奨です

 

目次

 

大回り乗車とは?

大回り乗車とは、簡単に言うと安い運賃で電車を乗り回すテクニックです。

140円で関東地方を一周することだってできます。

 

え、それ無賃乗車じゃないの?と思うかもしれませんが特に問題ありません。

これはJRが定めている「運賃計算の特例*1」をクソデカに利用しているだけだからです。

 

運賃計算の特例とは、ざっくり言うと「決められた区間内ではどのような経路で移動しても運賃を最も安い経路で計算する」というものです。

理由は簡単で、首都圏の鉄道網が複雑だから。

 

例えば、山手線で東京から有楽町に移動したい場合。

外回りで1駅移動しても、内回りで29駅移動しても、同じ運賃140円しかかからないということです。

 

ただし、運賃計算の特例には条件があります。

 

まず、乗車経路は重複してはいけません。

 

路線図を一筆書きできる経路を選択する必要があります。

同じ駅を2回通ることはできません。

 

もう一つ、当たり前ですが途中で改札から出られません。

遠回りしているだけですからね。

 

f:id:homu_neko:20211129014323p:plain

ちなみにこちらが首都圏の大回りできるエリアです。

末端の駅は大回りには利用できません。

 

この記事では、

千葉県から出ずに

クソデカ旅行をした気分を味わいつつ

1つ隣の駅に移動する

方法を紹介していきます。

 

つまりバカ。

 

準備をしよう

経路選択

まずは経路を選びましょう。

流石に一人だと虚無になりそうなので、友人氏(CCSではない、ていうか千葉大生じゃない)を誘いました。

 

私「明日暇?」

友「暇」

私「房総半島一周しようぜ」

友「いくか~wwwww」

私「???????(断られると思ってた)」

 

友人氏は大回り乗車の経験が無かったので取り敢えず初心者向けのルートをチョイス。

 

初心者向けとは

 

千葉~西船橋~新松戸~我孫子~成田の県北ルートを千葉~成田に短縮しているので初心者向けです(暴論)

 

千葉大生で一人暮らししている人の大半は西千葉駅周辺に住んでいると思うので、皆さんも真似できるように千葉駅スタートにしました。

ゴールは1駅先の本千葉駅です。

 

まあ今回の旅では84駅先なんですけどね。

所要時間は7時間33分です。

総距離324.5km

 

運賃は150円。安いね!!!ハハッ

 

食料調達

房総半島一周はは関東一周等とは違い注意すべき点があります。

 

悲しいことに、殆ど大きい駅がありません。

改札から出られないため、改札外のコンビニも利用できないんですよね。

 

基本的に食料は千葉駅で調達しておく必要があります。

途中で買えません。(都賀の後は木更津まで買えないらしい)

飲み物は比較的に大きい駅ならホームに自販機がありますので、途中で調達することもできます。

 

が、乗換時間が超短い場合があるので買えないかもしれません。

乗換を逃すと1時間待ちになる場合もありますので、千葉駅で多めに買っておくといいでしょう。

特に夏は注意が必要です。

 

ちなみに、お手洗いに関しては電車内にあるので何とかなります。

 

切符の購入

次に、切符を買います。それはそう。

 

f:id:homu_neko:20211129023403p:plain

普通の150円切符でもいいのですが、指定席券売機でデカい切符を買う方がいいらしいです。

所謂普通の切符の場合は千葉駅から150円で移動できる区間の駅まで運ぶ契約となるのに対し、この切符の場合は千葉駅から本千葉駅まで運ぶ契約となります。

 

万が一のトラブルを防ぐためにも行先が明示された切符の方が望ましいということ(らしい)です。

 

あとは、そうですね。

大回り乗車を終えて改札機に切符を入れると弾かれるんですよね。

想定されている乗車時間を大幅に上回るため改札機に無賃乗車を疑われているのだと思います。

 

有人改札に行って、切符を見せて「大回り乗車しました」と言えば通してくれますのでご安心を。駅員さんに経路を聞かれる場合がありますので、しっかりと頭に入れておくかメモを用意しておくといいかもしれません。

 

自分はめちゃくちゃ不安なので訪れた駅の駅名標を全て撮影しています。

 

実際にやってみた

総武本線成田線 千葉→成田→松岸→成東

f:id:homu_neko:20211129025820p:plain

おはようございます。朝8時51分、千葉駅を出発です。

成田空港行に乗って成田に向かいます。

 

何故1駅先に移動するだけなのに早起きしないといけないのか……

 

f:id:homu_neko:20211129030150p:plain

9時24分、成田駅に到着。

正直おもんない区間なので全カットです。

 

意外とスーツケース持ってる人いて驚きました。

国内旅行ですかね。

 

※言い忘れていましたが、撮影は今年の夏です。

 

この時点で嫌になったら我孫子方面に脱出することができます。

今がチャンス。

 

9時41分、成田駅を出発。成田線松岸駅を目指します。

この区間意外と長く、1時間ちょいの乗車です。

 

f:id:homu_neko:20211129032949p:plain

上の路線図の緑の路線は大体全部成田線です。支線がたくさんあります。

佐倉~成田~佐原~銚子が本線、成田~成田空港が空港支線、成田~我孫子我孫子支線です。

 

我孫子支線難読駅が多いですね。

 

下総松崎「しもうさまんざき」

安食「あじき」

木下「きおろし」

などなど

小林は普通に「こばやし」

 

さて、この区間はThe田舎って感じの車窓が楽しめます。

辺り一面草です。住んでる人いたらすまん

茨城県に近いので、多分利根川であろうサムシングが見えます。

 

f:id:homu_neko:20211129034638p:plain

10時50分、松岸駅に到着。駅名標がお洒落ですね。

 

CCSの一部の人がチャリで行きがちな銚子の一駅手前です。

海鮮食いに行きたすぎですが、そんなことは許されません。

銚子に行ってしまうと松岸~銚子間が重複することになってしまいますからね。

 

千葉駅で買ったコンビニおにぎりを食べました……。

銚子ゲージ溜まってきたな

 

乗換1分なのでダッシュ

 

総武本線成東駅に向かいます。

ここも意外と長い、50分の乗車です。

 

f:id:homu_neko:20211129035612p:plain

あさひ……

 

あさひ!?

 

???「芹沢あさひィィィィ!!!」

 

https://shinycolors.idolmaster.jp/pc/static/img/straylight/chara_asahi.png

 

シャニマスしようぜ!!!!

shinycolors.idolmaster.jp

 

ちなみに私は桑山千雪高山祐介担当です。

どっちも可愛いですよね。

 

芹沢あさひ「なんなんすかね、これ」

 

※友人氏もシャニマスのオタク

 

f:id:homu_neko:20211129040328p:plain

11時38分、成東駅に到着。

既に駅名標難読駅名が見えていますが……

ここからは東金線で移動します。

 

東金線外房線 成東→大網→上総一ノ宮

11時48分、成東駅を出発。

 

f:id:homu_neko:20211129040851p:plain

東金線は成東と大網を結ぶたった5駅の短い路線ですが、外房線総武本線の接続を担う重要なものです。

 

1970年代までは大網駅スイッチバックをしていたそうですよ。

現在は移転してなくなりました。

 

f:id:homu_neko:20211129041455p:plain

12時5分、大網駅に到着。

外房線ホームへ、3分で乗換です。

 

3分もあれば余裕だろ、と思うかもしれませんが、大網駅の構造がですね……

 

f:id:homu_neko:20211129041836p:plain

えぇ…(困惑)

 

一度地上に降りてもう一度登らないといけないので流石に急ぎましたね。

 

f:id:homu_neko:20211129042142p:plain

外房線ホームに移動。

逆方向の電車に乗れば外房線ですぐ本千葉に向かうことができます。

途中離脱するラストチャンス。ここを逃したら房総半島の下をぐるっと周ることになります。

 

まあ行くけどな!!!!!

そういう企画だし

 

12時8分、大網駅を出発。

 

f:id:homu_neko:20211129042648p:plain

あーあ、もう後戻りはできません。12時32分上総一ノ宮駅に到着。

大網~上総一ノ宮間は普通に町って感じです。上総一ノ宮までは結構人口多いんじゃないですかね。

 

で、この旅はここからが本番。何故かって?

同じ電車に3時間乗りっぱなし

 

上総一ノ宮から安房鴨川、館山を経由して君津までノンストップの区間です。

ヤバすぎ。始まってきた。

 

外房線内房線 上総一ノ宮→安房鴨川→館山→君津

Series-E131-R06.jpg
By MaedaAkihiko - Own work CC BY-SA 4.0, Link

 

12時40分、上総一ノ宮駅を出発。

 

そういえば今年の春に新車来ていたんですよね。

この時初めて乗りました。

 

まあ~~~車内が綺麗でしたね(それはそう)

2両編成なので座席確保できないと死にます

 

この区間は車窓に海が見えます。海と山って感じ。

 

f:id:homu_neko:20211129045246p:plain

約1時間後、安房鴨川駅に到着。

ここでは最後の長時間停車があります。

 

つまり飲み物を買うラストチャンスです。

てかこの後2時間飲み物買えません。

 

f:id:homu_neko:20211129131119p:plain

👍👍👍👍👍👍👍👍

2年連続安房鴨川で魔剤キメてるらしい

 

†魔剤†の力を借りてしまった……

ちなみにこの後寝ました

 

f:id:homu_neko:20211129131809p:plain

というわけで15時35分、君津駅に到着。

館山は停車時間が短かったので写真とかないです(は?)

 

山辺りを通過する時間を日没に合わせると、窓から夕陽を見ることができるのでおすすめです。

その代わりに帰りの車窓が犠牲になります(真っ暗)

 

f:id:homu_neko:20211129134215p:plain

てかこの区間だけで34駅もあります。しかも駅間が長い。

 

千葉県、でけぇ~~~~~

 

f:id:homu_neko:20211129134904p:plain

デカ過ぎんだろ...

チーバくんに分からされてしまった。

 

f:id:homu_neko:20211202021632p:plain

館山の横に伊東あるのウケるな。

 

内房線 君津→本千葉

15時39分、君津駅を出発。

ここまで来たらもうウイニングランです。

ゆーて40分以上ある。

 

途中の五井駅には小湊鉄道の車庫があり、古い気動車を見ることができます。

まあこの写真5年前のだから一部は消えてるかもしれん……

 

f:id:homu_neko:20211129135912p:plain

また、蘇我駅から京葉線に乗れるのでさらに距離を稼ぐことができます。

京葉線で差をつけろ

 

今回は千葉県限定なのでアレですが、制限なしなら京葉線総武線を利用して千葉県を脱出し、一筆書きで戻ってくることができます。

 

f:id:homu_neko:20211202021052p:plain

16時24分、本千葉駅に到着。

7時間33分の旅、終わりました。

 

失ったもの:150円(飲食代を除く)・7時間33分

得たもの:特になし

 

完走した感想ですが、マジでやることがないです。

途中ほぼ雀魂してました(照)

 

あとこれ初じゃないので(なんと2回目)車窓も知ってるんですよね。

感動することも特にないので、暇でした。

 

強いて言えばコンテンツ力が高いのでTwitterでいいねがもらえます😊

 

あとまあ創作のネタ出しとかにはいいかもしれないです。基本的にずっと座ってられるんで。

 

またやりたいですね!!!

(???????????????????)

恐怖!房総半島一周男

 

房総半島一周メイツいつでも募集中です(迫真)

 

ルートを提案してみる

流石に7時間33分をオススメすることはできないので、もっとマシなルートをいくつか置いておきます。

 

超初心者向け 総武・京葉ルート(43.2km)

f:id:homu_neko:20211204175418p:plain

取り敢えず大回り乗車をしてみたい人向けのルートです。

千葉→蘇我→南船橋西船橋→西千葉とか。

 

初心者向け 我孫子・成田ルート(104.2km)

f:id:homu_neko:20211204191526p:plain

西千葉→西船橋→新松戸→我孫子→成田→千葉というルートです。

我孫子駅のホームにある立ち食いそば屋が有名なので、昼に到着するように行ってみるといいのではないでしょうか。私は行ったことない

 

成田線(我孫子~成田)とか普段乗らないから面白いかもしれません。

 

中級者向け 上総・安房ルート(203.9km)

f:id:homu_neko:20211204192628p:plain

本編で紹介したルートの上の方を削ったものです。

鎌取→上総一ノ宮→安房鴨川→館山→蘇我といった感じ。

 

スタートが蘇我周辺になるので、千葉からだとちょっと面倒かも……

千葉スタートなら佐倉と成東を経由しましょう。

 

上級者向け マジで房総半島一周ルート(385.1km)

f:id:homu_neko:20211204193526p:plain

今まで紹介したすべてのルートを合わせた感じのヤバいやつ。

1駅間の切符という縛りをなくせば、西千葉から浜野までの切符を買うことで、成東→佐倉→千葉→蘇我→大網とさらに延長できると思います。

 

いつかやるわ。

 

超上級者向け 年越し最長大回りルート(1035.4km)

f:id:homu_neko:20211204195746p:plain

これは……何?

本編の趣旨から外れるのですが面白いので紹介しておきます。

 

切符というのは普通、当日のみ有効なので、始発から終電までに終わらない大回りはアウトなんですね。

ですが、切符は有効期限が切れても既に入場していて、途中下車していなければ目的地まで使える、というルールもあります。

この場合、当たり前ですが終電はどうしようもないので結局詰みます。

 

しかし、ある日だけはこの制限がなくなります。

それが晦日から元旦

 

終夜運転がある!!!

 

実質終電がないので、普通は不可能な距離の大回りが一年で唯一可能になります。

 

実際にやった人の記事を一つ挙げておきますね。

travel.spot-app.jp

 

流石にヤバすぎる。

 

ちなみにルートの詳細は、

北小金→(常磐線各駅停車)→柏→(常磐線快速)→友部→(水戸線)→小山→(両毛線)→高崎→(高崎線)→大宮→(川越線)→川越→(八高線)→八王子→(横浜線)→橋本→(相模線)→茅ヶ崎→(東海道線)→大船→(京浜東北根岸線)→鶴見→(鶴見線)→浜川崎→(南武支線)→尻手→(南武線)→川崎→(東海道線)→品川→(横須賀線)→武蔵小杉→(南武線)→立川→(中央線)→西国分寺→(武蔵野線)→武蔵浦和→(埼京線)→赤羽→(京浜東北線)→南浦和→(武蔵野線)→西船橋→(総武線各駅停車)→千葉→(成田線)→成田→(成田線)→松岸→(総武本線)→成東→(東金線)→大網→(外房線)→安房鴨川→(内房線)→蘇我→(京葉線)→東京→(総武線快速)→錦糸町→(中央・総武線各駅停車)→秋葉原→(山手線)→神田→(中央線快速)→新宿→(山手線)→日暮里→(常磐線快速)→松戸→(常磐線各駅停車)→馬橋

です。

 

????????????

 

あとがき

いかがでしたか?

この記事を読んだあなたは今すぐにでも房総半島を一周したくてうずうずしている頃でしょう。

うずうずしすぎて渦になったわね

 

f:id:homu_neko:20211202024805p:plain

明日はぼくつんの記事です。

去年の†裏†アドカレより面白い記事を書いてくれるらしいですよ^^

 

参考文献

omolite.webcrow.jp

 

www.jreast.co.jp

 

roote.ekispert.net

 

www.google.co.jp

ゲーム制作RTA ~自炊編~

この記事はCCS †裏† Advent Calendar 2020 16日目の記事です。

adventar.org

 

前日の記事

note.com

AY同時押しは抜ける👍

(押しすぎが許されないの厳しい)

 

一番すこなのは1925の衣装です。

 

 

はじめに

こんにちは。

某エモいミュージックがすこな人の記事を読んだ後、惚気が読めなかったほむです。

 

ほれけ?

ほっけ?

 

 

実は"CCS †自分語り† Advent Calendar 2020"になる予定だったのですが、黒歴史を特定されかねないので急遽内容を変えることに。

(8000字くらい書いたんだけどナァ)

 

オタクなので何かの怪文書を書いてもよかったのですが、怪文書力が足りず…

 

せや、ゲー制したろ!

時間ないし、なんか面白いからRTAや!!!

 

??????????????????????

 

レギュレーション

今回のレギュレーションはこちら。

  • プロジェクトを作成したタイミングでタイマースタート。
  • Releaseビルドが完了した時点でタイマーストップ。
  • 大学の授業・課題をするときのみタイマーの一時停止可。大学生なので。
  • 食事と睡眠? 知りません。
  • ゲームの内容については、CCSとして大学祭やコミケ等に出せるものなら何でもよい。CCSっぽいと👍

 

テーマ

CCSやその他サークルで自炊が流行っていますね。

 

遡ること数か月…

note.com

ぬる「フルーチェ作った」

ぼく「写真借りていい?」

ぬる「いいよ」

ぼく「やったぜ」

 

というわけでフルーチェを作るゲームを作ります。

が、名前をそのまま出すのはよろしくない気がするので「フ〇ーチェを作るゲーム」とします。

 

攻略チャート

素材ダウンロード

自分で用意するのが面倒な画像はいらすとやの素材を使用します。21点以上使用するとアウトなので注意。今回は2点。

写真はnullのブログから借ります。

 

タイトル画面

ロゴとか作ってると時間がかかるのでテキストで済ませます。時間があったらロゴも作ります。背景は適当な画像か単色。

 

シーンA(開封)

牛乳を開封します。力を入れ過ぎて牛乳パックを破壊したら大幅減点。

開封失敗したところでフルーチェの味は変わらないんだけども。

 

シーンB(混合)

スプーンでフルーチェを混ぜます。

早く混ぜすぎると飛び散って減点。

 

シーンC(冷却)

冷蔵庫で冷やします。

早く出しすぎると固まらず大幅減点。

冷やしすぎの場合も減点とします。

 

リザルト画面

3つのシーンの出来から1,000,000点満点で評価します。

理論値はとれるように調整します。

 

ほんへ

起床、そしてプロジェクト作成

7:30起床。健康お~たく!!!

(なお4時に寝た模様)

 

f:id:homu_neko:20201214075250p:plain

プロジェクト名は「Fruche」です。

 

f:id:homu_neko:20201214080010p:plain

対戦よろしくお願いします。

 

フルーチェBB(配布あり)

写真のままだと不便なので透過素材にします。

 

f:id:homu_neko:20201214080141p:plain

クリスタを起動。

このためだけに液タブを召喚しました。

 

f:id:homu_neko:20201214080749p:plain

「ちょうどフルーチェ濃厚ブルーベリーブドウ ギュッと濃い果実感BB切らしてた」

って人の為に配布しておきますね。

 

f:id:homu_neko:20201214081110p:plain

なんとなくルだけモザイクかけておきます。

えっちだ…///

 

牛乳パックも切り抜きます。

 

30分後…

 

f:id:homu_neko:20201214083143p:plain

切り抜きが完了。

「わぁ! 牛乳!」(CV.桑山 千雪)

 

f:id:homu_neko:20201215132717p:plain
手軽に虚無を摂取できるのでみんなも牛乳パック切り抜きましょう。

 

一々わふーちぇというのは面倒なので、フルーチェ1053味とします。

牛乳は4通り用意しました。

 

ここからはプログラムを書いていきます。

 

f:id:homu_neko:20201214084134p:plain

親の顔より見たシーン遷移を書きました。

 

f:id:homu_neko:20201214084820p:plain

ファイルは細かく分ける派なのでそれぞれのcppファイルを作成。

 

クソダサタイトル画面

ゲームタイトルと「はじめる」ボタンがあれば成立するので適当に配置します。

 

f:id:homu_neko:20201214085900p:plain

なんか寂しいですね。

 

取り敢えずフルーチェ置いとくか…

 

f:id:homu_neko:20201214090338p:plain

完 成 し ま し た

 

 

 

「はじめる」をクリックしたらシーンAに移るようにしておきます。

 

ちなみに今9:00くらいです。

1時間経過しました。

 

牛乳開封チャレンジ

パワーを表すゲージを用意します。

わざわざ画像を用意するのは面倒なのでプログラムで描画することにしました。

 

f:id:homu_neko:20201214094818p:plain

ゲージは1秒で往復します。

 

f:id:homu_neko:20201214095154p:plain

ゲージを赤で止めてしまうと開封失敗です(初見殺し)

壊れちゃった…私の牛乳…

けっこう難しい

 

オレンジ以外で止めた場合はこれを繰り返します(減点)

 

現在10:00前。

2時間が経過しました。

 

まぜる

nullリスペクトということで水色のスプーンの画像を用意しました。

 

f:id:homu_neko:20201214102044p:plain

 適当すぎて草

 

皿の中心とスプーン(カーソル)を結ぶ線分の回転角を毎フレーム計算し、フルーチェを回転させていきます。

 

「一定量混ぜるのにどれだけ時間がかかったか」ではなく「一定時間でどれだけ混ぜられたか」で評価します。

前述のとおり、回転が速すぎるとフルーチェが飛び散って減点になります。

 

と、ここで…

 

f:id:homu_neko:20201214105324p:plain

しっかりと1053をキメてきました。

1053するために時計の前で待機し1分弱のロス、これは痛いです。

 

f:id:homu_neko:20201214105820p:plain

混ぜるとちゃんと色が濃くなるようにしました(謎のこだわり)

また、混ぜずに放置すると少しずつ減速します(謎のこだわり2)

 

ここからはフルーチェの飛び散りを実装していきます。

 

f:id:homu_neko:20201214111402p:plain

それっぽいのでヨシ!

 

速度が分かるように模様を入れてもいいのですが、それだと親切すぎてクソゲー感がなくなるので無地でいきます。

 

ただいまの時刻は11:15です。

ちょっと時間かかりすぎちゃった…

 

固まってくれ

最後にフルーチェを冷蔵庫で冷やします。

nullのように全然固まってない方がコンテンツ力が高いのですが、ゲームなのでちゃんと冷やすことにします。

 

f:id:homu_neko:20201214111834p:plain

いらすとやから冷蔵庫の素材を借ります。

画像の高さ違うんだけど。キレそう。

 

f:id:homu_neko:20201214115013p:plain

冷蔵庫に入れた時間は10:23に設定されていますね。

30分後…ん?

 

f:id:homu_neko:20201214115058p:plain

1 0 5 3

 

10:53ちょうどに冷蔵庫から取り出します。

画像は若干フライングしました。

 

現在12時前です。

開始から4時間が経過。

オナカヘッタナァ…

 

1,000,000点のフルーチェ

さて、ここで重大な問題に気づいた。

 

nullの1053味のフルーチェは固まっていない…

つまり点数が高かろうが低かろうが、リザルト画面では固まってないフルーチェが表示されます。

ガバガバで草

 

あとは3つのシーンの評価から点数を計算して表示するだけです。

 

f:id:homu_neko:20201214122544p:plain

や っ た ぜ

コツをつかめば割と理論値出せます。

n回理論値寸踏んだ

 

また、オタクはツイッターが好きなので(適当)

 

f:id:homu_neko:20201214124106p:plain

f:id:homu_neko:20201214124018p:plain

ツイッター有機能をつけました。

ハッシュタグに〇が入ってると認識してもらえないのでアンダーバーにしました。

 

目指せ世界トレンド1位。

 

そして…

 

f:id:homu_neko:20201214124329p:plain

いざ、リリースビルド。

 

f:id:homu_neko:20201214124419p:plain

ここでタイマーストップ!!

 

f:id:homu_neko:20201214124451p:plain

 

記録:4時間44分44秒

(本当に偶然です)

 

書いたプログラムは計513行となりました。

 

プレイ動画

 

おわりに

いかがでしたか?

裏アドカレの方がCCSっぽい内容になっちゃいました、テヘッ

 

完走した感想ですが

クソゲー制作はあんまりしないのでなんか新鮮でした。

あと牛乳の透過が虚無。

 

みんなもゲー制RTAしような!!!

 

流行れ

 

フルーチェ狂信者に怒られるのが怖いので配布は無いです

OpenSiv3Dで全連鎖理論を考える

はじめに

この記事はCCS Advent Calendar 2020 13日目の記事です。

adventar.org

 

昨日のFidiaくんの記事です。

note.com

 

画像

ふえぇぇぇぇぇぇぇ(ようじょ)

 

こんにちは。CCSの清楚担当、ほむです。

 

「宇宙」に釣られてきた地学オタクとボルテ勢の方々、すみません。

大宇宙ステージはカス

 

昨年に引き続きぷよぷよの話をします。

Wikiみたいなカス記事じゃないので安心してください。

homu-neko.hatenablog.com

なんで今年はぷよぷよ学基礎B」じゃないの?????

 

なんでやろなぁ… 

 

申し訳程度のCCS要素として、OpenSiv3Dで連鎖のシミュレーターを作りました。

(大体500行)(えらい)

 

 

全連鎖理論とは

世界の均質化または未来と現在を等価にする操作のことです。

 

嘘です。

Tom氏が提唱したぷよぷよの理論のことです。

ch.nicovideo.jp

「超上級者向け」と書いてありますが、内容がとても難解なわけではありません(意味不明な箇所はある)

使いこなすのが難しいのです。

上記のTom氏のブログに書いてあることもこの下で解説していますので、読まなくても問題ありませんが、面白いので暇なときにでも読んで下さいね^^

 

まずは基本用語を確認していきましょう。

 

キーぷよの重要性

この連鎖を繋げるにはどうすればいいか。

f:id:homu_neko:20201117131715p:plain

1列目に赤を置けばいいですね。これにより、6列目の赤で発火すると土台に繋がり10連鎖になります。

このようなぷよをキーぷよといいます。 

 

逆に考えれば、キーぷよを置かなければ連鎖が止まる

 

 この場合、赤を置かなければ赤→黄→青→緑の4連鎖止まりになりますね。

 

大連鎖を組んでぶっ放すのはとても楽しいのですが、そんなに単純なゲームではないのです。

このゲームは割と理不尽なところがありまして、相手の2,3連鎖をも受けたらおじゃまぷよで埋まります。

こうなってしまうと発火までにかなり時間がかかりますよね?

その間に追撃されて負けます。オワッタ

 

相手が短めの連鎖(催促・潰し等)を撃ってきたときは(相手の連鎖数+1)連鎖を返してあげるのがもっとも効率がいいと言えますね。

※同時消しを考慮すると微妙に変わります。

 

こちらはリソースを残しつつ、相手に少量のおじゃまぷよを送ることができます。

つまり、キーぷよの有無で連鎖数を自在に操れる!

このテクニックを「キーぷよ外し」 といいます。

 

この考え方が全連鎖理論の基本となります。

ぷよぷよを始めたばかりだと連鎖をできるだけ多くするためにキーぷよを早めに置いてしまいがちですが、それをあえて後回しにすることで高度な中盤戦を繰り広げることができるというわけです。

 

さて、ここから全連鎖理論の話に入っていきますが……

Tom氏の定義には一部あいまいなところがあるので、この記事内ではそれを基にした独自の定義を用います。

 

領域と操作

定義する上で盤面を座標平面で表したいので、左下を点(1,1)、右上を点(6,13)と定めます。

x座標を列、y座標を段と呼ぶことが多いです。

 

確定領域

ぷよが置かれていない点(x,y)に色cのぷよを置くと2連鎖以上となる時、消えたぷよが初めに置かれていた領域を確定領域D(x,y,c)とします。

 

f:id:homu_neko:20201118002404p:plain

 先程の盤面をシミュレーターに入力しました。

 

f:id:homu_neko:20201118003707p:plain

確定領域D(6,8,r)が赤で塗られています。

これは点(6,8)に色r(赤)が置かれたときに2連鎖以上となり、赤で塗られた範囲のぷよが消えることを示しています。

横の数字は点数です。

 

D(4,7,y)D(6,8,r)の上にありますね?

確定領域が2種類あるようです。

こちらも見てみましょう。

 

f:id:homu_neko:20201118003728p:plain
D(4,7,y)は黄で妥協発火した時の確定領域です。

 

このように確定領域は一つの盤面において複数存在する場合があります。

確定領域の数が多いほど緊急発火性に優れていると言えるでしょう。

 

※Tom氏の確定領域の定義

「ある列の一番上のぷよを削除する」操作を任意回繰り返した後の盤面において、ある点にある色のぷよを置くと2連鎖以上となるとき、消えたぷよが初めに置かれていた領域を確定領域としています。多分。

本人が厳密に定義していない上に、感覚的なところがあるため別の定義を用いました。

 

未確定領域

確定領域ではない領域を未確定領域U(x,y,c)とします。

よって

D(x,y,c)+U(x,y,c)=(盤面全体)

となります。

 

f:id:homu_neko:20201118004428p:plain

未確定領域U(6,8,r)が緑で塗られています。

先程のキーぷよを外した盤面を入力すると、確定領域D(6,8,r)の下半分が未確定領域U(6,8,r)に移動したことが分かります。

 

ぷよが置かれていない領域も未確定領域に含みますがシミュレーター上では着色していません。

 

確定操作

未確定領域U(x,y,c)内の点がある操作により確定領域D(x,y,c)に移動した時、この操作を「確定操作」とします。

 

f:id:homu_neko:20201118004928p:plainf:id:homu_neko:20201118005123p:plain

(1,5)に赤を置くことで全てのぷよがU(2,6,g)からD(2,6,g)に移動しました。

この場合「点(1,5)に赤を置くこと」が確定操作となります。

 

未確定操作

確定領域D(x_1,y_1,c_1)内の点がある操作により未確定領域U(x_2,y_2,c_2)に移動して、

(x_1,y_1)=(x_2,y_2)」または「点(x_1,y_1) \in D(x_2,y_2,c_2)」の時、

この操作を「未確定操作」とします。

 

f:id:homu_neko:20201118005123p:plainf:id:homu_neko:20201118005607p:plain

 操作前の盤面(左)のD(2,6,g)の下部について考えます。

(1,6),(2,6)に赤、点(1,7)に緑を置いた盤面(右)に注目すると下部が未確定領域U(2,7,r)となっています。

また点(2,6) \in D(2,7,r)となり、未確定操作の条件を満たしていることが分かります。

よって「点(1,6),(2,6)に赤、点(1,7)に緑を置く」操作は未確定操作であると言えます。

 

ですが、下部を無視して赤→緑の2連鎖に注目すると、「点(1,7)に緑を置く」操作は確定操作にもなっているのです。

このように、一つのぷよを置く操作は確定操作かつ未確定操作である場合があります。

 

確定操作の不可逆性

確定操作と未確定操作を比較してみましょう。

 

確定操作は、要はキーぷよを置く操作のことです。

これは分かりやすいと思います。

 

逆に未確定操作は、置いたキーぷよを取り除く操作のことです。

1連鎖で消したり、同時消しを起こして止めたりする(キーぷよ飛ばし)方法がありますね。

 

そして、キーぷよは比較的高い場所に置かれていることが多いですね。

 

つまり……

未確定操作の方が圧倒的にコストが高い!

 

ですから、未確定操作の不要な盤面の方が理想的であると言えます。

もう一度確認しましょう。

未確定操作は、置いたキーぷよを取り除く操作のことです。

 

え、じゃあ…

キーぷよ置かなければいいのでは……?

 

なるほどな、これが世界の均質化で未来と現在を等価にする操作か……

 

弥生時代

f:id:homu_neko:20191201165805p:plainf:id:homu_neko:20201118013220p:plain

弥生時代とは、高床式倉庫に見える土台である。

え、見えないって???

(別名:卑弥呼)(???????????????????) 

 

4色の座布団を下2列に敷き詰めた土台です。

とても単純ですがツモ制約等で組むのが難しい形です。

 

f:id:homu_neko:20201118065222p:plain

弥生時代の一番分かりやすい繋ぎ方がこれ(多分)

最大の確定領域はD(5,3,g),D(6,3,g)ですが、D(1,3,y)の緊急発火点もあります。

弥生時代の強みは組みにくさ相応の受けの広さなのです。

 

弥生時代弥生時代やほかの土台

f:id:homu_neko:20201118062642p:plain

(Tom氏の配信より)

 

Tom氏「うん?弥生じd弥生じゃねぇこれ。これ弥生じゃねぇ。なんですけど、まあ、それもいいんですよね。それも含めて弥生時代

ぼく「???????????????????????????」

 

つまり弥生時代は全てである…

 

 

弥生時代の派生も弥生時代である」的なことなのでしょう。知らんけど。

 

弥生時代は受けが広いため多くの派生があります。

ツモが悪い場合、純弥生時代(勝手に命名)を無理やり組むよりも派生形にした方が強くなる場合が多いと思います。

純正弥生時代になったらラッキーって感じで。ラッキー…?

 

未確定土台

f:id:homu_neko:20201118013220p:plain

弥生時代をよく見てみましょう。

なんと、確定領域がありません! !

このような土台を「未確定土台」と呼ぶことにしましょう。

今決めました。

 

第一折り返しについても、これに含むとしましょう。

 

f:id:homu_neko:20201118070753p:plainf:id:homu_neko:20201118070757p:plain

fron積み(左)やGTR(右) は確定領域が存在します。

つまり未確定土台ではありません。

この2つの土台は、どちらも2連鎖が確定しています。

 

上の図では省略しましたが、当然この先に連鎖尾が繋がっています。

連鎖尾というのは普通、確定領域となっているので、土台から連鎖尾まですべてが確定領域となっているのです。

 

このような土台は構築しやすく、暴発も起きにくい、連鎖尾も分かりやすいものが多いです(ぷよぷよを始めたばかりの人は取り敢えずGTR覚えておけばいいみたいなとこあるよね)

 

しかし、連鎖数を自在に操ることはできません。半分くらいは確定してしまっている場合が殆どです。土台の発火点の上でキーぷよ外しをする必要があります。

 

なんて自由度が低いんだ!!

(筆者はめちゃくちゃfron積みやGTRを使います)

 

全連鎖理論に基づくとよろしくない形であるというだけです。

ぷよぷよというゲームにおいては強いですよ。

 

f:id:homu_neko:20201118073510p:plain

その他の未確定土台の代表例としてL字土台(別名:だぁ積み・スーパー耳かき連鎖・丸め込み)を挙げておきます。

なんとなく分かってきたのではないでしょうか?

 

未確定土台はL字や座布団のような3連結の組み合わせ方が重要なのです!!

 

宇宙

宇宙って、何だろうね。

 

 

 

f:id:homu_neko:20201118200520p:plain

これが宇宙や…

 

宇宙猫になりました…(*´Д`*) | 二宮和也くん応援日記☆ゆる〜く好きを叫ぶブログ

いや、分からんよ、この土台。

なんやねんこれ……

※この記事を書くためにめちゃくちゃ練習しましたが、分かりません

※誰にも分かりません

 

f:id:homu_neko:20201118201835p:plain

宇宙はTom氏が考案した土台(いつもの)で、全連鎖理論を折り返しに適用した理論上最強といわれる土台です。

理論上最強ですが、考案した本人も難しすぎてこれよりは簡単な弥生時代にシフトしていったらしい……えぇ(困惑)

 

宇宙の研究はぷよらーの間でも結構活発に行われています。

そもそも「宇宙」という名前は多分自由度が超高いことを表していると思うので(所説)、それはそうって感じ。

 

Tom氏はこう言っています。

「宇宙はキーぷよを外していないと意味がない」と。

 

f:id:homu_neko:20201118202342p:plain

土台完成直後にキーぷよ置いて確定させちゃいけないよ、ってことです。

これはあんまりよろしくない例(でもこうしちゃう)

 

宇宙が理論上最強と言われるのは、折り返しのすべてのキーぷよを外せて、かつその受け入れ範囲が3列あるから。

 

Tom氏曰く「組む難易度は高いが、それは土台としてのデメリットではない」とのこと。つまりプレイヤーの実力不足というわけ。

実力不足ですみません。

 

宇宙の理想形は宇宙であるか

見出しの時点でちょっと意味が分かりませんね。

 

「宇宙は柔軟性が高いのが強みなのだから、宇宙の理想形(先ほど紹介)に固執してしまうこと自体が宇宙を弱くする」という意味です。

 

つまり、無理やり理想形にするなら派生しろ、と。

ちぎりも増えて時間がかかりますし、宇宙のそもそもの弱点「速攻に弱い」をカバーできなくなります。

 

「この形を目指す!」という意識を捨てなければ宇宙に到達することはできないのです。

 

月の満ち欠け

f:id:homu_neko:20201118212740p:plain

宇宙を組むとき、大抵の場合左下のL字と点(3,4)は同色となります。

この点(3,4)を含む連結部分を「月」と呼び、1連結(1個)の場合「新月」、3連結の場合「満月」と呼びます。

上の状態は新月です。

 

f:id:homu_neko:20201118214244p:plainf:id:homu_neko:20201118214258p:plainf:id:homu_neko:20201118214341p:plain

 満月はこの3通り。

で、新月と満月どっちが強いのかという話ですが……

 

満月は中盤戦を攻撃的なものに変化させるのです。

乱戦開始や……

 

あくまでも試合展開を決めるものであって優劣はつけられないですね。

 

なぜ満月にすると攻撃的になるのか、と言いますと…

そもそも新月のままだったら点[tex(3,4)]のぷよは中盤で利用されないわけですから、中盤的にはゴミぷよになってしまうことになります。

つまりほぼ確実に左下のL字に対応したキーぷよであることが分かります。

それにより確定領域が生まれますね。

 

それに対し満月の場合は、左下のL字に対応したキーぷよかもしれないし、そうじゃないかもしれないというあいまいな状態が生まれます。

 

f:id:homu_neko:20201118220601p:plainf:id:homu_neko:20201118220754p:plainf:id:homu_neko:20201118220658p:plain

2ダブ(左)、発火点(中)、キーぷよ(右)になりました。

よって相手は何をされるか不確定な状態で中盤を戦うことになります。

だから攻撃的な中盤戦になるというわけです。

新月を満月にするという操作も、自由度をさらに上げているわけです。

 

「宇宙が人類に課す最も困難な課題は月」とも言われています。

月を制する者が宇宙を制するかもしれん…

 

マクロコスモス

 宇宙には無限の広がりがあるのですよ……

 

宇宙は宇宙としては狭すぎる……

座布団から連鎖の流れを感じたらそれも宇宙……

太陽系のその先を見ることで宇宙を知るのだ……

 

今これを読んでいるあなたも宇宙の一部です。

そういうことです(????)

 

Tom氏が考えた3つの形を見ていきましょう。

 

カシオペア

f:id:homu_neko:20201119001949p:plainf:id:homu_neko:20201119002012p:plain

縦3の存在感が凄いですね。未確定土台です(いつもの)

 

f:id:homu_neko:20201119002606p:plainf:id:homu_neko:20201119002616p:plain

このようにキーぷよを乗せることでD(2,5,b)の巨大な本線が完成します。

鶴亀を利用した連鎖尾ですね。

 

f:id:homu_neko:20201119003209p:plainf:id:homu_neko:20201119003221p:plain

青の間にぷよを置かない場合、このようなキーぷよの置き方があります。

カシオペア=ヘルファイアですね(つよそう)

 

友達減るファイア

 

アンドロメダ

f:id:homu_neko:20201119010402p:plainf:id:homu_neko:20201119010413p:plain

未確定土台です(知ってた)

 

f:id:homu_neko:20201119011231p:plainf:id:homu_neko:20201119011244p:plain

 キーぷよをこのように置くと本線D(2,5,b)と緊急発火の4連鎖D(3,5,r)が現れます。

つよつよだ……

緊急発火後も宇宙は壊れないのがポイント高いですね。

 

(5,5),(6,5)のキーぷよを外すと緊急発火の連鎖数を減らすことができます。

 

f:id:homu_neko:20201119012305p:plainf:id:homu_neko:20201119012318p:plain

(5,6),(6,6)を緑に変え、点(5,7),(6,7)に赤を置くと本線D(2,5,b)を維持しつつD(3,5,r)を大きくできますね。

 

ベテルギウス

f:id:homu_neko:20201119013528p:plainf:id:homu_neko:20201119013543p:plain

曲芸の領域。色制約厳しすぎィ!!

未確定土台です(ここまでテンプレ)

 

f:id:homu_neko:20201119013840p:plainf:id:homu_neko:20201119013912p:plain

????????????????????

 

いや分かるんだけどさぁ、鶴亀さぁ……

 

第N次元天蓋

Tom氏「数年ぶりに最強の土台を思いついてしまった・・・これは間違いなく流行る」

ぼく「???????????????????????」

 

N次元天蓋とは、N個の「次元」と1個の「天蓋」「月」「橋」をもつ土台のこと。

Tom氏曰く「宇宙の実戦投入モデル」

目で見てもらったほうが早いので紹介していきます。

ちなみに1 \leqq N \leqq 7です。

 

第1次元天蓋

f:id:homu_neko:20201118152019p:plainf:id:homu_neko:20201118152035p:plain

このような形が第N次元天蓋の基本形、第1次元天蓋です。

もはや当たり前かのように未確定土台。

 

用語の説明をしていきましょう。

 

「次元」:L字のこと。画像の赤ぷよ。

「天蓋」:次元の上に置かれた座布団のこと。画像の上側の黄ぷよ。

「月」:次元と天蓋の間を埋めるぷよのこと。画像の緑ぷよ。

「橋」:次元連鎖尾の間にある座布団のこと。画像の下側の黄ぷよ。

 

この「月」は宇宙の「月」と同様に「新月」か「満月」を考えることができます。

 

第2n次元天蓋

f:id:homu_neko:20201118160455p:plain
第4次元天蓋を例に考えて見ましょう。 

別に2でも6でもいいんだけども。

 

f:id:homu_neko:20201118160523p:plainf:id:homu_neko:20201118160537p:plain

次元と天蓋の色次第ではありますが、この配色である場合はD(4,3,g)が存在します。

連鎖尾をもう少し増やすと、点(4,3)にはぷよが置かれている場合が多いと思いますが、それでもD(4,4,r)があります。

 

ここで重要なのが月です。

2n次元天蓋(次元が偶数個)では月は必ず盤面の外側にあるため、必ず新月となります。

 

第2n+1次元天蓋

f:id:homu_neko:20201119021400p:plain

例として第5次元天蓋を用意しました。

 

f:id:homu_neko:20201119021553p:plainf:id:homu_neko:20201119021607p:plain

 この配色ではD(4,3,g)が存在します。

また点(4,3)にぷよが置かれている時はD(4,4,r)が存在します。

このD(4,4,r)は実質本線ですね。

 

同様に月に注目してみましょう。

2n+1次元天蓋(次元が偶数個)では月は必ず盤面の内側にあるため、第2n次元天蓋と異なり満月になることができます。

 

もう一つの月

宇宙と第N次元天蓋(4 \leqq N \leqq 7)を比較してみましょう。

 

f:id:homu_neko:20201118212740p:plainf:id:homu_neko:20201119028048p:plain

宇宙(左)と第4次元天蓋(右)です。

 

一緒やんけ……

 

第3次元天蓋の方が例として適切では?と思ったそこのアナタ!

そうじゃないんだよなぁ……

 

宇宙の「月」とは何だったか?

(3,4)を含む連結でしたね?

 

ん?

 

N次元天蓋には月が2つあるな???????

 

N次元天蓋は(3 \leqq N \leqq 7)において宇宙の「月」を含むのです。

そして(4 \leqq N \leqq 7)においては、その「月は」必ず満月となります。

(N=3)の時は新月または満月となります。

 

紛らわしいので、2つの「月」を定義します。

 

「真の月」:宇宙における「月」。

「偽の月」:第N次元天蓋における「月」。

 

この2つはどちらも新月・満月の状態を持ち、それはNの場合分けで考えることができます。

 

真の月は

1 \leqq N \leqq 2のとき、存在しない。

N=3のとき、新月または満月。

4 \leqq N \leqq 7のとき、満月。

 

偽の月は

N=1のとき、新月

N=2nのとき、新月

N=2n+1のとき、新月または満月。

 

真の月が存在しないという謎現象が起きていますが、許してください。

あとで偽の月も消えるので(?????????????)

 

真の月が満月であるとき、中盤戦がより攻撃的になることは先ほど示しました。

では偽の月にも左右されるのか、考えていきましょう。

 

新月M_N、満月をM_F、どちらか不確定な状態をM_U、月がない状態をM_\phiとします。

また真の月の状態を表す関数をt(N)、偽の月の状態を表す関数をf(N)とおきます。

 

 {t(N)=\begin{cases}M_\phi (1 \leqq N \leqq 2) \\M_U (N=3) \\M_F (4 \leqq N \leqq 7)\end{cases}}\\{f(N)=\begin{cases}M_N (N=1) \\M_N (N=2n) \\M_U (N=2n+1)(1 \leqq n \leqq 3)\end{cases}}

 

t(N)f(N)の組を考えます。

{(t(N),f(N))=\begin{cases}(M_\phi,M_N) (N=1) \\(M_\phi,M_N) (N=2) \\(M_U,M_U) (N=3) \\(M_F,M_N)(N=4) \\(M_F,M_U)(N=5) \\(M_F,M_N)(N=6) \\(M_F,M_U)(N=7)\end{cases}}

 

(t(3),f(3))=(M_U,M_U)のみ2つの月の状態が同じものとなっています。

どちらも不確定な状態で強そう!

と思うかもしれませんが、形を思い出してください。

そもそも第3次元天蓋においては真の月と偽の月が一致します。 

 

ですから、攻撃的かという観点では満月の状態の宇宙とさほど変わらないと考えられます。

 

N=3の場合を除いて、2つの月がどちらも満月になる場合を考えていきます。

プレイヤーの操作次第でM_UM_FまたはM_Nに変化させることができるので、N=5またはN=7のときのみ、(t(N),f(N))=(M_F,M_F)となることが分かります。

 

満月が2つ!つよそう!!!!!!!

(わからん)

(有識者検証してくれ)

 

 まあツモ順にも影響されてしまうので理想の第N次元天蓋を組むのは難しいでしょうね。

実力不足~~~~~~

 

宇宙の拡張

 Tom氏により第N次元天蓋の派生として紹介されているものです。

 

陰陽・陽陰

f:id:homu_neko:20201212103524p:plainf:id:homu_neko:20201212103538p:plain

天蓋を置かずにL字を2つずつ置いています。

左の形を「第1次元陰陽」、右の形を「第1次元陽陰」といいます。

 

月食

f:id:homu_neko:20201212104258p:plain

新月が連鎖尾のぷよと同じ色にしたこの形を「第1次元天蓋月食」といいます。

月が2段目にないといけないので、月食の場合必ず次元は1つとなります。

 

命名

積み重ねた順にパーツ名を並べ、月食ならば最後に「月食」とつけるだけです。

 

f:id:homu_neko:20201212104704p:plainf:id:homu_neko:20201212104714p:plain

 左の土台は、次元が4つで天蓋、その上に陽陰なので「第4次元天蓋陽陰」。

右の土台は、次元が1つで、その上に陰陽と天蓋が3つ、そして月食なので「第1次元陰陽天蓋天蓋天蓋月食」。

 

f:id:homu_neko:20201212105245p:plain

第1次元陽陰天蓋陰陽陽陰天蓋天蓋陽陰!!

※Tom氏のツイ―トより

(なんと、死んでいる)

 

練習問題です。

 

f:id:homu_neko:20201212105850p:plainf:id:homu_neko:20201212105745p:plain

左:第3次元天蓋陰陽陰陽陽陰陰陽

右:第1次元天蓋天蓋天蓋天蓋天蓋天蓋天蓋天蓋天蓋天蓋天蓋月食

(どっちも死んでるんだよなぁ)

 

おわりに

このシミュレーターをダウンロードしたい方はこちらからどうぞ。

このアドカレ書くためだけに突貫工事したので操作方法もめちゃくちゃ適当です。

(リンク切れてたらごめんね)

drive.google.com

 

会室でぷよぷよしてぇ~~~~~

参考文献

ch.nicovideo.jp

 

ch.nicovideo.jp

puyo-camp.jp

puyo-euphonic.com

 

 

おまけ

*1

カロリーゼロのZONe登場!デジタルパフォーマンスエナジー「ZONe Unlimited ZERO Ver.1.0.0」発売!  (2020年12月1日) - エキサイトニュース

 

新作おいしかったです。

*1:ゲーミング魔剤