Welcome to the BukkitWiki!

This Wiki is home to Bukkit's documentation and regulations surrounding the Bukkit Project and it's services. Want to help out? We would love to have you! Signup to get started!

We have begun migration of most wikis to our new host, Amazon Web Services. All but the top 100 wikis are in read-only mode until the migration is complete. Estimated completion: End of Week.

Plugin YAML/nl

From BukkitWiki
Jump to: navigation, search

Wanneer Bukkit een plugin laadt, moet Bukkit wat informatie over deze plugin weten. Deze informatie wordt gelezen van een YAML bestand, genaamd 'plugin.yml'. In dit bestand staan verschillende eigenschappen, waarvan elke op een nieuwe regel begint.

Eigenschappen
Eigenschap Benodigd Beschrijving Voorbeeld Handig om te weten
name ja De naam van de plugin. name: MyPlugin
  • Kan bestaan uit alle alfanumerieke karakters en underscores (a-z,A-Z,0-9, _)
  • Wordt gebruikt om de datafolder van de plugin te vinden. De datafolder van een plugin staat standaard in ./plugins/
  • Het is slim om het .jar bestand van de plugin hetzelfde te noemen als de naam, bijvoorbeeld 'MyPlugin.jar'
version ja De versie van de plugin version: 1.4.1
  • De versie is een willekeurige tekst, maar het wordt meestal op de volgende manier gebruikt: MajorRelease.MinorRelease.Build (eg: 1.4.1).
  • Het versie nummer wordt normaal veranderd als er een bugfix is of als er nieuwe functies zijn toegevoegd.
  • Wordt weergegeven als het commando /version <plugin> wordt uitgevoerd.
description nee Een gebruiksvriendelijke beschrijving van wat de plugin kan. description: Met deze plugin kun je jezelf in de fik zetten.
  • De beschrijving kan uit meerdere regels bestaan.
  • Wordt weergegeven als het commando /version <plugin> wordt uitgevoerd.
load nee Explicitly state when the plugin should be loaded. if not supplied will default to postworld load: STARTUP Heeft twee mogelijke waarden:
  • STARTUP
  • POSTWORLD
author nee Uniquely identifies who developed this plugin. author: CaptainInflamo
  • 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 nee Allows you to list multiple authors, if it is a collaborative project. See author. authors: [Cogito, verrier, EvilSeph]
  • You can define both author and authors, however they will be merged into one list internally.
website nee De website van de maker van de plugin. website: http://forums.bukkit.org/threads/MyPlugin.31337/
  • 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 /version PluginName
main ja Wijst op de klasse die JavaPlugin uitbreidt. main: org.bukkit.plugin.MyPlugin
  • Note that this must contain the full namespace including the class file itself.
  • If your namespace is org.bukkit.plugin, and your class file is called MyPlugin then this must be org.bukkit.plugin.MyPlugin
database nee Stel dit in op true als de plugin een database gebruikt. database: false
depend nee Een lijst met plugins die jouw plugin nodig heeft. depend: [OnePlugin, AnotherPlugin]
  • 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 nee De naam die wordt gebruikt bij het loggen naar de console in plaats van de naam van de plugin. prefix: ex-why-zee
softdepend nee Een lijst met plugins die nodig zijn om jouw plugin volledig te laten functioneren. softdepend: [OnePlugin, AnotherPlugin]
  • 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 nee Een lijst met plugins die moeten worden geladen voor jouw plugin. loadbefore: [OnePlugin, AnotherPlugin]
  • 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 nee The name of a command the plugin wishes to register, as well as an optional list of command attributes.

commands:
 flagrate:
   [optional command attributes]

  • 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 /kick are often already registered. Use the 'alias' command attribute to supply alternate names. @TODO: verify we're happy with this
permissions nee Permissions that the plugin whishes to register. Each node represents a permission to register. Each permission can have additional attributes.
permissions:
  inferno.*:
    [optional permission attributes]
  inferno.flagate:
    [optional permission attributes]
  inferno.burningdeaths:
    [optional permission attributes]
  • 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.

Command Attribute Benodigd Beschrijving Voorbeeld Handig om te weten
description nee Een korte beschrijving van wat het commando doet. description: Set yourself on fire
  • Can be used in conjunction with /help
aliases nee Alternate command names a user may use instead
aliases: combust_me OR 
aliases: [combust_me, combustMe, cm]
permission nee De meest basale permissie die nodig is om dit commando uit te voeren.
permission: inferno.flagrate
  • 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 nee Het geen-permissie bericht. permission-message: You do not have /<permission>
  • 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 nee Een korte beschrijving van hoe je het commando moet gebruiken. usage: Syntax error! Perhaps you meant /<command> PlayerName?
  • 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. usage: Usage: /god [player], surround the text after the usage: label with double-quotes:
    usage: "Usage: /god [player]"


A permission block starts with the permission's name and is followed by nodes of attributes

Permission Attribute Voorbeeld Beschrijving Voorbeeld Handig om te weten
description nee Een korte beschrijving van wat deze permissie toestaat.
description: Allows you to set yourself on fire
  • Allows programmatic access, and helps server administrators
default nee Stelt de standaardwaarde van deze permissie in.
default: true
  • 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 nee Geeft de mogelijkheid in subpermissies in te stellen. De subpermissies zijn de permissienamen.
children:
  inferno.flagrate: true
  inferno.burningdeaths: true
  • 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 {1}
Voorbeeld:
 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 /&lt;command&gt; to ignite yourself.
   burningdeaths:
     description: List how many times you have died by fire.
     aliases: [burning_deaths, burningDeaths]
     permission: inferno.burningdeaths
     usage: |
       /&lt;command&gt; [player]
       Example: /&lt;command&gt; - see how many times you have burned to death
       Example: /&lt;command&gt; 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
Language   EnglishбеларускаяDeutschespañolsuomifrançaisitaliano한국어Nederlandsnorsk bokmålpolskiportuguêsрусскийlietuviųčeština