coreprotect日本語に

サーバー運用される方はこちらで情報交換されてはいかがでしょうか?
フォーラムルール
質問関連フォーラムで質問する時は、必ず次のトピックを一読/厳守お願い致します。
viewtopic.php?f=5&t=999
  • (PostNo.290425)

coreprotect日本語に

投稿記事by yuyurin » 2016年12月16日(金) 20:29

coreprotectを日本語にしているサーバーを見かけて自鯖もそうしたいなと思い、色々調べてみたのですが見つからずjarファイルを7zでみてもどこをいじればいいかわかりません...どうかどうすればできるか教えて下さい
yuyurin
ID:bc6aba32
 

  • (PostNo.290456)

Re: coreprotect日本語に

投稿記事by Dotoo » 2016年12月17日(土) 03:45

jarファイルを7zでみてもどこをいじればいいか

そのような手段ではプラグインを弄る事はできません。Javaはコンパイラ型言語ですので、プラグインとして使えるようにする為にはコンパイルしなければなりませんが、コンパイルされた時点で普通は人間では読めないような文字の羅列に変わってしまうからです。

代わりに超強力にサーバーメッセージを無理やり変更してしまうプラグインを紹介しておきます。私はCoreprotectでは試してはいませんが、このプラグインで変更できなかったプラグインメッセージは今のところ見たことがありません。使い方も非常に簡単ですし日本語にももちろん対応しています。使っているプラグインをプレイヤーに知られたくなかったり、英語のメッセージしか出せないプラグインを日本語にしたりする時に大活躍するはずです。
https://dev.bukkit.org/projects/message-filter
アバター
Dotoo
ID:1b5b13f1
レッドストーン掘り
 
記事: 515
登録日時: 2012年11月21日(水) 15:20

  • (PostNo.290477)

Re: coreprotect日本語に

投稿記事by yuyurin » 2016年12月17日(土) 13:40

やろうとしたのですがどのようにしてプラグインを指定してメッセージ変更するんですか?
yuyurin
ID:bc6aba32
 

  • (PostNo.290480)

Re: coreprotect日本語に

投稿記事by Dotoo » 2016年12月17日(土) 14:27

設定方法は2つありますが、個人的にはコンフィグに直接書き込むのが一番作業がしやすいと思うのでこの方法を紹介しておきます。

plugin/MessageFilter/rulesフォルダ内のrules.ymlを開きます。

この中には既に例文が沢山書かれていますが、どうせ使わないので中身のテキストを全部消してしまいます。

今度はここにメッセージ変更のルールを書いていきます。とりあえず下のコードをコピーして貼り付けましょう。

コード: 全て選択
id1:
  type: CONTAINS
  message-mask: これはcoreprotectのメッセージ1だよ
  replace-to: '&7これは日本語化したメッセージだよ'
  cooldown-time: ''
  use-formating: false
id2:
  type: CONTAINS
  以下略


id1: というのはこのコンフィグにとりあえず振っていく番号だか数字です。他のものと被らなければ何でも構いません。

type: CONTAINS というのは次の行のmessage-maskで指定したプラグインメッセージが出てきたらそれを置き換えるよ、という意味です。typeには他のオプションもありますが、結局使うのは9割以上"CONTAINS"になると思います。

message-mask: は隠したいメッセージを直接書きます。coreprotectはバージョンによって微妙にメッセージが違ったりするため、例では「これはcoreprotectのメッセージ1だよ」と書きましたが、当然ここはサーバーに出てくる英語のメッセージに書き換えます。

replace-to: の後に日本語化したメッセージを書きます。例では'&7これは日本語化したメッセージだよ'にしておきました。これでひとつ日本語化が終わりました。

日本語化したいメッセージは1つだけではないでしょうから、次はid2: などと始めに書き、その他は全く同じようにコンフィグを書いていきましょう。

この作業を繰り返していけば、全てのメッセージが変更できると思います。編集が終わったら"/msgfilter reload”とゲーム内で入力すれば日本語化完了です。もしまだ分からない事があれば、このrules.ymlファイルの中身を全てコピーして貼り付けて、変更したいメッセージの文を併せてもう一度質問して下さい。
アバター
Dotoo
ID:1b5b13f1
レッドストーン掘り
 
記事: 515
登録日時: 2012年11月21日(水) 15:20

  • (PostNo.290496)

Re: coreprotect日本語に

投稿記事by yuyurin » 2016年12月17日(土) 19:17

A teleport request has been sent tp yuyurin!
を日本語にしたいのですがyuyurinと所のプレイヤー名はなんと書けばいいですか?人によって違うので
yuyurin
ID:bc6aba32
 

  • (PostNo.290498)

Re: coreprotect日本語に

投稿記事by Dotoo » 2016年12月17日(土) 20:08

そういったケースのためにtype: CONTAINSにしている訳です。この場合なら"A teleport request has been sent tp"まで"message-mask:"の後に書けば良い事になります。全文が一致しなくても、メッセージに"A teleport request has been sent tp"と入っていればそのメッセージ全てが消えます。

残念ながら置き換えた文章に元に入っていたプレイヤー名を入れる事は出来ません。もしこれをやっているサーバーがあって、それが一般的に公開されているプラグインで間違いない場合はそのプラグイン自体にメッセージを変えるコンフィグが付いているか、もしくはそのプラグインのソースコードを使って自分で改造しているかのどちらかです。幸いテレポートリスエストを送るプラグインは他にも沢山ありますから、日本語で利用できるようなプラグインを初めから使うのも手だと思います。
アバター
Dotoo
ID:1b5b13f1
レッドストーン掘り
 
記事: 515
登録日時: 2012年11月21日(水) 15:20

  • (PostNo.290500)

Re: coreprotect日本語に

投稿記事by yuyurin » 2016年12月17日(土) 20:33

[名前] has sent you a teleport request. Type /rtp yes ([playerlall]) to accept.を日本語にするにはどうすればいいですか?
yuyurin
ID:bc6aba32
 

  • (PostNo.290503)

Re: coreprotect日本語に

投稿記事by Dotoo » 2016年12月17日(土) 20:51

上で申し上げた通り、プレイヤー名をこのプラグインの中で表示する事が出来ませんから迂回策になってしまいますが、もし私なら「あなたの所にテレポートのリクエストが来ました。/rtp yes プレイヤー名(もしくはall) と入力するとリクエストを受けられます。」と書くと思います。

結局このパターンで言えば、例えばサーバー内のプレイヤーが誰かにテレポートの要請を始めに送るわけですが、普通はその前にテレポートしていいかどうかのやり取りをチャットで行うはずですから、ここにプレイヤー名が無くても問題はないでしょう。ですから、

コード: 全て選択
idtpr:
  type: CONTAINS
  message-mask: has sent you a teleport request.
  replace-to: 'あなたの所にテレポートのリクエストが来ました。/rtp yes プレイヤー名(もしくはall) と入力するとリクエストを受けられます。'
  cooldown-time: ''
  use-formating: false


といった感じで書くと思います。
アバター
Dotoo
ID:1b5b13f1
レッドストーン掘り
 
記事: 515
登録日時: 2012年11月21日(水) 15:20

  • (PostNo.290622)

Re: coreprotect日本語に

投稿記事by yuyurin » 2016年12月18日(日) 18:24

解決しましたありがとうございます
yuyurin
ID:bc6aba32
 


Return to 質問:マルチサーバー運用

x