Cuando Bukkit carga un plugin, necesita saber cierta información básica de este. Bukkit lee esta información del archivo YAML, llamado 'plugin.yml'. Este archivo consta de un conjunto de atributos, cada uno definido en una nueva línea y sin sangría.
Atributo | Requerido | Descripcion | Ejemplo | Notas |
---|---|---|---|---|
name | Sí | El nombre de tu plugin. | name: MiPlugin
|
|
version | Sí | La versión del plugin. | version: 1.4.1
|
|
description | No | Una descripción amigable para los humanos de la funcionalidad que proporciona tu plugin. | description: Este plugin es el 31337. Puedes prenderte fuego a ti mismo.
|
|
load | No | Indique explícitamente cuando se debe cargar el plugin. Si no se indica, se establecerá de forma predeterminada a postworld. | load: STARUP
|
Hay dos valores posibles:
|
author | No | Identifica de forma única quién desarrolló el plugin. | author: zuhir
|
|
authors | No | Permite enumerar varios autores, si se trata de un proyecto en colaboración. | authors: [zuhir, verrier,EvilSeph]
|
|
website | No | La página del plugin o autor. | website: http://forums.bukkit.org/threads/MyPlugin.31337/
|
|
main | Sí | La clase que extiende el JavaPlugin. | main: org.bukkit.plugin.MiPlugin
|
|
database | No | Establece a true si el plugin utiliza una base de datos. | database: false
|
|
depend | No | Lista de plugins que este requiere para cargar. | depend: [UnPlugin, OtroPlugin]
|
|
prefix | No | El nombre que se utilizara en la consola a la hora de iniciar el plugin en lugar del nombre del plugin. | prefix: ex-why-zee
|
|
softdepend | No | Lista de plugins que este requiere para tener un funcionamiento completo. | softdepend: [UnPlugin, OtroPlugin]
|
|
loadbefore | No | Lista de plugins que deben cargar antes que este. | loadbefore: [UnPlugin, OtroPlugin]
|
|
commands | No | Comandos que el plugin desee registar, así como una lista opcional de atributos para estos. | commands:
|
|
permissions | No | Permisos que el plugin desee registrar. Cada nodo representa un permiso a registrar. Cada permiso puede tener atributos adicionales. | permissions:
|
|
Un bloque de comandos comienza con el nombre de comando, y luego con una lista de atributos.
Atributo
de Comando |
Requerido | Descripción | Ejemplo | Notas |
---|---|---|---|---|
description | No | Una breve descripción de lo que hace el comando. | description: Te prende fuego a ti mismo.
|
|
aliases | No | Nombres alternativos del comando que pueden
usar los usuarios en su lugar. |
aliases: quemarme O
|
|
permission | No | El permiso más básico requerido para usar
el comando. |
permission: inferno.flagrate
|
|
permission-messge | No | Mensaje que se muestra cuando el jugador no tiene el permiso requerido. | permission-message: No tienes el permiso <permission>
|
|
usage | No | Una breve descripción de como se debe usar el comando. | usage: ¡Error de sintaxis! ¿Tal vez quisiste decir /<command> Jugador?
|
|
Un bloque de permisos comienza con el nombre del permiso, y luego con una lista de atributos.
Atributo
de Permiso |
Requerido | Descripción | Ejemplo | Notas |
---|---|---|---|---|
description | No | Una breve descripción de lo que permite
este permiso. |
description: Te permite prenderte fuego
a ti mismo. |
|
default | No | Establece el valor por defecto del permiso. | default: true |
(No conseguí traducir esto) |
children | No | Le permite configurar los "childrens" para el permiso.
Los nodos "child" son nombres de permisos. |
children:
inferno.flagrate: true inferno.burningdeaths: true |
(Estas traducciones pueden ser muy confusas, recomiendo verlas en ingles) |
Ejemplo:
name: Inferno
version: 1.4.1
description: Este plugin es el 31337. Puedes prenderte fuego a ti mismo.
# Podríamos colocar a cada autor en la lista de autores, pero decidimos no hacerlo con
# fines ilustrativos.
# Ademas, tener un autor distingue a esa persona como el líder del proyecto y asegura que
# su nombre se muestre primero.
author: CaptainInflamo
authors: [zuhir, verrier, EvilSeph]
website: http://forums.bukkit.org/threads/MyPlugin.31337/
main: com.captaininflamo.bukkit.inferno.Inferno
database: false
depend: [NewFire, FlameWire]
commands:
flagrate:
description: Prendete fuego a ti mismo..
aliases: [quemar_me, quemarme]
permission: inferno.flagrate
usage: ¡Error de sintaxis! Simplemente escribe /<command> para prenderte fuego a ti mismo.
burningdeaths:
description: Lista de cuantas veces has muerto quemado.
aliases: [muertes_quemado, muertesquemado]
permission: inferno.burningdeaths
usage: |
/<command> [player]
Example: /<command> - mira cuantas veces has ardido hasta morir.
Example: /<command> CaptainIce - mira cuantas veces ha muerto quemado CaptainIce
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