提供: Minecraft Modding Wiki
- Warning: 本ページの原文は http://wiki.bukkit.org/Plugin_YAML にあります。原文は、https://github.com/Bukkit/Bukkit/blob/master/src/main/java/org/bukkit/plugin/PluginDescriptionFile.java のJavadocをwikiに書き直したドキュメントです。本ページは、訳者独自の記述が含まれることをご了承ください。
- Warning: plugin.ymlにマルチバイトコード(日本語)を使用したい場合は、UTF8N (BOM無し) で保存してください。windows のメモ帳ではBOM無しで保存できないため、日本語を使いたい場合はメモ帳を使用しないでください。また、BukkitDevへの登録など、海外圏での利用を視野に入れている場合は、全て英語で書くようにしてください。
- Warning: 本項目は、"YAMLの表記方法" までは、深く言及しません。リストやハッシュ、複数行文字列の記載方法は、http://ja.wikipedia.org/wiki/YAML などをご参照ください。
Bukkitがプラグインをロードするとき、Bukkitはプラグインから、プラグインの情報を取得する必要があります。 情報は、YAMLファイル(plugin.yml)から取得されます。
plugin.ymlの基本設定一覧
plugin.ymlは、下表に書かれている設定のセットから構成されます。
設定名 | 必須かどうか | 説明 | 設定例 | 備考 |
---|---|---|---|---|
name | ○ | プラグイン名。 | name: MyPlugin
|
|
version | ○ | プラグインのバージョン。 | version: 1.4.1
|
|
description | × | プラグインの説明。 | description: This plugin is so 31337. You can set yourself on fire.
|
|
load | × | プラグインの起動タイミング設定。 | load: STARTUP
|
|
author | × | 開発者名。 | author: CaptainInflamo
|
|
authors | × | 開発者名(複数用)。 | authors: [Cogito, verrier, EvilSeph]
|
|
website | × | プラグイン開発者のウェブサイト。 | website: http://forums.bukkit.org/threads/MyPlugin.31337/
|
|
main | ○ | プラグインのメインクラス。 | main: org.bukkit.plugin.MyPlugin
|
|
database | × | データベースを使用するかどうか。 | database: false
|
|
prefix | × | ログの接頭辞 | prefix: ex-why-zee
|
|
depend | × | 依存先プラグインの一覧。 | depend: [OnePlugin, AnotherPlugin]
|
|
softdepend | × | 先に起動すべきプラグインの一覧。 | softdepend: [OnePlugin, AnotherPlugin]
|
|
loadbefore | × | 後に起動すべきプラグインの一覧。 | loadbefore: [OnePlugin, AnotherPlugin]
|
|
commands | × | プラグインのコマンド一覧。 |
commands: flagrate: [optional command attributes] |
|
permissions | × | プラグインの権限設定一覧。 |
permissions: inferno.*: [optional permission attributes] inferno.flagate: [optional permission attributes] inferno.burningdeaths: [optional permission attributes] |
|
default-permission | × | デフォルト権限設定。 | default-permission: NOT_OP
|
|
コマンドのオプション設定
commands設定以下の([optional command attributes])部分に記載できる、コマンドのオプション設定一覧
設定名 | 必須かどうか | 説明 | 設定例 | 備考 |
---|---|---|---|---|
description | × | コマンドの説明文。 | description: Set yourself on fire
|
|
aliases | × | 代替コマンド名。 |
または
|
|
permission | × | コマンドのパーミッションノード | permission: inferno.flagrate
|
|
permission-message | × | 権限不足時に表示されるメッセージ | permission-message: You do not have <permission>.
|
|
usage | × | コマンドの使用方法説明文。 | usage: Syntax error! Perhaps you meant /<command> PlayerName?
|
|
権限のオプション設定
permissions設定以下の [optional permission attributes] 部分に記載できる、権限のオプション設定一覧
設定名 | 必須かどうか | 説明 | 設定例 | 備考 |
---|---|---|---|---|
description | × | 権限の説明文。 | description: Allows you to set yourself on fire |
|
default | × | 権限のデフォルト設定。 | default: true |
|
children | × | 子権限の設定。 |
children: inferno.flagrate: true inferno.burningdeaths: true |
|
plugin.yml の記載例
本ページの一番上でも説明したように、plugin.ymlで日本語を使用することは推奨されないため、この記載例の中のコメントは翻訳しておりません。ご了承ください。
name: Inferno version: 1.4.1 description: This plugin is so 31337. You can set yourself on fire. # We could place every author in the authors list, but chose not to for illustrative purposes # Also, having an author distinguishes that person as the project lead, and ensures their # name is displayed first author: CaptainInflamo authors: [Cogito, verrier, EvilSeph] website: http://forums.bukkit.org/threads/MyPlugin.31337/ main: com.captaininflamo.bukkit.inferno.Inferno database: false depend: [NewFire, FlameWire] commands: flagrate: description: Set yourself on fire. aliases: [combust_me, combustMe] permission: inferno.flagrate usage: Syntax error! Simply type /<command> to ignite yourself. burningdeaths: description: List how many times you have died by fire. aliases: [burning_deaths, burningDeaths] permission: inferno.burningdeaths permission-message: You do not have <permission>. usage: | /<command> [player] Example: /<command> - see how many times you have burned to death Example: /<command> CaptainIce - see how many times CaptainIce has burned to death # The next command has no description, aliases, etc. defined, but is still valid # Having an empty declaration is useful for defining the description, permission, and messages from a configuration dynamically apocalypse: permissions: inferno.*: description: Gives access to all Inferno commands children: inferno.flagrate: true inferno.burningdeaths: true inferno.burningdeaths.others: true inferno.flagrate: description: Allows you to ignite yourself default: true inferno.burningdeaths: description: Allows you to see how many times you have burned to death default: true inferno.burningdeaths.others: description: Allows you to see how many times others have burned to death default: op children: inferno.burningdeaths: true