2026年4月30日木曜日

マインクラフトクローンのluantiを使ってみる

今空前のマイクラブームが来ている(我が家の娘たちの中で)。
といってもただyoutubeのマイクラで作った動画をただ見ているだけである。 

ただyoutubeをダラダラ見るよりは、ゲームをやったほうが多少なりとも能動的に何かをするという点でマシではないかと個人的には思っているが、ゲームはNGという嫁の許可が出なかった。マイクラであれば教育にも使われていて良さそうだという適当な話が嫁の耳に入ってきているようなので、やっても良さそうな雰囲気が出てきた。

luanti - voxelibre

マインクラフトを買い与えようかと一瞬思ったが、どうせすぐ飽きるし、不器用なので操作できないと言って放り出す可能性がかなり高い。そんなものに何千円も払うのはもったいないので、とりあえずマイクラクローンを与えて様子を見てみることにした。 

とりあえずluantiを入れる。

apt install luanti

これはマイクラっぽいものを作るゲームエンジンであって、これだけだとゲームにならない。luantiの上にゲームを入れる必要がある。minecloniaとvoxelibreが有名どころのようだ。  

画面下段の+ボタンからVoxeLibreを入れてワールドを新規作成すれば遊べる。左のホストサーバーにチェックを入れると、他のPCから「ゲームに参加」でマルチプレイができる。

いきなりモンスターに襲われたら怖くてやめそうなので、ダメージ有効のチェックを外しておく。minecloniaだとダメージ無効にしても襲っては来てしまう。voxelibreだと透明人間になったような扱いで怖くなさそうなので、voxelibreを使うことにした。

コントローラー

とりあえず手元に有ったPS4コントローラーを使おうと思ったが、なかなか思うように設定できない。コントローラー入力をキー入力に変換するプログラムAntiMicroXというのが有ったのでそれを使用することにした。

本物のマイクラを触ったことが無いので正しい配置はわからないが、とりあえず以下で設定。中華linuxゲーム機にrocknixを入れるとluantiが実行でき、そのキー設定が以下のようになっていたので真似した形。

左ジョイスティック上下左右 - WSAD
右ジョイスティック上下左右 - マウス(視点変更)
↑ - C (カメラ変更)
←→ - マウススクロール(アイテム選択)
↓- I (インベントリ)
□ - Q (捨てる)
△ - V (ミニマップ表示)
◯ - K (飛行モード)
× - スペース (ジャンプ)
L1 - 左シフト (しゃがむ)
L2 - J (高速モード)
R1 - 左クリック(攻撃等)
R2 - 右クリック(アイテム設置)
OPTION - ESC

luanti-server

とりあえず遊ぶには上記でいいが、マルチプレイで遊ぶには、誰かのPCを動かしておく必要がある。 いちいち子供が遊ぶときにパソコンを動かすのは面倒なので、常時動かしているraspberry-piにサーバーを入れることにした。

apt install luanti-server

これで起動すると、voxelibreではなく、ほんとうに基本的なゲームであるminetestが起動する。voxelibreを使いたいのでやり方を調べた。

VoxeLibreを起動する設定

まずは、先程単体で動かしたときにダウンロードしたvoxelibreが~/.minetest/games/mineclone2に入っているので、これをサーバー上の/usr/share/luanti/games/mineclone2/に置く。 (voxelibreは旧名mineclone2だったようでファイル名等はmineclone2のままになっていたりする)

/usr/lib/systemd/system/luanti-server.serviceを見ると、/etc/luanti/default.envで起動するゲームを選択するようだ。

LUANTI_GAMEID=mineclone2

worldデータ置き場も環境変数で設定できるようだが、デフォルトでは/usr/lib/luanti/default/worldsになっているので、ここに単体で動かしたときにできた~/.minetest/worldsのデータを持ってきて置く

ダメージ無効とかの設定は/etc/luanti/default.confで行う

cat /etc/luanti/default.conf
server_description = Luanti server powered by Debian
server_announce = false
ipv6_server = true
motd = Welcome to Luanti. Enjoy your stay!
enable_pvp = false
enable_damage = false
name = ユーザ名

ユーザ名はluantiに参加するときに登録するIDで、ここで指定したユーザはサーバ管理者権限を持つ模様。banとかができる。

起動

systemctl start luanti-server

自動起動にしておく

systemctl enable luanti-server

ゲームに参加

あとはluantiのクライアントからゲームに参加する。最初はユーザ名を登録する必要がある。

あとは普通に遊べる

 

android用も出ており、スマホからもログインして遊べる。 

raspberry-piでは、samba、immich、pxeブート用のtftp/http、gitea、minidlna、tailscale、radiko録音とSIPサーバーを入れてあって、あとこのluantiサーバーが動いている。 ちょっと負荷が心配だったがサーバーを動かすだけならraspberry-piの負荷も大した事なさそう。 

0 件のコメント:

コメントを投稿