Final Fantasy XVI

PS5、4k 60Hz YUV422、5.1ch DTS:X Ultraの環境でプレイ。
プレイ時間はサブクエストをすべて消化した状態で51時間。スコアアタック、タイムアタック系のやりこみはしていない。(トロコンもしてない)
各スクリーンショットは© 2023 SQUARE ENIX CO., LTD. All Rights Reserved.である。

全体的な感想

今までのFFらしくはないが、やっぱり良くも悪くもFFだったという感想。
アクションメインの戦闘システムや、スコアアタックなどの今までにはなかった遊びを入れている(逆に妙に気合の入ったミニゲームは無い)などの目新しさがあるものの、遊びに幅がないところは今まで通り。(直前まで遊びに幅がありすぎるティアキンをしていたせいもある)

これはRPGに求めるものが『旅』である自分にとっては、NotForMe的な部分も多かったかもしれない。

FF16は一人で強大な戦力である主人公が、いわば特殊部隊扱いで各地の戦闘地域にデプロイされる形で話が進むため、遠くの地域に設定された目的のために旅をするという感覚にはならない。常にターゲットデストロイが目的であり、何か工夫して裏技的にクリアするという余地はなく、決まった敵を適切に処理するという意味でフィールドはちょっと広いインスタンスダンジョンのようだ。枝道が多少あるが決まったルートをたどり、要所のボスを倒す流れである。ちなみに、雑魚は何グループかまとめて倒すこともできる。FF14で慣れた作業である。

そういうわけで、いまのところ今年のRPGの中で順位をつけると『Hogwarts Legacy > ゼルダの伝説 ToK >>FF16』である。
以下、よかったところと気になったところを並べる。

よかったところ

グラフィックがきれい

直前までやってたのがティアキンだったのもあるが、高解像度のテクスチャと魔法のエフェクトの美しさが際立って印象的。特にフェニックスの炎やイフリートの炎など、ド派手な召喚戦は見てるだけで楽しい。

音楽がよい

祖堅のインタビューで『盛り上がりを予想しながらBGMをループしてる』ようなことを言っていた記憶がある。プレイ中はジャスト回避に集中するせいでそれどころではないのだが、アビリティ撃っている間などのつかの間の休憩時間にふと気が付く神曲。

文明レベルに一貫性がある世界が好き

FFで特に説明なく登場する『銃存在してるけど剣と魔法で対抗できるよ』的なご都合っぽい奴が嫌いなのだが、投石機や帆船などの火薬以前の世界なFF16では結局最後まで実際に飛行する飛空艇は登場しなかったし、銃は出なかったし、どこまでも筋力と魔力で何とかする世界で好感が持てた。たまにビーム兵器が出てくるが、古代遺跡の遺物扱いでどこでもは出てこないし、鉄巨人みたいなのもウロチョロしてないので夜も安心である。

そんな細かい戦闘をしているところに地形を変えるほどのパワーを持つ巨大な召喚獣が出てくるのだが、当然のように人の命も軽く、プラスポイントである。

そういえば、どこかで奴隷身分のベアラーに対する差別が現実のメタファーなのに雑に処理して云々する言説を見たが、様々なサブクエで手の届く範囲を救っていこうとする姿を見ればそこまで気にならない。それは端的に力不足の表現であるし、そもそも意識を変えるような正論はまともに国家が機能しているから吐ける言葉であって、そうではない時代ならそういう扱いしかできないのではないかと思う。

気になったところ

ストーリー後半でダレる

FF15でもあった『前半楽しかったけど、後半はだるい』がまた発生した。51時間の短時間プレイで発生するとは思わなかった。
ある拠点を舞台としたメインストーリーが一段落すると、いくつかサブクエストが発生する、みたいな流れをあちこちで繰り返すため、ストーリーが進むにつれて進行スピードが落ちる。
オープンワールド慣れしすぎているせいかもしれないが、初めからクエストは受注できるほうが好みである。あと、FF14みたいなMMOじゃないので受注ではなく強制巻き込まれ系のクエストもあっていいと思う。

フォトモードがいまいち

パンできる距離が短く、クライヴ君の周りをぐるぐる回ることしかできない。これはほんと何とかしてほしい。

あと直接関係ないが、グラフィックそのものはきれいなのに、ゴースト・オブ・ツシマみたいにスクリーンショットを撮りまくりたいという気持ちになる景色が少ない。
これなんでかなーって思うのだが、製作者の意図を感じられるフォトスポットに興味がないからなのかもしれない。俺は自然を撮影したいんだ。テーマパークを撮影したいんじゃない。そういう気持ち。

ムービーが長い

コントローラがスリープに入りそうになってた。アークナイツやブルアカの周回してたわ。

ホグワーツ・レガシーとMOD

ある程度クリアしたのでお勧めのModについて書く。あんまり美少女Modない。エロもない。
ここには載せてないがハーマイオニーのAI音声とかはあるので、なりきりはできそうである。

スリザリン談話室の暖炉。HDRをSDRに変換しているので全体的にくすんで見える。

UIを日本語表記のまま、日本語字幕で英語音声化

字幕派なので。
exeファイルをバイナリエディタで編集することで可能。
Modで実施するとUIなどの言語も英語などになってしまうので、「UIは日本語のまま、音声だけ英語にして、日本語字幕を付けたい」のであれば、これが一番簡単である。
ただし、プリレンダリングのムービーは日本語音声になる。

実施方法はこちらを参考にしてほしい。

FPS向上、パフォーマンス向上

Ascendio II.I – FPS Hotfix and Engine Tweaks for Hogwarts Legacy

インストーラ形式で適用できて便利。Unreal Engineのパラメータを調整するものなのでグラボによっては意味がない場合もあるが、とりあえずやっとけ感が強い。

DLSS Update (Better Performance and Reduced Ghosting)

ホグワーツ・レガシー同梱のDLSSのバージョンが低いため、よりパフォーマンスに優れた最新バージョンに入れ替えるもの。一部のグラフィックModは最新DLSSを前提としているものもある。置くだけなので導入も簡単。

ツール関係

Hogwarts Mod Merger

ホグワーツ・レガシーでは内部データ管理にsqliteを使っていて、このDBを編集するModを複数導入したいときは、変更点のマージが必要となる。それをほぼ自動でしてくれるツール。
(実際には古いデータや衝突したデータを手っ取り早く削除していることが多い)

パっと見わかりにくいのだが、赤い「!」が表示されているところをクリックすると、サクッといい感じにしてくれる。消えて困るところは個別で修正することもできる。

Blueprint Apparate Modloader

Modローダー。これ自身には機能はなく、ほかのModを読み込む際に使う。
Unreal Engine 4/5 Scripting Systemにも同梱されているが、こちらのほうが安定性が高い時がある。

Unreal Engine 4/5 Scripting System

UE4SS。なるべく最新版を使う。Blueprint Modloader機能も持つスクリプトシステム。キー入力をいじるときにはたいてい使う気がする。

前述のBlueprint Apparate Modloaderと機能が重複しているが、両方に認識されるようなModの入れ方をしていなければ問題はなさそう。

UI

ここからは好み。

Japanese Font Replace:ダサい日本語フォントを入れ替える。

Dot Reticle:でかい照準をドットに変更する。

Better Broom Controls:最初入れていたが、無いほうが箒レースに勝てる気がする。

Smaller UI:画面上のUIを小さくする。副作用として、星座台のパズルが合わなくなる現象が発生するが、ガチャガチャしてるとシャキーンとなるのでとりあえずゲームは進む。

ゲームシステム

Silencio – Floo Lady Silencer:煙突飛行粉の人、うるさいので黙らせる。

Lore Friendly Apparition:要BP。映画などで渦を巻いて消えるワープ魔法があったが、あれを再現する。めちゃくちゃ便利かつハリポタ感爆上がりなのでプレイヤーは全員入れたほうがいい。

Skip Merlin Trial Cinematics:要BP。マーリンの試練をクリアしたときに流れるアニメーションをスキップできるようになる。便利。

Unlock Gear Limit Capacity:Modマージが必要。荷物の最大所持量を超えて持てるようにする。あちこちで拾う装備でインベントリが爆発しがちなゲームのくせに、持てる量が少なくてストレスなので。これでいちいちホグズミードに行かなくて済む。

ALT-XP:Modマージが必要かつ、導入後はNewGameを推奨。経験値テーブルを変更する。やたらとレベルが上がりやすいゲームなので、レベルアップに必要な経験値量を増やし、イベントや探索で得られる経験値を減らす方向で遊んでいた。後述のKillerXPと組み合わせて使うと、戦闘の意義も高まるのでお勧め。

KillerXP:要BP。敵を倒すと経験値を得られるようになる。敵グループを全滅させるとボーナスが入ったりする。ALT-XPで厳しい設定にしているとすべてのミッションを終えてもLv40に達しない場合があるので、これの併用が推奨される。

Harder Mode(s):Modマージが必要かつ、導入後はNewGameを推奨。様々な制約をつけてゲーム難易度を上げる。おすすめは以下。

  • Cooldown Ancient Magic finisher on boss
  • Costs Increase
  • Gear Rarity
  • Less OP stealth
  • Longer Hopping Pots
  • Max NPC Level Scaling
  • Maximum Potions Capacity
  • Moonstone Balance
  • Potions Crafting Cost Increased

正直ここまでやっても「ちょっとむずかしいかな」ぐらいの感覚(個人の感想)。

More Aggressive Enemies:Modマージが必要。敵の強さではなく、攻撃頻度を上げる。複数の敵に囲まれることが多いので、これを入れるだけでだいぶ戦闘が難しくなる。プロテゴして、ステューピファイしてるとその間に攻撃くらって死ぬとかざらにあるので、反撃タイミングを見極める目押しゲーになる。

ノーマルやハードの戦闘がぬるいと感じる人向け。
Harder Modeで敵のレベルスケーリングを同期させたうえでやると、戦闘でめっちゃ死ぬ。

グラフィック

Ultra Plus Visuals and Performance Fixes:Reshadeを利用しない、グラフィック調整Mod。Unreal Engineのパラメータを駆使してグラフィックを最適化する。
RTX 3080 Ti 12GBで、4K HDR環境の場合、Full RTぐらいするとFPSが30を切ってしまうので、適用した後でRT Shadowを切るとかうまいこと調整が必要となる。

美少女

Custom female face14 model:モデルを入れ替えて美少女顔を追加する。

Lunafreya hair:FF15のルナフレアの髪型モデルを追加する。

ターフェルシュピッツのレシピ

ボケ画像で済まない。
牛の塊肉を買ってきた場合、自分の中での選択肢としては3つある。

  • ターフェルシュピッツ:オーストリアの牛肉煮込み。フランスに行くとポトフと呼ばれるらしい。
  • パスティカーダ:クロアチアの牛肉赤ワイン煮込み。オレガノを山ほど入れる。
  • グリル:いい肉は塩コショウだけで充分

今回は最近作ってなかったターフェルシュピッツを作ることにしたのでレシピをメモっておく。
料理人ではないので間違いも多いと思われるが、自分の舌を信じていい感じに調整してほしい。

材料

8人前。レシピはオーストリア観光局のサイトのものをベースに面倒くさい手順を省略して作った。

メイン

  • 牛肉 1㎏
    冷凍でもよいが塊肉が必須条件。スーパーで1㎏塊はふつう売ってないので、肉売り場の人に声をかけると大体その重量で切ってくれる。
    モモがよいが、スネでもよい。肉の柔らかさによって煮込み時間が変わる。柔らかければ1時間、硬ければ2時間半か。3時間やると肉から汁が抜けきってぱさぱさになった。いい肉でも霜降りはやめたほうがいい。
  • 玉ねぎ 2個
    中くらいの大きさの場合
  • 人参 2本
  • 長ネギ 1本
  • セロリ 1本
  • GABANローリエ 1枚
  • GABANブーケガルニ 1袋
  • GABANホールのブラックペッパー 小さじ1.5杯
  • 水 2L
  • 塩 小さじ4杯と1/4(辛め。3杯入れた後、スープの味見しながら微調整が望ましい)

ソース

2種類準備。

アプフェルクレン(リンゴとホースラディッシュのソース)

辛いので子供には不評。大人向け。2人前。

  • リンゴ 1/8
  • ホースラディッシュ チューブ 8cmぐらい
  • レモン汁 適量
    レシピを検索しても、入れるレシピと入れないレシピがある。リンゴの変色防止用か?
    味的にはなくてもいい。

ローストビーフ用の市販のソース

グレイビーソースを作れる料理ではないので、買ってきたほうが早い。

スープ用の具

煮込み汁はそのままスープとして使うため、野菜のほかに具を入れる。
野菜は煮込みのものがあるので、小麦粉系が腹にたまってよい。
大体ニョッキを使う。

  • 市販のニョッキ 1パック(乾燥重量250g)
  • 水 たっぷり
    ニョッキの煮えは浮いてくることが目安。少ないと浮いてるのかどうかわからないので。

作り方

鍋は寸胴が必要。その辺のカレー鍋だと肉入れた段階であふれる。
うちではT-falのクリプソアーチ 6Lを無圧調理で利用している。ずっと使ってるが圧力調理したことない。

当然だが、肉は解凍しておき、室温に戻している前提である。凍ったままでもできなくはないと思うが、煮え時間が狂うので臨機応変に。

1.玉ねぎをグリルする

油をひかず、皮をむかずに真横に切った玉ねぎを鍋の底面で焼く。当然焦げるが気にせずに焼く。これは後でスープに香ばしさとして残るので重要。

玉ねぎはこんくらい焼いたら出して避けとく。あとで肉の重しに使う。

2.肉に焼き色を付ける

フライパンで塊肉の面を焼く。1つの面につき3分~5分程度を揚げ物レベルの強火で焼く。火を通す必要はない。これは煮込んでいるうちに内部の肉汁が抜けないようにするための措置である。

写真はA4国産黒毛和牛という、煮込みに使うべきではなかった肉なので差しがやばいが(実際出来上がったら油がすごくて胸焼けする)、たぶん普通のオージー産モモならいい感じだと思う。和牛は使うな

3.鍋で煮る

焦げの残った鍋に、水を2L入れる。沸騰を待たずに、人参、セロリ、長ネギ、ローリエ、ブラックペッパーを入れて沸騰させる。

沸騰したら表面だけ焼いた肉を投入し、水に沈むように横に置いておいた玉ねぎを上から入れる。

4.待つ

材料を追加して下がった水温が再び上がって沸騰し始めたら弱火にして、あとは煮込む。

今回はもともと柔らかい肉だったので1時間で切り上げたが、オージー産モモの場合は2時間弱、スネだと2~3時間程度煮込む必要があると思われる。煮込めば煮込むほど肉から汁が抜けていくので、ぱさぱさになる前に肉を引き上げる必要がある。肉次第で何とも言えないので煮込んでいる肉と会話してほしい。

経験上、長いよりも短いほうがいいかもしれない。煮込み時間が短くて煮えてなくても、表面焼いてるのでローストビーフと言い張れる。だが、長すぎるとぱさぱさした繊維質の何かになってまずい。

5.肉を引き上げる

決断的に肉を引き上げて避けておく。皿に盛る直前に鍋に戻して温めるので、このまま休ませておく。
スープは弱火のまま。

ここで塩を入れる。分量がレシピ通りなら、3杯入れた後から味見を初めて、小さじ1/4ぐらいずつ足し、ちょっと薄いかなぐらいで止めておく。沸騰中のスープの塩味は、冷めたときにより強く感じる。薄いぐらいがちょうどよい。

6.ニョッキを煮る

スープを別でサーブするので、具になるニョッキを煮る。ニョッキはたいてい小麦粉をまぶしてあるので、スープの鍋の中で煮てはいけない。それはそれでうまいかもしれないが、通常は別鍋に湯を沸かして3分ぐらい煮たあと、ゆであがったやつからスープ鍋に移す。

この間、スープ鍋はずっと弱火。

7.アプフェルクレンを作る

まずはリンゴの皮をむき、すりおろす。すりおろしリンゴはすぐに茶色に変色し始める。味は変わらないので適当にレモン汁とホースラディッシュを投入して混ぜる。レモン汁を入れると色が戻るような気がする。(写真はレモンを4まわしぐらいいれて混ぜたところ)

8.盛る

休ませていた塊肉を鍋に戻し、温めなおす。

数分後、肉を取り出し、繊維の方向に直角に0.5~1㎝ぐらいに薄切りにする(割と難しいので切れる包丁が必要)。野菜は人参、セロリ、玉ねぎなどを食べる人の腹具合に合わせて鍋から取り出し、肉の横に添える。

最後にスープをさらっと肉にかけ、ソースを添えたらこっちは出来上がり。

火を止めてスープを別皿に盛る。本来ならなべ底に残った焦げとかの混入を防ぐために濾すが、面倒なのでそのままサーブ。スープの中で若干塩味がついたニョッキや、投入していた人参、セロリ、玉ねぎなどを適宜入れておわり。

お椀のスープにニョッキが多すぎる

スープは塩と肉と香味野菜とハーブのみの味付けなのでさっぱりである。コンソメキューブを足したくなる気持ちになる。足していいと思うので、足すなら水の時に入れてしまえばよい。

macOS MontereyでMinecraft Java Editionをコントローラでプレイする

Minecraft 1.19.1をMacBook Air (M2,2022)で実行。手持ちのXbox Elite wireless controller series 2をMBAに接続して使う。他にも以下のコントローラに対応すると書いてある。

・Dualshock controllers
・Dualsense controllers
・Xbox controllers
・Switch Pro controllers
・Joycons
・Steam controller and Steam Deck
・And many more!

https://www.curseforge.com/minecraft/mc-mods/midnightcontrols

PS4やPS5のコントローラやSwitchのプロコンは同様にすることで動くと思われる。

概要

  1. SDL2 Gamepad tool を入れてコントローラの接続を作成する
  2. サーバーバージョンに合わせた FabricFabric API をマイクラのクライアントに入れる
  3. FabricのModフォルダにMidnightControls のjarを入れる

手順

1. SDL2 Gamepad tool のインストール

SDL2 Gamepad tool にアクセスして、Downloadから最新版をダウンロードする。

zipが落ちてくるので、解凍して「アプリケーション」に移動する。

gamepad-tool.appを起動する。

起動時にいつものセキュリティの云々が出るので、「システム環境設定」->「セキュリティとプライバシー」->「一般」タブの最下段にある「そのまま開く」をクリックして開く。
さらにダイアログ出るので「開く」。
出てなかったら、システム環境設定を開きっぱなしで、出るまでgamepad-tool.appを再起動する。そのうち出る。

「gamepad-tool.appが入力監視にアクセスしようとしています」が出るので、「システム環境設定」->「セキュリティとプライバシー」->「プライバシー」タブの「入力監視」でチェックを入れてやる。

2. コントローラをMBAに接続する

コントローラを接続する。有線でも無線でもいい。

3. マッピングを作成する

gamepad-toolを起動すると、以下のような画面が出る。(以下はマッピング作成済みのため少し違う)

最初は「Create A New Mapping」しか押せない。「Create A New Mapping」を押すと、画面のキーレイアウトがハイライトされるので、それに対応するコントローラのボタンを押す。わかると思うがアナログスティックは押し込むボタンと方向設定の二種類がある。指示通りに実行する。

完了すると他のボタンも押せるようになるので「Copy Mapping String」を押す。クリップボードに設定値が送られるので、これをマイクラに投入する。

4. MinecraftにFabricとFabric APIを入れる

割愛。ググればいくらでも出てくる。

5. ModsフォルダにMidnightControlsを入れる

MidnightControls をダウンロードして、Fabricが生成したModsフォルダにjarを入れる。
ダウンロードするバージョンはFabric同様に接続先のMinecraftのバージョンに合わせる。

6. Minecraftを起動し、クリップボードの設定値を貼り付ける

Minecraftをランチャーから起動して、Fabric導入の起動構成を選択してプレイ。

「設定」->「操作設定」->「Controller Options…」を選択し、MidnightsControlsの設定画面に入る。

ModeはDefault、Auto Switch Modeもデフォルトで問題ない(気分の問題で変えてる)。
左メニューの最下部、「Mappings File Editor」を選ぶ。

上記のように黒い枠の中にCommand+vしてクリップボードに送られていた設定値を貼り付ける。
その後「Reload Controller Mappings」をすると認識されて動くようになる。
「完了」して、ゲームトップ画面に戻りゲームをスタートするとすぐに動くので各ボタンが動作するか確認する。

背面パッドの存在

Xbox Elite 2は背面パッドが付いておりボタンを割り当てられるのだが、これの利用方法がわからない。
多分マッピング上手くすれば動きそうな気がする。FF14もこれやれればイケるはずなので引き続きやってみたい。

新旧PC_20211024

Windows11にCPUが対応していなかったので一新した。
やっとCyberpunk 2077できそう。なお一新してもTPMがないせいでWin11にはできないらしい。

BIOSでfTPMを有効にすればできた。

白いケーブルを七色に光るLEDが染めるのは綺麗。子供が勝手に部屋の電気を消して踊りはじめるなどしている。

以下、パーツリスト。組んで3日経過したが安定して動いている。

CPUIntel Core i7-11700K
Socket1200 / 3.6 GHz / 8 core 16 threads
CPU CoolerNZXT KRAKEN Z63
簡易水冷 / 2ファン+ラジエーター+ポンプ
M/BASUS ROG STRIX Z590-E GAMING WIFI
DDR4 / PCIe 4.0(x16/x8+x8) *2 / PCIe 3.0(x4) / M.2 Sockets * 4 / SATA *6
PCIe3.0やM.2とSATAの5番6番ポートは排他
MemG.Skill F4-3200C16D-16GTZN *2
8GB *4 / 2133MHz
(ホグワーツレガシーのために16GB追加)
GPUASUS TUF-RTX3080TI-O12G-GAMING
要8-pin *2 / NVIDIA GeForce RTX 3080Ti / Mem 12GB
System DiskWD WD_Black SN850 NVMe WDS100T1X0E-00AFY0
1TB / NVMe M.2 / PCIe 4.0 x4
Data DiskSamsung 870 EVO MZ-77E2T0B/EC
2TB / SATA SSD / SATA600
WD Blue 3D NAND SATA WDS100T2B0A
1TB / SATA SSD / SATA600
WD WD3003FZEX-00Z4SA0
3TB / SATA HDD / SATA600
SANDISK SDSSDXPS-960G-J25
960GB / SATA SSD / SATA600
I/F CardAVerMedia Live Gamer 4K GC573
電源SUPER FLOWER LEADEX SE PLATINUM 1000W-WT
負荷50%時効率 92%
ATX 20+4pin *1 / CPU 4+4pin *2 / VGA 6+2pin *6 / SATA 3口 *2 / SATA 2口 *2
ケース NZXT H710i CA-H710I-W1

はじめ、電源は10年位前の850Wを使いまわす予定だったが、ほかのパーツが届いてからCPU向けの12V線が足りないことに気づいて真夜中に発注することになった。あとから消費電力を計算すると素で600W弱になりそうなので2倍の原則に従って1000Wのものにした。

キャプチャカードにx4のバスを使わせたいので、SATA搭載数が2台減っている。
また、10年近く使っていたCoolerMasterから電飾バリバリの今風のケースに変えたため、PC内の配線に苦労した。
簡易水冷は自分で水タンクやポンプを組み立てなくてもよく、CPU冷却部とラジエーターをつなぐ液体ケーブルの取り回しさえ成功すれば、本家に比べるととても楽そうだった。

熱についていうと、CPUは通常39℃ぐらい、GPUは41℃ぐらい。ファンの音は静かと思う。
Assasin’s Creed Odysseyを4Kボーダレスウィンドウモードの最高画質でやってみたところ、ファンが低いうなり声をあげてCPU 55℃、GPU 66℃になっていた。ケースの隙間から心地よい温風が出てきており、冬の暖房として重宝しそうである。
M.2のSSDは爆速かつ爆熱と名高いものだが、マザボ備え付けのM.2用ヒートシンクのおかげでCrystalDiskMarkやってもMax60度、通常時は44度程度でなかなかの冷えと思われる。

FF14ベンチのスコアはウィンドウモードで15000越え、温度は通常時と変わらない。
ベンチをM.2に置いたときはローディングタイム6-8秒、SATAのSSDに置いたときは13秒ぐらいなので、テレポの暗転時間を短くしたい場合にM.2を使うのはメリットがあると思う。テレポガチ勢。

気になるお値段は新規に購入したパーツだけで約40万です。厳しい。

(追記)
6.0前の通常のFF14プレイをしたところ、かなりの排熱でエアコン暖房並みの風が吹き出すようになった。
TDPを基準とした定格では56秒250Wで稼働するようになっているが、これだけでも十分熱いため自動で働くオーバークロックの上限を下げる設定をした。アンダークロックとは言わないなこれ。

まずBIOS。変更したところだけ。基本的にはマザボによるオーバークロックをメモリのみにしてIntelの制約に従うような内容。

AI Overclock TunerXMP1
ASUS Multicore EnhancementDisabled
SVID BehaviorIntel’s Fail Safe

CPUについては、OS上からIntel Extreme Tuning Utilityを利用して設定している。

設定項目デフォルト値設定値
ReferenceClock 100MHz100MHz
Turbo Boost Short Power(PL2 Limit)250W180W
Turbo Boost Time Window(Tau / PL1 Time)56秒20秒
Turbo Boost Power Max(PL1 Limit)125W125W
1-3 Core Ratio Multiplierx50x44
4 Core Ratio Multiplier x49x41
5-6 Core Ratio Multiplier x47x38
7-8 Core Ratio Multiplier x46x36
Processor Cache Ratiox41x33

この状態でFF14ベンチはどうなるのかというと、スコアは変わらないが、Power Limit Throttlingは発生せず、Package Temperatureは大きく下がった。

電気代にも優しそうなのでしばらくこの設定で使っていく予定。

デモンズソウル リメイク

(2020/05/06 1キャラ目が完成したので追記)

2020/11/12の発売日に届いたDemon’s Souls Remake、品薄と転売祭りによってPS5入手ができずに2021/04にようやく買えた。クソ昔にVAIO Type-Pをソニーストア経由で買っていたおかげでSonyIDが生きており、その繰り上げ抽選に引っかかった形。ソニーストアでのPS5抽選は2020/10、2020/11、2021/02、2020/03の4回行われており、一度抽選に応募しておけば当選するまで自動的に抽選され続ける形式のようだ。他の量販店は毎度登録がいるので見習って欲しい。

PS5には1mくらいのHDMIケーブルが同梱されている。PS4まではついてなかったはずなのでこれは地味にうれしい。

PS5のHDCPを無効にしてキャプチャボードからPCに入力してプレイしている。キャプチャボードはAverMedia Live Gamer 4K GC573を使っている。公式ページではPS5との接続について記載ないが、問題なくHDR出力されている。

HDRのテスト

1stキャラのビルド

SL99完成のビルド。トロコン用を兼ねる。

2周した。魔力特化の魔法剣士タイプ。道中は近距離は欠月のエストック+5と北騎士盾+7、遠距離は飛沫や光で、強敵には狂気の触媒&火の玉や浮遊で対処。雑魚に対して十分な火力があり、黒骸骨、赤目、飛竜や巨大腐敗人でも対応できる懐の深さがこのビルドのよいところ。逆に2周目の嵐2の魔法使いのような魔力に対して耐性がある敵には弱い。

対人戦では侵入してきた黒ファン程度ならエストックで数回殴れば殺せる。道場は知らない。

エリア傾向の変わり方

左が最白、右が最黒。

基本的にPS3の時と変わらないが、オンラインにしても時間経過でサーバのエリア傾向に近づいていくことはなくなった。そのため、攻略中でもオフラインにこだわる必要は無くなった。

今回からデーモンの長を1体でも倒すと、楔の神殿を経由せずに各ステージの要石から別のステージの要石に直接移動できるが、一度神殿に戻った扱いでエリア傾向が変化するので注意。NPC黒ファンを殺した後、最黒を維持したまま原生デーモンのところに行きたいなら要石を使わずに徒で行く必要がある。また、敵対せずに霧のスリップダメージでNPC黒ファンを殺しても傾向が変わるようになったようである。

ノーマルから最白にするためにはソウル体で攻略してエリアのボスデーモンを殺す。エリア2のボスまでをソウル体で殺すと最白になる。一応見分けのための画像比較を載せておく。

ノーマルから最白

最白から最黒までに必要な自殺回数は8回。6回目で傾向が光らなくなるが、まだ最黒ではない。楔の神殿で儚い瞳の石を使用して肉体を得て、対象エリアで墜落死したあと、楔の神殿に戻って傾向を反映する。楔の神殿に戻らない限り反映されない。

ノーマルから最黒

儚い瞳の石は谷3の赤子沼でマラソンすることで無限に得られるが、最黒から最白を目指すのは最黒時のNPC黒ファンを全滅させてもムリなので、まず最白でアイテム回収をしてから最黒にしたほうがよい。

PS3版との違い

  • いつでもアイテムをトマスに送れるようになった

書いてるところが少ないが、かなり重要なアップデートでは。

柴染装備など、アイテムが所持重量を超えて取れないということがなくなった。楔の神殿でもその他のどこからでも、アイテム画面を開けばアイテムをトマスに送れる。また、取得時に所持重量を超える場合はインベントリを経由せず直接トマスに送れる。

逆に、トマスから取り寄せることはできない。

関連して、草の所持量と重さが調整された。新月草や暗月草は10個までしか持てなくなったが、10個でもめちゃくちゃ重いので使わないならトマスに預けておいた方が良い。

  • グラフィックが2020年ゲームらしく大幅に改良

遠景含めたグラフィックの高解像度化。HDR表現に対応し、光の描写がすさまじく綺麗になった。
綺麗になりすぎてこれだけで同じゲームをしているとは思えない体験がある。
特に腐れ谷は薄らぼんやり見えていた床がマジで暗くて見えないので別のステージに思える。

また、フォトモードが追加されて写真撮影が捗るようになった。

  • SEと環境音が大幅に改良
フォトモード。ゲーム中ずっとこの解像度。

SEだが、PS3版ではソウルの光を撃っても「指先からビームでてるな」っていう音だった。リメイクでは主に重低音が強化され、腹に響くSEになった。飛沫も「ポッポッポッ」ってかんじが「ウーnnボッボッボッ」というかんじに。なんで唸り声入れた。

環境音はラトリアで顕著だが、遠くの音は遠く、近くの音は近く聞こえるようになった。
そのため、ガンガンガンヘルプミーという声も近くに行かなければ聞こえないようになってしまった。
また、地面に転がる陶片が足に当たるたびに音が鳴るようになり、隠密プレイの支障になるぐらいには足音が強化されている。うーん、楽しい。

  • キャラが2020年ゲームらしくリアル系ビジュアルに

ザ・洋ゲー。

細かい作成項目は以前と同じ。ここも全体的に高解像度になった。キャラメイクのやり直しはゲームスタート後、楔の神殿で死んだときにリスポンする女神像に25000ソウル払えばできるようになるらしい。序盤では高い。
賛否両論の既存NPCの顔変更だが、ハリウッド版だと思えば特に気にならない。火防女がよりエッチに、アンバサ女は思ったほど美人ではない。アストラエアは美人、ユリアはかわいい。異論は認めない。

あ、白くべたつく何かは思ったほど液状ではないようです(意味深)。

  • 頭装備の表示をオフにできるように

あくまで自分の画面上だけだが、顔が見えないということがなくなった。

  • 新規武器、新規防具、新規モード

新規の武器は見た目装備。強化できないのであってないようなもの。
特典装備の防具は持ってないのでわからないが、普通に手に入れられる隠密の防具は軽量でそこそこの防御力と毒耐性をもち、これだけ見れば実用性はある。ちなみに隠密セットはラトリア、小間使いのいる二階の反対側(PS3版で銀の触媒があった場所)に落ちている。かっこいいし序盤で使えるのはうれしい。

フラクチャーモードは2キャラ目でやってみる予定。

正直、フラクチャーモードとかアリーナには興味が無いので、自分にとってのデモンズリメイクは『綺麗になって帰ってきたデモンズソウル』以上の何物でも無い。オンラインサービスが復活したようなものなのでそこだけでもエルデンリングまでのつなぎとして遊べてうれしい。

FF14:ARR_20210303

時期はパッチ5.45でILは530がMAX。レイドが終わってしまい、5.5の最後の24人アライアンス実装まではコンテンツがボズヤしかない状態。目下、ガンゴッシュの民となって打ち捨てられた遺物を拾い集める毎日である。RWは機工士、侍、赤魔がデザインがよいと感じているので3本作る予定であり、すでに3本ともジャッジオーダーになっている。

先日の『新情報発表会』で6.0エンドウォーカーが発表された。3.0はリューサン、4.0はモンク、5.0は暗黒ときたので、6.0はヒーラー職がメインビジュアルと予想していたがナイトだった。ヒーラー(笑)

装備とミラプリの一覧を張るのが面倒になってきたので画像のみ。
機工士は奥さんの評価がとても高いミラプリである。ブレイクダンス踊りそうなストリート系ビジュアル。

コンテンツではほぼ全てのギミックを分身して回避するミコトと撮影した。攻城戦やディルーブラムのミコト見てるとなんで捕まったのかわからん。

新旧PC_20210303

ベースは変えていないがパーツ一覧が最新でないので新規エントリとしてメモ。

FF14、Far Cry5、Witcher3、Sekiroあたりを最高画質でやる分には全く不便してない。Cyberpunk 2077はわからない。

変わったところとしては、SSDが増えたのとIntensity Pro 4Kを見限ってGC573にしたところ。GC573はハードウェアインストール後にテストしたら絵がマゼンタ一色でおかしかったが、カードのファームウェアをアップデートしたら治った。快適。

もうそろそろHGSTのディスクは寿命だと思うので変えたい。10年動いてる。

(2021/3/21追記) 案の定SMARTが悪化して死んだ。Samsung 870 EVO 2TBに変更。

CPUIntel Core i7 4771
M/BASUS Z97-PRO Gamer
LGA1150/intel z97/DDR3 1600/1333 MHz
MemA-DATA AX3U1600GC4G9-2G(4GB) * 4
GPUASUS STRIX-GTX1080-A8G-GAMING
System DiskSANDISK SDSSDXPS480G 490GB (SSD)
Data DiskHGST 0S03224 2TB (HDD) → Samsung 870 EVO MZ-77E2T0B/EC 2TB (SSD)
IO-DATA SSDN-ST64B 64GB (SSD)
WD WD3003FZEX-00Z4SA0 3TB (HDD)
SANDISK SDSSDXPS-960G-J25 960GB (SSD)
WD Blue 3D NAND SATA WDS100T2B0A 1TB (SSD)
I/F CardAVerMedia Live Gamer 4K GC573
電源CORSAIR CMPSU-850HXJP
ケースCoolerMaster CM 690 II Plus (RC-692-KKN1)

MinecraftマルチサーバをDockerで建てる方法

前回の続き。ここではAWS EC2にUbuntuを入れたあと、Dockerを動かしてコンテナ上でMinecraftのマルチサーバであるSpigotを動かす。

IaaSの上でDockerを建てるというのはリソースの無駄ではないかというのは正直その通りである。だが、これはフレンドや家族内で使うサーバであって業務用ではなく、「安く借りたサーバをなるべく汚さずキレイに使い、定期的なバージョンアップの手間も省きたい」という願いから生まれたソリューションであることをご理解戴きたい。いらなくなったら捨てれば良いということすらしたくないのである。

構築するMinecraftサーバの要件

  • 安定版のSpigotが動作する
    • 現在は1.16.4
  • 管理系のプラグインを利用する
    • Dynmap
    • GriefPrevention

サーバOSはUbuntuのLTSを利用する。現在のLTSは20.04である。

ちなみに、Dynmapはブラウザで以下のような地図が確認できるようになるプラグインである。迷子防止に役立つ。

Grieaf protectionは主にクリーパーによる建造物破壊を防ぐために入れている。

手順

インスタンスのデプロイ

マネージメントコンソールでポチポチしてサーバを建てる。グローバルIPを振った瞬間ポートスキャンが飛んでくるので、セキュリティグループの設定はしっかりしておく。面倒であればとりあえず「インバウンドルール」にマイIPだけ入れておけば最低限何とかなる。最初はVPCとかの設定もあるがその辺はググって欲しい。AWSでセキュアなサーバを建てる方法は多分いっぱいある。

やることをざっくりリストにすると以下になる。

  1. (請求アラートを設定する)
  2. VPCでサブネットを切る(PublicVPCでいい)
  3. セキュリティグループを作成し、インバウンドルールにマイIPを設定する
  4. EC2でサーバをデプロイする。このときにさっき作ったセキュリティグループを設定する。作成時に秘密鍵を作成してダウンロードする
  5. ElasticIPを1個割り当てする
  6. ElasticIPをデプロイされたサーバに関連付けする

RIを使うなら先に買っておくこと。

OSへのログイン時のユーザ名はUbuntu、パスワードではなく秘密鍵で入る。

Dockerのインストールまで

以下のコマンドを何も考えずに打つ。
最近のインスタンスはアーキテクチャがarmのこともあるが、そのときは[arch=amd64]を[arch=arm64]にすること。

sudo apt-get update
sudo apt-get -y upgrade
sudo apt-get -y install apt-transport-https ca-certificates curl screen
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update
sudo apt-get -y install docker-ce

sudo docker run hello-world

Hello Worldが出ればOK。

Dockerの設定

Dockerは原則Dockerfileに書かれたことしかせず、停止したら中のデータは消える。ワールドの情報が消えては困るのでボリュームを使ってコンテナの外に出しておき、コンテナ起動時にマウントさせる方式をとる。

mkdir -p /world/world /world/world_nether /world/world_the_end /world/plugins

screen -S console
mkdir -p minecraft-prj/spigot-1.16.4
cd minecraft-prj

cat << EOS > spigot-1.16.4/Dockerfile
FROM ubuntu:20.04
RUN apt-get update; apt-get install -y openjdk-11-jre-headless wget git vim
RUN wget "https://hub.spigotmc.org/jenkins/job/BuildTools/lastSuccessfulBuild/artifact/target/BuildTools.jar"  -O BuildTools.jar
RUN git config --global core.autocrlf input
RUN java -jar BuildTools.jar -rev 1.16.4
RUN echo "eula=true" > eula.txt

RUN echo > server.properties
RUN echo 'generator-settings={"coordinateScale":684.412,  "heightScale":684.412,  "lowerLimitScale":512.0,  "upperLimitScale":512.0,  "depthNoiseScaleX":200.0,  "depthNoiseScaleZ":200.0,  "depthNoiseScaleExponent":0.5,  "mainNoiseScaleX":80.0,  "mainNoiseScaleY":160.0,  "mainNoiseScaleZ":80.0,  "baseSize":8.5,  "stretchY":12.0,  "biomeDepthWeight":1.0,  "biomeDepthOffset":0,  "biomeScaleWeight":1,  "biomeScaleOffset":0, "seaLevel":63, "useCaves":true, "useDungeons":true, "dungeonChance":7, "useStrongholds":true, "useVillages":true, "useMineShafts":true, "useTemples":true, "useRavines":true, "useWaterLakes":true, "waterLakeChance":4, "useLavaLakes":true, "lavaLakeChance":80, "useLavaOceans":false, "fixedBiome":-1, "biomeSize":5, "riverSize":3, "dirtSize":33, "dirtCount":10, "dirtMinHeight":0, "dirtMaxHeight":256, "gravelSize":33, "gravelCount":8, "gravelMinHeight":0, "gravelMaxHeight":256, "graniteSize":33, "graniteCount":10, "graniteMinHeight":0, "graniteMaxHeight":80, "dioriteSize":33, "dioriteCount":10, "dioriteMinHeight":0, "dioriteMaxHeight":80, "andesiteSize":33, "andesiteCount":10, "andesiteMinHeight":0, "andesiteMaxHeight":80, "coalSize":17, "coalCount":20, "coalMinHeight":0, "coalMaxHeight":128, "ironSize":9, "ironCount":20, "ironMinHeight":0, "ironMaxHeight":64, "goldSize":9, "goldCount":2, "goldMinHeight":0, "goldMaxHeight":32, "redstoneSize":8, "redstoneCount":8, "redstoneMinHeight":0, "redstoneMaxHeight":16, "diamondSize":8, "diamondCount":1, "diamondMinHeight":0, "diamondMaxHeight":16, "lapisSize":7, "lapisCount":1, "lapisCenterHeight":16, "lapisSpread":16}' >> server.properties
RUN echo "force-gamemode=true" >> server.properties
RUN echo "allow-nether=true" >> server.properties
RUN echo "enforce-whitelist=false" >> server.properties
RUN echo "defaultgamemode=0" >> server.properties
RUN echo "gamemode=0" >> server.properties
RUN echo "broadcast-console-to-ops=true" >> server.properties
RUN echo "enable-query=false" >> server.properties
RUN echo "player-idle-timeout=0" >> server.properties
RUN echo "difficulty=2" >> server.properties
RUN echo "spawn-monsters=true" >> server.properties
RUN echo "op-permission-level=2" >> server.properties
RUN echo "pvp=true" >> server.properties
RUN echo "snooper-enabled=false" >> server.properties
RUN echo "level-type=DEFAULT" >> server.properties
RUN echo "hardcore=false" >> server.properties
RUN echo "enable-command-block=true" >> server.properties
RUN echo "max-players=20" >> server.properties
RUN echo "network-compression-threshold=256" >> server.properties
RUN echo "resource-pack-sha1=" >> server.properties
RUN echo "max-world-size=29999984" >> server.properties
RUN echo "server-port=25565" >> server.properties
RUN echo "server-ip=" >> server.properties
RUN echo "spawn-npcs=true" >> server.properties
RUN echo "allow-flight=false" >> server.properties
RUN echo "level-name=world" >> server.properties
RUN echo "view-distance=10" >> server.properties
RUN echo "resource-pack=" >> server.properties
RUN echo "spawn-animals=true" >> server.properties
RUN echo "white-list=false" >> server.properties
RUN echo "generate-structures=true" >> server.properties
RUN echo "online-mode=true" >> server.properties
RUN echo "max-build-height=256" >> server.properties
RUN echo "level-seed=" >> server.properties
RUN echo "prevent-proxy-connections=true" >> server.properties
RUN echo "use-native-transport=true" >> server.properties
RUN echo "enable-rcon=false" >> server.properties
RUN echo "motd=Welcome to Minecraft Server Spigot." >> server.properties
RUN echo "spawn-protection=2" >> server.properties
RUN echo "use-native-transport=true" >> server.properties

CMD java -server -Xms1024m -Xmx3072m -XX:+UseG1GC -jar spigot-1.16.4.jar -c server.properties nogui

EXPOSE 80 25565
EOS

力業で済まない。
generator-settingsは我が家標準の川を大きめに作るレシピである。無くてもいいので必要に応じて消して欲しい。seedには何も入れてないので適当なseedをいれること。もちろん無くてもよい。

Dockerの起動

cd spigot-1.16.4
sudo docker build --no-cache -t="Spigot1.16.4/spigot" .

タグは適当に。–no-cacheにより、適宜最新のSpigotがダウンロードされるがバージョンを指定しているために勝手にバージョンアップはされない。ビルドが終わるまでしばらく待つ。

sudo docker run -i -t --name Spigot1.16.4 -v /world/world:/world -v /world/world_nether:/world_nether -v /world/world_the_end:/world_the_end -v /world/plugins:/plugins -p=25565:25565 -p 80:80 Spigot1.16.4/spigot:latest

Dockerを起動すると、コンソール上にMinecraftサーバが動くのが見えるはず。
起動が終わったら一度PCでMinecraftを起動し、EC2に割り当てられたグローバルIPで接続確認するのもよい。

一度起動したらstopコマンドで停止する。

プラグインの導入

DynmapGrief Preventionをプラグインフォルダに入れる。
wgetで直接サーバに落とそうとするとCDNに怒られるので、先にPCにダウンロードしておいたほうがよい。
scpの使い方は省く。Teratermからやれ。

サーバにscp後、ローカルのjarをコンテナから見える場所に移動する。

cp Dynmap-3.0-SNAPSHOT-spigot.jar /world/plugins
cp GriefPrevention.jar /world/plugins

プラグインの設定ファイルを生成するために一度起動する。先ほどstopでMinecraftサーバが停止したが、同時にコンテナも死んでいるため起動してコンソールにアタッチする。

sudo docker start Spigot1.16.4
sudo docker attach Spigot1.16.4

起動ログの中にDynmapとGrief Preventionが出てきたら成功。エラーの場合は何か赤字が出る。起動確認したらまたstopで殺す。

Dynmapはデフォルトではport 8123でリスンする。ブラウザでポートを指定するのが面倒なので80に変更する。

cd /world/plugins/dynmap/
vi configuration.txt

webserver-port: 8123という行があるので80にして保存する。viの使い方はググって欲しい。

再度、起動する。

sudo docker start Spigot1.16.4
sudo docker attach Spigot1.16.4

これでDynmapとGrief Preventionが導入されたSpigotサーバを建てることができた。
構築についてはここまでで完了である。

ログアウトする前に

作業はscreen上で実施しているので、screenをデタッチすることでホストに戻ることができる(dockerの設定の頭くらいでscreenを起動している)。screenのデタッチはCtrl+aを押した後dを押す。すると、screenを起動する直前の画面が表示されるはずだ。これによって、SSHコンソールを閉じたら一緒にdockerも落ちるみたいなことが無くなる。デタッチ後はSSHコンソールは閉じてよい。Minecraftサーバはscreenが生成した仮想コンソール上で生き続ける。

逆に、screenに復帰したい場合は以下のコマンドを打つ。

screen -r

なにがしかの原因でMinecraftサーバが不正落ちすることはあり得る。そのときはscreenの中で人知れず死んでいるかコンテナそのものが死んでいるので、先のコンテナ起動のコマンドですぐにサーバを復帰させることができる。起動する前にscreenコマンドを打っておくこと。

Enjoy.

Minecraftマルチ向けレンタルサーバ比較

フレンドや自分の子供と同じサーバで遊ぶためのMinecraftマルチサーバについて、クラウドを含めたレンタルサーバ/VPSの金額面での比較を記載する。次のエントリで、Dockerを利用した再構築しやすくバージョンアップ対応も楽なマルチサーバの作成方法を記載する

JKがテック職の父親からレクチャーを受けて、友達と遊ぶ用のMinecraftサーバをローカルからVPSに移行する話が、Twitterで話題になっていたのを見た。
自分も10年近くプライベートなマルチサーバを作って遊んでいるので、需要があるのかと思い、備忘録がてら記載する。

マルチ向けレンタルサーバの比較

比較条件

2021年1月現在の1時間あたりの金額を元に比較する。サービスが月額料金のみの記載である場合は、一月を30日と換算して計算する。米国ドル建ての場合、1ドル110円で計算する。
比較に当たっては、以下のスペックを満たすプランを選択する。遊び方にもよるが、サバイバルで遊ぶ分には10人程度は問題なく収容できるスペックと考えている。
また、この時点ではMinecraftサーバをDocker上に建てることは考慮しない。

  • 2コア以上のvCPU
  • 4GB以上のメモリ
  • 30GB以上のSSD
  • 長期利用割引が利用可能である
  • WindowsServerは除外する
  • データセンターが国内にある

なお、「自宅にサーバを立てるのが一番安いのでは」という意見もあるかと思う。経験からするとこれはお勧めできない。Zeonを載せたDellの安いサーバやRaspberry Piで自宅サーバを立てたことがあるが、Zeonは暖房器具のごとき排熱と月1万を超える電気代、Raspberry Piは小型高回転のファンの金切り声が問題となる。マジやめとけ。

結果サマリ

サービスRegion
/プラン名
サーバスペック通常
料金
長期割引
(3年)
AWSap-northeast-1t3.medium Limited
(2vCPU/4GB MEM/30GB SSD)
約7円/h約3円/h
Azure東日本B2S + Managed Disk E4
(2vCPU/4GB MEM/32GB SSD)
約7円/h約3円/h
GCPTokyoe2-custom-2-4096 regular
+ Persistent Disk Zonal SSD
(2vCPU/4GB MEM/30GB SSD)
約18円/h約9円/h
ConoHa4GBプラン4vCPU/4GB MEM/100GB SSD約6円/h約4円/h
さくらのVPS4GBプラン
(石狩)
4vCPU/4GB MEM/200GB SSD約5円/h約4円/h

コア当たりの性能差は考慮しない。各社公開していないため。
国内に他にもVPSサービスはあるが、代表的な二つを選択した。

だいたい、4円/h=2880円/月、3円/h=2160円/月の計算になる。なお、長期割引プランの内容は各社違うためこの金額は実際に課金される金額とはイコールではなく、この表は計算上のものである。これは各社ごとに後述する。

評価

料金について。
通常料金で見たとき一番安いのはさくらのVPSである。
3年の長期割引を適用すると一番はAWSで、小数点以下の差で次点がAzureになる。
GCPはどちらも高いうえに、グローバルIP取得が無料ではない。
ConoHaとさくらのVPSはストレージが大きいのが目立ち、コストを悪化させているようにも見える。

導入しやすさについて。
AWS、Azure、GCPはIaaSなので、基本的にはSSHで乗り込んでコンソールでMinecraftサーバを構築する必要がある。
ConoHaとさくらのVPSはMinecraftサーバの初期構築をGUIから簡単にできるようにしている点にアドバンテージがある。しかし、server.propertiesの編集やMod導入をする際には結局AWSやAzureなどと同じようにコンソールを触る必要があるため、あまりメリットを感じない。また、GUIからMinecraftサーバの初期構築をする場合は公式のMinecraftサーバの導入となる。SpigotなどのMod導入を前提としたMinecraftサーバを導入したい場合はAWSやAzureなどと同様、CUI作業となる。

総評としては、Linux触れるならAWSかAzure、自由度を犠牲にして簡単さを選ぶならConoHaというところか。再起動でMinecraftを自動アップデートしてしまうさくらのVPSは困る。自動アップデートはスクリプトを呼んでいるだけと思われるのでrcあたりから外せば自動アップデートOFFで使えると思われるが、CUI作業である。

AWS詳細

2021年1月現在、t3.meduimよりもコストパフォーマンスの高いインスタンスタイプは存在するが、なぜこれかというと我が家で現在利用しているからである。実績として、RI購入費用が$615で、毎月の課金額が$5程度である。

長期割引プランは一番割引率の高いReserved Instanceで、全額前払いで購入した場合の金額である。先に支払うことで以降の月額料金にサーバ計算機料は含まれなくなる(ストレージ使用料・NW利用料はかかるため、0円にはならない)。

長所

  • 安い(t3よりも新しいタイプを選ぶとさらに安くなる可能性がある)
  • 機能が豊富だが、それらをほぼ無料で使える(特に監視、請求アラート、FW)
  • IaaSなので圧倒的に自由

短所

  • バーストが切れると処理速度に不安が出る(プレイに当たっては問題ないレベル)
  • AWSのインフラ知識が必要
  • LinuxでMinecraftサーバを立てられるだけの知識が必要

正直、AWSのデプロイ手順やLinuxの構築手順は世の中にあふれているので『知識が必要』といっても、ググる力があれば何とかなると思われる。

Azure詳細

机上計算である。PaaSしか使ったことがないのでNWやセキュリティ周りで考慮漏れがあるかもしれないことを断っておく。

基本的にはAWSと同じ金額で同じメリットを享受できると思われる。ただし、ストレージの料金計算が、容量に対する課金と、ディスクIOに対する課金でわかれており、見積もりがしにくい。今回はトランザクションユニットを100として計算した。

長期割引プランは一番割引率の高い3年前払いで、先に支払うことで月額料金にサーバ計算機料が含まれなくなる(ストレージ使用料・NW利用料はかかるため、0円にはならない)。

長所

  • 安い
  • 機能が豊富だが、それらをほぼ無料で使える
  • IaaSなので圧倒的に自由

短所

  • ストレージ周りの料金計算が面倒
  • Azureのインフラ知識が必要
  • LinuxでMinecraftサーバを立てられるだけの知識が必要

GCP詳細

机上計算。IaaS売る気ないな?っていうレベルで高い。グローバルIPも追加料金になっているため「PaaS使え」という強い意志を感じる。使ったことがないので考慮漏れがある可能性があることを断っておく。

料金を置いておくと、その他はAWS・Azureと変わらない。他と違うところは、超高速なローカルSSDが結構な容量ついてくるので、サーバを絶対再起動しないマッチョな運用をするならアリなのかもしれない。お勧めしないが。

長期割引プランは、3年前払いではなく3年縛りである。3年間絶対使い続ける必要がある。3年縛りによって毎月の月額料金が割引されるが、この割引は計算機料だけでなくストレージ料金にも適用される。

長所

  • IaaSなので圧倒的に自由

短所

  • 高い

ConoHa詳細

机上計算。VPSなのでスペック選択の自由度が低く、最低限のスペックを選んで費用を低減することが難しい。使ったことがないので考慮漏れが(以下略

OpenStackベースの基盤だそうだが、AWSやAzureと比べて安定性や性能で同等かといわれるとそうではないので、外部から基盤の状況を監視した方が良いと思われる。

先に書いたが、Webの管理画面でMinecraftサーバの初期構築とバージョンアップが行える。サーバはMinecraft公式のJava版もしくはBE版が導入できる。ただし、バージョンの指定やロールバックはできない。また、server.properties編集やMod導入をしたいならCUI作業となる。

Linux知識無しで初期構築やバージョンアップができるのはメリットだが、自由度が下がるのと、バージョンアップでブロックの互換性無くなったら古いワールドはどうなるのかが気になるところ。

長期割引プランは3年縛りである。

長所

  • Webコンソールで簡単にMinecraftサーバをたてられる(マニュアルもある)
  • バージョンアップがワンクリックでできる

短所

  • 高い
  • 公式MinecraftサーバかつカスタマイズはCUIであるため、わざわざ自分で独自にたてるメリットが薄い(公式は激重らしいが)
  • 任意のバージョンを選べない
  • 初回立ち上げ時には公開鍵認証に対応していない

さくらのVPS

机上計算。VPSなのでスペック選択の自由度が低く、最低限のスペックを選んで費用を低減することが難しい。長期割引を使わず、通常料金で使おうとした場合は一番安い。ディスクが200GBもあるので、Minecraftサーバのほかにも何かに使うならアリなのかもしれない。使ったことがないので考慮漏れが(以下略

Minecraftサーバの初期構築用スクリプトが公開されている。こちらも公式Minecraftサーバが対象であるため、デメリットはConoHaと同様。
また、サーバ再起動時に自動的にバージョンアップされるというありがた迷惑な機能がついている。

長期割引プランは年間一括払いがある。

長所

  • 通常料金であれば一番安い
  • Webコンソールで簡単にMinecraftサーバをたてられる(マニュアルもある)

短所

  • 高い
  • 公式MinecraftサーバかつカスタマイズはCUIであるため、わざわざ自分で独自にたてるメリットが薄い(公式は激重らしいが)
  • 任意のバージョンを選べない
  • 再起動するとMinecraftが自動的にアップデートされてしまう