Perfiles de Jugadores - Raul125/PanelWiki GitHub Wiki
El sistema de perfiles de jugadores permite a los moderadores consultar información detallada de todos los usuarios registrados en los servidores de SCP:SL. Esta herramienta centraliza datos de actividad, estadísticas, sanciones y comportamiento para facilitar la toma de decisiones moderativas.
-
Ruta:
/scpsl/players
- Menú lateral: Panel de Moderación → Perfiles de Jugadores
- Icono: 👥 People
- Autenticación obligatoria → Usuario debe estar logueado
-
Permisos específicos →
Permissions.ScpSl.Users
- Rol de Staff → Autorización de moderación
- Solo staff autorizado puede acceder
- Usuarios normales no pueden ver esta sección
- Datos sensibles protegidos según privacidad del usuario
- Campo de búsqueda → Por nombre de usuario o ID
- Búsqueda en tiempo real → Debounce de 300ms
- Múltiples criterios → Nombre, ID de usuario, ID único
- Highlighting → Resalta términos encontrados
Dos switches principales:
-
🟢 Jugadores Activos
- Badge dinámico → Contador en tiempo real
- Criterio → Última conexión dentro de 7 días
- Color → Verde (Success)
- Función → Filtrar solo usuarios recientes
-
🔴 Con Sanciones
- Badge dinámico → Contador de usuarios sancionados
- Criterio → Tienen bans, warns o mutes
- Color → Rojo (Error)
- Función → Identificar usuarios problemáticos
- Botón Refresh → Actualización manual
- Timestamp → Hora de última actualización
- Feedback visual → Notificación de éxito
- Loader → Indicador durante la carga
- Avatar del usuario → Imagen de Discord si está disponible
- Inicial como fallback → Primera letra del nombre
- Link al perfil → Navegación directa
- Highlighting → Resalta términos de búsqueda
- ID único del jugador → Identificador del sistema
- Fuente monoespaciada → Mejor legibilidad
- Highlighting → Resalta en búsquedas
-
Formato →
{userId}@neon
para búsquedas
- Tiempo relativo → "hace X días/horas"
- Tooltip detallado → Fecha y hora exacta
-
Indicador de color → Según actividad reciente
- 🟢 < 1 día → Verde (Success)
- 🔵 < 7 días → Azul (Info)
- 🟡 < 30 días → Amarillo (Warning)
- 🔴 > 30 días → Rojo (Error)
- Tiempo relativo → "hace X días/meses"
- Tooltip detallado → Fecha de registro
- Icono calendario → Identificación visual
- Historial → Antigüedad en la comunidad
- Icono visual → Ojo abierto/cerrado
- Tooltip explicativo → Estado de privacidad
-
Colores distintivos:
- 🟡 DoNotTrack activado → Warning
- 🟢 Privacidad normal → Success
Chips informativos por tipo:
- 🔴 Bans → Chip rojo con contador
- 🟡 Mutes → Chip amarillo con contador
- 🔵 Warns → Chip azul con contador
- 🟢 Sin sanciones → "Perfecto" en verde
- Tooltip detallado → Desglose de sanciones activas/históricas
- Barra de progreso → Visual del tiempo acumulado
- Texto formateado → Días, horas o minutos
-
Colores por nivel:
- ⚪ < 1 hora → Gris (Default)
- 🔵 < 10 horas → Azul (Info)
- 🟣 < 100 horas → Morado (Primary)
- 🟡 < 500 horas → Amarillo (Warning)
- 🔴 500+ horas → Rojo (Error)
- Tooltip completo → Estadísticas detalladas
- Botón Ver Perfil → Icono AccountCircle
- Navegación directa → A perfil individual
- Tooltip informativo → "Ver perfil completo"
- 🟢 Verde → Usuario muy activo (< 1 día)
- 🔵 Azul → Usuario activo (< 7 días)
- 🟡 Amarillo → Usuario inactivo (< 30 días)
- 🔴 Rojo → Usuario muy inactivo (> 30 días)
- 🔴 Rojo → Bans activos/históricos
- 🟡 Amarillo → Mutes activos/históricos
- 🔵 Azul → Advertencias (warns)
- 🟢 Verde → Sin sanciones (usuario perfecto)
- ⚪ Gris → Nuevos jugadores (< 1h)
- 🔵 Azul → Principiantes (< 10h)
- 🟣 Morado → Jugadores regulares (< 100h)
- 🟡 Amarillo → Veteranos (< 500h)
- 🔴 Rojo → Expertos (500h+)
- Breakpoint Sm → Adaptación para móviles
- Vista compacta/normal → Toggle disponible
- Columnas adaptables → Reorganización automática
- Tabla striped → Mejor legibilidad
- Usuarios baneados → Fondo rojo transparente
- Usuarios muteados → Fondo amarillo transparente
- Hover effect → Resaltado al pasar ratón
- Selección visual → Estados claramente diferenciados
- Nombre de usuario → Búsqueda parcial case-insensitive
- ID del jugador → Identificador único
-
ID del sistema → Formato
{userId}@neon
- Highlighting → Resalta coincidencias encontradas
- Debounce inteligente → 300ms de retraso
- Sin peticiones excesivas → Optimización de rendimiento
- Feedback inmediato → Resultados al escribir
- Limpieza automática → Filtros se resetean
- Jugadores activos + Con sanciones → Usuarios problemáticos recientes
- Solo activos → Comunidad actual
- Solo con sanciones → Revisión disciplinaria
- Búsqueda + filtros → Criterios múltiples simultáneos
- Badges actualizados → Números en tiempo real
- Feedback visual → Cantidad de resultados
- Estadísticas contextuales → "Mostrando X de Y jugadores"
- Tiempo total → Suma de todas las sesiones
- Número de sesiones → Cantidad de conexiones
- Promedio por sesión → Tiempo medio jugado
- Última sesión → Fecha de última partida
- Formato inteligente → Días/horas/minutos según cantidad
- Barra de progreso → Visualización del progreso
- Porcentaje calculado → Basado en 500h como máximo
- Colores progresivos → Según nivel de experiencia
- Tooltip informativo → Detalles completos al hover
- Bans activos → Solo sanciones vigentes
- Mutes activos → Solo silenciamientos vigentes
- Warns totales → Todas las advertencias
- Reportes recibidos → Cantidad de reportes
Información completa:
- Sanciones por tipo → Desglose específico
- Estado actual → Activas vs expiradas
- Contadores → Números exactos
- Reportes → Enlaces a sistema de reportes
- Privacidad activada → Usuario protegido
- Privacidad normal → Tracking completo
- Indicador visual → Iconos claros
- Respeto por la privacidad → Limitaciones en datos
- Vista compacta → Más filas por pantalla
- Vista normal → Información más espaciada
- Toggle dinámico → Cambio en tiempo real
- Memoria de preferencia → Mantiene selección
- 15 usuarios por defecto → Carga rápida
- Opciones múltiples → 15, 25, 50, 100
- Navegación fluida → Botones de página
- Información contextual → Página actual y total
Columnas ordenables:
- Nombre → Alfabético A-Z o Z-A
- ID → Numérico ascendente/descendente
- Última conexión → Más reciente/antiguo
- Primera conexión → Más nuevo/veterano
- Estado de sanciones → Por cantidad total
- Tiempo jugado → Por horas acumuladas
- Include optimizado → Carga relaciones necesarias
- Async/await → Operaciones no bloqueantes
- Error handling → Gestión de fallos
- Loading states → Indicadores de progreso
- DbContext factory → Conexiones eficientes
- Dispose automático → Liberación de recursos
- Lazy loading → Carga bajo demanda
- Cache inteligente → Optimización de consultas
- Perfil completo → Desde nombre de usuario
- Botón dedicado → Icono AccountCircle
- Navegación sin recarga → SPA experience
- Breadcrumbs → Navegación contextual
- Notificaciones → Éxito, error, información
- Loading spinners → Durante operaciones
- Empty states → Cuando no hay datos
- Tooltips informativos → Ayuda contextual
- Mobile first → Optimización móvil
- Tablet friendly → Experiencia intermedia
- Desktop optimized → Máximo aprovechamiento
- Breakpoints inteligentes → Transiciones suaves
- Contraste adecuado → Legibilidad garantizada
- Tooltips descriptivos → Información adicional
- Keyboard navigation → Navegación por teclado
- Screen reader friendly → Etiquetas apropiadas
- Activar filtro "Con sanciones" → Ver solo usuarios sancionados
- Ordenar por sanciones → Más problemáticos primero
- Revisar perfiles individuales → Acceder a detalles
- Tomar medidas preventivas → Supervisión cercana
- Filtrar jugadores activos → Comunidad actual
- Revisar tiempo de juego → Identificar dedicación
- Correlacionar sanciones → Patrones de comportamiento
- Monitoreo continuo → Seguimiento temporal
- Usar barra de búsqueda → Por nombre o ID
- Revisar resultados → Highlighting de coincidencias
- Acceder al perfil → Clic en nombre o botón
- Análisis detallado → Toda la información disponible
- Alternar entre vistas → Activos vs todos
- Revisar métricas → Tiempo de juego y actividad
- Identificar patrones → Usuarios veteranos vs nuevos
- Planificar acciones → Basado en datos
- Filtro de jugadores activos → Ver comunidad vigente
- Revisar última conexión → Detectar inactividad
- Identificar abandono → Usuarios que dejaron de jugar
- Estrategias de retención → Basadas en datos
- Ordenar por tiempo jugado → Más dedicados primero
- Identificar usuarios perfectos → Sin sanciones
- Reconocer contribuciones → Usuarios modelo
- Premiar lealtad → Programas especiales
- Verificar filtros → Desactivar filtros activos
- Revisar búsqueda → Limpiar campo de búsqueda
- Actualizar datos → Botón refresh
- Verificar permisos → Acceso autorizado
- Reducir filtros → Menos usuarios mostrados
- Vista compacta → Menor carga visual
- Paginación → Reducir elementos por página
- Conexión a BD → Verificar estado del servidor
- Actualización manual → Botón refresh
- Cache del navegador → Limpiar caché
- Sincronización → Verificar última actualización
- Restart de sesión → Re-login si necesario
- Usar filtros → Reducir conjunto de datos
- Búsquedas específicas → Términos precisos
- Paginación inteligente → Páginas pequeñas
- Cerrar pestañas → Liberar memoria
- Refrescar cuando necesario → No automático excesivo
- Cerrar modales → Liberar componentes
- Navegación eficiente → Evitar bucles de carga
- Panel de Moderación - Centro de control para staff
- Gestión de Reportes - Reportes sobre usuarios específicos
- Crear Ban - Sancionar usuarios desde su perfil
- Crear Warn - Advertir usuarios identificados
- Crear Mute - Silenciar usuarios problemáticos
- Logs de Auditoría - Historial de acciones sobre usuarios
- Revocar Sanciones - Corregir errores en sanciones aplicadas
- Sistema de Reportes - Reportes enviados por/sobre usuarios
- Canal Staff Discord → [discord.neoncommunity.eu](https://discord.neoncommunity.eu/)
-
Documentación técnica →
/swagger
para desarrolladores - Issues GitHub → Reportar problemas del sistema
- Nuevas funcionalidades → Proponer en Discord staff
- Mejoras de interfaz → Feedback sobre usabilidad
- Optimizaciones → Ideas para mejorar rendimiento
👤 Conoce a tu Comunidad, Modera con Información
¿Necesitas ayuda con perfiles de jugadores? Pregunta en el canal staff de [Discord](https://discord.neoncommunity.eu/) o consulta Panel de Moderación