Dynmap完全ガイド【2025年11月最新版】マインクラフトサーバーをWeb地図で表示する方法

Dynmap完全ガイド【2025年8月最新版】マインクラフトサーバーをWeb地図で表示する方法

Dynmap完全ガイド【2025年最新版】

マインクラフトサーバーをWeb地図で表示する方法

最終更新: 2025年11月21日

※本記事は2025年11月21日時点の情報です。Dynmap / マイクラ本体 / プラグインは頻繁に更新されます。導入前に必ずバックアップを取り、公式ドキュメント・リリースノートと互換情報を確認してください。

Dynmapは、Minecraftサーバーのワールドをブラウザで可視化するプラグインです。Google Mapsのような操作感で、地形・建築・プレイヤーの位置を把握できます。正しく構成すれば、建築鯖や公開サーバーの回遊性・安全管理に大きく寄与します。

※2025年11月時点の最新版(v3.7系)は、Spigot/Paper向けに 1.10〜1.21.7 対応ビルドが公開されています。実際に導入する際は、必ず自分のサーバーバージョンに合致した.jarを取得してください。

Dynmap表示例

画像出典:幻黒サーバ

目次

Dynmapとは?Web地図システムの魅力

ワールドの全景把握、プレイヤー動線の可視化、イベント案内や観光マーカーの共有など、コミュニティ運営を加速させる機能が揃っています。以下の代表機能は、設定でON/OFFや権限制御が可能です。

リアルタイムマップ

ワールドの変化とチャット/ログを反映

プレイヤー位置

オンライン位置/向きを表示(秘匿も可)

チャット連携

Web→ゲーム内の相互連携(権限必須)

マーカー/アイコン

重要地点/案内板を共有

HD/3D表示

HD/ISO表示で立体的に地形を確認

Dynmap機能

画像出典:ドブクラフト

システム要求と事前準備

サーバー要件(開始目安)

項目最小推奨
CPU2コア4コア+
メモリ4GB8GB+
ストレージSSDNVMe SSD
ネットワーク100Mbps1Gbps

対応サーバー

Spigot / Paper / Purpur(推奨・公式ビルドが豊富)

Bukkit系(一部機能/権限に制限あり)

Forge / Fabric版(MODとして配布される派生あり)

ステップ1:Dynmapプラグインの導入

1 プラグインのダウンロード

  1. SpigotMC Dynmapページを開く
  2. サーバー本体のバージョンに対応した最新版(v3.7系など)を取得
  3. plugins フォルダに .jar を配置

2 初回起動と設定ファイル生成

サーバーを再起動すると、以下の構成が生成されます:

plugins/dynmap/
├── configuration.txt      # メイン設定
├── worlds.txt             # ワールド個別
├── templates/             # HTMLテンプレート
├── web/                   # Web資産(タイル/JS/CSS等)
└── export/                # 画像出力

Dynmap設定構造

画像出典:CurseForge

ステップ2:基本設定の最適化

plugins/dynmap/configuration.txt の代表設定:

Webサーバー

# 組み込みWebサーバー
webserver-bindaddress: 0.0.0.0     # 127.0.0.1にしてリバプロ経由も可
webserver-port: 8123
disable-webserver: false
max-sessions: 50

# HTTPS(組み込みで使う場合のみ。実運用はリバプロ側でTLS終端が一般的)
webserver-keystore: ''
webserver-keystorepassword: ''

レンダリング/タイル

# 品質と負荷(開始値)
deftemplatesuffix: hires
renderinterval: 1               # 定期レンダ間隔(秒)
renderaccelerateinterval: 0.25  # 空き時間レンダ加速
update-renders-per-tick: 0.5    # 1tickあたりの更新量
tiles-rendered-at-once: 2
maxchunkspertick: 120

# キャッシュ/パス
tilespath: tiles
webpath: web

※上記は「開始点」。ワールドサイズ/同接/サーバー性能に応じ、計測しながら段階調整してください。

ステップ3:ワールド設定とマップタイプ

worlds.txt でワールド別に構成します:

worlds:
  - name: world
    title: "メインワールド"
    enabled: true
    extrazoomout: 3
    maps:
      - class: org.dynmap.hdmap.HDMap
        name: flat
        title: "平面"
        perspective: iso_S_90_lowres
      - class: org.dynmap.hdmap.HDMap
        name: surface
        title: "3D"
        perspective: iso_SE_30_hires
        lighting: shadows
  - name: world_nether
    title: "ネザー"
    enabled: true
  - name: world_the_end
    title: "エンド"
    enabled: true

代表マップタイプ

タイプ特徴用途
flat平面俯瞰・軽量全体把握/建築配置
surface等角投影・3D表示地形/建築の立体確認
cave洞窟層の可視化地下資源調査/安全管理
biomeバイオーム色分け環境分布の把握

ステップ4:パフォーマンス最適化

Dynmap初回フルレンダは非常に重く、長時間CPU/ディスクを占有します。少人数/オフピーク時に実行し、範囲を区切って複数回に分けるのが安全です。

レンダリング調整

# 開始点(軽め)→計測で上げる
update-renders-per-tick: 0.5
tiles-rendered-at-once: 1
maxchunkspertick: 100
renderinterval: 2
renderaccelerateinterval: 0.5

ネットワーク/キャッシュ

# 更新頻度を抑制(WebSocket/JSON)
websocket-send-interval: 1000
jsonfile-interval: 5000

# タイル/静的資産のキャッシュを活用
tilespath: tiles
webpath: web

ステップ5:セキュリティとアクセス制御

基本保護

# 信頼プロキシ(Nginx等の逆プロキシを明示)
trusted-proxies:
  - 127.0.0.1
  - ::1

# ログイン/閲覧制御
login-enabled: true
login-required: false           # 公開を制限したい場合は true
player-info-protected: true     # プレイヤー情報の匿名化

権限

# Web権限の例(権限プラグインと連動)
web-permissions:
  default:
    - dynmap.show.self
  viewer:
    - dynmap.show.self
    - dynmap.webchat
  admin:
    - dynmap.*

※座標・発言ログなど個人情報性の高い情報を扱うため、公開サーバーではログイン必須+範囲制限を推奨します。

ステップ6:外部Webサーバーとの連携

本番運用では、Nginx/Apache等のリバースプロキシでTLS終端し、静的タイルの直接配信で負荷を軽減します。

Nginx例(/dynmap 配下)

server {
    listen 443 ssl http2;
    server_name example.com;

    # 省略: ssl_certificate / ssl_certificate_key 等

    # 静的タイルは直接配信
    location /dynmap/tiles/ {
        alias /path/to/plugins/dynmap/web/tiles/;
        access_log off;
        expires 1d;
        add_header Cache-Control "public, max-age=86400";
    }

    # それ以外は組み込みWebへプロキシ
    location /dynmap/ {
        proxy_pass http://127.0.0.1:8123/;
        proxy_http_version 1.1;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_buffering off;
    }
}

CORS/Mixed-Content対策

# すべてHTTPS化。外部CDNを併用する場合は同一スキームを徹底
# 組み込みWebを公開しない場合は、bindaddressを127.0.0.1にし、必ずリバプロ経由にする

ステップ7:マーカーとカスタマイズ

MarkerAPI(プラグイン連携)

// 例:スポーン地点にピンを設置
MarkerAPI api = DynmapAPI.getMarkerAPI();
MarkerSet set = api.createMarkerSet("poi", "重要地点", null, false);
set.createMarker("spawn", "スポーン", "world", 0.5, 64, 0.5, api.getMarkerIcon("home"), false);

UIカスタム(例)

/* plugins/dynmap/web/css/custom.css */
.dynmap { background-color: #0f172a !important; }      /* ダーク背景 */
.leaflet-popup-content { color: #e2e8f0; }

高度な設定オプション

複数ワールド/ディメンション

# worlds.txt の例
worlds:
  - name: world
    title: "オーバーワールド"
  - name: world_nether
    title: "ネザー"
    protected: true
  - name: world_the_end
    title: "エンド"
    bigworld: true

プラグイン連携

# 更新/リージョン連携(例)
component:
  - class: org.dynmap.InternalClientUpdateComponent
  - class: org.dynmap.ClientUpdateComponent
  - class: org.dynmap.regions.RegionHandler

よくあるトラブルシューティング

Q: マップが真っ白で表示されない

A: レンダが未完了か、/dynmap の配信が逆プロキシで遮られています。 /dynmap fullrender <world> をオフピークで実行し、Nginxの /dynmap/ → 8123 のプロキシ設定を再確認してください。

Q: プレイヤーの位置が更新されない

A: 設定の hide-players / player-info-protected、 権限/プライバシー項目、WebSocket周りを確認。権限プラグイン連携が必要な場合があります。

Q: サーバーが重い/チャンク生成が詰まる

A: レンダ設定(maxchunkspertick / tiles-rendered-at-once)を下げ、フルレンダはオフピークに分割実行。静的タイルのキャッシュ/直配信で帯域を節約してください。

Q: 外部アクセスできない

A: 8123/TCP の開放、SELinux / ufw / iptables の許可、Nginxの proxy_set_header 群(特に Upgrade / Connection)の設定を確認してください。

パフォーマンス監視とメンテナンス

定期メンテナンス

  • 古いタイル/キャッシュの整理
  • ログのローテーション
  • Dynmap/本体/依存プラグインの更新
  • バックアップの整合性テスト

監視すべき指標

# 代表項目(プラグインや外部監視で可視化)
show-TPS: true                   # TPSが下がる時間帯/操作を特定
block-on-fullrender: false       # フルレンダでゲーム側を停止しない
parallelrendercnt: 2-4           # CPUコアに合わせて調整

おすすめのサーバーホスティングサービス

DynmapはCPU/ディスク/帯域に負荷がかかるため、余裕のあるプランを推奨します。以下の料金・プラン情報は、各社公式サイトおよび比較記事の2025年6〜7月時点の目安であり、最新料金は必ず公式サイトで確認してください。

高性能サーバーが必要な場合

XServer VPS for Game

ゲーム特化VPS。Paper + Dynmapの標準構成が組みやすく、マイクラ用テンプレや管理ツールも用意されています。

  • 2GBプラン月額830円〜(長期契約時の目安)
  • NVMe SSD / 国内リージョン

XServer VPS for Game 公式サイト

ConoHa for GAME

時間課金に対応した柔軟なゲーム向けサーバー。スモールスタート〜負荷に応じた拡張がしやすい構成です。

  • 2GBプラン目安:月額500円前後〜(キャンペーン込み)
  • マイクラテンプレ/管理パネルあり

ConoHa for GAME 公式サイト

コスト重視の場合

さくら VPS

安定基盤と国内サポートが強み。Dynmapの負荷に合わせて段階的にスペックを上げていけます。

  • 低価格プランから始めて必要に応じてプランアップ
  • バックアップオプションも用意

さくら VPS 公式サイト

KAGOYA CLOUD VPS

日額課金にも対応した柔軟なVPS。Dynmapの初回フルレンダ時だけ上位プランに切り替える、といった運用も取りやすいです。

  • 2GBクラスで月額500〜600円台のプランあり(2025年中盤時点)
  • NVMe / 国内DC

KAGOYA CLOUD VPS 公式サイト

CPUコア数・クロック、NVMe I/O、上り帯域に余裕を持たせると、タイル生成/配信が滑らかになります。最新のキャンペーンや料金は、必ず各社公式ページで確認してください。

まとめ

Dynmapは、サーバー可視化・コミュニティ活性化・安全管理に非常に有効ですが、負荷が高いプラグインでもあります。まずは軽い設定から始め、実測値を見ながら段階調整するのが安全です。

公開運用では、ログイン必須や匿名化、TLS終端、逆プロキシ配信でのセキュアな公開を徹底してください。障害時に備え、バックアップ/監視/再起動の自動化も標準化しておくと安心です。

重要なポイント

  • 軽設定 → 実測 → 段階調整
  • フルレンダはオフピークに分割実行
  • リバプロ+TLS+権限で安全公開
  • NVMe / 上り帯域 / CPUコアに余裕を持つ

免責事項:本記事は2025年11月21日時点の情報に基づきます。設定名や挙動はビルド/バージョンにより差異が出る場合があります。最新のドキュメント・リリースノートをご確認ください。

© 2025 Dynmap完全ガイド. All rights reserved.

目次