[Spigot/Bungee 1.8-1.11] ログインメッセージ ~LongTimeNoSee~

サーバーMODやBUKKITのプラグインなどの公開/紹介を専門に行うフォーラムです。クライアントMODと組み合わせ必須の物はMOD公開/紹介フォーラムで公開してください。
フォーラムルール
クライアントMODと対にして使用する物は極力 MOD 公開/紹介 フォーラムにて公開するようお願いします。
本フォーラムではサーバーへの適用をメインとするサーバーMOD、プラグインを取り扱います。
不明な点は管理人ecolightまでお問い合わせ下さい。
  • (PostNo.288439)

[Spigot/Bungee 1.8-1.11] ログインメッセージ ~LongTimeNoSee~

投稿記事by toyblocks » 2016年11月23日(水) 13:53

概要
このプラグインはログイン/ログアウト時に任意のメッセージを表示できるプラグインです。
ここが違うぜLongTimeNoSee!
  • jsonフォーマット対応で、クリックできる文章が作れる!
  • プレイヤーのログイン記録を保存するので、プレイ時間など詳細な情報を表示可能!
  • SpigotにもBungeeCordにも対応してるから殆どのサーバーで使える!

使い方

Spigot 1.8 以上のサーバー又はBungeecord 1.8以上のプロキシのpluginsフォルダ内に、プラグインを配置してください。その後一度サーバーを起動することでconfig.ymlファイルが自動生成されます。config.ymlを編集することにより、幾つかの設定を編集可能です。
コード: 全て選択
###################################################
##   Long Time No See plugin by toyblocks(aoy)   ##
###################################################

# ログイン時のメッセージ表示設定
join:
    # ログインしたプレイヤーに表示するメッセージです。
    # /tellrawコマンド等に使われるjson形式で指定してください。
    # json形式がわからない場合は、適当に作れるツールがありますのでそちらをどうぞ。
    # https://www.google.co.jp/search?q=tellraw+editor
    # nullと書くことでメッセージを表示させないことが可能です。
    # 冒頭の'>'は「おまじない」です。消さないでください。
    message: >
     [
     {"text":"Welcome, "},
     {"text":"$player","color":"green"},
     {"text":"! It's "},
     {"text":"$now","color":"aqua"},
     {"text":" now, and you has been offline for "},
     {"text":"$interval","color":"aqua"},
     {"text":" since "},
     {"text":"$last-quit","color":"aqua"},
     {"text":".\nThis is "},
     {"text":"$count","color":"aqua"},
     {"text":"th time you've joined. You had currently played for "},
     {"text":"$total-online","color":"aqua"},
     {"text":"."}
     ]
    # 誰かがログインした時にログインしたプレイヤー以外に表示するメッセージです。
    # /tellrawコマンド等に使われるjson形式で指定してください。
    # json形式がわからない場合は、適当に作れるツールがありますのでそちらをどうぞ。
    # https://www.google.co.jp/search?q=tellraw+editor
    # nullと書くことでメッセージを表示させないことが可能です。
    # 冒頭の'>'は「おまじない」です。消さないでください。
    broadcast: >
     [
     {"text":"$player","color":"green"},
     {"text":" has joined! (last quit: "},
     {"text":"$last-quit","color":"aqua"},
     {"text":", total-online: "},
     {"text":"$total-online","color":"aqua"},
     {"text":")"}
     ]
     
    # Spigot利用時に、他のプラグインのログインメッセージを抑制できる場合があります。
    # 抑制したい場合はtrue、抑制したくない場合はfalseを記述してください。
    override: true

firstjoin:
    # 初めてログインしたプレイヤーに表示するメッセージです。
    # /tellrawコマンド等に使われるjson形式で指定してください。
    # json形式がわからない場合は、適当に作れるツールがありますのでそちらをどうぞ。
    # https://www.google.co.jp/search?q=tellraw+editor
    # nullと書くことでメッセージを表示させないことが可能です。
    # 冒頭の'>'は「おまじない」です。消さないでください。
    message: >
     [
     {"text":"Welcome, "},
     {"text":"$player","color":"green"},
     {"text":"! It's "},
     {"text":"$now","color":"aqua"},
     {"text":" now, and you has been offline for "},
     {"text":"$interval","color":"aqua"},
     {"text":" since "},
     {"text":"$last-quit","color":"aqua"},
     {"text":".\nThis is "},
     {"text":"$count","color":"aqua"},
     {"text":"th time you've joined. You had currently played for "},
     {"text":"$total-online","color":"aqua"},
     {"text":"."}
     ]
    # 誰かが初めてログインした時にログインしたプレイヤー以外に表示するメッセージです。
    # /tellrawコマンド等に使われるjson形式で指定してください。
    # json形式がわからない場合は、適当に作れるツールがありますのでそちらをどうぞ。
    # https://www.google.co.jp/search?q=tellraw+editor
    # nullと書くことでメッセージを表示させないことが可能です。
    # 冒頭の'>'は「おまじない」です。消さないでください。
    broadcast: >
     [
     {"text":"$player","color":"green"},
     {"text":" has joined! (last quit: "},
     {"text":"$last-quit","color":"aqua"},
     {"text":", total-online: "},
     {"text":"$total-online","color":"aqua"},
     {"text":")"}
     ]
     
    # Spigot利用時に、他のプラグインのログインメッセージを抑制できる場合があります。
    # 抑制したい場合はtrue、抑制したくない場合はfalseを記述してください。
    override: true

quit:
    # 誰かがログアウトした時にログアウトしたプレイヤー以外に表示するメッセージです。
    # /tellrawコマンド等に使われるjson形式で指定してください。
    # json形式がわからない場合は、適当に作れるツールがありますのでそちらをどうぞ。
    # https://www.google.co.jp/search?q=tellraw+editor
    # nullと書くことでメッセージを表示させないことが可能です。
    # 冒頭の'>'は「おまじない」です。消さないでください。
    broadcast: >
     [
     {"text":"$player","color":"green"},
     {"text":" has quit, played for "},
     {"text":"$online","color":"aqua"},
     {"text":"."}
     ]
    # Spigot利用時に、他のプラグインのログアウトメッセージを抑制できる場合があります。
    # 抑制したい場合はtrue、抑制したくない場合はfalseを記述してください。
    override: true


command:
    # コマンドを実行した時に表示するメッセージです。
    # /tellrawコマンド等に使われるjson形式で指定してください。
    # json形式がわからない場合は、適当に作れるツールがありますのでそちらをどうぞ。
    # https://www.google.co.jp/search?q=tellraw+editor
    # nullと書くことでメッセージを表示させないことが可能です。
    # 冒頭の'>'は「おまじない」です。消さないでください。
    message: >
     [
     {"text":"Player : ","color":"green"},
     {"text":"$player","color":"gold"},
     {"text":"\n"},
     {"text":"Now : ","color":"green"},
     {"text":"$now","color":"aqua"},
     {"text":"\n"},
     {"text":"First join : ","color":"green"},
     {"text":"$first-join","color":"aqua"},
     {"text":" (","color":"green"},
     {"text":"$played","color":"aqua"},
     {"text":" ago)\nCount : ","color":"green"},
     {"text":"$count","color":"aqua"},
     {"text":"\n"},
     {"text":"Total online : ","color":"green"},
     {"text":"$total-online","color":"aqua"},
     {"text":" (avg: ","color":"green"},
     {"text":"$average-online","color":"aqua"},
     {"text":")\nLast join : ","color":"green"},
     {"text":"$last-join","color":"aqua"},
     {"text":" (","color":"green"},
     {"text":"$online","color":"aqua"},
     {"text":" ago)\nLast quit : ","color":"green"},
     {"text":"$last-quit","color":"aqua"},
     {"text":" (","color":"green"},
     {"text":"$interval","color":"aqua"},
     {"text":" ago)\nLast online : ","color":"green"},
     {"text":"$last-online","color":"aqua"},
     {"text":" (","color":"green"},
     {"text":"$offline","color":"aqua"},
     {"text":" ago)","color":"green"}
     ]

# Spigotで初めてLongTimeNoSeeを起動した際に、サーバーのデータから
# 最終ログイン時間等の情報をインポートするかどうかを指定します。
# インポートする場合はtrue、しない場合はfalseを記述してください。
# 一度インポートすると自動でfalseになります。
# 基本的に二度インポートする必要性はありません。
import: true

# 時刻フォーマットを指定します。
date:
    # 具体的な時刻の場合のフォーマットを指定します。
    # 記述方法については、SimpleDateFormatに従ってください。
    # https://docs.oracle.com/javase/jp/8/docs/api/java/text/SimpleDateFormat.html
    format: 'yyyy/MM/dd H:mm'
    # 時刻が現在の場合に表示する文字列を指定します。
    now: 'now'
    # 時刻が不明の場合に表示する文字列を指定します。
    na: 'N/A'
# 時間フォーマットを指定します。
period:
    # 具体的な時間の場合のフォーマットを指定します。
    # Dが日間、Hが時間、Mが分間、Sが秒間を示します。
    # 単位を示す上記のアルファベットの後に、
    # {}で囲った単位を付けることで単位を指定できます。
    format: 'D{days }H{hours }M{minutes }S{seconds}'
    # 時間が瞬間の場合に表示する文字列を指定します。
    now: 'a moment'
    # 時間が不明の場合に表示する文字列を指定します。
    na: 'N/A'

また、jsonフォーマットで指定する設定項目中では、変数埋め込みが可能です。特定の文字列を記述することで、対応する情報が埋め込まれます。
  • $now 現在時刻
  • $onlinecount オンラインプレイヤー数
  • $offlinecount 累計プレイヤー数
  • $first-join 初回ログイン時刻
  • $played 初回ログイン時刻からの経過時間
  • $count 累計ログイン回数
  • $total-online 累計オンライン時間
  • $average-online 平均オンライン時間
  • $last-join 最終ログイン時刻
  • $online 最終ログイン時刻からの経過時間
  • $last-quit 最終ログアウト時刻
  • $last-online 最終オンライン時刻
  • $interval 最終ログアウト時刻からの経過時間
  • $offline 最終オンライン時刻からの経過時間
  • $player プレイヤー名
※最終ログアウト時刻と最終オンライン時刻の違いは、ログイン中のプレイヤーの扱いです。最終ログアウト時刻の場合、前回のログアウト時刻を表示するのに対し、最終オンライン時刻の場合、現在の時刻を表示します。

コマンドを実行することにより、LongTimeNoSeeプラグインの記録しているプレイヤー情報を表示させることが出来ます。表示される情報は、config.ymlの設定によって変更できます。デフォルトでは、'longtimenosee.command'権限を持つプレイヤーが/seen、/nosee、/ltnsコマンドにより実行することが出来ます。

ダウンロード

ライセンスはGNU GENERAL PUBLIC LICENSE Version 3を適用します。

Donwload v4.0.0
Source code on github
Plugin製作してます。Chaten, UsefulBarrier, ChannelSlot, Lic,ElytraBooster
バグ報告や制作依頼への反応は多分twitterが一番早いと思います。
アバター
toyblocks
ID:4d484e80
石掘り
 
記事: 71
登録日時: 2014年7月09日(水) 23:36

  • (PostNo.300400)

Re: [Spigot/Bungee 1.8-1.11] ログインメッセージ ~LongTimeNoSee~

投稿記事by toyblocks » 2017年4月12日(水) 23:26

LongTimeNoSee v4.0.1にアップデート致しました。
変更点:
  • BungeeCordでのオフラインプレイヤーの検索に対応
  • Bukkitでオフラインプレイヤーの検索に失敗するバグの仮修正

変更にあたりKoryさんに協力して頂きました。ありがとうございました。
Plugin製作してます。Chaten, UsefulBarrier, ChannelSlot, Lic,ElytraBooster
バグ報告や制作依頼への反応は多分twitterが一番早いと思います。
アバター
toyblocks
ID:8f5cb5a1
石掘り
 
記事: 71
登録日時: 2014年7月09日(水) 23:36


Return to サーバーMOD,プラグイン 公開/紹介

x