Mcers Devs
Esta iniciativa surge de la idea de tener plugins a medida para el servidor sin depender de terceros y de potenciar el sector de los programadores en la comunidad. La idea básica será de crear plugins entre todos que puedan ser usados en el servidor potencialmente.
Esto no lo hacemos como administradores, por lo que hacer plugins aquí no significa que vayan a ponerse. Igualmente, siempre intentaremos priorizar plugins que creamos que es más probable que tengan cabida antes que otros, y trataremos de conseguir una lista de requerimientos básicos que se deberán cumplir.
A partir de aquí, los plugins que hagamos podrán surgir tanto de los desarrolladores como de cualquiera de la comunidad que tenga una idea y la comparta.
A parte de plugins de minecraft, también se pueden hacer documentación y tutoriales (java, spigot, etc.) para ayudar a otros usuarios a aprender y poder apuntarse.
Sobre autoría, como se hace entre todos los plugins serán de todos, open source.
¿Cómo participar?
Cualquier miembro de la comunidad con conocimientos de programación puede participar. Para ello, cualquier interesado deberá enviar un MP a Mik_C solicitandolo. Recibirá una pequeña prueba de hacer un plugin básico para demostrar que se poseen conocimientos mínimos y con la idea de familiarizaros con la base y preparar el environment adecuado antes de empezar.
Ser desarrollador no implica ninguna obligación, pero sí que habrá una serie de normas (técnicas y de forma) que deberán cumplirse. Si se incumplen sin hacer caso a avisos se dejará de ser desarrollador. A parte, si se considera que un desarrollador está mucho tiempo inactivo también se le quitará el estatus de desarrollador, pero en cualquier momento que vuelva podrá volverlo a solicitar.
A parte de programando, cualquier miembro de mcers puede participar comentando sus ideas u opinando sobre otras.
¿Cómo desarrolllaremos?
Git
Se creará una organización en GitHub donde habrá un repositorio para cada plugin. Los desarrolladores tendrán permisos para modificarlos, pero deberán seguir las normas especificadas en este post.
Java con Spigot API
Debido a que en el servidor se usa Spigot, se desarrollarán principalmente plugins de Spigot mediante su API. El lenguaje empleado será Java.
Organización
Para definir tareas y saber en qué trabaja cada persona, usaremos un equipo de Trello con un tablero por plugin.
Normas
Repositorios:
El incumplimiento reiterado de estas normas puede comportar a la perdida de permisos en todos los repositorios.
Está prohibido modificar la branch master de los repositorios. Todos los cambios se subirán a branches creadas por vosotros y cuando consideréis que tienen terminadas las funcionalidades se solicitará una pull request.
Está prohibido subir en los repositorios ficheros que no sean código o documentación (por ejemplo .jar, .zip, etc). Recomiendo seguir estas instrucciones para hacer un gitignore global y añadir como contenido todo este fichero.
Estilo: los mensajes de commit deben ser explicativos, a ser posible siguiendo este formato. No valen mensajes del estilo "commit", "muchas cosas", etc.
Java:
Para entendernos bien se seguirá la Google Java Style Guide.
Gif motivacional para desarrolladores:
Esto es solo una base, a medida que pase el tiempo se irá modificando el post con lo que vayamos aprendiendo y las propuestas que vayan saliendo.