nobashibou’s diary

のんびりまったりゆっくりマイクラしてる人の雑記です

トラップドアを壊さないプラグイン。ManySmallTweaks導入方法

ManySmallTweaks

このプラグインはトラップドアの破壊を防ぐ機能などがあります。めちゃ便利です。しかしながら現在では、jarファイルが配布されていません。それで困っている方が、一人か二人はいらっしゃると思います。そんな方への手引きになれば幸いです

f:id:nobashibou:20180519192438p:plain

ManySmallTweaksのbukkitのページ。現在はない様子

さて、じゃあどうやって導入するかというと、githubで公開されているソースコードを使います。これからjarファイルをつくり、導入します。私はそんなにプラグラムに詳しいわけではなく、間違いも多々あるかもしれません。この記事において不利益を被った場合において、一切の責任を負いかねますので、その点はご容赦ください。

今回は「Thermos」向けに解説します。「Cauldron」では上手くいくかよくわかりません。下からダウンロードをどうぞ。

github.com

ちなみに、Thermos鯖は最新版である58では、wouldeditの木の斧で左クリックするとブロックが壊れます。一つ前の57を使いましょう。鯖建ての方法は以下を参照。

hayanasa.hatenablog.com

 

 

1.導入の前に 

導入方法の解説の前に、メモ書き程度に残したいことがあります。トラップドアを設置する方法は別に、このプラグインに限りません。というか、このプラグインの導入は手間が相応にかかります。時と場合では他の方法の方がいいと思います。復習がてら、思い当たる方法を記しておきます。ただしこの場では詳しくは解説しませんので、リンクから方法をご確認ください

 

LotMetaBlockPack

 LotMetaBlockPackはメタを使った建築をするなら必須のmod兼プラグインです。ご存知の方も多いでしょう。Zキーを押すと、手に持っているアイテムがブロックである場合、視線の先にあるブロックを持っているブロックで上書きします。勿論トラップドアも可能ですが、トラップドアが隣接している状態にはできません。

 現在ではこちらで配布されています。

 

FAWE

FAWEはFast Async WorldEditの略称です。単純に言えば、worldeditの上位互換で、ブロック設置の際に破壊が行われません。設置の際にコマンドを使用することになるため、マクロmodの併用を推奨します。隣接での設置が可能です。

hayanasa.hatenablog.com

 

観覧車mod

 観覧車modを用いるのは、だいぶアクロバティックな方法です。普段使いにはおすすめできません。最終手段とでも思ってください。このmodを使えば、実に様々なことができますが、その分、一回一回の手間暇が必要になります。正直、トラップドア設置には向きません。

 

 

2.Eclipseの起動

それではまず、ManySmallTweaksのソースコードをダウンロードしましょう

github.com

緑色の「Clone or Download」をクリックしたのち「Download ZIP」をクリックして、ダウンロードしてください。そのZIPファイルを解凍してください。

 

こっから、ソースコードをjarファイルに変えるために、Eclipseというソフトを使います。これは統合開発環境というもので、プログラマー向けの色んな機能が備わっています。日本語化されているものをダウンロードします

Eclipse 日本語化 | MergeDoc Project

Ultimateをダウンロードしてください。もしくはjavaでも十分かもしれませんが、特に理由がないなら、javaにする意味はないとおもいます。正直よくわかんない。

ダウンロードしたものを解凍し、eclipse.exeを起動しましょう

f:id:nobashibou:20180519193350p:plain

f:id:nobashibou:20180519202927p:plain

このような画面が出たら、成功です

 

3.ソースコードの読み込み

f:id:nobashibou:20180519203811p:plain

イクラプラグインjavaでかかれているため、ファイル>新規>Javaプロジェクトを選択

f:id:nobashibou:20180519204212p:plain

プロジェクト名に「ManySmallTweaks」と入力します。

f:id:nobashibou:20180519204855p:plain

こんな感じになったと思います。

先ほどダウンロードしたソースコードのファイルを開いてくださいf:id:nobashibou:20180519205239p:plain

 Eclipseに表示されている「src」というファイルとダウンロードしたファイルにある「src」は対応しています。なので、ダウンロードしたファイルの「src」の中にある「redsgreens」を「src」に移動させます

f:id:nobashibou:20180519211032p:plain

ドラッグ&ドロップ

f:id:nobashibou:20180519211210p:plain

ファイルおよびフォルダーをコピーを選択。

続いて「plugin.yml」も同様にして、「ManySmallTweaks」に移動します。「plugin.yml」の中にプラグインの名称が書かれており、多分プロジェクト名と異なると上手くできません。

f:id:nobashibou:20180519211816p:plain

このようになりましたでしょうか。なんかいっぱいエラーが出てるので、解消していきましょう。

 

4.エラーの解消

パッケージ・エクスプローラーの「redsgreens.ManySmallTweaks」をクリックすると、「~.java」っていうのがいくつか表示されていると思いますが、それをポチポチ押してみてください。

f:id:nobashibou:20180519223721p:plain

なんだかよくわかんないですね。これが、いわゆるプログラムっていう奴です。それはさておき、赤線の波線が引かれているのが、エラーを起こしている場所です。よく見ると、

import org.bukkit.event.EventHandler;

と書かれた一行があります。「bukkkit」って書いてありますね。これは「import」はその後の書いてある処理を別のファイルから受け継ぐことの宣言をしています。めっちゃ大事。なので、org.bukkit.event.EventHandler」っていうところの処理を受け継ぎます。処理を借りてくる、っていう感じだと思います。

難しい処理を書くのは大変だから、誰しもが使えるように、プラグイン開発向けに色んな処理をまとめて、それ使って、作ってね~。っていうのが「bukkit」です。

エラーが起きているのは、この「org.bukkit.event.EventHandler」っていうのと、このプロジェクトが関連付けられてないからです。この処理はサーバーのjarの中にありますので、サーバーのjarを関連付けます。

f:id:nobashibou:20180519231905p:plain

「ManySmallTweaks」を右クリックし、ビルド・パス>ビルド・パスの構成を選択。

f:id:nobashibou:20180519232115p:plain

「ライブラリー」を選択し、外部JARの追加をクリック。

ライブラリーっていうのはbukkitみたいに、難しい処理を単純に扱えるようにいろんな処理をまとめたものです。多分。

f:id:nobashibou:20180520000523p:plain

「bukkit」が含まれていることを確認したサーバーのjarを選択。このとき、すでにサーバー建てしたものを使ってください。「libraries」も同時に読み込むためです。

f:id:nobashibou:20180520001641p:plain

適用して閉じます。

f:id:nobashibou:20180520001731p:plain

エラーが一気に9個まで減りました。警告は無視して結構です。さて、また、なんらかをライブラリーに必要とするみたいです。お気づきの方もいるとは思いますが、エラーの項目を見てください。「WorldGuardPlugin」が足りないようです。そう、「WorldGuard」から処理をかりてきているのです。どうやら、前提プラグインとして「WorldGuardが必要っぽいです。入れてない方はこれを機会に、どうぞ導入してみてください。

https://dev.bukkit.org/projects/worldguard

ちなみにWorldGuardの前提プラグインは「WorldEdit」ですので、サーバーに追加しとくのを抜かりなく。

さて先ほどと同様に、ライブラリーにWorldGuard」を追加しましょう。

f:id:nobashibou:20180519234347p:plain

f:id:nobashibou:20180520002129p:plain

 終わりました。ついにエラーがなくなりました。

 

5.jarファイルへの出力

エラーがなくなったので、いよいよjarファイルへ出力します。

f:id:nobashibou:20180520002718p:plain

 ファイル>エクスポートを選択

f:id:nobashibou:20180520002822p:plain

Java>JARファイルを選択。次へをクリック

f:id:nobashibou:20180520002915p:plain

「ManySmallTweaks」を選択。「.classpath」「.project」のチェックボックスを外します。エクスポート先を参照から指定します。名称を「ManySmallTweaks.jar」にします。

完了をクリック。これでjarファイルが生成されています。警告は無視していいです。

f:id:nobashibou:20180520003519p:plain

生成されています。

 

6.利用方法

いつも通り「plugins」フォルダにいれて、サーバーを起動してください。

f:id:nobashibou:20180520004223p:plain

plと打って、表示されれば、導入成功です。お疲れさまでした。

 

とはまだ早いです。

f:id:nobashibou:20180520004802p:plain

このままだと壊れます。configをいじらないとデフォルトでは壊れるようになっています。

なのでconfigを開いてみると

f:id:nobashibou:20180520005055p:plain

えっ...!?

config君迫真の白紙です。

覚えていますでしょうか。githubからダウンロードしたプラグインソースコードには、一緒に「config.yml」がついてきています。

f:id:nobashibou:20180519205239p:plain

これで上書き保存してください。また、中身を書き換えていきます。

VerboseStartup: No        冗長なスタート(おそらく負荷軽減)

Defaults:
FloatingLadders: No       はしごの破壊を防ぐ
FloatingRails: No         レールの破壊を防ぐ
FloatingHatch: No          トラップドアの破壊を防ぐ
ButtonsOnMoreBlocks: No    ボタンが更に多くのブロックに設置できる(?)
ProjectileTriggers: No      トリガーを発射する(??)
RedstoneIgnitesNetherrack: No レッドストーンでネザーラックを燃やす
InfiniteCauldrons: No          無限の大釜(??)
KeepSaddleOnPigDeath: No   豚が死んでもサドルがなくならない(?)
PigsReproduceQuick: No           豚が早く繁殖する
PercentSaddledPigs: 0       サドルのついた豚が生成される確率
PercentColorSheep: 0        色の違う羊が生成される確率
RedstoneIgnitesPumpkins: No   レッドストーンでカボチャとジャック・オ・ランタンのきり変えができる
FloatingPaintings: No       絵画の破壊を防ぐ
MineCobwebsWithShears: No     くもの巣をはさみで刈り取れる

Worlds:
change_me:
FloatingLadders: No
FloatingRails: No
FloatingHatch: No
ButtonsOnMoreBlocks: No
ProjectileTriggers: No
RedstoneIgnitesNetherrack: No
InfiniteCauldrons: No
KeepSaddleOnPigDeath: No
PigsReproduceQuick: No
PercentSaddledPigs: 0
PercentColorSheep: 0
RedstoneIgnitesPumpkins: No
FloatingPaintings: No
MineCobwebsWithShears: No

多分こんな意味。一部の機能しか試してないのでよくわからないところがあります。あんまり、建築には関係なさそうですが。使う際には「Defaults」の方のYesとNoを切り替えて使ってください。

f:id:nobashibou:20180520013645p:plain

トラップドアがやっと自立しました。では、良き建築ライフを! 

 

7.参考にしたサイト

上記URLに加えて、おおいに参考になったものがありますので、この場で感謝とともに紹介させてもらいます。

ch.nicovideo.jp

hayanasa.hatenablog.com

seesaawiki.j

ch.nicovideo.jp

 以上に加え、沢山のサイトにお世話になりました。謹んでお礼申し上げます。