【2026年1月最新】Purpurサーバー完全ガイド|導入から設定まで徹底解説

目次

冒頭の直接回答

Purpurサーバーは、Spigot互換のプラグイン基盤(Bukkit/Spigot API)を維持しつつ、Paperをベースに軽量化・最適化カスタマイズ性を強化したMinecraft(Java版)向けサーバーソフトウェアです。Paper/Spigot互換プラグインがそのまま使えるケースが多く、さらにpurpur.ymlでゲーム挙動や負荷対策を細かく調整できます。

要点

  • 位置づけ:Spigot →(最適化)Paper →(追加カスタム)Purpur
  • 互換性:基本はPaper/Spigot向けプラグインが利用可能(ただし例外あり)
  • おすすめ用途:バニラより軽快に、かつ“細かいサーバールール”を作り込みたいマルチ運営
  • 導入の流れ:Java(推奨:21)→ Purpur.jar取得 → EULA同意 → 起動 → 権限/プラグイン/最適化
  • 2026年1月の目安:Minecraft Java版の最新版は1.21.11(サーバー運用もこの系統が中心)

Purpurサーバーとは

開発背景と位置づけ

PurpurはPaperプロジェクトをフォークして開発されたサーバーソフトウェアで、Paperの最適化や修正方針を土台にしつつ、運営者向けの追加設定(purpur.yml)を多く提供します。目的は「重くなりがちなマルチ環境でもTPSを保ちやすくすること」と「運営ルールに合わせてゲーム挙動を細かく調整できること」を両立させることです。

ざっくり言うと、バニラ(公式)→ Spigot(プラグイン)→ Paper(最適化)→ Purpur(追加カスタム)という位置づけで考えると理解しやすいです。

主要な特徴

  • Paper/Spigot互換:既存のプラグイン資産を活かしやすい
  • purpur.yml:エンティティ挙動・AI・アイテム挙動など、運営ルールに合わせた微調整が可能
  • 負荷対策の選択肢が多い:Mobの挙動や処理の間引き、視界設定などを組み合わせて最適化できる
  • 運営のしやすさ:ログ、権限管理、バックアップ運用など“現場で困りやすい点”を改善しやすい
  • 注意点:設定の自由度が高いぶん、いきなり弄りすぎると挙動が変わりすぎたり、プラグインと衝突することがある(段階的に調整が安全)

Purpur・Paper・Spigotの比較

「どれを選べばいい?」は、目的(軽さ・互換性・カスタム度)で決めるのが最短です。以下は運営視点の比較です。

項目SpigotPaperPurpur
プラグイン互換高い高い高い(Paper互換が前提)
パフォーマンス標準高い高い(設定次第で調整幅が広い)
カスタマイズ限定的設定は増えるさらに増える(purpur.yml)
初心者の難易度低〜中中〜高(設定項目が多い)
おすすめ互換性最優先軽さ重視軽さ+ルール作り込み

どのソフトウェアを選ぶべきか

  • とにかく安定に動かしたい・軽くしたい:まずはPaper(設定は最小限から)
  • Paper運営で「あと一歩」調整したい:Purpur(purpur.ymlで段階的に調整)
  • 互換性最優先で“昔からの資産”が多い:Spigot(ただし負荷が上がりやすい)

Purpurサーバーの導入手順

動作環境の確認

PurpurはJavaで動作します。最低限、次の条件を満たすと安定しやすいです。

  • OS:Windows / Linux(Ubuntu, Debianなど)/ macOS
  • CPU:高クロックが有利(コア数より1コア性能が効く場面が多い)
  • メモリ:少人数なら4GB〜、プラグイン多め/人数多めなら8GB〜推奨(後述)
  • 回線:上り(アップロード)も重要。VPSなら国内回線の安定がメリット

Javaのインストール

2026年1月時点のMinecraft(Java版)1.21系サーバー運用では、Java 21が基本の前提として扱われるケースが多いです。Javaを入れたら、まずはバージョン確認をしておくとトラブルが減ります。

java -version

表示例で「21.x」などが出ればOKです。Windowsの場合はPATH設定が原因で“古いJavaが呼ばれている”ことがあるので、複数Javaが入っている人は起動用bat/shで明示パス指定する運用が安全です。

Purpurのダウンロードと初期設定

Purpurは公式ダウンロードページ、またはダウンロードAPIから取得できます。運用では「最新版ビルドをAPIから取ってくる」方式が簡単です(毎回URLが一定)。ここではMinecraft 1.21.11の最新版ビルドを取得する例を示します。

# Linux/macOS例(サーバーフォルダ内で実行)
wget -O purpur.jar https://api.purpurmc.org/v2/purpur/1.21.11/latest/download

Windowsの場合はブラウザで上記URLを開いて保存するか、PowerShellのcurl(Invoke-WebRequest)でも取得できます。

# Windows PowerShell例
iwr -Uri "https://api.purpurmc.org/v2/purpur/1.21.11/latest/download" -OutFile "purpur.jar"

次に初回起動を行います。起動すると同階層にeula.txtが生成されるので、内容を確認した上でeula=trueに変更して再起動します。

# まずはEULA生成まで起動(例:4GB割り当て)
java -Xms2G -Xmx4G -jar purpur.jar nogui

同意後は次のように起動します。

java -Xms2G -Xmx4G -jar purpur.jar nogui

サーバーが起動したら、server.propertiesでサーバー名や難易度、オンラインモードなどを調整します(後述)。

関連動画(日本語)

Purpur独自の設定ファイル解説

purpur.ymlの基本構造

Purpurの特徴はpurpur.yml(加えてバージョンによりconfig/purpur.ymlのような階層の場合もあります)にあります。ここには「エンティティごとの挙動」「ゲームルール寄りの細かな調整」「負荷対策」のような項目が並びます。

基本的には次の考え方で安全に進めると失敗しにくいです。

  • 最初は何も変えずに数時間運用し、TPSとラグの原因を把握する
  • 次に“負荷が高い要素(Mob、ホッパー、レッドストーン、トロッコ等)”を1項目ずつ調整する
  • 挙動が変わったら必ず「何を変えたか」をメモして戻せるようにする(バックアップ推奨)

実用的な設定例

村人の取引リセット防止

world-settings:
  default:
    mobs:
      villager:
        lobotomize:
          enabled: false

エンダーマンのブロック持ち去り無効化

world-settings:
  default:
    mobs:
      enderman:
        can-take-blocks: false

経験値オーブの統合(パフォーマンス改善)

world-settings:
  default:
    gameplay-mechanics:
      merge-radius:
        exp: 4.0

プレイヤー接続メッセージのカスタマイズ

settings:
  messages:
    player-join: "<green><player> がサーバーに参加しました"
    player-quit: "<red><player> がサーバーから退出しました"

公式ドキュメント:https://purpurmc.org/docs/

以下は“方針例”です。サーバーのコンセプト(バニラ寄り・PvP・経済・ミニゲーム等)で正解が変わるため、いきなり強く制限せず段階的に適用してください。

例:AFK放置やMob密集に強くする

  • エンティティ上限(mob caps)やアクティベーション範囲を見直す
  • ホッパー/チェストの過密を避ける(運営ルールで制限・監視)
  • スライムチャンク/トラップタワーの稼働ルールを決める(時間帯・人数制限)

プラグインの導入方法

Purpur対応プラグインの選び方

PurpurはPaper互換なので、基本はPaper向けプラグインを優先すると相性が良いです。選定時は次のポイントを確認してください。

  • 対応バージョン:Minecraft 1.21系(特に最新パッチ)対応か
  • 最終更新日:長期放置のプラグインは不具合が出やすい
  • 依存関係:Vault、ProtocolLibなど前提があるか
  • 競合:同じ領域(チャット、権限、保護など)を複数入れると衝突しやすい

プラグインのインストール手順

基本は非常にシンプルです。

  • pluginsフォルダにプラグイン(.jar)を入れる
  • サーバーを再起動(またはリロードではなく再起動推奨)
  • 生成された設定ファイル(plugins/プラグイン名/)を編集
  • もう一度再起動して反映

特に運営初期は「リロードで済ませる」よりも、停止→起動で確実に反映した方がトラブルが減ります。

推奨プラグイン

用途別の“定番”を挙げます(サーバー方針に合わせて取捨選択してください)。

  • 権限:LuckPerms
  • 保護:GriefPrevention / WorldGuard(構成次第)
  • 経済:Vault + Essentials系 / Economyプラグイン
  • ログ監査:CoreProtect
  • 原因調査:spark

関連動画(日本語)

パフォーマンス最適化設定

メモリ割り当ての最適化

まずは安定稼働の基本であるメモリ割り当てを整えます。少なすぎるとGCが頻発し、多すぎるとOS側が重くなることがあります。

目安(プラグイン少なめ):

  • 少人数(〜4人)… Xmx 4GB
  • 中規模(5〜15人)… Xmx 6〜8GB
  • 大規模(16人〜)… Xmx 10GB〜(プラグイン/ワールド規模で変動)

起動引数は環境によって最適解が違うため、テンプレ(Aikar Flags等)を鵜呑みにせず、sparkなどで“実測”して決めるのが確実です。

推奨起動コマンド(8GBメモリ環境)

java -Xms6G -Xmx6G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar purpur.jar --nogui

メモリ割り当ての目安

  • 10人以下:2〜4GB
  • 10〜30人:4〜8GB
  • 30〜50人:8〜12GB
  • 50人以上:12GB以上

server.propertiesの最適化

server.propertiesは最優先で見直すべき設定が多いです。特に負荷に直結しやすいのは次の3つです。

  • view-distance:遠くまで読み込むほど重い
  • simulation-distance:Mob/赤石/作物等の“処理範囲”に直結
  • max-players:上限を適切に。無制限にしない

目安として、人数が増えたらまずはsimulation-distanceを下げるのが効きやすいです(体感差が少ないことが多い)。

purpur.ymlのパフォーマンス設定

Purpurは“運営で実際に困る”負荷要素に対して、調整項目を多く提供しています。代表例は次の通りです。

  • Mob関連:AIや挙動の簡略化、湧きの制御
  • アイテム関連:落下アイテムのスタック・消滅、ホッパー搬送ルール
  • 高速移動:エリトラ/トロッコ等で同期負荷が出るケースの緩和

ただし“やりすぎるとゲーム性が変わる”ので、まずはPaper側設定(paper-global.yml等)を整えてから、最後の仕上げにPurpur項目を触る流れが安全です。

トラブルシューティング

サーバーが起動しない

  • Javaバージョン不一致:まずjava -versionで確認(古いJavaが呼ばれていないか)
  • EULA未同意eula.txtを開いてeula=trueにする
  • jarの取り違え:purpur.jarが正しく保存できているか(サイズが極端に小さい場合は失敗)
  • メモリ不足:Xmxを下げる/上げる、またはVPSのプランを見直す

プラグインが動作しない

  • 対応バージョン確認:1.21系対応の配布物か
  • 依存プラグイン不足:Vault/ProtocolLib等の前提を満たす
  • ログ確認:起動ログのエラー(Missing dependency等)を読む
  • 競合切り分け:怪しいプラグインを一時退避して再起動

接続できない(外部からのアクセス)

VPS運用で多いのが“ポート開放”と“ホスト名間違い”です。

  • 接続先:VPSのグローバルIP(またはドメイン)
  • ポート:デフォルトは25565(変更したなら「IP:ポート」で接続)
  • FW/セキュリティグループ:VPS側で25565/TCPが許可されているか
  • server.propertiesserver-ipは通常“空欄”が安全(固定すると繋がらない原因になる)

TPS低下の対策

  • まずsparkで原因特定(エンティティ/タイルエンティティ/プラグイン処理のどれが重いか)
  • 視界設定:simulation-distanceの見直し
  • 装置・トラップの運用ルール:ホッパー過密や無限増殖の抑制
  • プラグイン棚卸し:使ってない機能は外す

サーバー診断ツールの活用

ラグ対策は“勘”より計測が重要です。定番は次の2つです。

  • spark:サーバー負荷の原因特定(CPU/タスク/エンティティ)
  • Timings:Paper系のパフォーマンス解析

重い原因が「Mob」「ホッパー」「特定プラグイン」「ワールド生成」など、どこにあるかを把握してから設定変更すると、無駄な改変を減らせます。

Purpurサーバーに最適なホスティングサービス

目次