経験値がスピーディーにたくさん欲しいのでサボテンを焼く話

  • Java版ではサボテンをかまどで焼いた時の経験値が1である

    • 金鉱石と同等
  • サボテンは隣にブロックがあるとアイテム化する

    • これを利用して成長したら自動でアイテム化するようにできる
  • サボテンはは16ランダムティックで1ブロック伸びる

    • ランダムティックとは1ゲームティックごとに16×16×16のセクションごとに3ブロックが選ばれ実行されるもの
    • ゲームティックは1/20秒
    • 3はgameruleのrandomTickSpeedで定められる定数
    • つまりゲームティックごとに3/4096の確率でランダムティックが発生し、サボテンが1/16段階成長するのだから1ゲームティックあたり3/65536個のサボテンが手に入る
  • かまどの精錬は1個あたり10秒掛かる

    • つまり200ゲームティックである
    • 200ゲームティックで1つのサボテンから600/65536、およそ0.0092個のサボテンが得られる
  • ところで1フロアで24個のサボテンの自動収穫ができるユニットを作った。これは任意の個数積み重ねることができる

    • image
    • これを何段積み重ねるかを考えるためにこのメモを始めた
    • 5段積み重ねると200ゲームティックあたり1.099個のサボテンが供給されるようになり、ボトルネックがサボテンではなく燃料供給に変わる
  • 燃料について

    • 溶岩バケツは1000秒持続する
      • 16分40秒
    • 石炭や木炭は80秒
      • 64個スタックすれば5120秒
      • これは85分
      • つまり1時間に1回搬入が必要
    • 石炭ブロックは800秒
      • 9石炭で作れて10倍の時間持続するので石炭はブロックにして方から使うべき
      • これを使うなら14時間に1回の搬入
    • 人間による搬入がボトルネックになるので自動化したい
      • ラージチェストに54スタックの木炭を入れたら76.8時間持つ
      • これは3.2日なのでラージチェストを2つ用意すれば1週間放置できる
  • 追加で考察すべきこと

    • 経験値効率
      • 対時間
        • 10秒で1EXP
        • ゾンビなどは5EXP
        • ブレイズは10EXP
      • さすがに経験値トラップと比べると見劣りしますね
      • と思ってたけど重要な差としてこちらのシステムはプレイヤーがシミュレーション範囲内に入れば経験値が溜まるので、建築とか農業とかして遊ぶことができる
    • 目的のレベルを超えてしまうと効率が悪い
      • 目的は経験値ではなくレベル
      • レベル16までは17EXPで1レベル
      • 17になるには20EXP、以降レベルが上がるごとに必要EXPが3増える
      • 32以降は増分が7になる
      • 具体例
        • レベル30から31に上がるには62EXP必要だが、この62EXPでレベル0から3.6になる。
        • なので目的レベルが30なのに経験値を取りすぎて31になってしまった場合、それはレベルを2.6損したことになる。
      • かまどから自動で取り出さなければ64EXPで止まるので細かく調整できる
        • しかし640秒で止まるので1個では10分しか放置できない
        • 1日放置するならかまどが135個必要
      • 下にホッパーを置くのはどうか
        • 5スタックまで吸い出されるので全体で6スタックまで動く
          • これで1時間程度もつ
          • 1日持たせるにはこれを23個…
        • 384EXPなので0からレベル20までいく
      • チェストを置いて全体で28スタックにする
        • 1792EXPなので0からレベル40まで行く
          • うーむ、ちょっとオーバーキル
          • チェストを一部埋めておくか?
          • レベル30を目標にするなら13スタック
        • これが埋まるのに5時間程度
          • やっぱり1日放置するならかまど複数設置はマストか
          • 13スタックでレベル30まで上げる装置なら埋まるのに2.3時間
        • パイプを使ったパラレルかまどは一度試作したけど「燃料はあるがサボテンがない」「サボテンがあるが燃料がない」のミスマッチが発生したので工夫が必要
  • かまどにパイプで上からサボテンが入るが上下方向の分配優先順位が低いのでやりたくない

  • 同じパイプに燃料とサボテンを流すのもやりたくない

  • そうなるとかまどをびっしり並べた場合両脇にパイプが必要になって使いにくい…

    • いや?びっしり並べるのをやめるべきか
    • 側面を開けて並べると前面が隠れるので状態が分かりにくい
    • 1個置きがよい
  • ホッパーやチェストを下に置くタイプはその内容物を取り去る仕組みが必要

    • 少なくともかまどの並んでるフロアの下3マスにメンテナンス用の空間が必要
    • パイプで吸い取った場合、経験値はどうなる?
  • ホッパーだけ置いた状態で運用してみて

    • まず名前をつけるべきだな、1スタックで止まる単独のかまどをV1、ホッパーのある6スタックで止まるものをV6と呼ぶことにする
    • V6か上の1スタックを取ったとき、下のホッパーを空にしないとV1相当に変わってしまう
      • この作業がかなり手間
  • 吸い出しパイプをスイッチオンして自動で吸い出す案

    • 止め忘れそう
  • 他のプレイヤー向けに提供する場合

    • V1以外は操作が複雑すぎる

2021-09-23

  • どうしようか悩んで放置してる間にも便利に使ってもらってるらしくて燃料ラインが増強されていた
  • そこでまずはパイプの不味いところを直す
    • サボテンのパイプと燃料のパイプが逆向きなのを直す
    • サボテンが上から搬入なのを横からに直す
    • これで端から順に流し込むことができるので、反対の端は溢れた時と判断できる
    • V1を8つ並べて、端で下に曲げて折り返し
    • この先をV54に繋げる
      • よっぽど放置しない限りこれがいっぱいになることはない
      • 1つで10時間
  • サボテンが1ラージチェスト溜まると「たくさんだ」と思いがち
    • かまど一つで10分強で1スタック焼ける、10時間。
    • かまどを10個並べたら1時間で消費しちゃう
    • 一番最初にするべきことはかまどをどうするかではなく、十分蓄積できる仕組みづくりだった