提供: Minecraft Modding Wiki
(2人の利用者による、間の3版が非表示) | |||
1行目: | 1行目: | ||
− | {{warning}} 本ページの原文は | + | {{warning}} 本ページの原文は https://bukkit.gamepedia.com/Plugin_YAML にあります。原文は、https://github.com/Bukkit/Bukkit/blob/master/src/main/java/org/bukkit/plugin/PluginDescriptionFile.java のJavadocをwikiに書き直したドキュメントです。本ページは、訳者独自の記述が含まれることをご了承ください。<br /> |
{{warning}} plugin.ymlにマルチバイトコード(日本語)を使用したい場合は、UTF8N (BOM無し) で保存してください。windows のメモ帳ではBOM無しで保存できないため、日本語を使いたい場合はメモ帳を使用しないでください。また、BukkitDevへの登録など、海外圏での利用を視野に入れている場合は、全て英語で書くようにしてください。<br /> | {{warning}} plugin.ymlにマルチバイトコード(日本語)を使用したい場合は、UTF8N (BOM無し) で保存してください。windows のメモ帳ではBOM無しで保存できないため、日本語を使いたい場合はメモ帳を使用しないでください。また、BukkitDevへの登録など、海外圏での利用を視野に入れている場合は、全て英語で書くようにしてください。<br /> | ||
{{warning}} 本項目は、"YAMLの表記方法" までは、深く言及しません。リストやハッシュ、複数行文字列の記載方法は、http://ja.wikipedia.org/wiki/YAML などをご参照ください。 | {{warning}} 本項目は、"YAMLの表記方法" までは、深く言及しません。リストやハッシュ、複数行文字列の記載方法は、http://ja.wikipedia.org/wiki/YAML などをご参照ください。 | ||
20行目: | 20行目: | ||
|- style="font-weight: bold;" | |- style="font-weight: bold;" | ||
| name | | name | ||
− | | | + | | 必須 |
| プラグイン名。 | | プラグイン名。 | ||
| <code>name: MyPlugin</code> | | <code>name: MyPlugin</code> | ||
30行目: | 30行目: | ||
|- style="font-weight: bold;" | |- style="font-weight: bold;" | ||
| version | | version | ||
− | | | + | | 必須 |
| プラグインのバージョン。 | | プラグインのバージョン。 | ||
| <code>version: 1.4.1</code> | | <code>version: 1.4.1</code> | ||
40行目: | 40行目: | ||
|- | |- | ||
| description | | description | ||
− | | | + | | |
| プラグインの説明。 | | プラグインの説明。 | ||
| <code>description: This plugin is so 31337. You can set yourself on fire.</code> | | <code>description: This plugin is so 31337. You can set yourself on fire.</code> | ||
50行目: | 50行目: | ||
|- | |- | ||
| load | | load | ||
− | | | + | | |
| プラグインの起動タイミング設定。 | | プラグインの起動タイミング設定。 | ||
| <code> load: STARTUP </code> | | <code> load: STARTUP </code> | ||
60行目: | 60行目: | ||
|- | |- | ||
| author | | author | ||
− | | | + | | |
| 開発者名。 | | 開発者名。 | ||
| <code>author: CaptainInflamo</code> | | <code>author: CaptainInflamo</code> | ||
70行目: | 70行目: | ||
|- | |- | ||
| authors | | authors | ||
− | | | + | | |
| 開発者名(複数用)。 | | 開発者名(複数用)。 | ||
| <code>authors: [Cogito, verrier, EvilSeph]</code> | | <code>authors: [Cogito, verrier, EvilSeph]</code> | ||
80行目: | 80行目: | ||
|- | |- | ||
| website | | website | ||
− | | | + | | |
| プラグイン開発者のウェブサイト。 | | プラグイン開発者のウェブサイト。 | ||
| <code>website: http://forums.bukkit.org/threads/MyPlugin.31337/</code> | | <code>website: http://forums.bukkit.org/threads/MyPlugin.31337/</code> | ||
89行目: | 89行目: | ||
|- style="font-weight: bold;" | |- style="font-weight: bold;" | ||
| main | | main | ||
− | | | + | | 必須 |
| プラグインのメインクラス。 | | プラグインのメインクラス。 | ||
| <code>main: org.bukkit.plugin.MyPlugin</code> | | <code>main: org.bukkit.plugin.MyPlugin</code> | ||
99行目: | 99行目: | ||
|- | |- | ||
| database | | database | ||
− | | | + | | |
| データベースを使用するかどうか。 | | データベースを使用するかどうか。 | ||
| <code>database: false</code> | | <code>database: false</code> | ||
109行目: | 109行目: | ||
|- | |- | ||
| prefix | | prefix | ||
− | | | + | | |
| ログの接頭辞 | | ログの接頭辞 | ||
| <code>prefix: ex-why-zee</code> | | <code>prefix: ex-why-zee</code> | ||
118行目: | 118行目: | ||
|- | |- | ||
| depend | | depend | ||
− | | | + | | |
| 依存先プラグインの一覧。 | | 依存先プラグインの一覧。 | ||
| <code>depend: [OnePlugin, AnotherPlugin]</code> | | <code>depend: [OnePlugin, AnotherPlugin]</code> | ||
131行目: | 131行目: | ||
|- | |- | ||
| softdepend | | softdepend | ||
− | | | + | | |
| 先に起動すべきプラグインの一覧。 | | 先に起動すべきプラグインの一覧。 | ||
| <code>softdepend: [OnePlugin, AnotherPlugin]</code> | | <code>softdepend: [OnePlugin, AnotherPlugin]</code> | ||
145行目: | 145行目: | ||
|- | |- | ||
| loadbefore | | loadbefore | ||
− | | | + | | |
| 後に起動すべきプラグインの一覧。 | | 後に起動すべきプラグインの一覧。 | ||
| <code>loadbefore: [OnePlugin, AnotherPlugin]</code> | | <code>loadbefore: [OnePlugin, AnotherPlugin]</code> | ||
158行目: | 158行目: | ||
|- | |- | ||
| commands | | commands | ||
− | | | + | | |
| プラグインのコマンド一覧。 | | プラグインのコマンド一覧。 | ||
| | | | ||
175行目: | 175行目: | ||
|- | |- | ||
| permissions | | permissions | ||
− | | | + | | |
| プラグインの権限設定一覧。 | | プラグインの権限設定一覧。 | ||
| | | | ||
196行目: | 196行目: | ||
|- | |- | ||
| default-permission | | default-permission | ||
− | | | + | | |
| デフォルト権限設定。 | | デフォルト権限設定。 | ||
| <code>default-permission: NOT_OP</code> | | <code>default-permission: NOT_OP</code> | ||
218行目: | 218行目: | ||
|- | |- | ||
| description | | description | ||
− | | | + | | |
| コマンドの説明文。 | | コマンドの説明文。 | ||
| <code>description: Set yourself on fire</code> | | <code>description: Set yourself on fire</code> | ||
227行目: | 227行目: | ||
|- | |- | ||
| aliases | | aliases | ||
− | | | + | | |
| 代替コマンド名。 | | 代替コマンド名。 | ||
| | | | ||
240行目: | 240行目: | ||
|- | |- | ||
| permission | | permission | ||
− | | | + | | |
| コマンドのパーミッションノード | | コマンドのパーミッションノード | ||
| <code>permission: inferno.flagrate</code> | | <code>permission: inferno.flagrate</code> | ||
249行目: | 249行目: | ||
|- | |- | ||
| permission-message | | permission-message | ||
− | | | + | | |
| 権限不足時に表示されるメッセージ | | 権限不足時に表示されるメッセージ | ||
| <code>permission-message: You do not have <permission>.</code> | | <code>permission-message: You do not have <permission>.</code> | ||
255行目: | 255行目: | ||
*コマンドを実行しようとした人が、"permission"設定の権限を持っていない場合に、表示されるメッセージです。 | *コマンドを実行しようとした人が、"permission"設定の権限を持っていない場合に、表示されるメッセージです。 | ||
*"<permission>" はマクロで、実際にメッセージが表示されるときに、該当のパーミッションノードに置き換えされます。 | *"<permission>" はマクロで、実際にメッセージが表示されるときに、該当のパーミッションノードに置き換えされます。 | ||
− | * | + | *空文字列を指定する<pre>permission-message: ''</pre>ことで、本メッセージを非表示にすることが可能です。 |
|- | |- | ||
| usage | | usage | ||
− | | | + | | |
| コマンドの使用方法説明文。 | | コマンドの使用方法説明文。 | ||
| <code>usage: Syntax error! Perhaps you meant /<command> PlayerName?</code> | | <code>usage: Syntax error! Perhaps you meant /<command> PlayerName?</code> | ||
| | | | ||
*このコマンドのCommandExecutorのonCommandメソッドがfalseを返すときに、表示されるメッセージです。 | *このコマンドのCommandExecutorのonCommandメソッドがfalseを返すときに、表示されるメッセージです。 | ||
− | *"<command>" | + | *"<command>" は実際にメッセージが表示されるときに、指定されたコマンドのラベルで置き換えされます。 |
− | *" | + | *コロンを含む文字列を使用したい場合<ref group="訳注">キーとみなされうまく解析されません。</ref>(例: <code>usage: Usage: /god [player]</code>)、クオートで文字列を囲うようにしてください。<code>usage: "Usage: /god [player]"</code> |
|} | |} | ||
281行目: | 281行目: | ||
|- | |- | ||
| description | | description | ||
− | | | + | | |
| 権限の説明文。 | | 権限の説明文。 | ||
| <pre>description: Allows you to set yourself on fire</pre> | | <pre>description: Allows you to set yourself on fire</pre> | ||
290行目: | 290行目: | ||
|- | |- | ||
| default | | default | ||
− | | | + | | |
| 権限のデフォルト設定。 | | 権限のデフォルト設定。 | ||
| <pre>default: true</pre> | | <pre>default: true</pre> | ||
300行目: | 300行目: | ||
|- | |- | ||
| children | | children | ||
− | | | + | | |
| 子権限の設定。 | | 子権限の設定。 | ||
| | | | ||
319行目: | 319行目: | ||
=== plugin.yml の記載例 === | === plugin.yml の記載例 === | ||
− | |||
<blockquote><source lang="yaml" style="border: 1px #aaa solid;"> | <blockquote><source lang="yaml" style="border: 1px #aaa solid;"> |
2019年2月28日 (木) 20:15時点における最新版
- Warning: 本ページの原文は https://bukkit.gamepedia.com/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 の記載例[編集]
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