欢迎来到Minecraft插件百科!
对百科编辑一脸懵逼?
帮助:快速入门
带您快速熟悉百科编辑!
因近日遭受攻击,百科现已限制编辑,有意编辑请加入插件百科企鹅群:223812289
查看“Plugin.yml”的源代码
←
Plugin.yml
跳转到导航
跳转到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于这些用户组的用户执行:
用户
、
自动确认用户
、
巡查者
您可以查看和复制此页面的源代码。
{{DocsInclude}} When Bukkit loads a plugin, it needs to know some basic information about it. It reads this information from a YAML file, 'plugin.yml'. This file consists of a set of attributes, each defined on a new line and with no indentation. {| cellspacing="0" cellpadding="4" border="1" class="wikitable" |+ Attributes |- ! Attribute ! Required ! Description ! Example ! Notes |- style="font-weight: bold;" | name | yes | The name of your plugin. | <code>name: MyPlugin</code> | *Must consist of all alphanumeric characters and underscores (a-z,A-Z,0-9, _) *Used to determine the name of the plugin's data folder. Data folders are placed in the ./plugins/ directory by default. *It is good practice to name your jar the same as this, for example 'MyPlugin.jar' |- style="font-weight: bold;" | version | yes | The version of this plugin. | <code>version: 1.4.1</code> | *Version is an arbitrary string, however the most common format is MajorRelease.MinorRelease.Build (eg: 1.4.1). *Typically you will increment this every time you release a new feature or bug fix. *Displayed when a user types <code>/version PluginName</code> |- | description | no | A human friendly description of the functionality your plugin provides. | <code>description: This plugin is so 31337. You can set yourself on fire.</code> | *The description can have multiple lines. *Displayed when a user types <code>/version PluginName</code> |- | load | no | Explicitly state when the plugin should be loaded. if not supplied will default to postworld | <code> load: STARTUP </code> | Has two possible values * STARTUP * POSTWORLD |- | author | no | Uniquely identifies who developed this plugin. | <code>author: CaptainInflamo</code> | *Gives credit to the developer. *Used in some server error messages to provide helpful feedback on who to contact when an error occurs. *A bukkit.org forum handle or email address is recommended. *Is displayed when a user types /version PluginName |- | authors | no | Allows you to list multiple authors, if it is a collaborative project. See author. | <code>authors: [Cogito, verrier, EvilSeph]</code> | *You can define both author and authors, however they will be merged into one list internally. |- | website | no | The plugin's or author's website. | <code>website: http://forums.bukkit.org/threads/MyPlugin.31337/</code> | *If you have no dedicated website, a link to the Bukkit forum post where this plugin is listed is highly recommended. *Displayed when a user types <code>/version PluginName</code> |- style="font-weight: bold;" | main | yes | Points to the class that extends JavaPlugin | <code>main: org.bukkit.plugin.MyPlugin</code> | *Note that this must contain the full namespace including the class file itself. *If your namespace is <code>org.bukkit.plugin</code>, and your class file is called <code>MyPlugin</code> then this must be <code>org.bukkit.plugin.MyPlugin</code> |- | database | no | Set to true if this plugin uses a database. | <code>database: false</code> | *Using a database is non-trivial. See [[Plugin_Databases]] |- | depend | no | A list of plugins that your plugin requires to load. | <code>depend: [OnePlugin, AnotherPlugin]</code> | *The value must be in YAML list format (See http://en.wikipedia.org/wiki/YAML#Lists ) *Use the "name" attribute of the required plugin in order to specify the dependency. *If any plugin listed here is not found your plugin will fail to load. *If multiple plugins list each other as a depend, so that there are no plugins without an unloadable dependency, all will fail to load. *(See: Wiki: Plugin_Dependencies) |- | prefix | no | The name to use when logging to console instead of the plugin's name. | <code>prefix: ex-why-zee</code> | |- | softdepend | no | A list of plugins that are required for your plugin to have full functionality. | <code>softdepend: [OnePlugin, AnotherPlugin]</code> | *The value must be in YAML list format (See http://en.wikipedia.org/wiki/YAML#Lists ) *Use the "name" atrribute of the desired plugin in order to specify the dependancy. *Your plugin will load after any plugins listed here. *Circular soft dependencies are loaded arbitrarily. *(See: Wiki: Plugin_Dependencies) |- | loadbefore | no | A list of plugins should be loaded after your plugin. | <code>loadbefore: [OnePlugin, AnotherPlugin]</code> | *The value must be in YAML list format (See http://en.wikipedia.org/wiki/YAML#Lists ) *Treated as if the listed plugin soft depends on the specifying plugin. *Use the "name" atrribute of the desired plugin in order to specify the target. *Your plugin will load before any plugins listed here. *Circular soft dependencies are loaded arbitrarily. *(See: Wiki: Plugin_Dependencies) |- | commands | no | The name of a command the plugin wishes to register, as well as an optional list of command attributes. | <code> commands: flagrate: [optional command attributes] </code> | *The command name should not contain the leading '/' required to issue a command. *You can choose any command name you wish, however 'common' commands such as <code>/kick</code> are often already registered. Use the 'alias' command attribute to supply alternate names. @TODO: verify we're happy with this |- | permissions | no | Permissions that the plugin whishes to register. Each node represents a permission to register. Each permission can have additional attributes. | <pre>permissions: inferno.*: [optional permission attributes] inferno.flagate: [optional permission attributes] inferno.burningdeaths: [optional permission attributes]</pre> | *Permission registration is optional, can also be done from code *Permission registration allows you to set descriptions, defaults, and child parent relationships *Permission names should be kept in the style of <pluginname>.[category].[category].<permission> |} A command block starts with the command's name, and then has a list of attributes. {| cellspacing="0" cellpadding="4" border="1" class="wikitable" |- ! Command Attribute ! Required ! Description ! Example ! Notes |- | description | no | A short description of what the command does. | <code>description: Set yourself on fire</code> | *Can be used in conjunction with /help |- | aliases | no | Alternate command names a user may use instead | <code>aliases: combust_me</code> OR <code>aliases: [combust_me, combustMe, cm]</code> | *You can specify any of none, 1 or many aliases. *If you specify more than one alias, they must be in YAML list format (See http://en.wikipedia.org/wiki/YAML#Lists ) |- | permission | no | The most basic permission node required to use the command | <code>permission: inferno.flagrate</code> | *This permissions node can be used to determine if a user should be able to see this command *Some plugins will use this node to construct a personalized /help |- | permission-message | no | A no-permission message | <code>permission-message: You do not have /<permission></code> | *Displayed to a player that attempts to use a command but does not have the associated permission *<permission> is a macro that is replaced with the permission node that is required to use the command. *You may use empty quotes to indicate nothing should be displayed. |- | usage | no | A short description of how to use this command. | <code>usage: Syntax error! Perhaps you meant /<command> PlayerName?</code> | *Displayed to whoever issued the command when the plugin's command handler (onCommand typically) does not return true. *<command> is a macro that is replaced with the command issued wherever it occurs. *To use the string "Usage:" (i.e. <code>usage: Usage: /god [player]</code>, surround the text after the usage: label with double-quotes:<br> <code>usage: "Usage: /god [player]"</code> |} A permission block starts with the permission's name and is followed by nodes of attributes {| cellspacing="0" cellpadding="4" border="1" class="wikitable" |- ! Permission Attribute ! Required ! Description ! Example ! Notes |- | description | no | A short description of what this permission allows | <pre>description: Allows you to set yourself on fire</pre> | *Allows programmatic access, and helps server administrators |- | default | no | Sets the default value of the permission | <pre>default: true</pre> | *If node does not exist the permission defaults to op *allowed defaults are: true, false, op, not op *op default will be true if player is op *no op default is the opposite behavior (of op) |- | children | no | allows you to set children for the permission. Child nodes are permission names | <pre>children: inferno.flagrate: true inferno.burningdeaths: true</pre> | *Each child node must be either set to true or false **a child node of true inherits the parent permission **a child node of false inherits the inverse parent permission * Can also contain other permission nodes [https://github.com/bukkit/bukkit/commit/326f2aca9b98d1d096842d3410000ed9d84611f5 {1}] |} Example: <blockquote><source lang="yaml" style="border: 1px #aaa solid;"> 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 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 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 </source></blockquote> {{Languages|Plugin YAML}}
本页使用的模板:
模板:DocsInclude
(
查看源代码
)
模板:Languages
(
查看源代码
)
返回
Plugin.yml
。
导航菜单
个人工具
登录
命名空间
页面
讨论
大陆简体
查看
阅读
查看源代码
查看历史
更多
搜索
导航
首页
最近更改
随机页面
编辑相关
百科公告
编辑帮助
互助客栈
贡献分数
测试沙盒
发布条目
插件分类
管理
安全
聊天
编程
经济
修正
娱乐
综合
信息
机械
角色
传送
网页
整地
创世
付费
其它
工具
链入页面
相关更改
特殊页面
页面信息
相关网站
MCMOD百科
Minecraft中文百科
Minecraft纪念论坛
Minecraft百度贴吧
虚无世界Wiki