Skip to content
ブログに戻る
PicoLimbo: 軽量Minecraftサーバーのセットアップ方法

PicoLimbo: 軽量Minecraftサーバーのセットアップ方法

Alexandru Maftei
Alexandru Maftei
@ice
Updated
4 閲覧
TL;DR:PicoLimboはRustで書かれた軽量Minecraftリンボサーバーで、バージョン1.7.2から26.2までのすべてのバージョンに対応しています。最小限のリソース使用量とプロキシサポートが組み込まれており、軽量な待機エリアが必要なネットワークに最適です。
🐳 オープンソースMinecraftプロジェクト

Quozul/PicoLimbo

Rustで一からスクラッチで書かれた軽量Minecraftサーバーで、バージョン1.7.2から26.2までのMinecraftバージョンをサポートしています。

⭐ 480スター💻 Rust📋 MIT
GitHubで表示 ↗

ほとんどのMinecraftサーバーは、プレイヤーが待機またはAFK状態にある間、リソースを浪費しています。PicoLimboはRustで書かれた軽量リンボサーバーでこの問題を解決します - プレイヤーがサーバーホップ間で待機できる専用スペースで、ハードウェアを消耗させません。アイドル時のCPU使用率はほぼゼロで、10MB未満のRAMで完全なサーバーを実行できます。

リンボサーバーとは実際には何か?

PicoLimbo自体について説明する前に、「リンボ」という用語の意味を明確にしましょう。Minecraftネットワークでは、リンボサーバーは軽量な待機エリアです - プレイヤーの待機室だと考えてください。VelocityやBungeeCordなどのプロキシにログインしてもメインサーバーにまだ参加していないプレイヤーは、ここに到着します。複数のゲームモードを持つ大規模なネットワークを運用している場合は、プレイヤーを適切な目的地にシャトルする前の準備エリアとしてリンボを使用します。

ただし、リンボには高度な機能は必要ありません。プレイヤーは建設したり、モブと戦ったり、地形を探索したりはしません。ただ... 座っているだけです。おそらくチャットしています。友達を待っています。では、プレイヤーがアイドル状態でオーバーヘッドが多い完全なMinecraftサーバーを実行する必要があるでしょうか? 最小限の何かで十分ではないでしょうか?

そこがPicoLimboの出番です。


PicoLimboが際立つ理由

このユースケースに実際に重要な機能について説明しましょう。まず、CPUフットプリントの軽さはほぼ犯罪的です。ほとんどの従来のMinecraftサーバーは、何も起こっていなくてもアイドル時に10-20%のCPUを消費します。PicoLimboがアイドル時に0%に留まります - 誇張ではなく本当です。キープアライブパケットを送信したりログインを処理したりする必要がある時だけウェイクアップします。セルフホスティングしていて電気代を払っているなら、この違いは本当に明らかになります。

メモリ使用量も同様に印象的です。READMEでは、10MB未満のRAMで数百人のプレイヤーを処理できると主張しています。提供されているベンチマークを見てみると、この主張は事実です。

ここからが興味深いところです - バージョンサポートです。PicoLimboはMinecraft 1.7.2からネイティブに26.2まで処理します。これは20年分のクライアントバージョンで、ViaVersionや翻訳レイヤーは必要ありません。すべてのバージョンが... 単に機能するのです。古いクライアントを使用しているか最新リリースを使用しているかもしれないプレイヤーがいるネットワークを実行している場合、互換性の問題について心配する必要はありません。

スキンサポートが組み込まれているため、プレイヤーは互いに正しく表示されます。プロキシサポートはすべての主要なシステムをカバーしています: Velocity、BungeeCord、BungeeGuard認証です。車輪を再発明しているのではなく、実際に使用するインテグレーションを実装しているだけです。


実行を始める

セットアップに応じて、PicoLimboをデプロイするにはいくつかの方法があります。

Dockerは、コンテナに慣れている場合に最も簡単です。

bash
docker run --rm -p "25565:25565" ghcr.io/quozul/picolimbo:latest

これは最新イメージを取得し、デフォルトのMinecraftポートでサーバーを起動します。完了です。永続性が必要な場合は、当然ながら設定ファイル用にボリュームをマウントしますが、基本的なコマンドはワンライナーです。

スタンドアロンバイナリは、Dockerが好みでない場合の選択肢です。GitHubのリリースページにアクセスして、OSのバイナリ(Linux x86_64、ARM、macOS)をつかみます。抽出して、TOMLファイルを設定して、実行します。設定は簡単なTOMLです - ネストされた配列を持つ肥大化したXMLやJSONではありません。

Javaラッパーは、PicoLimboをVelocityまたはBungeeCord内のプラグインとして実行したい、または通常のJARファイルとして実行したい人向けに存在します。これはソースからコンパイルするのではなく、事前にビルドされたバージョンが必要な場合、Modrinthで利用可能です。

Pterodactylユーザーは、リポジトリに公式のeggを取得するため、そのパネルを使用している場合、クリーンにインテグレートします。

設定はとても良いです。一部のプロジェクトとは異なり、PicoLimboは500行の設定ファイルをダンプすることはありません。TOMLファイルがあり、ウェルカムメッセージを設定したり、スポーン次元を設定したり、サーバーリストのMOTDを調整したり、プロキシ認証設定を定義したりできます。ドキュメントもかなり充実しているため、デフォルト値をソースからリバースエンジニアリングしている必要はありません。


重要な機能

純粋なパフォーマンス以外に、PicoLimboは何を提供していますか?

シェマティック世界サポートはシェマティックファイルからカスタム世界を読み込み、スポーン位置を設定できます。これは実験的とマークされており、1.16以降でのみ機能しますが、リンボを見栄え良くしたい場合は、WorldEditでシェマティックを構築してドロップできます。正直なところ、リンボの美観が重要な競争的ネットワークにとって、これは素晴らしいタッチです。

スキンレンダリングはプレイヤーがリンボで互いに見えることを意味します。小さな詳細ですが、プレイヤー体験にとって重要です。誰もデフォルトのSteveを見たくありません。

プロキシフォワーディングは堅牢です。Velocityの最新フォワーディング(セキュアな方法)、BungeeCord従来型フォワーディング(古いインフラストラクチャ上の場合)、BungeeGuard認証によるなりすまし防止をサポートしています。プロキシの後ろにネットワークを実行している場合、PicoLimboはあなたに対抗しません - それは単に持っているものとともに機能します。


誰がこれを使うべきか

正直に言いましょう: PicoLimboはすべての人向けではありません。

PicoLimbo.png
PicoLimbo.png

プレイヤーが直接留まるバニラサバイバルサーバーを実行している場合、チャンク読み込みと他のすべてのMinecraftが提供するものを備えた本物のサーバーが必要です。PicoLimboは役立ちません。

しかし、複数のサーバーまたはゲームモードを使用してネットワークを運用している場合、PicoLimboは素晴らしいです。これを着陸ゾーンとして使用して、プレイヤーが次にどこに行くかを選択します。次のプレイヤーチョイス段階が必要な競争的なサーバーやトーナメントを実行している場合に完璧です。アイドルトラフィックが多く、サーバー請求が増加している場合、これはおそらくそれを半分以上削減します。

プロキシネットワークが主なユースケースですが、一部は、プレイヤーが積極的にプレイしていない間、「接続」したままである必要があるネットワークの専用AFKサーバーを実行しています。PicoLimboのリソース効率により、これは大規模でも実行可能になります。


潜在的な落とし穴とヒント

完璧なものはないため、ここで注意すべき点があります。

プレイヤー数制限は実在します。理論的には最小限のRAMで数百人のプレイヤーを処理できますが、実際の制限はハードウェア、ネットワーク帯域幅、およびプレイヤーが参加および退出する頻度によって異なります。保守的に開始して、必要に応じてスケールアップします。負荷テスト中にサーバーログを監視して、ボトルネックに達するところを確認します。

設定は強力ですが、注意が必要です。プロキシ設定(特に認証フォワーディング)を誤設定すると、プレイヤーが正しく接続できなくなったり、間違ったプレイヤーとして表示される可能性があります。BungeeGuardまたはVelocityフォワーディングを設定するときは、ドキュメントを注意深く読んでください。

シェマティック世界は実験的です。機能は機能しますが、そのように扱います。本番環境で実行している場合は、デプロイする前にシェマティックを徹底的にテストしてください。

最新リリースはMinecraftの更新に確実に対応し続けます。v1.13.1のリリースノートでは、最近のバージョンのblocks.jsonマッピングの修正に言及しているため、メンテナーは新しいリリースに積極的に対応しています。


検討する価値のある代替案

PicoLimboがニーズに合わない場合、チェックする価値があるその他のオプションがあります。

Velocity自体はリンボ機能を処理できますが、より重く、プロキシではなく専用の軽量サーバーとして設計されています。既にVelocityを使用している場合は、個別のサービスを実行する代わりにそこでリンボを処理する可能性があります。

PicoLimboが大多数のネットワークに勝つ理由は単に専門化です。1つのことを行い、ほぼゼロの浪費で行います。


実用的な要点

PicoLimboは、ユースケースが一致する場合に印象的です。パフォーマンスは本当に顕著で、バージョンサポートは広く、設定は非常にシンプルです。ネットワークを管理しており、プレイヤーの軽量なランディングゾーンが必要な場合、テストする価値があります。GitHubプロジェクトには480スター、アクティブなDiscordコミュニティ、および確実なドキュメントがあります - つまり、デッドプロジェクトに賭けているわけではありません。

ネットワーク全体のホワイトリスト管理については、複数のサーバーを処理している場合はMinecraft Whitelist Creatorをチェックしてください。シェマティック世界セットアップに特定のブロックが必要な場合は、Minecraft Block Searchツールで時間を節約できます。

About the author
Alexandru Maftei
Alexandru MafteiLead Writer

Lead writer at minecraft.how. Long-time Minecraft player running a small SMP server, testing every build, mod, and seed before writing about it.

Share with your friends!