NCODE - REFERENCE SYSTEMS
EN:
NCode is a comprehensive and configurable player referral system designed for Paper servers (and compatible Spigot forks). It allows players to engage with a referral program through unique codes, earning rewards for inviting players.
Core Features:
- Referral Codes: Players can generate a unique, random 6-digit alphanumeric code via an intuitive GUI or create their own custom code using the /ncode create <custom_code> command (requires ncode.create permission). Players can use another player's code with /ncode reference <referrer_code>.
- Reward System:
- Referrer Rewards: When a player referred by someone meets a configurable playtime requirement (defined by amount and unit like minutes, hours, etc. in config.yml), the original referrer automatically receives a configurable amount of points and has a list of custom commands executed for them (defined in rewards.referrer_rewards.commands in config.yml, supporting the {player} placeholder for the referrer).
- Data Management: Player data (code, referrer UUID, points, total playtime, referral timestamp, reward flags) is persistently stored in individual YAML files. Data is loaded on join and saved automatically and on quit.
- Graphical User Interface (GUI): A simple Hopper-based GUI (/ncode command) allows players to easily generate/create their code and view their current code and referrer information. GUI items (material, custom textures via PLAYER_HEAD, name, lore) are configurable in config.yml, while the text content is localized.
- Commands & Permissions:
- /ncode: Opens the GUI (ncode.use).
- /ncode reference <code>: Uses a referral code (ncode.use).
- /ncode create <code>: Creates a custom code (ncode.create).
- /ncode check <player>: Checks time since a player used a code (ncode.check).
- /ncode deletecode <code>: Admin command to delete a code (ncode.delete).
- /ncode reload: Admin command to reload configuration and language files (ncode.reload).
- Features permission-aware tab completion.
- Displays a dynamic help message listing available commands based on sender permissions if an invalid command is entered.
- Localization: Supports multiple languages. Admins can set the desired language (e.g., "en", "es") in config.yml, and the plugin loads all user-facing text (messages, menu titles, item names/lores) from corresponding messages_XX.yml files. Includes fallback to English.
- PlaceholderAPI Integration: Provides placeholders like %ncode_my_code%, %ncode_referred_by%, and %ncode_invite_players% for use in other plugins.
- Configuration: Highly configurable via config.yml (language, prefix, reward settings, menu item structure) and language files.
- Entry message: You will be able to create your referral code as soon as you enter the server for the first time.
ES:
NCode es un sistema de referidos para jugadores, completo y configurable, diseñado para servidores Paper (y forks compatibles de Spigot). Permite a los jugadores participar en un programa de referidos a través de códigos únicos, ganando recompensas por invitar jugadores.
Características Principales:
- Códigos de Referencia: Los jugadores pueden generar un código alfanumérico único de 6 dígitos aleatorio a través de una GUI intuitiva o crear su propio código personalizado usando el comando /ncode create <codigo_personalizado> (requiere permiso ncode.create). Los jugadores pueden usar el código de otro jugador con /ncode reference <codigo_referente>.
- Sistema de Recompensas:
- Recompensas para el Referente: Cuando un jugador referido por alguien cumple un requisito configurable de tiempo de juego (definido por cantidad y unidad como minutos, horas, etc., en config.yml), el referente original recibe automáticamente una cantidad configurable de puntos y se ejecuta para él una lista de comandos personalizados (definidos en rewards.referrer_rewards.commands en config.yml, soporta el placeholder {player} para el referente).
- Gestión de Datos: Los datos del jugador (código, UUID del referente, puntos, tiempo de juego total, timestamp de referencia, flags de recompensa) se almacenan persistentemente en archivos YAML individuales. Los datos se cargan al entrar y se guardan automáticamente y al salir.
- Interfaz Gráfica de Usuario (GUI): Un menú simple basado en Hopper (/ncode comando) permite a los jugadores generar/crear fácilmente su código y ver su código actual e información del referente. Los ítems de la GUI (material, texturas personalizadas vía PLAYER_HEAD, nombre, lore) son configurables en config.yml, mientras que el contenido de texto está localizado.
- Comandos y Permisos:
- /ncode: Abre la GUI (ncode.use).
- /ncode reference <codigo>: Usa un código de referencia (ncode.use).
- /ncode create <codigo>: Crea un código personalizado (ncode.create).
- /ncode check <jugador>: Verifica el tiempo desde que un jugador usó un código (ncode.check).
- /ncode deletecode <codigo>: Comando de admin para eliminar un código (ncode.delete).
- /ncode reload: Comando de admin para recargar la configuración y archivos de idioma (ncode.reload).
- Incluye autocompletado (tab completion) sensible a los permisos.
- Muestra un mensaje de ayuda dinámico listando los comandos disponibles según los permisos del remitente si se ingresa un comando inválido.
- Localización: Soporta múltiples idiomas. Los administradores pueden establecer el idioma deseado (ej: "es", "en") en config.yml, y el plugin carga todo el texto visible para el usuario (mensajes, títulos de menú, nombres/lores de ítems) desde los archivos correspondientes messages_XX.yml. Incluye respaldo al inglés.
- Integración con PlaceholderAPI: Provee placeholders como %ncode_my_code%, %ncode_referred_by%, y %ncode_invite_players% para usar en otros plugins.
- Configuración: Altamente configurable a través de config.yml (idioma, prefijo, ajustes de recompensa, estructura de ítems del menú) y archivos de idioma.
- Mensaje de entrada: Podrás crear tu código de referencia nada mas entrar por primera vez al servidor