LoginSignup
0
0

More than 1 year has passed since last update.

MinecraftのチャットとDiscordが連携できるらしい

Last updated at Posted at 2022-11-29

この記事は2020年に今は無き別サービスに投稿したものを、今更Qiitaに再投稿したものです。

「rcon」って何に使うのだろうか

Minecraftのサーバーのバージョンを更新してserver.propertiesを見直していた際に、enable-rconという項目を発見した。気になったので、「Minecraft rcon」でググってみた。そこで見つけたのが、Minecordだ。もりやませーたさんという方が作り、MITライセンスで公開されている。どうやらNode.js製のサーバーで、そこからMinecraftサーバーのrconを利用してDiscordのチャットを流しているということなのだろうか。

早速導入

もりやませーたさんのブログ、「ModなしでMinecraftサーバーとDiscordを連携するツールを作った」を見て、その通りに進めていく。

進めていく前に、実行には当然ながらNode.jsの環境が必要である。また、Minecordはnpmからインストールする。私が使っている環境はDebianなので、aptを使ってパッケージnodejs,npmをインストールした。

~$ sudo apt install nodejs npm

依存関係を満たすために上記の2つ以外に大量のパッケージがインストールされる。こうしてようやく作者さんのブログの通りに進めていく。
Debianにおいてnpmでパッケージをインストールすると、デフォルトでは/usr/local/binにシンボリックリンクができるはずだ。

デーモン化

ターミナルから実行するのでは不便なので、systemdでデーモン化する。
/etc/systemd/systemminecord.serviceを作成し、以下のように記述する。

[Unit]
Description=minecord
After=syslog.target network.target

[Service]
Type=simple
ExecStart=/usr/local/bin/minecord --config /home/hoge/minecraft_server/config.json
WorkingDirectory=/home/hoge/minecraft_server
KillMode=process
Restart=always
User=hoge
Group=hoge

[Install]
WantedBy=multi-user.target

ExecStart,WorkingDirectoryはどこにconfig.jsonを置いたかによって適宜変更する。

~$ sudo systemctl start minecord

で実行できる。

~$ sudo systemctl enable minecord

で起動時に自動実行されるようになる。

日本語でチャットできる

Minecraftに備わっているチャット機能は日本語入力に不向きであったが、これで解決。手元にスマホを置いてそこでチャットしても良し。後輩たちからもとても好評であった。作者に多大なる感謝と敬意を表したい。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0