Publicando Su Plugin

El repositorio oficial de plugins / mod de Sponge, Ore <https://ore.spongepowered.org> _, es un proyecto gratuito y de código abierto en el que cualquiera puede publicar sus complementos de Sponge o Forge.

Empaquetando su Plugin

Ore requiere que cualquier proyecto sea empaquetado con un archivo de descriptor `` mcmod.info`` en el nivel superior de su archivo JAR. Este archivo se usa para inferir automáticamente algunos detalles importantes sobre su proyecto para facilitar el proceso de carga. Ore rechazará su complemento si este archivo no se encuentra en el JAR. Afortunadamente, la API de Sponge tiene un procesador de anotaciones integrado que crea este archivo para Ud. automáticamente, en compilación, utilizando la anotación @Plugin que probablemente ya haya creado en la clase principal de tu complemento.

Nota

Para obtener más información sobre cómo crear y compilar su primer complemento, consulte :doc: “/ clase/plugin-plugin”

Como referencia, aquí hay un archivo de muestra `` mcmod.info``:

[
    {
        "modid": "my-plugin",
        "name": "MyPlugin",
        "version": "1.0.0",
        "description": "My first plugin!",
        "url": "https://spongepowered.org",
        "authorList": [
            "windy",
            "Zidane",
            "gabizou"
        ],
        "requiredMods": [
            "[email protected]",
            "[email protected]",
            "[email protected]"
        ],
        "dependencies": [
            "[email protected]",
            "[email protected]",
            "[email protected]"
        ]
    }
]

Por lo menos, cada proyecto Ore *debe * tener los campos `` modid``, `` name`` y, `` version`` completados.

Firmando su Plugin

Debido a problemas de seguridad, Ore requiere que cada archivo de complemento (ZIP o JAR) se cargue con una firma separada Pretty Good Privacy (PGP) <https://en.wikipedia.org/wiki/Pretty_Good_Privacy> __ para una clave pública que está asociado con el correo electrónico con el que se registró en Sponge. Esta firma digital asegura que cualquier archivo cargado por un usuario fue pensado para ser cargado por el titular de la cuenta real.

Nota

Una firma digital certifica y marca el tiempo de un documento. Si el documento se modifica posteriormente de alguna manera, la verificación de la firma fallará. Una firma digital puede servir para el mismo propósito que una firma manuscrita con el beneficio adicional de ser resistente a alteraciones. La distribución de origen de GnuPG, por ejemplo, está firmada para que los usuarios puedan verificar que el código fuente no se haya modificado desde que fue empaquetado.

A fin de poder firmar su complemento, primero debe descargar un programa de software compatible con PGP, tal como GnuPG (GPG) <https://www.gnupg.org/> __. GPG está disponible para todas las plataformas principales y los binarios se pueden descargar aquí <https://www.gnupg.org/download/index.html#sec-1-2> __.

Una vez haya instalado GPG y haya generado su primera clave pública, deberá agregar la clave a su cuenta. Para hacer esto, puede navegar a su perfil y hacer clic en el símbolo de la tecla al lado de su avatar.

PGP public key 1

Luego, se le pedirá que ingrese su clave en un cuadro de texto. Debe estar seguro de ingresar la clave en su totalidad o la validación de la firma fallará.

PGP public key 2

Finalmente, debe firmar su plugin incorporado con su clave * privada * de la clave pública que cargó. Solo necesita firmar el archivo que está cargando: por ejemplo, si está cargando un ZIP con su plugin JAR incluido, solo el ZIP necesita (y solamente debe) estar firmado. La forma más fácil de firmar el archivo que desea cargar es con el siguiente comando GPG.

gpg --output myplugin-1.0.0.jar.sig --detach-sig myplugin-1.0.0.jar

Nota

Si está utilizando un administrador de compilación tal como Gradle o Maven, existen complementos que puede aplicar a su script de compilación que puede firmar artefactos construidos y automatizar este laborioso proceso para usted. Para obtener más información, consulte Documentación de Gradle <https://docs.gradle.org/current/userguide/signing_plugin.html> __ o `Documentación de Maven <https://maven.apache.org/plugins/maven- gpg-plugin /> `__.

Cargando su complemento

Una vez que el archivo JAR de su complemento está empaquetado con un archivo descriptor mcmod.info en el nivel superior y firmado con su clave privada PGP, ¡su complemento está listo para cargarse! Para crear un proyecto en Ore, Ud. debe tener una cuenta activa en Sponge. Al presionar el botón «Registrarse» en la esquina superior derecha, accederá a la página adecuada para crear uno. Si ya tiene una cuenta, simplemente presione el botón «Iniciar sesión» en la esquina superior derecha para iniciar sesión en Ore.

Una vez que haya iniciado sesión, navegue hasta su avatar y seleccione la opción «Nuevo» en el menú desplegable que aparece, o solo presione la tecla «C».

Mientras carga, el asistente de creación primero le pedirá su archivo de carga principal y luego su firma separada.

Configurando su proyecto en Ore

Después de cargar su complemento, se le mostrarán algunas configuraciones para configurar su proyecto de la manera que desee. No se preocupe, todos estos se pueden cambiar más adelante en el panel de configuración. Después de configurar su proyecto, podrá invitar a los usuarios de Sponge a formar parte de su proyecto. Cualquier usuario que esté registrado en los foros puede ser invitado a un proyecto, incluso si nunca ha iniciado sesión en Ore. Al crear su proyecto, los usuarios que ha invitado recibirán una notificación y podrán aceptar o rechazar su invitación. Los miembros del proyecto no serán visibles para el público hasta que la invitación ha sido aceptada.

Actualmente hay tres grupos a los que se pueden asignar los miembros del proyecto: Desarrollador,` Editor` y Soporte. Al usuario que creó el proyecto se le asignará el Propietario, el cual tiene acceso irrestricto al proyecto. Aquí hay un resumen rápido de lo que cada grupo puede hacer dentro de su proyecto.

Propietario

Hay un máximo de un propietario para un proyecto, no es transferible (por ahora) y es el único grupo que puede asignar roles a otros miembros.

Desarrolladores

Los desarrolladores pueden crear/editar canales de publicación, páginas y crear/editar versiones.

Editor

Los editores pueden editar páginas.

Soporte

Soporte no puede hacer nada, simplemente es una forma de mostrar que el miembro es parte del proyecto.