Mapcrafterとは
非同期型マインクラフトマッパーです。
同期型マッパーとして有名なDynmapに近いものです。
MapcrafterとDynmap
Dynmapはゲーム起動中ずっとワールをの更新を見張り、リアルタイムでWebマップに反映します。
それに対し、Mapcrafterはレンダリングをサーバ側から実行して初めてWebマップに反映します。
Dynmapは見ている人が多いとゲームに影響が発生しますが、Mapcrafterはinstallしたサーバにセーブデータを転送することでゲームサーバに影響を与えず、レンダリングと表示をすることが可能です。
インストール
準備
- Mapcrafter
- Apache
- git
- コンパイル環境いろいろ
- Minecraftセーブデータ(公式、bukkit、spigot問わず)
- RedHatサーバ(当ページはCentOS7です)
- テクスチャ
インストール
公式のインストール手順を参考にインストールしていきます。
sudo yum install epel-release
sudo yum install boost-devel libjpeg-devel libpng-devel gcc-c++ make cmake
sudo yum install git
git clone https://github.com/mapcrafter/mapcrafter.git
cd mapcrafter/
cmake .
make
sudo make install
apcrafter: error while loading shared libraries: libmapcraftercore.so: cannot open shared object file: No such file or directory
と言われた場合以下のようにパスの通ったところに移動する
sudo mv /usr/local/bin/libmapcraftercore.so /usr/lib64/
sudo ldconfig
sudo make install
これでインストール完了
レンダリングの用意
cd /tmp/
好きなテクスチャを取得今回はフォーラムから
wget http://ほにゃらら -O textures.zip
unzip textures.zip
mv /tmp/ssets/minecraft/textures/* /usr/local/share/mapcrafter/textures/
cd /var/www/html/
vim render.conf
output_dir = /var/www/html
[world:myworld]
input_dir = /home/minecraft/bukkit/world
[map:map_myworld]
name = My World
world = myworld
設定の詳しい内容は公式のコンフィグ解説を参照
レンダリング実行
/usr/local/bin/mapcrafter -c render.conf -j 6
-j 6の数字の部分はレンダリングに使用するCPUのコア数
レンダリングには結構時間がかかるので待つ。
レンダリングが終われば公開ディレクトリ(デフォルトではhttp://localhost)に表示されるはずだ