English
- Full in-game config screen with save/reset, logo, and on-screen controls (toggles and sliders) for enabled, fixed/rotating map, grid, north marker, players/entities, size, X/Y position, zoom, render distance, opacity, and block sample size.
- HUD integration: adds a "Minimap Config" button to the pause menu for one-click access.
- Smooth, efficient rendering pipeline: 2× CPU image → GPU texture, incremental rebuilds only when position/rotation/config changes, rate-limited updates.
- Fast world sampling and color mapping: top-block scanning with early exit, configurable block sample size, and a precomputed block-colour lookup table.
- Accurate markers and UI: real-time player markers (excluding self) with rotation-aware placement, player dot and direction indicator, optional grid/N label, coordinates and zoom readout.
- Robust asset loading: reads bundled icon into a NativeImageBackedTexture for the config UI, with safe handling of IO errors.
- Developer-friendly hooks: pause-menu injection via ScreenEvents.AFTER_INIT with defensive reflection and logging; clear logging for debugging and safe fallbacks.
Español
- Pantalla de configuración en juego con guardar/restablecer, logo y controles (conmutadores y deslizadores) para activar, mapa fijo/rotatorio, cuadrícula, indicador norte, jugadores/entidades, tamaño, posición X/Y, zoom, distancia de renderizado, opacidad y tamaño de muestreo de bloques.
- Botón "Minimap Config" en el menú de pausa para acceso rápido.
- Tubo de render eficiente: imagen CPU 2× a textura GPU, reconstrucciones incrementales solo cuando hay cambios, con límite de frecuencia.
- Muestreo y coloreado rápidos: escaneo del bloque superior con salida temprana, tamaño de muestra configurable y tabla de colores precalculada.
- Marcadores y UI precisos: marcadores de jugadores en tiempo real (excluyéndote), indicador de dirección, cuadrícula/etiqueta N opcional y lectura de coordenadas/zoom.
- Carga de recursos robusta: icono empaquetado convertido a NativeImageBackedTexture con manejo seguro de errores IO.
- Hooks para desarrolladores: inyección en el menú de pausa usando ScreenEvents.AFTER_INIT con reflexión defensiva y registro para depuración.

