{
  "messages": {
    "game": {
      "address_bind": "Servidor del juego iniciado en \u001b[1m\u001b[33m%s:%s\u001b[0m",
      "port_bind": "Servidor del juego iniciado en el puerto %s",
      "connect": "Cliente conectado desde %s",
      "disconnect": "Cliente desconectado desde %s",
      "game_update_error": "Ha ocurrido un error durante la actualización del juego.",
      "command_error": "Error de comando:"
    },
    "dispatch": {
      "address_bind": "[Dispatch] Servidor de envio iniciado en \u001b[1m\u001b[33m%s:%s\u001b[0m",
      "port_bind": "[Dispatch] El servidor de envío se inició en el puerto %s",
      "request": "[Dispatch] Petición %s %s del cliente: %s",
      "keystore": {
        "general_error": "[Dispatch] ¡Error mientras se cargaba el keystore!",
        "password_error": "[Dispatch] No se puede cargar el keystore. Probando contraseña por defecto del keystore...",
        "no_keystore_error": "[Dispatch] ¡No se ha encontrado el certificado SSL! Volviendo al servidor HTTP.",
        "default_password": "[Dispatch] La contraseña por defecto del keystore se cargó correctamente. Por favor, considera establecer la contraseña a 123456 en config.json."
      },
      "authentication": {
        "default_unable_to_verify": "[Authentication] Algo llamado método de verifyUser que no está disponible en el controlador de autenticación por defecto."
      },
      "no_commands_error": "No se soporta el uso de comandos en dispatch solo envío.",
      "unhandled_request_error": "[Dispatch] Posible solicitud %s no gestionada: %s.",
      "account": {
        "login_attempt": "[Dispatch] El cliente %s está intentando iniciar sesión.",
        "login_success": "[Dispatch] El cliente %s inició sesión como %s.",
        "login_max_player_limit": "[Dispatch] El cliente %s falló al iniciar sesión: Se ha alcanzado el límite de jugadores activos",
        "login_token_attempt": "[Dispatch] El cliente %s está intentando iniciar sesión a través de un token.",
        "login_token_error": "[Dispatch] El cliente %s falló al iniciar sesión a través de un token.",
        "login_token_success": "[Dispatch] El cliente %s inició sesión a través de un token como %s.",
        "login_password_error": "[Dispatch] El cliente %s falló al iniciar sesión vía contraseña.",
        "login_password_storage_error": "[Dispatch] El cliente %s falló al iniciar sesión vía contraseña porque no hay contraseña en la base de datos.",
        "combo_token_success": "[Dispatch] El cliente %s intercambió el combo token exitosamente.",
        "combo_token_error": "[Dispatch] El cliente %s falló al intercambiar el combo token.",
        "account_login_create_success": "[Dispatch] El cliente %s falló al iniciar sesión: Cuenta %s creada.",
        "account_login_create_error": "[Dispatch] El cliente %s falló al iniciar sesión: Fallo al crear la cuenta.",
        "account_login_exist_error": "[Dispatch] El cliente %s falló al iniciar sesión: Cuenta no encontrada.",
        "account_cache_error": "Error de información de caché de la cuenta del juego.",
        "session_key_error": "Clave de sesión incorrecta.",
        "username_error": "Nombre de usuario no encontrado.",
        "username_create_error": "Nombre de usuario no encontrado, la creación falló.",
        "password_error": "Contraseña no válida",
        "password_length_error": "La longitud de la contraseña debe ser mayor o igual a 8",
        "password_storage_error": "No tienes contraseña para tu cuenta. Por favor contacta a un administrador.",
        "server_max_player_limit": "Se ha alcanzado el límite de jugadores activos",
        "password_crypto_error": "🇺🇸Unable to decrypt the client's given password. Are you using the right version of the game?"
      },
      "router_error": "[Dispatch] No se ha podido vincular el router."
    },
    "status": {
      "free_software": "Grasscutter es software GRATUITO. Si has pagado por esto, puede que hayas sido estafado. Página del proyecto: https://github.com/Grasscutters/Grasscutter",
      "starting": "Iniciando Grasscutter...",
      "shutdown": "Finalizando...",
      "done": "¡Hecho! Para ayuda, escribe \"help\"",
      "error": "Ha ocurrido un error.",
      "welcome": "¡Bienvenido a Grasscutter!",
      "run_mode_error": "Modo de ejecución del servidor inválido: %s.",
      "run_mode_help": "El modo de ejecución del servidor debe ser 'HYBRID', 'DISPATCH_ONLY', o 'GAME_ONLY'. No se ha podido iniciar Grasscutter...",
      "create_resources": "Creando carpeta de recursos...",
      "resources_error": "Copia las carpetas 'BinOutput' y 'ExcelBinOutput' en la carpeta resources.",
      "version": "Versión de Grasscutter: %s-%s",
      "game_version": "Versión del juego: %s",
      "resources": {
        "loading": "Cargando recursos...",
        "finish": "Ha finalizado la carga de recursos.",
        "custom": "🇺🇸Find additional resources at: 'Anime-Game-Servers/CustomGCResources'.",
        "missing_server": "🇺🇸To fully use questing, it is recommended to add the 'Server' folder.",
        "missing_scenes": "🇺🇸To fully use questing, it is recommended to add the 'ScriptSceneData' folder."
      }
    }
  },
  "commands": {
    "generic": {
      "not_specified": "No se ha especificado un comando.",
      "unknown_command": "Comando desconocido: %s",
      "permission_error": "No tienes permiso para ejecutar este comando.",
      "console_execute_error": "Este comando solo puede ser ejecutado desde la consola.",
      "player_execute_error": "Ejecuta este comando desde el juego.",
      "command_exist_error": "Comando no encontrado.",
      "no_usage_specified": "No se ha especificado el uso",
      "no_description_specified": "No se ha especificado la descripción",
      "set_to": "Se ha establecido %s a %s.",
      "set_for_to": "%s por %s establecido a %s.",
      "invalid": {
        "amount": "Cantidad no válida.",
        "artifactId": "ID de artefacto no válido.",
        "avatarId": "ID de avatar no válido.",
        "avatarLevel": "avatarLevel inválido.",
        "cfgId": "🇺🇸Invalid cfg ID.",
        "entityId": "ID de entidad inválido.",
        "itemId": "ID de objeto inválido.",
        "itemLevel": "itemLevel inválido.",
        "itemRefinement": "itemRefinement inválido.",
        "statValue": "Valor de estado inválido.",
        "value_between": "Valor inválido: %s debe estar entre %s y %s.",
        "playerId": "ID de jugador inválido.",
        "uid": "UID inválido.",
        "id": "ID inválido."
      }
    },
    "execution": {
      "usage_prefix": "Usa: ",
      "player_exist_error": "Jugador no encontrado.",
      "player_offline_error": "El jugador no está activo.",
      "item_player_exist_error": "Objeto o UID inválido.",
      "player_exist_offline_error": "Jugador no encontrado o no está activo.",
      "argument_error": "Argumentos inválidos.",
      "clear_target": "Objetivo desfijado.",
      "set_target": "Los siguientes comandos irán solo a @%s por defecto.",
      "set_target_online": "@%s está activo. Algunos comandos pueden requerir un usuario inactivo.",
      "set_target_offline": "@%s está inactivo. Algunos comandos pueden requerir un usuario activo.",
      "need_target": "Este comando requiere un UID fijado. Añade un argumento <@UID> o fija un objetivo persistente con /target @UID.",
      "need_target_online": "Este comando requiere un UID fijado activo, pero el objetivo actual está inactivo. Añade un argumento <@UID> diferente o fija un objetivo persistente con /target @UID.",
      "need_target_offline": "Este comando requiere un UID fijado inactivo, pero el objetivo actual está activo. Añade un argumento <@UID> diferente o fija un objetivo persistente con /target @UID."
    },
    "status": {
      "enabled": "Activado",
      "disabled": "Desactivado",
      "help": "Ayuda",
      "success": "Exitoso"
    },
    "account": {
      "invalid": "UID inválido.",
      "exists": "Una cuenta con este nombre de usuario y/o UID ya existe.",
      "create": "Cuenta creada con UID %s.",
      "delete": "Cuenta borrada.",
      "no_account": "Cuenta no encontrada.",
      "description": "Modifica las cuentas de usuarios"
    },
    "achievement": {
      "success": {
        "grant": "🇺🇸Granted the achievement to %s.",
        "revoke": "🇺🇸Revoked the achievement from %s.",
        "progress": "🇺🇸Set progress of %s's achievement(id: %s) to %s.",
        "grantall": "🇺🇸Granted %s achievement(s) to %s.",
        "revokeall": "🇺🇸Revoked %s achievement(s) from %s."
      },
      "fail": {
        "achievement_not_found": "🇺🇸Achievement not found.",
        "already_achieved": "🇺🇸%s has already achieved the achievement.",
        "not_yet_achieved": "🇺🇸%s hasn't achieved the achievement yet."
      },
      "description": "🇺🇸Grant, Revoke or Progress achievements."
    },
    "announce": {
      "send_success": "Se envió el anuncio correctamente, puedes revocarlo con /a revoke %s.",
      "refresh_success": "Se actualizó el archivo de configuración de anuncio correctamente. [Total %s]",
      "revoke_done": "Intentando revocar el anuncio %s.",
      "not_found": "No se pudo encontrar el anuncio %s.",
      "description": "Envía un anuncio a todos los jugadores activos, o gestiona anuncios del server"
    },
    "clear": {
      "weapons": "Eliminadas las armas para %s.",
      "artifacts": "Eliminados los artefactos para %s.",
      "materials": "Eliminados los materiales para %s.",
      "furniture": "Eliminados los muebles para %s.",
      "displays": "Eliminadas las vistas para %s.",
      "virtuals": "Eliminados los virtuales para %s.",
      "everything": "Eliminado todo para %s.",
      "description": "Elimina objetos desbloqueados no equipados, incluyendo objetos de rareza dorada, de tu inventario"
    },
    "coop": {
      "success": "%s se ha unido al mundo de %s.",
      "description": "Fuerza a alguien a unirse al mundo de otro. Si no se establece un objetivo, te envía a ti al modo cooperativo."
    },
    "enter_dungeon": {
      "changed": "Cambiado a la mazmorra %s.",
      "not_found_error": "La mazmorra no existe.",
      "in_dungeon_error": "Ya estás en esa mazmorra.",
      "description": "Te introduce en una mazmorra"
    },
    "entity": {
      "description": "🇺🇸Modify an existing entity's properties",
      "not_found_error": "🇺🇸Entity does not exist"
    },
    "give": {
      "usage_relic": "Usa: give <artifactID> [mainPropID] [<appendPropID>[,<veces>]]... [lv<nivel 0-20>]",
      "illegal_relic": "Este artifactID pertenece a un rango de la lista negra, puede que no sea el que buscas.",
      "given": "Dado %s de %s a %s.",
      "given_with_level_and_refinement": "Dado %s con nivel %s, refinamiento %s %s veces a %s.",
      "given_level": "Dado %s con nivel %s %s veces a %s.",
      "given_avatar": "Dado %s con nivel %s a %s.",
      "giveall_success": "Se han dado todos los objetos correctamente.",
      "description": "Da un objeto a ti o al jugador especificado. También puede dar armas, avatares y/o materiales, y puede construir artefactos personalizados."
    },
    "heal": {
      "success": "Todos los personajes han sido curados.",
      "description": "Cura a todos los personajes en tu equipo actual."
    },
    "help": {
      "aliases": "Alias: ",
      "available_commands": "Comandos disponibles: ",
      "tip_need_permission": "Permiso: ",
      "tip_need_no_permission": "Ninguno",
      "tip_permission_targeted": "(El permiso %s es también requerido para usarlo en otros jugadores)",
      "warn_player_has_no_permission": "Nota: No tienes permiso para ejecutar este comando.",
      "description": "Envía el mensaje de ayuda o muestra información sobre un comando específico"
    },
    "kick": {
      "player_kick_player": "El jugador [%s:%s] ha echado al jugador [%s:%s]",
      "server_kick_player": "Echando al jugador [%s:%s]...",
      "description": "Echa a un jugador en específico del servidor (WIP)"
    },
    "killall": {
      "scene_not_found_in_player_world": "Escenario no encontrado en el mundo del jugador.",
      "kill_monsters_in_scene": "Matando %s monstruos en el escenario %s.",
      "description": "Mata todas las entidades"
    },
    "killCharacter": {
      "success": "Se ha matado al personaje actual de %s.",
      "description": "Mata al personaje actual del jugador"
    },
    "language": {
      "current_language": "El idioma actual es %s.",
      "language_changed": "Idioma cambiado a %s.",
      "language_not_found": "El servidor no tiene ese idioma actualmente.",
      "description": "Muestra o cambia el idioma actual"
    },
    "list": {
      "success": "Hay %s jugador(es) activos:",
      "description": "Lista los jugadores activos"
    },
    "permission": {
      "add": "Permiso añadido.",
      "has_error": "¡Ya tiene este permiso!",
      "remove": "Permiso eliminado.",
      "not_have_error": "¡No tiene este permiso!",
      "account_error": "La cuenta no puede ser encontrada.",
      "description": "Da o quita un permiso a un jugador"
    },
    "position": {
      "success": "Coordenadas: %s, %s, %s\nRotación: %s, %s, %s\nID del escenario: %s",
      "description": "Obtener información sobre ubicación y rotación"
    },
    "quest": {
      "added": "Misión %s añadida.",
      "finished": "Misión %s finalizada.",
      "not_found": "Misión no encontrada.",
      "invalid_id": "ID de misión inválido.",
      "description": "Añade o finaliza misiones",
      "running": "🇺🇸Quest %s is %s (%s).",
      "talking": "🇺🇸Talk %s is %s for main quest %s (%s).",
      "state": {
        "none": "🇺🇸unknown (none)",
        "unstarted": "🇺🇸unfinished (not started, not completed)",
        "unfinished": "🇺🇸unfinished (started, not completed)",
        "finished": "🇺🇸finished (completed)",
        "failed": "🇺🇸finished (completed, but failed)",
        "exists": "🇺🇸found",
        "not_exists": "🇺🇸not found"
      },
      "enabled": "🇺🇸Questing enabled."
    },
    "group": {
      "invalid_groupid": "ID de grupo invalida.",
      "invalid_suiteid": "ID del conjunto invalida.",
      "group_not_found": "Grupo no encontrado.",
      "description": "Altera la carga de grupos",
      "refreshed": "Grupo %s refrescado."
    },
    "cutscene": {
      "description": "Reproduce una escena"
    },
    "sound": {
      "description": "🇺🇸Plays a sound"
    },
    "reload": {
      "reload_start": "Recargando configuración.",
      "reload_done": "Recarga completada.",
      "description": "Recarga la configuración del servidor"
    },
    "resetConst": {
      "reset_all": "Reinicia las constelaciones de todos los avatares.",
      "success": "Las constelaciones para %s han sido reiniciadas. Por favor, vuelve a iniciar sesión para ver los cambios.",
      "description": "Reinicia el nivel de constelación en tu personaje actual, necesitarás iniciar sesión de nuevo para ver los cambios"
    },
    "resetShopLimit": {
      "success": "Reinicio completado.",
      "description": "Reinicia el tiempo de la tienda del jugador fijado"
    },
    "sendMail": {
      "give_usage": "Usa: give <player> <itemID|itemName> [cantidad] [nivel] [refinamiento]",
      "user_not_exist": "El usuario con ID '%s' No existe.",
      "start_composition": "Empezando la construcción del correo.\nPor favor usa '/sendmail <título>' para continuar.\nPuedes usar '/sendmail stop' en cualquier momento.",
      "templates": "Las plantillas de correos se implementarán pronto...",
      "invalid_arguments": "Argumentos inválidos.",
      "send_cancel": "Envío de mensaje cancelado.",
      "send_done": "¡Mensaje enviado al usuario %s!",
      "send_all_done": "¡Mensaje enviado a todos los usuarios!",
      "not_composition_end": "La construcción del mensaje no está en la fase final.\nPor favor usa '/sendmail %s' o '/sendmail stop' para cancelar",
      "please_use": "Por favor usa '/sendmail %s'",
      "set_title": "Título del mensaje establecido a '%s'.\nUsa '/sendmail <contenido>' para continuar.",
      "set_contents": "Contenido del mensaje establecido a '%s'.\nUse '/sendmail <remitente>' para continuar.",
      "set_message_sender": "Remitente del mensaje establecido a '%s'.\nUsa '/sendmail <itemID|itemName|finish> [cantidad] [nivel]' para continuar.",
      "send": "Adjuntado %s de %s (nivel %s) al mensaje.\nContinúa añadiendo más objetos o usa '/sendmail finish' para mandar el mensaje.",
      "invalid_arguments_please_use": "Argumentos inválidos.\n Por favor usa '/sendmail %s'",
      "title": "<Título>",
      "message": "<Mensaje>",
      "sender": "<Remitente>",
      "arguments": "<itemID|itemName|finish> [cantidad] [nivel]",
      "error": "ERROR: Estado de construcción inválido %s. Comprueba la consola para ver los detalles.",
      "description": "Envía un mensaje al usuario especificado. El uso de este comando cambia con el estado de la construcción del mensaje"
    },
    "sendMessage": {
      "success": "Mensaje enviado.",
      "description": "Envía un mensaje a un jugador como servidor. Si se usa sin un objetivo fijado, lo envía a todos los jugadores del servidor."
    },
    "setConst": {
      "range_error": "El nivel de constelación debe estar entre 0 y 6.",
      "level_error": "Nivel de constelación inválido.",
      "fail": "Error al establecer la constelación.",
      "failed_success": "Las constelaciones de %s han sido establecidas a %s. Por favor reinicia el escenario para ver los cambios.",
      "success": "Las constelaciones de %s han sido establecidas a %s.",
      "successall": "Las constelaciones de todos los personajes han sido establecidas a %s.",
      "description": "Establece el nivel de constelación para tu personaje actual."
    },
    "setFetterLevel": {
      "range_error": "El nivel de amistad debe estar entre 0 y 10.",
      "success": "Nivel de amistad establecido a %s.",
      "level_error": "Nivel de amistad inválido.",
      "description": "Establece tu nivel de amistad para tu personaje actual."
    },
    "setProp": {
      "description": "Establece propiedades de la cuenta. Cosas como el modo Dios pueden ser establecidos con este comando, además de cambiar cosas como desbloquear pisos del abismo o progreso del pase de batalla.\n\tValores para <prop>: godmode | nostamina | unlimitedenergy | abyss | worldlevel | bplevel\n\t(cont.) Observa PlayerProperty enum para ver otros posibles valores, de la forma PROP_MAX_SPRING_VOLUME -> max_spring_volume"
    },
    "setSceneTag": {
      "description": "Establece etiquetas de escena específicas de la cuenta. Esto controla cosas como rocas bloqueando puertas, edificios visibles y otras cosas (normalmente relacionadas con misiones) que afectan a lo que es visible en tu mundo."
    },
    "setStats": {
      "description": "Establece propiedades de combate para tu personaje actual\n\tValores para <estado>: hp | maxhp | def | atk | em | er | crate | cdmg | cdr | heal | heali | shield | defi\n\t(cont.) Bonus de daño elemental: epyro | ecryo | ehydro | egeo | edendro | eelectro | ephys\n\t(cont.) Resistencia elemental: respyro | rescryo | reshydro | resgeo | resdendro | reselectro | resphys",
      "locked_to": "%s fijado a %s.",
      "locked_for_to": "%s para %s fijado a %s.",
      "unlocked": "%s desfijado.",
      "unlocked_for": "%s para %s desfijado."
    },
    "spawn": {
      "success": "Generados %s de %s.",
      "limit_reached": "Se ha alcanzado el límite de generaciones en el escenario. Generando %s entidades en su lugar.",
      "description": "Genera una entidad cerca de tí"
    },
    "stop": {
      "success": "Finalizando el servidor...",
      "description": "Detiene el servidor"
    },
    "talent": {
      "out_of_range": "Nivel de talento inválido. El nivel debe estar en un rango de 1-15.",
      "set_id": "Establecer talento %s - \"%s\" a %s.",
      "id_desc": "Talento %s - \"%s\" - \"%s\"",
      "invalid_skill_id": "ID de habilidad inválido.",
      "invalid_level": "Nivel de talento inválido.",
      "normal_attack_id": "ID del ataque normal %s.",
      "e_skill_id": "ID de la habilidad E %s.",
      "q_skill_id": "ID de la habilidad Q %s.",
      "description": "Establece el nivel de un talento para tu personaje actual"
    },
    "team": {
      "invalid_usage": "Uso inválido.",
      "invalid_index": "Index inválido.",
      "add_too_much": "El servidor solo permite tener como máximo %d avatar(es) en tu equipo.",
      "failed_to_add_avatar": "Error al añadir el avatar con ID %s.",
      "failed_to_parse_index": "Error al usar el index: %s",
      "remove_too_much": "No puedes quitar todos tus avatares.",
      "ignore_index": "index(es) ignorados: %s",
      "index_out_of_range": "El index especificado está fuera de rango.",
      "failed_parse_avatar_id": "Error al usar el ID del avatar: %s",
      "avatar_already_in_team": "El avatar ya está en el equipo.",
      "avatar_not_found": "Avatar %d no encontrado.",
      "description": "Modifica tu equipo manualmente."
    },
    "teleportAll": {
      "success": "Invoca a todos los jugadores a tu localización.",
      "error": "Solo puedes usar este comando en modo MP.",
      "description": "Teletransporta a todos los jugadores en tu mundo a tu localización"
    },
    "teleport": {
      "invalid_position": "Posición inválida.",
      "exists_error": "El escenario especificado no existe.",
      "success": "Teletransportado %s a %s, %s, %s en el escenario %s.",
      "description": "Cambia la posición del jugador"
    },
    "trialAvatarActivity": {
      "description": "Manipular las funcionalidades de la Actividad de Avatar de Prueba. Esto incluye alternar estados de mazmorra y recompensa.",
      "not_found": "No se encontraron los datos del jugador de la actividad del avatar de prueba. Quizás la actividad no esté habilitada.",
      "invalid_param": "🇺🇸Invalid parameter.",
      "schedule_not_found": "Horario %s no encontrado.",
      "success_schedule": "Cambió la identificación del horario a %s.",
      "success_dungeon": "Se alteró el estado de la mazmorra del avatar %s.",
      "success_dungeon_all": "Cambiado el estado de mazmorra de todos los avatares.",
      "success_reward": "Se alteró el estado de recompensa del avatar %s.",
      "success_reward_all": "Cambiado el estado de recompensa de todos los avatares."
    },
    "weather": {
      "success": "Establece el ID del clima %s con el tipo de clima %s.",
      "status": "El ID del clima actual es %s con tipo de clima %s.",
      "description": "Cambia el ID del clima y el tipo de clima. Los IDs de climas pueden ser encontrados en ./Resources/ExcelBinOutput/WeatherExcelConfigData.json.\nTipos de clima: sunny, cloudy, rain, thunderstorm, snow, mist"
    },
    "ban": {
      "success": "Exitoso.",
      "failure": "Error, jugador no encontrado.",
      "invalid_time": "No se puede establecer la marca de tiempo.",
      "description": "Bannea a un jugador"
    },
    "unlockall": {
      "success": "Desbloqueada todas las estadísticas y estados para %s.",
      "description": "Desbloquea todas las estadísticas y estados para un jugador."
    },
    "unban": {
      "success": "Exitoso.",
      "failure": "Error, jugador no encontrado.",
      "description": "Elimina el veto a un jugador"
    },
    "info": {
      "description": "🇺🇸Provides the sender information about the server."
    },
    "debug": {
      "description": "🇺🇸Useful debugging commands for developers."
    }
  },
  "gacha": {
    "details": {
      "title": "Detalles del banner",
      "available_five_stars": "Objetos de 5 estrellas disponibles",
      "available_four_stars": "Objetos de 4 estrellas disponibles",
      "available_three_stars": "Objetos de 3 estrellas disponibles"
    },
    "records": {
      "title": "Historial de Gacha",
      "date": "Fecha",
      "item": "Objeto"
    }
  },
  "documentation": {
    "handbook": {
      "title": "🇺🇸GM Handbook",
      "title_commands": "Comandos",
      "title_avatars": "Avatares",
      "title_items": "Objetos",
      "title_scenes": "Escenario",
      "title_monsters": "Monstruos",
      "header_id": "🇺🇸Id",
      "header_command": "Comando",
      "header_description": "Descripción",
      "header_avatar": "🇺🇸Avatar",
      "header_item": "Objeto",
      "header_scene": "Escenario",
      "header_monster": "Monstruo"
    },
    "index": {
      "title": "Documentación",
      "handbook": "🇺🇸GM Handbook",
      "gacha_mapping": "JSON de mapeo del Gacha"
    }
  },
  "plugin": {
    "directory_failed": "Error al crear directorio de plugins: ",
    "unable_to_load": "No se puede cargar el plugin.",
    "invalid_config": "El plugin %s tiene un archivo de configuración inválido.",
    "invalid_main_class": "El plugin %s tiene una clase principal inválida.",
    "missing_config": "El plugin %s no tiene un archivo de configuración válido.",
    "failed_to_load_plugin": "Error al cargar el plugin: %s",
    "failed_to_load": "Error al cargar un plugin.",
    "failed_to_load_dependencies": "Error al cargar plugins con dependencias.",
    "loading_plugin": "Cargando plugin: %s",
    "failed_add_id": "Error al añadir identificador de plugin: %s",
    "enabling_plugin": "Activando plugin: %s",
    "enabling_failed": "Error al activar el plugin: %s",
    "disabling_plugin": "Desactivando el plugin: %s",
    "disabling_failed": "Error al desactivar el plugin: %s",
    "invalid_api": {
      "not_present": "🇺🇸Plugin %s does not specify an API version.",
      "lower": "🇺🇸Plugin %s is using API version %s, while the server is using API version %s.",
      "outdated": "🇺🇸Plugin %s is using an outdated API method."
    }
  }
}
