Dynmapの使い方と設定
このページではDynmapの使い方、導入方法、コマンド、パーミッション、設定などを解説します。
プラグイン名 | Jecon |
---|---|
開発者 | mikeprimm |
配布場所 | BukkitDev, SpigotMC |
ライセンス | Apache License 2.0 |
ソースコード | GitHub(webbukkit/dynmap) |
執筆時バージョン | v3.0-beta-5 (Spigot 1.14.4) |
備考 | なし |
スポンサーリンク
目次
Dynmapとは
Dynmapはサーバーにブラウザから閲覧できるマップを導入するプラグインです。
どのように動作するかは当サイト管理人の運営するサーバーのマップを見ていただければ分かりやすいと思います。→実際の例
使い方
導入して設定を済ませてしまえば基本的に何かを操作する必要などはありません。
ブロックの設置や破壊に連動してマップが更新されるため、常に新しい状態のマップが表示されます。
新しいマップを追加した時などには最初に/dynmap fullrender
を実行する必要があります。
導入方法
Dynmapには前提プラグインなどは必要ありません。
SpigotMCなどからプラグインをダウンロードして設定を行ってください。
導入後はhttp://サーバーのアドレス:8123/
にアクセスするとマップが表示されます。
コマンド
< >は必須、[ ]はオプションの引数です。
Dynmapは/dynmap
、/dmarker
、/dmap
の3つのコマンドで操作します。
まずは/dynmap
系のコマンドから。
コマンド | パーミッション | 説明 |
---|---|---|
/dynmap hide | dynmap.hide.self | 自分をマップ上から非表示にします |
/dynmap hide <プレイヤー名> | dynmap.hide.others | 指定したプレイヤーをマップ上から非表示にします |
/dynmap show | dynmap.show.self | 自分の非表示状態を解除します |
/dynmap show <プレイヤー名> | dynmap.show.others | 指定したプレイヤーの非表示状態を解除します |
/dynmap render | dynmap.render | 自分が立っている場所をレンダリングします |
/dynmap fullrender [世界名] | dynmap.fullrender | 指定した世界全体をレンダリングします マップ種類を指定する事も可能(例: world:surface) コンソールから実行する場合は世界名必須 |
/dynmap radiusrender [<世界名> <x> <z>] <半径> [マップ名] | dynmap.radiusrender | 指定した座標を中心に指定した半径分レンダリングします 座標を省略した場合は自分を中心にレンダリング マップ名(例: surface)を指定することでそのマップのみレンダリング |
/dynmap updaterender [<世界名> <x> <z>] [マップ名] | dynmap.updaterender | 指定した座標を起点に更新が必要なタイルをレンダリングします 座標を省略した場合は自分を起点にレンダリング マップ名(例: surface)を指定することでそのマップのみレンダリング |
/dynmap cancelrender [世界名] | dynmap.cancelrender | 指定した世界で実行されているレンダリングを停止 |
/dynmap purgequeue [世界名] | dynmap.purgequeue | 指定した世界の更新キューを削除します |
/dynmap purgemap <世界名> <マップ名> | dynmap.purgemap | 指定したマップの画像データを削除します |
/dynmap purgeworld <世界名> | dynmap.purgeworld | 指定した世界のすべての画像データを削除します |
/dynmap pause [all/none/full/update] | dynmap.pause | レンダリングのポーズ状態を確認/変更します |
/dynmap stats | dynmap.stats | レンダリングの統計情報を確認します |
/dynmap triggerstats | dynmap.stats | レンダリングトリガーの統計情報を確認します |
/dynmap resetstats | dynmap.resetstats | レンダリングの統計情報をリセットします |
/dynmap quiet | dynmap.quiet | 実行中のレンダリングの進捗メッセージを停止します |
/dynmap sendtoweb <メッセージ> | dynmap.sendtoweb | Web画面にメッセージを送信します |
/dynmap ids-for-ip <IPアドレス> | dynmap.ids-for-ip | 指定したIPアドレスのプレイヤーを確認します |
/dynmap ips-for-id <プレイヤー名> | dynmap.ips-for-id | 指定したプレイヤーのIPアドレスを確認します |
/dynmap add-id-for-ip <プレイヤー名> <IPアドレス> | dynmap.add-id-for-ip | IPアドレスとプレイヤー名の紐づけを追加します |
/dynmap del-id-for-ip <プレイヤー名> <IPアドレス> | dynmap.del-id-for-ip | IPアドレスとプレイヤー名の紐づけを削除します |
/dynmap webregister <プレイヤー名> | dynmap.webregister | Webログインアカウントの登録プロセスを開始します |
/dmarker
はマーカーを操作するコマンドです。
コマンド | パーミッション | 説明 |
---|---|---|
/dmarker add [id:<id>] <ラベル> [icon:<アイコン>] [set:<セットID>] [x:<x> y:<y> z:<z> world:<世界名>] | dynmap.marker.add | 指定位置に新しいマーカーを追加します。 位置を指定しない場合は現在地を使用 アイコンやセットを指定するとそれが使用されます |
/dmarker movehere <ラベル/id:<id>> | dynmap.marker.movehere | 指定したマーカーを現在地まで移動させます |
/dmarker update <ラベル/id:<id>> [icon:<アイコン>] [newlabel:<ラベル>] | dynmap.marker.update | マーカーを更新します |
/dmarker delete <ラベル/id:<id>> | dynmap.marker.delete | マーカーを削除します |
/dmarker list [set:<セットID>] | dynmap.marker.list | マーカーの一覧を表示します |
/dmarker icons | dynmap.marker.icons | アイコンの一覧を表示します |
/dmarker addset [id:<id>] <ラベル> [hide:<true/false>] [prio:<優先度>] [minzoom:<最小ズーム>] | dynmap.marker.addset | 新しいセットを追加 IDを指定しなかった場合はラベルがIDになる |
/dmarker updateset <ラベル/id:<id>> [newlabel:<ラベル>] [hide:<true/false>] [prio:<優先度>] [minzoom:<最小ズーム>] | dynmap.marker.updateset | セットを更新します |
/dmarker deleteset <ラベル/id:<id>> | dynmap.marker.deleteset | セットを削除します |
/dmarker listsets | dynmap.marker.listsets | セットの一覧を表示します |
/dmarker addicon id:<id> <ラベル> file:"<ファイル名>" | dynmap.marker.addicon | アイコンを追加します ファイル名はサーバーのディレクトリを基準に処理され、ファイルはコピーされます |
/dmarker updateicon <ラベル/id:<id>> newlabel:<ラベル> file:"<ファイル名>" | dynmap.marker.updateicon | アイコンを更新します |
/dmarker deleteicon <ラベル/id:<id>> | dynmap.marker.deletearea | アイコンを削除します |
/dmarker addcorner [<x> <z> <世界名>] | dynmap.marker.addarea | 指定した位置をコーナーリストに追加します |
/dmarker clearcorners | dynmap.marker.addarea | コーナーリストをクリアします |
/dmarker addarea [id:<id>] <ラベル> | dynmap.marker.addarea | 現在のコーナーリストの内容でエリアを作成します |
/dmarker deletearea <ラベル/id:<id>> | dynmap.marker.deletearea | 指定したエリアを削除します |
/dmarker listareas <ラベル/id:<id>> | dynmap.marker.listareas | エリアのリストを表示します |
/dmarker updatearea <ラベル/id:<id>> [引数:値 ...] | dynmap.marker.updatearea | 指定したエリアの属性を更新します。指定できる属性は以下の通り
|
/dmarker addline [id:<id>] <ラベル> | dynmap.marker.addline | 現在のコーナーリストの内容でラインを作成します |
/dmarker deleteline <ラベル/id:<id>> | dynmap.marker.deleteline | 指定したラインを削除します |
/dmarker listlines | dynmap.marker.listlines | リストの一覧を表示します |
/dmarker updateline <ラベル/id:<id>> [引数:値 ...] | dynmap.marker.updateline | 指定したラインの属性を更新します。指定できる属性は以下の通り
|
/dmarker addcircle [id:<id>] <ラベル> radius:<半径> [x:<x> y:<y> z:<z> world:<世界名>] | dynmap.marker.addcircle | 指定した半径で円を作成します |
/dmarker deletecircle <ラベル/id:<id>> | dynmap.marker.deletecircle | 指定した円を削除します |
/dmarker listcircles | dynmap.marker.listcircles | 円の一覧を表示します |
/dmarker updatecircle <ラベル/id:<id>> [引数:値 ...] | dynmap.marker.updatecircle | 指定した円の属性を更新します。指定できる属性は以下の通り
|
/dmarker getdesc <ラベル/id:<id>> type:<icon/area/circle/line> | dynmap.marker.getdesc | 指定したマーカーの説明を取得します |
/dmarker resetdesc <ラベル/id:<id>> type:<icon/area/circle/line> | dynmap.marker.resetdesc | 指定したマーカーの説明を削除します |
/dmarker appenddesc <ラベル/id:<id>> type:<icon/area/circle/line> desc:"<テキスト>" | dynmap.marker.appenddesc | 指定したマーカーの説明を追加します |
/dmarker importdesc <ラベル/id:<id>> type:<icon/area/circle/line> file<ファイル名> | dynmap.marker.importdesc | 指定したマーカーの説明をインポートします |
/dmarker importlabel <ラベル/id:<id>> type:<icon/area/circle/line> file<ファイル名> | dynmap.marker.importlabel | 指定したラベルをインポートします |
/dmarker getlabel id:<id> type:<icon/area/circle/line> | dynmap.marker.getlabel | 指定したラベルのIDを取得します |
/dmap
はマップを操作するコマンドです。
コマンド | パーミッション | 説明 |
---|---|---|
/dmap worldlist | dynmap.dmap.worldlist | Dynmapが認識しているすべてのワールドを表示 |
/dmap worldset <世界名> <引数>:<値> | dynmap.dmap.worldset | 指定した世界の属性を変更。指定できる属性は以下の通り
|
/dmap worldreset <世界名> [テンプレート名] | dynmap.dmap.worldreset | 指定した世界の設定をテンプレート設定にリセット |
/dmap maplist <世界名> | 不明 | 指定した世界のすべてのマップを表示 |
/dmap mapdelete <世界名>:<マップ名> | dynmap.dmap.mapdelete | 指定した世界のマップを削除 |
/dmap mapadd <世界名>:<マップ名> [引数:値 ...] | dynmap.dmap.mapadd | 指定した属性でマップを追加。指定できる属性はmapsetと同じ |
/dmap mapset <世界名>:<マップ名> <引数>:<値> | dynmap.dmap.mapset | 指定したマップの属性を変更。指定できる属性は以下の通り
|
/dmap perspectivelist | dynmap.dmap.perspectivelist | 定義されているすべてのパースペクティブを一覧表示する |
/dmap shaderlist | dynmap.dmap.shaderlist | 定義されているすべてのシェーダーを一覧表示する |
/dmap lightinglist | dynmap.dmap.lightinglist | 定義されているすべての照明を一覧表示 |
パーミッション
コマンド以外のパーミッションには以下の物があります。
パーミッション | 説明 |
---|---|
dynmap.* | すべてのパーミッションを一括設定 |
dynmap.marker.sign | 看板を使用したマーカーの作成を許可 |
dynmap.webchat | Webからのチャットを許可(ログインかid-by-ipが必要) |
dynmap.playermarkers.seeall | 設定でprotected-player-infoがtrueの場合にプレイヤーの位置を見られる |
dynmap.world.<世界名> | 世界が保護対象に設定されている場合に世界のマップを閲覧できる |
dynmap.map.<世界名>.<マップ名> | マップが保護対象に設定されている場合にマップを閲覧できる |
設定
Dynmapはデフォルトのままでも問題なく使えますが、細かく設定することも可能です。
いくつかの設定ファイルがあるのですが、基本的に使用するのはconfiguration.txt
のみで、他は更なるカスタマイズを施したい時に使用します。
その他いくつかの設定なども解説しておきます。
セットの追加
Dynmapはマップ上にマーカーやラインを追加できます。(/dmarkerコマンドを参照)
これらの機能を利用して施設などをマップ上からわかるようにすると利便性は向上しますが、その一方で無造作に追加するとマップが見づらくなってしまいます。
そこで、マーカーにセットを設定してマーカーを種類ごとに表示/非表示の切り替えをできるようにすると良いでしょう。
セットの追加は/dmarker addset <ラベル> [id:<id>]
で可能です。ラベルとはWeb上で表示される名前、idはコマンドなどで指定する際の名前です。
(idは省略可能ですが、ラベルに日本語を使う場合は設定しておいた方がいいでしょう。省略した場合はラベル名がそのままidになります)
たとえば、ラベル「駅」、id「station」のセットを追加するには/dmarker addset 駅 id:station
と指定します。
このセットにmarkerを追加するには、各種コマンドでset:<id>
を指定します。
たとえば、/dmarker add id:station-1 主要駅 icon:minecart set:station
のように
追加したセットに大量のマーカーが登録され、そのままだと見づらいのでデフォルトで非表示にしたいときはupdateset
でhide:true
を追加します。
/dmarker updateset id:station hide:true
のように使います。ちなみに、hide:false
を指定するとデフォルトで表示(元の状態)に戻せます。
ラベル名を変更する際もupdateset
で可能です。削除して再登録だと登録済みのマーカーが消えてしまいますが、名前変更であれば登録済みのマーカーも維持されます。
たとえば駅から鉄道に変更するには/dmarker updateset id:station newlabel:鉄道
のように使います。
セットの削除はdeleteset
です。/dmarker deleteset id:station
のように使います。
セットの一覧は/dmarker listsets
で表示できます。
Caveなどの削除
デフォルトで用意されているCaveマップは地中が見えるマップです。
しかし、地中が見えてもメリットがないので消したいとか、難易度が狂うので消したいという人も居るでしょう。
Caveマップの削除はコマンドで簡単にできます。
- /dynmap pause all
- /dynmap purgemap <マップ名> cave
- /dmap mapdelete <マップ名>:cave
- /dynmap pause none
pauseでマップの更新を止めてからでないとpurgemapやmapdeleteはできません。
たとえば、worldのcaveを削除するには次のようにコマンドを実行します。
- /dynmap pause all
- /dynmap purgemap world cave
- /dmap mapdelete world:cave
- /dynmap pause none
Cave以外も同様の手法で削除できます。
保存場所の移動
たとえば、MinecraftサーバーをSSDで動かしており、書き込みを減らす(寿命を延ばす)ためにDynmapのデータはHDDに移動したいなどの場合にはいくつかの方法があります。
1つめはストレージにSQLiteを使用してdbfile
を変更する例です。
storage:
type: sqlite
dbfile: "../../../hdd/dynmap.db"
dbfile
は../
を利用して上のディレクトリに移動することが可能なため、これでHDDをマウントしたディレクトリにファイルを移動できます。
しかし、この方法は恐らく開発者が想定したような使い方ではないでしょうし、とくにメリットもないのに保存方法をSQLiteに変更する必要があります。
個人的に無難でオススメなのはシンボリックリンクを使う方法です。
mv -v /minecraft/plugins/dynmap/web/tiles /hdd/tiles
ln -sv /hdd/tiles /minecraft/plugins/dynmap/web/tiles
dynmap側の設定変更などは不要です。strageはfiletreeのままで構いません。
storage:
type: filetree
このようにすることで、dynmap側には元の位置にファイルがあると見せかけたまま、実際にはHDD上に保存する。という事が可能です。
ちなみに、mvとlnでは引数の順番が逆なので気を付けましょう。
URLの変更、HTTPS化
DynmapそのものにはURLを変更する機能もHTTPSで提供する機能もありません。
そのため、DynmapでURLを変更したりHTTPS化したい場合にはnginxやApacheなどのWebサーバーを用意してリバースプロキシという機能を使う必要があります。
これに関しては解説すると長くなるので、ここでは実際の設定例を掲載しておくだけにします。
これはnginxでの例です。
server {
listen 80;
listen [::]:80;
server_name example.com;
location ^~ /dynmap/ {
proxy_pass http://Minecraftサーバーのアドレス:8123/;
}
}
Apacheでの例。
<VirtualHost *:80>
ServerName example.com;
ProxyPass /dynmap/ http://Minecraftサーバーのアドレス:8123/
ProxyPassReverse /dynmap/ http://Minecraftサーバーのアドレス:8123/
</VirtualHost>
これらの設定でhttp://サイトアドレス/dynmap/
にアクセスすることでDynmapが表示されるようになります。
configuration.txt
設定の種類が多いため、ここでは日本語化した設定ファイルを掲載しておきます。
# 画質の設定、テンプレート設定はtemplatesディレクトリにある
# 設定できる値は以下の通り
# vlowres: 超低解像度(2 ppb)
# lowres: 低解像度(4 ppb)
# hires: 高解像度(16 ppb)
# low_boost_hi: 低解像度(4 ppb)と高解像度(16 ppb)を組み合わせて使う
# hi_boost_vhi: 高解像度(16 ppb)と超高解像度(32 ppb)を組み合わせて使う
# hi_boost_xhi: 高解像度(16 ppb)と超々高解像度(64 ppb)を組み合わせて使う
# ppb=おそらくpixel per blockの意味だと思われる。
deftemplatesuffix: hires
# 保存方法の指定
# filetree: ファイルに保存
# sqlite: 単一の(巨大な)sqliteファイルとして保存
# mysql: mysqlに保存
storage:
# 種類の指定
type: filetree
# SQLiteの場合はdbfileで保存先指定
#type: sqlite
#dbfile: dynmap.db
# MySQLの場合は接続情報などが必要
#type: mysql
#hostname: localhost
#port: 3306
#database: dynmap
#userid: dynmap
#password: dynmap
#prefix: ""
#flags: "?allowReconnect=true"
components:
- class: org.dynmap.ClientConfigurationComponent
- class: org.dynmap.InternalClientUpdateComponent
sendhealth: true
sendposition: true
allowwebchat: true
webchat-interval: 5
hidewebchatip: false
trustclientname: false
includehiddenplayers: false
# オプション: trueの場合、プレイヤーの表示名のカラーコードが使用される
use-name-colors: false
# オプション: trueの場合、IPが一致するとプレーヤーのログインIDがWebチャットに使用される
use-player-login-ip: true
# オプション: use-player-login-ipがtrueの場合にこれをtrueに設定すると、既知のプレーヤーのIPと一致しないチャットメッセージが無視される。
require-player-login-ip: false
# オプション: チャットを禁止されているユーザーのログインIDをブロック
block-banned-player-chat: true
# Webからサーバーへのチャットにログインが必要か
webchat-requires-login: false
# trueの場合Webチャットにdynmap.webchatパーミッションが必要になる
webchat-permissions: false
# 単一のチャットメッセージの長さを制限
chatlengthlimit: 256
# # オプション: 暗所や地下に居るときにプレイヤーを隠す
# hideifshadow: 4
# # オプション: プレイヤーが隠れている場合に非表示になる(明るさレベルで判定)
# hideifundercover: 14
# オプション: trueの場合スニーク中のユーザーが非表示になる
hideifsneaking: false
# trueの場合、プレイヤーの位置や状態が保護される(dynmap.playermarkers.seeallを持つIDでログインしないと非表示になる)
protected-player-info: false
# trueの場合、不可視ポーションを使っているユーザーを非表示にする
hide-if-invisiblity-potion: true
# trueの場合、プレイヤー名がマップ、チャット、リストに表示されなくなる
hidenames: false
#- class: org.dynmap.JsonFileClientUpdateComponent
# writeinterval: 1
# sendhealth: true
# sendposition: true
# allowwebchat: true
# webchat-interval: 5
# hidewebchatip: false
# includehiddenplayers: false
# use-name-colors: false
# use-player-login-ip: false
# require-player-login-ip: false
# block-banned-player-chat: true
# hideifshadow: 0
# hideifundercover: 0
# hideifsneaking: false
# # Webからサーバーへのチャットにログインが必要か
# webchat-requires-login: false
# # trueの場合Webチャットにdynmap.webchatパーミッションが必要になる
# webchat-permissions: false
# # 単一のチャットメッセージの長さを制限
# chatlengthlimit: 256
# hide-if-invisiblity-potion: true
# hidenames: false
- class: org.dynmap.SimpleWebChatComponent
allowchat: true
# trueの場合、Web UIユーザーは "playername"パラメーターを使用してチャットの名前を指定できるようになる。
# "trustclientname"もtrueに設定する必要がある。
allowurlname: false
# この設定はdmarkerやAPIなどに必要
- class: org.dynmap.MarkersComponent
type: markers
showlabel: false
enablesigns: false
# 看板で追加したマーカーのデフォルトセット
default-sign-set: markers
# オプション: スポーンポイントマーカーを表示する設定
showspawn: true
spawnicon: world
spawnlabel: "Spawn"
# オプション: ログアウト後のプレイヤーを一定時間表示する設定
showofflineplayers: false
offlinelabel: "Offline"
offlineicon: offlineuser
offlinehidebydefault: true
offlineminzoom: 0
maxofflinetime: 30
# オプション: プレイヤーのベッドを表示する設定
showspawnbeds: false
spawnbedlabel: "Spawn Beds"
spawnbedicon: bed
spawnbedhidebydefault: true
spawnbedminzoom: 0
spawnbedformat: "%name%'s bed"
# オプション: バニラのボーダーを表示するか
showworldborder: true
チャット関係の設定
- class: org.dynmap.ClientComponent
type: chat
allowurlname: false
# チャットバルーンの設定
- class: org.dynmap.ClientComponent
type: chatballoon
focuschatballoons: false
# チャットボックスの設定
- class: org.dynmap.ClientComponent
type: chatbox
showplayerfaces: true
messagettl: 5
# オプション: スクロール可能なメッセージ履歴の行数を設定。
#scrollback: 100
# オプション: チャットボックスに表示される最大行数
#visiblelines: 10
# オプション: プッシュボタンを送信
sendbutton: false
# プレイヤーマーカーの設定
- class: org.dynmap.ClientComponent
type: playermarkers
showplayerfaces: true
showplayerhealth: true
# trueの場合プレイヤーの体も表示、showplayerfacesがtrueの時だけ有効
showplayerbody: false
# プレイヤーの顔を小さくする設定、showplayerhealthとの併用不可
smallplayerfaces: false
# オプション: デフォルトでプレイヤーのレイヤーを非表示にする
hidebydefault: false
# オプション: レイヤーメニューでの優先順位
layerprio: 0
# プレイヤーレイヤーのラベル名
label: "Players"
#- class: org.dynmap.ClientComponent
# type: digitalclock
- class: org.dynmap.ClientComponent
type: link
# 時刻表示
- class: org.dynmap.ClientComponent
type: timeofdayclock
showdigitalclock: true
showweather: true
# マウスの位置に座標を表示する設定
- class: org.dynmap.ClientComponent
type: coord
label: "Location"
hidey: false
show-mcr: false
# 画像を表示する設定、複数定義できる
#- class: org.dynmap.ClientComponent
# type: logo
# text: "Dynmap"
# #logourl: "images/block_surface.png"
# linkurl: "http://forums.bukkit.org/threads/dynmap.489/"
# # top-left(左上), top-right(右上), bottom-left(左下), bottom-right(右下)が使える
# position: bottom-right
# ページを開いたまま放置されている時に別の画面にリダイレクトしたりする設定
#- class: org.dynmap.ClientComponent
# type: inactive
# timeout: 1800 # 秒単位
# redirecturl: inactive.html
# #showmessage: 'You were inactive for too long.'
#- class: org.dynmap.TestComponent
# stuff: "This is some configuration-value"
# hiddenplayers.txtをプレイヤーがマップに表示されるようにするためのホワイトリストとして扱うか
display-whitelist: false
# タイルがレンダリングされる頻度(秒単位)
renderinterval: 1
# 更新キューにあるタイルが指定値を上回るとレンダリング間隔を早める
renderacceleratethreshold: 60
# 更新キューがrenderacceleratethresholdを超えた際のレンダリング速度
renderaccelerateinterval: 0.2
# いちどに動作するタイルアップデートの数(設定していない場合、デフォルトはコア数の半分)
tiles-rendered-at-once: 2
# trueの場合、スレッドのレンダリングを普通の優先度で行う
# これは負荷の高いWindowsでレンダリングが追い付かなくなるのを防ぐ機能
# (LinuxのJVMはスレッドの優先度をほとんど無視する)
usenormalthreadpriority: true
# 保留中のレンダリングを保存して復元するか
# シャットダウン時やリロード時に保留中の作業が失われるのを防ぐ
saverestorepending: true
# ジョブ実行中のクラッシュから回復するのための定期的な保存を行う間隔(秒単位)
save-pending-period: 900
# タイル更新をスキャンしてズームアウトタイルに処理する頻度(秒単位)
zoomoutperiod: 30
# ズームアウトタイルを起動時に検証するかの設定
# ズームアウト処理が中断された場合に必要となることがあるが、マップが大きいと負荷が上がる
initial-zoomout-validate: true
# 更新されたタイルを処理する際の遅延(秒単位)
# これにより、ピストンや採掘場、自動化などにより頻繁に更新されるタイルの再レンダリングを減らすことができる
tileupdatedelay: 30
# タイルハッシュを利用するか
# タイルハッシュは変更が行われていない場合に更新を最小限に抑えるために使われる。
enabletilehash: true
# オプション: 鉱石を隠す
#hideores: true
# オプション: 草と雪のブロックの側面のBetterGrassスタイルのレンダリングを有効にするか
#better-grass: true
# オプション: スムースライティングを使用するか
smooth-lighting: true
# オプション: ワールドプロバイダのライティングテーブルを使用するか(カスタムの照明があるマップなどに適している)
use-brightness-table: true
# オプション: ブロックのレンダリングに他のブロックを使用
# 特定のブロックを隠したり、サポートされていないブロックをとりあえずレンダリングしたりするために使用
block-id-alias:
# "14": 1
# "15": 1
# "16": 1
# デフォルトの画像フォーマット(png, jpg, jpg-q75, jpg-q80, jpg-q85, jpg-q90, jpg-q95, jpg-q100)
image-format: png
# trueの場合生産されたテスクチャを使用、falseの場合水や溶岩が静的になる
use-generated-textures: true
# trueの場合正しい水の照明を利用、falseは古い水の照明
correct-water-lighting: true
# trueの場合葉っぱが透過する
transparent-leaves: true
# trueの場合、テクスチャパックのConnected Texture Mod(CTM)が有効になります
ctm-support: true
# trueの場合、テクスチャパックのカスタムカラーが有効になります
custom-colors-support: true
# プレイヤーの顔画像の取得を設定、falseならスキンが取得されない
#fetchskins: false
# ロードされた画像の更新を制御
# 顔画像が他のソフトウェアや手動で管理されている時用
#refreshskins: false
# スキン画像を取得するためのURL
skin-url: "http://skins.minecraft.net/MinecraftSkins/%player%.png"
# どの動作でレンダリングを行うか
render-triggers:
#- playermove
#- playerjoin
- blockplaced
- blockbreak
- leavesdecay
- blockburn
- chunkgenerated
- blockformed
- blockfaded
- blockspread
- pistonmoved
- explosion
#- blockfromto
#- blockphysics
- structuregrow
- blockgrow
#- blockredstone
# Webページのタイトル
#webpage-title: "My Awesome Server Map"
# 画像ファイルのディレクトリ
tilespath: web/tiles
# Webファイルのディレクトリ
webpath: web
# /dynmapexpコマンドでエクスポートするディレクトリ
exportpath: export
# 内部Webサーバーのバインドアドレス
#webserver-bindaddress: 0.0.0.0
# 内部WebサーバーのTCPポート
webserver-port: 8123
# 内部Webサーバーの最大同時接続数
max-sessions: 30
# 内部Webサーバーを無効にする、上級者向け
disable-webserver: false
# シンボリックリンクを許可するか
allow-symlinks: true
# ログイン機能を使用可能にするか
login-enabled: false
# マップを閲覧するためにログインを必要にする
login-required: false
# fullrenderのレンダリング間隔(秒単位)
timesliceinterval: 0.0
# 1tickあたりのチャンクロード数
# これを90未満にするとレンダリングのパフォーマンスに影響があるが、サーバーの負荷も軽減される
maxchunkspertick: 200
# fullrenderやradiusrenderの進捗報告、100以上でなければならない
progressloginterval: 100
# 設定するとfullrenderやradiusrenderを並列で実行する
# 注意: 設定するとCPUやメモリの使用量が増える。システムの物理コア数以上に設定する場合は注意が必要
#parallelrendercnt: 4
# ブラウザが更新をポーリングする間隔
updaterate: 2000
# 0以外の値にすると指定したプレイヤー数を上回った時にfullrenderやradiusrenderを一時停止する
fullrenderplayerlimit: 0
# 0以外の値にすると指定したプレイヤー数を上回った時に更新処理を一時停止する
updateplayerlimit: 0
# 1チック当たりのサーバースレッドの使用制限(ミリ秒単位)
per-tick-time-limit: 50
# TPSが指定した値を下回ると更新処理を一時停止
update-min-tps: 18.0
# TPSが指定した値を下回るとfullrenderやradiusrenderを一時停止
fullrender-min-tps: 18.0
# TPSが指定した値を下回るとズームアウト処理を一時停止
zoomout-min-tps: 18.0
# メニューにプレイヤーの顔画像を表示するか
showplayerfacesinmenu: true
# 現在のマップで隠れているプレイヤーをグレーアウトするか
grayplayerswhenhidden: true
# プレイヤーを権限でソートする
player-sort-permission-nodes:
- bukkit.command.op
# サイドバーの設定
# サイドバーを永続的に開いたままにするには"true"を、デフォルトで固定するが解除を許可するには"pinned"を指定
#sidebaropened: true
# レスポンスヘッダの追加(内部Webサーバーのみ)
#http-response-headers:
# Access-Control-Allow-Origin: "my-domain.com"
# X-Custom-Header-Of-Mine: "MyHeaderValue"
# X-Forwarded-Forを提供するために信頼されているプロキシのIPアドレス
trusted-proxies:
- "127.0.0.1"
- "0:0:0:0:0:0:0:1"
# プレイヤーログイン/ログアウト時のWebメッセージフォーマット
# 空文字にすると無効になる
joinmessage: "%playername% joined"
quitmessage: "%playername% quit"
spammessage: "You may only chat once every %interval% seconds."
# Webからのメッセージのフォーマット
webmsgformat: "&color;2[WEB] %playername%: &color;f%message%"
# レイヤコントロールをUIに表示するかどうか
showlayercontrol: true
# banned-ips.txtを使用して禁止IPのチェックを有効にする(内部Webサーバーのみ)
check-banned-ips: true
# ページが表示された時のデフォルトを設定
defaultzoom: 0
defaultworld: world
defaultmap: flat
# (オプション) 可能であれば、プレイヤーをフォローしているときにズームレベルとマップを切り替える
#followzoom: 3
#followmap: surface
# trueにするとプレイヤーのログイン時に使用されたIPアドレスの記録を永続的に作成し、Webでのプレイヤーとのマッチングを行う
persist-ids-by-ip: true
# trueにするとテキストがキリル文字にマップされる。
cyrillic-support: false
# trueにすると座標が丸められる
round-coordinates: true
# メッセージのカスタマイズ
msg:
maptypes: "Map Types"
players: "Players"
chatrequireslogin: "Chat Requires Login"
chatnotallowed: "You are not permitted to send chat messages"
hiddennamejoin: "Player joined"
hiddennamequit: "Player quit"
# URLの設定
# プロキシ下など特殊な環境で必要がある時のみ調整
url:
#configuration: "up/configuration"
#update: "up/world/{world}/{timestamp}"
#sendmessage: "up/sendmessage"
#login: "up/login"
#register: "up/register"
#tiles: "tiles/"
#markers: "tiles/"
# カスタマイズコマンド、特定のイベントの前後にスクリプトを実行できるようにする
custom-commands:
image-updates:
# 画像が書き込まれる前に実行されるコマンド
preupdatecommand: ""
# 画像が書き込まれた後に実行されるコマンド
postupdatecommand: ""
# どちらも引数としてファイル名が渡される
# チャンクスナップショットのキャッシュサイズ
snapshotcachesize: 500
# キャッシュをSoftReference(true)で保持するか、WeakReference(false)で保持するか
soft-ref-cache: true
# 詳細な起動メッセージ。有効にするにはtrueを指定
verbose: false
# デバッグの設定
#debuggers:
# - class: org.dynmap.debug.LogDebugger
# Debug: dump blocks missing render data
dump-missing-blocks: false