Minecraftサーバーを動かす知識

Jeconの使い方と設定

投稿:  更新:  By: HimaJyun

このページではJeconの使い方、導入方法、コマンド、パーミッション、設定などを解説します。

プラグイン名Jecon
開発者HimaJyun
配布場所GitHub
ライセンスApache License 2.0
ソースコードGitHub(HimaJyun/Jecon)
執筆時バージョン2.2.0 (Spigot 1.17)
備考当サイト管理人作

スポンサーリンク

Jeconとは

Jeconはサーバーに経済の概念を導入するプラグインです。他の経済プラグインを使用する際に必須となる「アカウント」「所持金」の機能を実装します。

Vaultに対応しており、VaultAPIを使用する経済プラグインにアカウント機能を提供します。

SQLiteに対応しているため簡単に使えるのはもちろんのこと、MySQLにも対応しているためサーバーの規模に合わせた選択が可能です。

使い方

よく使うコマンドは/moneyです。所持金を確認します。

また、/money payコマンドで他のプレイヤーに送金できます。

その他管理用コマンドに関してはコマンド一覧をご覧ください。

導入方法

Jeconには前提プラグインなどは必要ありません。

GitHubからプラグインをダウンロードして設定を行ってください。

プラグインの設定後に必要に合わせてVaultや他の経済プラグインを導入してください。

コマンド

< >は必須、[ ]はオプションの引数です。

コマンドパーミッション説明
/moneyjecon.show自分の所持金を表示します
/money show [プレイヤー]jecon.show.other指定したプレイヤーの所持金を表示します
/money pay <プレイヤー> <金額>jecon.pay指定したプレイヤーに送金します
/money set <プレイヤー> <残高>jecon.setプレイヤーの残高を指定した値にセットします
/money give <プレイヤー> <金額>jecon.giveプレイヤーの残高を指定した金額増やします
/money take <プレイヤー> <金額>jecon.takeプレイヤーの残高を指定した金額減らします
/money create <プレイヤー> [残高]jecon.createプレイヤーのアカウントを作成します
/money remove <プレイヤー>jecon.removeプレイヤーのアカウントを削除します
/money top [ページ]jecon.top長者番付を表示します
/money convertjecon.convertデータベース形式を変換します
/money reloadjecon.reload設定をリロードします
/money versionjecon.versionバージョン情報を表示します
/money help [コマンド]なしヘルプを表示します

設定

設定ファイルは基本的な設定を行うconfig.ymlと、表示されるメッセージを設定するmessage.ymlの2つで構成されています。

config.yml

コメントを参考に設定してください。

# 新しいバージョンを確認するか?
versionCheck: true

# デフォルトの所持金
defaultBalance: 10000.0
# ログイン時に自動でアカウントを作成する
createAccountOnJoin: true

# 遅延書き込み機能の設定
# 使用するとデータベースへの書き込みが減り、パフォーマンスが大幅に向上します。
# 複数のサーバーで1つのデータベースを使用している環境(BungeeCordなど)では残高が一時的に不整合になる可能性があります。
# "最終的には"正しい値になるため大抵の環境では問題ありませんが、常に正しい残高になる必要がある時はfalseに設定してください
lazyWrite: true

# 金額を表示する場合のフォーマット
format:
    # 整数が単数形の時の通貨
    singularMajor: "dollar"
    # 整数が複数形の時の通貨
    pluralMajor: "dollars"
    # 小数が単数形の時の通貨
    singularMinor: "cent"
    # 小数が複数形の時の通貨
    pluralMinor: "cents"
    # 通貨のフォーマット
    format: "{major} {majorcurrency} {minor} {minorcurrency}"
    # オプション、小数点以下が0の時のフォーマット
    #formatZeroMinor: "{major} {majorcurrency}"
    # 例:
    #format: "$ {major}.{minor}"
    #format: "{major}円"

database:
    # データベースの種類(sqlite/mysql)
    type: sqlite
    sqlite:
        # データベースファイルのパス
        file: "jecon.db"
    mysql:
        # MySQLのアドレスとポート
        host: "localhost:3306"
        # データベース名
        name: "jecon"
        # MySQLのユーザー名
        username: "root"
        # MySQLのパスワード
        password: "your_mysql_password"
        # データベースの接続時に実行するクエリ
        init: "SET SESSION query_cache_type=0"
        # JDBCのプロパティ(意味が分からない場合はデフォルトのままを推奨)
        properties:
            "useSSL": "false"
            # encoding
            #"useUnicode": "true"
            #"characterEncoding": "UTF-8"
            #"characterSetResults": "UTF-8"
            # performance
            "maintainTimeStats": "false"
            "elideSetAutoCommits": "true"
            "useLocalSessionState": "true"
            "alwaysSendSetIsolation": "false"
            "cacheServerConfiguration": "true"
            "cachePrepStmts": "true"
            "prepStmtCacheSize": "250"
            "prepStmtCacheSqlLimit": "2048"
            #"useServerPrepStmts": "true"
    # コネクションプーリングの設定(意味が分からない場合はデフォルトのままを推奨)
    connectionPool:
        # -1を指定するとデフォルト値が使用されます
        maximumPoolSize: -1
        minimumIdle: -1
        maxLifetime: -1
        connectionTimeout: -1
        idleTimeout: -1

# 触ってはいけない
version: 3

message.yml

message.ymlは日本語化したものを貼り付けておきます。{変数名}は実行時に置き換えられるマクロです。

doNotHavePermission: "&cあなたには権限がありません!"
missingArgument: "&c引数が足りません!"
invalidArgument: "&c不正な引数が指定されています&r: {value}"
playerNotFound: "&cプレイヤーがみつかりません&r: {name}"

accountNotFound: "&c口座がみつかりません&r: {name}"
notEnough: "&c所持金が不足しています"

show: "{name}の所持金: {balance}"
paySuccess: "&a{name}に{amount}を送金しました"
payReceive: "&a{name}から{amount}を受け取りました"
set: "&a{name}の所持金を{balance}に設定しました"
give: "&a{name}に{amount}を与えました"
take: "&a{name}から{amount}を徴収しました"
create: "&a{name}の口座を作成しました(残高: {balance})."
createAlready: "&c口座は既に作成されています: {name}"
remove: "&a{name}の口座を削除しました(残高: {balance})"
reloaded: "設定がリロードされました"

topFirst: "&a======&r 長者番付 (ページ: {page}) &a======"
topEntry: "{rank}: {name} ({balance})"

newVersion:
    - "新しいバージョンが利用可能: {old} -> {new}"
    - "ダウンロード: {url}"

help:
    show: "所持金を表示します"
    pay: "<player>に<amount>を送金します"
    set: "<player>の所持金を<balance>に設定します"
    give: "<player>に<amount>を与えます"
    take: "<player>から<amount>を徴収します"
    create: "<player>のアカウントを作成します"
    remove: "<player>のアカウントを削除します"
    top: "長者番付を表示します"
    reload: "設定をリロードします"
    version: "バージョンを表示します"
    help: "ヘルプを表示します"
    example: "例:"

# //*<!-- syntax -->*/
# &0->Black(#000000)
# &1->Dark Blue(#0000AA)
# &2->Dark Green(#00AA00)
# &3->Dark Aqua(#00AAAA)
# &4->Dark Red(#AA0000)
# &5->Purple(#AA00AA)
# &6->Gold(#FFAA00)
# &7->Gray(#AAAAAA)
# &8->Dark Gray(#555555)
# &9->Blue(#5555FF)
# &a->Green(#55FF55)
# &b->Aqua(#55FFFF)
# &c->Red(#FF5555)
# &d->Light Purple(#FF55FF)
# &e->Yellow(#FFFF55)
# &f->White(#FFFFFF)
# &k->Obfuscated
# &l->Bold
# &m->Strikethrough
# &n->Underline
# &o->Italic
# &r->Reset
# &&->&
# {variable}->variable
# &{variable&}->{variable}

# Don't touch
version: 2