EQL·Parse
esenfrdept

Novedades

Cada versión con lo que cambió y por qué.

1.26.0

23 de agosto de 2026

Tus objetos, de punta a punta

La sección «Objetos» crece hasta donde tenía que llegar.

En «Tu equipo», cada sitio es ahora una ficha: qué llevas puesto, su nivel de mejora, sus cuatro huecos de exaltación y de qué objeto salió cada una.

Y llega «Tus objetos», con todo lo demás: lo del banco, lo de las bolsas y las bolsas mismas, con buscador, filtro por sitio y filtro por hueco libre. Los repetidos se ven, porque guardarlos es una decisión y no un descuido.

Lo que tienes y lo que existe, cada uno por su lado

EQL Parse trae dentro el catálogo de objetos de eqlwiki.com, consultado el 23 de agosto de 2026 y con esa fecha a la vista. La aplicación no le pide nada a nadie mientras la usas.

Buscar te contesta dos veces y por separado: cuántos hay entre lo tuyo, que lo hemos leído de tu inventario, y cuántos hay en el catálogo, que lo hemos consultado fuera. Nunca se suman, porque «no lo tienes» y «no existe» no son lo mismo.

El libro de hechizos que vuelca el juego

Si has usado /output spellbook, la sección «Hechizos» lee ese fichero y te dice qué trae: cuántos hechizos declara, de cuándo es el volcado y cuántos de ellos no constan en tu registro. Va al lado de lo que ya constaba, y no se mezcla con ello.

Y de dónde salió cada cosa

El botín suelto —el que recoges fuera de una pelea— ya dice de dónde vino en vez de contarse a secas, y las ofrendas de motes se cuentan aparte de lo que recoges: lo que sale de tu inventario no puede sumar a lo que entra.

Tres cosas que esta versión NO sabe

Y se dicen, en vez de dejarlas a medias:

  • cuánto cuesta subir un objeto de nivel;
  • cuánto llevas dentro del nivel actual;
  • el nombre del efecto no está en todas las fichas del catálogo: está en unas 1.600 de las 11.092. Donde no está, no se inventa.

Objetos y exaltaciones

22 de agosto de 2026

EQL Parse ya no lee sólo tu registro de combate: ahora también lee el inventario que vuelca el juego.

Con eso llega una sección nueva, «Objetos», donde ves tu equipo pieza a pieza con sus cuatro huecos de exaltación: qué lleva puesto cada hueco, cuál está libre, y cuál todavía no has desbloqueado.

Y ves qué exaltación se ha disparado, cuántas veces y qué estabas lanzando en ese momento.

Si el volcado de tu inventario es más viejo que lo que estás mirando, la aplicación te lo dice en vez de callárselo.

1.24.0 — lo que destruyes ya se cuenta

21 de agosto de 2026

Lo que destruyes ya se cuenta

Cuando destruyes un objeto, deja de perderse: sale en su propia columna, al lado de lo que has recogido. No se resta de tu botín — son dos hechos distintos, y restarlos daría un número que no contesta a ninguna de las dos preguntas.

Un peldaño que faltaba al considerar

Había una respuesta del /consider que la aplicación leía y tiraba, así que ese enemigo se quedaba sin nivel. Ya no.

El botín del Dragon Hoard, en su sitio

Lo que sale del Dragon Hoard llega marcado como lo que es, y deja de mezclarse con el botín de siempre.

1.23.0 — la ficha del candidato, y el panel que no se movía

21 de agosto de 2026

Al abrirla, releerá tu registro una vez

Tarda unos tres cuartos de minuto —medido: 42 segundos sobre un registro de 1,5 millones de líneas— y puedes seguir usando la aplicación mientras. Sale un cartel que lo explica y no empieza hasta que lo aceptas.

Hace falta porque las peleas guardadas no sabían en qué visita a la zona ocurrieron, y ese dato no está en ningún sitio más que en el registro. Sin él, el techo de reaparición podía contar huecos entre dos entradas distintas — donde el enemigo no volvió, sino que nació con la copia nueva. Ninguna cifra de combate cambia.

El panel de temporizadores estaba congelado

Se pintaba una vez al abrirse y se quedaba quieto: la cuenta atrás no avanzaba, una muerte no lo reiniciaba, y la × de una fila quitaba el temporizador pero no la fila. Ya está vivo.

Si te preguntabas por qué el número no se movía, no eras tú.

La ficha de un candidato, al pasar el ratón

Sobre cualquiera de la lista de Vigilar un enemigo sale su ficha: dónde, cuántas veces lo has matado ahí, su techo si lo tiene, y el nivel que le has visto al considerarlo — como rango, con cuántas consideraciones lo sostienen. Nunca como una cifra: el mismo enemigo, en la misma zona y dificultad, sale con niveles distintos.

Y su botín en dos bloques separados: lo que has sacado tú, que está medido, y lo que dice la wiki, que todavía no tenemos y se dice en vez de dejarlo en blanco.

Tamaño y transparencia, dentro del propio overlay

El deslizador de tamaño está al lado del de transparencia, en el panel y no en Ajustes. Cada overlay recuerda el suyo.

Techos que no acotaban nada

Un techo de reaparición sólo vale si las dos muertes son del mismo enemigo. Los que se apoyaban en un hueco entre dos visitas distintas se han retirado, y alguno cambia mucho: uno decía «no más de 280 minutos» y su techo de verdad son nueve y medio.

1.22.0 — todo lo que has matado, en una lista

21 de agosto de 2026

Todo lo que has matado alguna vez, en una lista

La pestaña Vigilar un enemigo ya no está vacía: trae los enemigos de tu histórico con su zona y su dificultad ya puestas. Buscas por nombre o por zona, pulsas Seguir y el temporizador nace completo. No hay que escribir nada ni tener el bicho delante.

Cada uno dice cuántas veces ha caído ahí y cuándo fue la última, y los que ya sigues vienen marcados. Lo más reciente va arriba: la zona de anoche sale la primera sin buscarla.

Temporizadores que no encontraban sus muertes

En las zonas con dificultad, un temporizador podía quedarse en «Esperando su primera muerte» para siempre aunque hubieras matado a ese enemigo allí muchas veces, y entonces no se reiniciaba nunca. Ya los encuentra: vuelven a contar, con sus observaciones y su techo.

Un cuarto estado: el que no estima nada

Un temporizador puede saber cuándo murió el enemigo y no saber cuánto tarda en volver. Antes eso se quedaba mudo, o decía «Ya debería estar», que es afirmar algo sin tener con qué. Ahora dice lo único que se puede decir, y es un hecho: cuánto lleva desde que murió.

El panel, ordenado por lo que va a pasar

Arriba lo que dice el reloj —los que ya deberían estar y los que están contando—; debajo, aquello de lo que no sabemos el tiempo. Un temporizador sin estimación no es más urgente que uno al que le quedan veinte segundos, y estaba por delante.

Lo que escribes no se borra solo

El campo de poner el tiempo a mano volvía a su valor anterior si el temporizador se repintaba mientras escribías. Ya no: lo que has tocado se conserva.

1.21.0 — los temporizadores, en un panel encima del juego

20 de agosto de 2026

Los temporizadores, en un panel encima del juego

Uno solo, con todos dentro. Se abre en cuanto abres el primero y se cierra cuando cierras el último — no hay que acordarse de nada.

  • ordenados por el que antes vuelve, y los que ya deberían estar, arriba
  • una línea por temporizador: nombre, tiempo, y cuántos huecos sostienen su techo
  • la × de una línea cierra ese temporizador, no la ventana

Y si estás en una zona donde no tienes ninguno, no se queda en blanco: te dice cuántos tienes en otras.

Tres estados, y el tercero faltaba

Un temporizador que aún no ha visto morir a su bicho ni una vez no dice «ya debería estar»: dice «Esperando su primera muerte». Decir que algo debería haber vuelto cuando no sabemos ni cuándo se fue es inventárselo.

Y no es un caso raro: es el estado en que nace todo temporizador abierto desde el overlay.

Poner temporizador desde el overlay

Despliega un enemigo en el overlay principal y ahí está el botón. No hace falta que esté muerto — de hecho normalmente estará vivo y pegándote, que es justo cuando te acuerdas de que quieres seguirlo.

El nombre, la zona y la dificultad salen de donde estás. No hay que escribir nada.

Todos los overlays se redimensionan y se atenúan

Arrastra desde cualquiera de las cuatro esquinas. Y pasando el ratón por encima sale un deslizador de transparencia.

Cada overlay recuerda su posición, su tamaño y su transparencia por separado, así que ajustas uno y el otro se queda como lo dejaste.

1.20.1 — los temporizadores dicen un techo, y si se le ha visto

20 de agosto de 2026

Los temporizadores dicen un techo, y ya no adivinan

Hasta ahora, cuando un temporizador llegaba a cero se quedaba a cero y no decía nada más. Ahora dice dos cosas nuevas, y las dos son hechos medidos sobre tu propio registro:

Un techo, con el número de huecos que lo sostienen:

no más de 10:35 — 6 huecos observados

No es «su periodo son 10:35». Es nunca ha tardado más de eso, que es una cosa distinta y mucho más segura: sale de restar dos muertes suyas, y entre esas dos muertes cabe el periodo *más* lo que tardaste tú en volver. Así que el periodo real es ése o menos. Nunca más.

Por eso el número de huecos va siempre al lado: un techo apoyado en un solo hueco es igual de cierto y mucho más flojo que uno de seis.

Y si se le ha visto. Cualquier línea del registro que nombre al bicho prueba que está ahí: un golpe, un fallo, un hechizo. No hace falta esperar a matarlo.

visto hace 3s, en una línea de combate → está ahí

no se le ve desde hace 12:00, y su techo son 10:35 → debería estar, y no lo has visto

Y se retira el aviso que suponía

Donde ponía *«lleva 3 periodos a cero, puede que ya esté ahí y no lo hayas visto»* ahora no hay una suposición: hay el dato. O lo hemos nombrado hace X, o no lo hemos nombrado desde su última muerte.

El panel de poner temporizador se veía mal en oscuro

El botón «Poner temporizador» de Escena abría un panel con fondo crema y texto claro encima. Estaba escrito con los colores puestos a mano, de cuando el tema claro era el de por defecto. Ya usa los del tema, y se lee en los dos.

1.20.0 — Reapariciones se ve de otra manera

20 de agosto de 2026

Reapariciones se ve de otra manera

La sección está rehecha entera. Antes era una cuadrícula de tarjetas y ahora es una lista de filas plegables: cada temporizador ocupa una línea, y se abre el que interesa. Con cuatro o cinco abiertos ya no hay que desplazarse.

Y con la fila cerrada se ve lo que hay que ver:

  • el nombre del enemigo,
  • las tres procedencias —«tuyo», «zona» y «visto»—, siempre las tres, sin desplegar nada;
  • y la cuenta atrás, con un rótulo debajo diciendo de cuál de las tres sale.

La que manda el número va rellena y las otras dos perfiladas. Eso es lo único de esta pantalla que no se negocia: un número sin decir de dónde sale es la mitad de un dato.

Y arriba, cuatro controles que antes no estaban

  • un buscador, siempre visible;
  • «Agrupar por zona» o «Sin agrupar», para cuando los temporizadores son de sitios distintos;
  • dos filtros, «Contando» y «Disponible», cada uno con su recuento dentro: el número dice si merece la pena pulsarlo;
  • y «Cómoda» / «Densa», que aprieta las filas.

La leyenda «De dónde sale cada cifra» explica las tres procedencias una sola vez, se pliega, y recuerda cómo la dejaste.

Lo que no ha cambiado

Ni una cifra. Sigue sin enseñarse lo que llevamos observado como si fuera un periodo: con pocas observaciones no se da número, y de un nombre del que hay varios individuos tampoco, porque no sabemos cuál volvió. Lo que la ficha dice en ese caso es cuántas observaciones lleva y por qué se calla.

Y dos cosas que llegaron en la 1.19.1

Por si no te fijaste, porque no son de esta versión:

  • se puede escribir en el campo del nombre —antes se borraba lo tecleado—;
  • y desde una pelea, el botón «Poner temporizador» en Escena pone temporizador a los enemigos de ese combate, con su zona, su dificultad y la hora exacta de la muerte.

1.19.1 — el temporizador se reinicia, y el crono sale de la pelea

20 de agosto de 2026

El temporizador se reinicia al volver a morir el enemigo

Y hasta ahora no lo hacía nunca. Abrías un temporizador, matabas al bicho, y la cuenta seguía como estaba: había que cerrarlo y abrirlo otra vez para que empezara de nuevo. Ya está arreglado, y la cuenta vuelve a empezar sola con cada muerte de ese enemigo en esa zona y esa dificultad.

El tiempo de la wiki es de la zona, y ahora lo dice

En la ficha ponía «de la wiki» al lado del número, y eso prometía más de lo que hay: ese tiempo es de la zona entera, no de ese bicho. Por eso dos enemigos distintos del mismo sitio enseñaban la misma cifra. Ahora el rótulo dice «la zona repuebla en», que es lo que la wiki declara de verdad.

Ya se puede escribir en Reapariciones

El campo del nombre no dejaba escribir: tecleabas una letra y desaparecía. Ya está arreglado, y con él el buscador de la lista de peleas, que perdía letras por el mismo motivo. Eran el mismo fallo en dos sitios distintos.

Poner un temporizador desde la pelea

Botón «Poner temporizador» en Escena, con una pelea abierta. Despliega los enemigos de ese combate y marcas los que quieras seguir.

Es mejor camino que escribir el nombre a mano, y no por comodidad: desde ahí vienen el nombre tal y como lo escribió el registro, la zona, la dificultad y la hora exacta en que murió ese enemigo en ese combate. La zona y la dificultad forman parte de lo que distingue un temporizador de otro, y escribiendo el nombre a mano no había forma de ponerlas.

La lista no esconde nada y dice lo que no puede hacer:

  • un enemigo que no llegó a morir sale igual, sin poder marcarse: no hay desde cuándo contar;
  • las mascotas enemigas no salen, porque no vuelven por temporizador;
  • los que ya tienen uno abierto van marcados, para no abrir el mismo dos veces;
  • y si el mismo nombre murió dos veces en el mismo combate, te dice que son dos criaturas distintas y cuenta desde la última.

EQL Parse 1.18.0

19 de agosto de 2026

Temporizadores de reaparición

Una sección nueva. Abres un temporizador para el enemigo que quieras vigilar y él cuenta solo; lo cierras cuando ya no te interesa. Ninguna muerte enciende uno por su cuenta — con cien bichos cayendo, eso sería ruido en pantalla y no ayuda a nadie.

La lista se ordena por el que antes vuelve, con los que ya deberían estar arriba del todo. Y cada ficha dice de qué zona y qué dificultad es, porque el mismo bicho en dos sitios no vuelve al mismo ritmo.

De dónde sale el tiempo, dicho siempre

En cada ficha se ven las tres procedencias, siempre las tres:

  • el tuyo, si lo escribes — manda sobre todo lo demás;
  • el de la wiki, con la página de la que sale, para que puedas ir a mirarla;
  • lo que vamos viendo nosotros, que de momento sólo se acumula.

Si el número de la wiki y lo que hemos visto no coinciden, se dice y ya está. No elegimos por ti.

Los tiempos de la wiki están recogidos zona por zona, de la página de cada una. Cuatro zonas no lo declaran, y en esas la ficha lo dice en vez de inventarse un número.

Los avisos que trae

Si un enemigo lleva mucho a cero, te avisa: puede que ya esté ahí y no lo hayas visto, o que no estemos reconociendo su línea de muerte. Son dos cosas distintas y las dos se ven igual en pantalla, así que se nombran las dos.

Y si de ese nombre hay varios en la zona, te lo dice al abrirlo, que es cuando sirve: el temporizador se reiniciará cuando muera cualquiera de ellos, no el que tú estés mirando.

Los tuyos son los tuyos, aunque cambies de mascota

Alguien podía salir a la vez bajo «Sin identificar» y sumando en el dps de tu bando. Pasaba sobre todo con tus propias mascotas: al invocar una nueva, la anterior dejaba de reconocerse, y las peleas guardadas se quedaban con esa idea para siempre.

Ahora la identidad se vuelve a calcular cada vez que miras, con todo lo que el programa ha ido aprendiendo. Peleas que llevaban semanas guardadas se rotulan bien sin reconstruir nada — son 248 peleas del histórico las que cambian—. Y quien de verdad no se conoce sigue saliendo como desconocido, que es lo que hay que decir.

Las zonas dejan de estar partidas por su dificultad

El número de dificultad que EQL pega al nombre de la zona se estaba contando como si fuera otra zona distinta. Así que la enciclopedia enseñaba la misma zona varias veces y el censo de jefes salía corto.

Ahora se juntan: una zona es una zona, y su dificultad es una columna. La enciclopedia y el censo cuadran, y cada ficha trae lo de todas las dificultades en el mismo sitio.

Arreglos

  • La ficha de reproducción reventaba si cambiabas de pelea mientras estaba cargando, y se quedaba en blanco hasta que salías y volvías.
  • El botón de cerrar un temporizador no cerraba.
  • La sección de Reapariciones no llegó a verse en las primeras pruebas internas: se quedaba en blanco entera.

1.17.0 — el registro decía que te resistían y no lo leíamos

19 de agosto de 2026

Lo que el registro ya decía y no estábamos leyendo

Tu log escribe cada vez que un enemigo resiste uno de tus hechizos. El programa no sabía leer esa línea. Sobre un registro real son 955 resistencias tuyas que se tiraban a la basura, y con ellas la respuesta a una pregunta que sí cambia lo que haces: *¿este hechizo entra contra este bicho?*

La primera vez que la abras, te pedirá releer tu registro

Esta versión te pide reconstruir el histórico: al abrirla sale un cartel con dos botones, «Reconstruir el histórico» y «Ahora no». Puedes dejarlo para luego, pero hasta que lo hagas tus peleas guardadas siguen sin las resistencias.

Mientras relee tu log desde el principio, puedes seguir usando el programa: la ventana no se congela, cambias de sección y se mueve todo con normalidad. Lo único que se queda quieto son las cifras, hasta que termina.

Cuánto tarda. Medido sobre un registro de 103,8 MB: 28 segundos si el fichero está reciente en el sistema, 62 si hay que traerlo del disco. Pasa una sola vez. Lo anterior se aparta con marca de tiempo antes de tocar nada.

Por qué hace falta. No es que las peleas guardadas tengan la cifra baja: es que la fila no existe. Un hechizo que se resiste siempre no llega a acertar nunca, y sin acertar no llegaba a crear su entrada. El caso más claro de un registro real: contra un mismo enemigo, 62 lanzamientos, 62 resistidos, ni uno entró — y ninguna de esas 62 líneas estaba guardada en ningún sitio. Eso no se arregla leyendo mejor lo guardado; hay que volver al registro.

Cuántas veces te resistieron, y sobre cuántos intentos

En el análisis de cada pelea, por hechizo y contra quién, siempre con el denominador:

Drain Spirit X          contra Coercer T`vala    44 de 44   no entra nunca
Blade Dance             contra Coercer T`vala    26 de 26   no entra nunca
Water Elemental Attack  contra Coercer T`vala     5 de 31   16 %
…

«44 resistidas» no dice nada: 44 de 44 y 44 de 300 son dos peleas distintas y dos decisiones distintas. Y cuando algo no entra ni una vez, se dice con palabras —no entra nunca— y no sólo con un porcentaje que hay que restar.

Encima de la tabla va de cuántos hechizos sale: «de los 7 que lanzaste contra este enemigo, 5 se resistieron alguna vez». Sin esa línea, cinco filas se leen como si hubieras lanzado cinco cosas.

Y te avisa por voz, que era lo que la casilla prometía

La casilla «Te resisten un hechizo» existe desde la primera versión. No había sonado nunca: cero veces en los 1,19 millones de líneas que el programa sí reconocía. Quien la tenía marcada llevaba meses esperando un aviso que no podía llegar.

Ahora suena, con dos modos que eliges tú:

  • Uno cada 20 segundos por hechizo — el que viene puesto.
  • Todos, si prefieres oírlos todos.

Está estrangulado de fábrica por una razón medida: en esa misma pelea salieron 103 resistencias de 129 lanzamientos, y 4 de los 7 hechizos no entraron ni una vez. «Todos» ahí es hablar por encima de la pelea entera.

Dos cifras de la ficha que decían lo mismo sin serlo

El número grande de cada combatiente es una tasa —su daño partido por lo que duró la pelea— y el porcentaje de al lado es una aportación —qué parte del total puso—. Se dividen por cosas distintas y contestan preguntas distintas, y salían pegados sin nada que dijera cuál era cuál. Ahora lo dicen.

El número grande no ha cambiado. Sigue siendo daño entre duración de la pelea, que es lo que significa dps.

Y sube a la línea visible su ventana propia: el daño partido por el tiempo que ese combatiente estuvo metido en la pelea. La ventana va desde lo primero que hace o le hacen hasta lo último: cuenta pegar, fallar, curar, absorber —y también que le peguen—, así que a quien tanquea se le abre con el primer golpe que recibe, no con el que da. Es la que contesta «¿entró tarde?» — quien llega a media pelea sale bajo en la tasa y normal en su ventana, y con una sola cifra esos dos casos no se distinguen. Sólo aparece cuando difiere.

También

  • Se reconoce el rechazo de un hechizo enemigo cuando algo tuyo lo bloquea antes de que llegue: 2.665 líneas de un registro real que antes no se leían.

1.16.1 — el cartel ya no ofrece lo que no existe

18 de agosto de 2026

El cartel de actualización ya no ofrece lo que no existe

Esta versión arregla una sola cosa, y es la que te pasó a ti si abriste el programa el 17 de agosto por la tarde.

Qué pasaba. La 1.16.0 estuvo publicada como la versión más nueva con sus notas subidas y sin el instalador. El cartel salía entero: «hay una versión nueva», las notas traducidas a tu idioma, y un botón que ponía Descargar y llevaba a una página donde no había nada que descargar.

Qué cambia. Si una versión está publicada y no trae instalador, no se enseña ningún cartel. Ni botón, ni notas, ni promesa. Y que no salga nada no quiere decir que la comprobación haya fallado: la versión está a medio publicar, y el aviso aparecerá solo en cuanto se termine de publicar. No hay nada que hacer en tu ordenador.

Y sin botón de omitir. Ésa es la parte que no se podía deshacer. «Omitir esta versión» se guarda en tu configuración, así que quien se cansara del aviso roto y lo omitiera se habría quedado sin la versión buena cuando por fin subieran el instalador. Ahora, como no hay cartel, no hay botón que pulsar: sale de la forma del programa y no de acordarse de quitarlo.

Lo que sigue igual

Si puedes actualizar, se te sigue avisando. Hay un caso que se parece y no es el mismo: cuando el instalador está pero hay que bajarlo desde la página en vez de desde el programa. Ése funciona, y sigue avisando como siempre.

«No se puede instalar desde aquí» y «no hay instalador» no son lo mismo, y hasta ahora se escribían igual.

Ni una cifra cambia. No toca el histórico, no pide reconstruir nada, no cambia cómo se mide una sola pelea. Abre igual que la 1.16.0 y con tus mismos datos.

1.16.0 — toda la aplicación en una barra lateral

18 de agosto de 2026

Toda la aplicación en una barra lateral, y ni una cifra se ha movido

Las tres pestañas de arriba —Combate, Avisos y Enciclopedia— ya no están. En su sitio hay una barra a la izquierda con catorce secciones, y no están agrupadas por tipo de dato sino por alcance: de qué te está hablando cada número.

Esta pelea — Escena · Por habilidad · Botín · El registro · Análisis

Todo el histórico — Resumen · Enemigos · Botín · Progreso · Zonas · Hechizos · Muertes

Ajustes — Avisos · Voz y los tuyos

Por qué por alcance

Botín dentro de Esta pelea y Botín dentro de Todo el histórico son dos preguntas distintas, y hasta ahora se llegaba a las dos por caminos que no decían cuál era cuál. Lo primero que hay que saber de un número es de qué habla; ahora lo dice el grupo donde vive, antes de leerlo.

Y la lista de peleas aparece sólo donde significa algo: en las cinco secciones de Esta pelea, que son las que cambian al elegir otra. En las del histórico no está, y la sección ocupa el ancho entero.

Ni un número ha cambiado, y eso es la promesa

Esta versión no calcula nada nuevo ni calcula nada de otra manera. Es una mudanza: lo que había se ha llevado a otro sitio de la pantalla, entero.

  • No te pide reconstruir. Tu histórico se queda exactamente como está y la primera apertura no tarda más que cualquier otra.
  • La misma pelea enseña las mismas cifras que en la 1.15.0. Si alguna fuera distinta no sería una mejora: sería un fallo, y por eso se ha ido comprobando sección a sección.
  • No hay funciones nuevas. Las que hay son las de siempre, con su sitio.

Se dice así de claro porque es lo que se prometió al empezar, no una disculpa por lo que falta.

Dos cosas que sí se notan al usarla

Los temporizadores ya no se apagan al cambiar de pantalla. Antes vivían dentro de Combate: te ibas a mirar el bestiario y el reloj que estabas vigilando desaparecía justo mientras corría. Ahora son del marco y se ven en cualquier sección.

La reproducción se abre dentro de Escena, sin sacarte de la pelea: la gráfica de la cabecera se aparta para no enseñar dos veces lo mismo y la escena se monta ahí, con la lista de peleas todavía al lado.

Y la nota de las tres velocidades dice ahora el cálculo. Ya no dice con qué se compara la primera: dice daño total ÷ duración de la pelea, que es lo que hacía falta saber.

1.15.0 — el reproductor deja de dibujar lo que no pasó

16 de agosto de 2026

La primera vez que la abras, relee tu registro entero

Esta versión fuerza una reconstrucción. Al abrirla verás un cartel y una barra: está releyendo tu log desde el principio para volver a construir el histórico. Son unos segundos —medido, 25 s para 75 MB— y pasa una sola vez.

No se borra nada: lo anterior se aparta con marca de tiempo antes de tocar nada, y se puede recuperar.

Por qué hace falta. Esta versión cambia el nombre que se guarda de cada enemigo, y la prueba de cómo se escribe está en tu registro, no en las peleas ya guardadas. Releyendo se arregla el histórico entero; sin releer, sólo lo nuevo.

Y es la primera versión con licencia

EQL Parse pasa a FSL-1.1-MIT: puedes usarlo, copiarlo y modificarlo para cualquier cosa que no sea competir con él, y cada versión pasa a licencia MIT dos años después de publicarse. El texto completo va en el programa, en Acerca de EQL Parse.

Las versiones anteriores a ésta se publicaron sin licencia explícita. Eso no era una postura: era un descuido. Queda dicho aquí porque quien descargó una de ellas merece saber en qué situación estaba.

El reproductor ya no dibuja peleas que no son tuyas

Si reproducías una pelea en una zona concurrida, aparecían figuras que no estaban en tu pelea: el bicho de otro jugador, el jugador mismo, y los golpes entre ellos. No era un adorno — se dibujaban en su columna como si fueran parte de lo tuyo.

La peor que hemos encontrado en el histórico: una pelea de 99 segundos con tres combatientes que dibujaba trece figuras, con 468 golpes ajenos dentro.

Medido sobre 1.493 peleas: 446 dibujaban a alguien de fuera, y 49 dibujaban peleas ajenas enteras. Ahora son 190 y cero. Las 190 que quedan son las legítimas: alguien que te curó, o que falló contra tu bicho, y por eso estaba allí.

Y ya no apaga a todo el mundo en el primer segundo

Cuando un enemigo caía, su figura se apagaba en el segundo cero de la reproducción en vez de en el segundo en que murió. Con varios enemigos, la escena empezaba con todos grises y se quedaba así.

Pasaba en el 80 % de las peleas. Ahora cada figura se apaga cuando cayó.

Los nombres se escriben como los escribe el juego

The Prophet, The Spiroc Lord, The Muglwump y dos más salían con la minúscula puesta por nosotros. EverQuest escribe la primera letra de cada línea en mayúscula, así que hay que mirar cómo escribe el nombre a mitad de frase para saber cuál es su forma buena — y eso es lo que se hace ahora.

Y cuando no lo sabemos, se dice. Hay nombres que sólo has visto abriendo línea, y de ésos su forma es una suposición nuestra. Esos llevan una nota que lo avisa, junto a la fila del combatiente.

«2 abatidos» no es lo mismo que «al menos 3 presentes»

El título de una pelea ponía a shin ghoul knight ×2 y eso se leía como «había dos». No es lo que cuenta: cuenta los que cayeron. Ahora lo dice con esa palabra.

El reproductor contesta la otra pregunta —cuántos hubo— y puede dar un número mayor, porque incluye al que no llegó a caer. Donde salen los dos, salen los dos y con su nombre:

a shin ghoul knight — 2 abatidos · al menos 3 presentes

Si renombras el registro, ya no se pierden las horas siguientes

Si cerrabas el juego, renombrabas eqlog_...txt para empezar uno nuevo y jugabas tres horas antes de abrir EQL Parse, esas tres horas no se leían nunca. El programa recordaba por qué byte iba, el fichero nuevo era más corto, y se plantaba al final sin decir nada.

Ahora detecta que el fichero es otro y lo lee desde el principio.

Lo que teclea otro jugador ya no cuenta como daño

Si alguien escribía en el chat una línea con pinta de golpe, el programa se la creía y la sumaba a la pelea. Ahora una línea de chat se reconoce como chat antes de mirar lo que hay dentro de las comillas.

En el registro de referencia hay 32.659 líneas de chat. La confusión sólo podía ocurrir en las que se quedan sin cerrar la comilla —un mensaje partido en varias líneas—, que son ocho, y ninguna de las ocho llevaba una cifra dentro. Podía pasar y no había pasado.

Una corrección a estas notas

La versión publicada describía mal este arreglo. Lo que pasa a leerse como cita son otros jugadores escribiendo en tu propio registro; la versión anterior decía otra cosa, y no era cierta. Y puesta donde estaba parecía un retoque, cuando lo que había debajo era el arreglo de exactitud que se cuenta justo aquí arriba.

Corregido el 18 de agosto de 2026. Se dice en vez de cambiarlo en silencio, porque la frase anterior ya la leyó alguien.

1.14.1 — los avisos dicen de dónde salen, y los abatidos que faltaban

15 de agosto de 2026

Los avisos dicen de dónde salen

Si abriste la pestaña de avisos y viste «Lady Vox» en cinco sitios que tú no habías escrito, la conclusión razonable era que las frases venían de una wiki. No venían: ese disparador casa 33 veces en tu propio registro, con seis hechizos de ella. Lo que faltaba no era la regla, era decir de dónde salía.

Ahora cada disparador lleva dos etiquetas:

  • de dónde viene — «plantilla de fábrica», que no se ha verificado contra tu registro, o «escrito por ti»
  • qué ha hecho — «visto 33 veces en tu registro», y si aún no ha casado ninguna, lo dice

La segunda es la que convierte una promesa en un hecho: un patrón copiado con una palabra distinta no casa nunca, y hasta ahora tenía exactamente la misma pinta que uno que salta a diario.

Y se cuenta contra tu registro entero, no desde que abres: al arrancar, la relectura cuenta sin hablar. Si cambias de log, el contador dice que habla de otro y empieza de cero.

La advertencia de que las plantillas de un jefe hay que comprobarlas contra tu propio registro estaba escrita en el programa desde el primer día y no se veía en ninguna pantalla. Ahora sale, junto a la nota de cada plantilla.

La plantilla del jefe ya no trae temporizador. Traía doce segundos que nadie había cronometrado: el registro no escribe en ninguna línea el tiempo de reutilización de un hechizo enemigo, así que ese número no se podía medir leyendo. Lo pones tú, que eres quien puede tomarlo con un reloj.

Los abatidos que faltaban en el bestiario

EverQuest escribe el nombre de un enemigo con mayúscula al empezar la frase —«A shin ghoul knight has been slain»— y en minúscula a mitad —«You slash a shin ghoul knight»—. El programa juntaba las dos formas al contar combatientes, pero no al contar muertes.

Medido sobre un histórico real: de 4.348 abatidos, 25 no llegaban a la ficha del enemigo, y con ellos 39 muestras de vida estimada. orc legionnaire aparecía con catorce muertes menos de las que tuvo, y su vida calculada sobre la mitad de las muestras. Nueve filas de la lista de peleas de un enemigo decían «sobrevivió» de un bicho que había caído.

No fallaba nada visible, y por eso llevaba ahí desde siempre: un número más bajo no se distingue de uno correcto.

Se arregla al leer, así que tu histórico queda bien sin reconstruir nada.

Un enemigo que se cura no tiene más vida

Un sanador enemigo repara parte del daño que le haces, y eso no es vida suya: es daño deshecho. La vida estimada ya lo descontaba —medido: 929.772 puntos de curación enemiga, el 5 % del daño que les haces— pero la regla que decide si un enemigo es un jefe usaba la cifra sin descontar.

Corregido. En tu histórico cambia de lado un enemigo, Cleric of Innoruuk, que recibió 22.633 con 2.803 de curación por el camino: sin descontarla cruzaba el umbral y salía rotulado como jefe de raid.

Y dos ralentizadores que no se anunciaban

Languid Pace e Instill no caían en ninguna categoría, así que «Raíz y ralentizar» no avisaba de ellos aunque lo tuvieras encendido. Entran, medidos: sólo se anuncian los que lanza un enemigo —el 44 % de ellos los lanzaba tu propia mascota— y con eso salen dos por pelea en el 9 % de ellas.

Se miraron otros tres montones de hechizos que tampoco tenían categoría —robos de vida, aturdimientos y drenajes de maná— y ninguno se anuncia: uno cada ocho segundos, o uno cada dos, no es un aviso. Una voz que suena todo el rato enseña a no escucharla.

1.14.0 — una pelea es un grupo de enemigos, no un hueco de silencio

15 de agosto de 2026

Esta versión relee tu registro, y cambia dónde empieza y acaba cada pelea

Va primero porque es lo que pasa en cuanto abras: la primera apertura tarda, porque se relee el registro entero una vez.

No se corrige nada al leer, y no es por no intentarlo: la frontera entre dos peleas se decide en el momento de escribirlas, así que la única forma de aplicar el modelo nuevo a lo que ya tienes es volver al registro. No se pierde nada — fights.ndjson sale del registro, que es la fuente— pero tu histórico se reparte distinto.

Vienes de la 1.12.0, y aquí dentro viene también la 1.13.0

La 1.13.0 se quedó sin publicar: existe su código y existen sus notas, pero nunca tuvo instalador, así que nadie la tiene. Sus arreglos llegan dentro de ésta, y son seis:

  • el tiempo que no manejabas deja de contar en tu contra. Un miedo o un encanto dejan el registro sin una sola línea tuya, y eso se estaba leyendo como que te habías ido. En tu histórico son 31 episodios y 251 segundos que se te cobraban y no podías evitar
  • un compañero encantado deja de ser un enemigo. Bastaba un golpe suyo para moverlo al bando contrario con todo su daño detrás; en la peor pelea, el 55 % del «daño enemigo» lo hacía tu propio grupo
  • «Lo que esta pelea no sabe», que reúne lo que una pelea no puede saber: daño sin dueño, daño contado por deducción y botín con dos cadáveres posibles
  • «Cambios de estado» en el reproductor, con lo que te pasó durante la pelea y cuánto duró cada cosa
  • «Lo que le resistes» por enemigo y por hechizo, en vez de un total suelto
  • y las peleas que un miedo partía en dos

Las notas completas de la 1.13.0 están en su propia página de versiones. Lo que sigue es lo de esta.

Estábamos contestando otra pregunta

Hasta ahora, «¿esto es la misma pelea?» se contestaba con «¿cuánto lleva callado el registro?». Son dos preguntas distintas, y por eso fallaba en las dos direcciones a la vez:

  • partía una pelea porque estuviste veinticinco segundos limpiando agro
  • y juntaba dos porque la siguiente empezó tres segundos después de la primera

Las dos cosas venían del mismo sitio: un hueco de silencio no dice nada sobre quién está peleando contigo.

Qué es una pelea, ahora

Una pelea es un grupo de enemigos cuyas ventanas de participación se solapan. Cada enemigo tiene una ventana, de su primera línea a la última; mientras quede una abierta, la pelea sigue.

Dicho como se ve desde dentro del juego: cinco enemigos muertos en dos minutos, todos pegando o casteando a la vez, con sus nombres apareciendo mezclados en el registro, son una pelea. Cinco muertos en dos minutos pero de uno en uno, sin que ninguno haga nada mientras atacas al anterior, son cinco.

Un enemigo que muere cierra su ventana en el instante: una muerte es una medición, no una espera. Sólo los enemigos de los que te escapas necesitan plazo, y ese plazo es de doce segundos — que es el p99 de la cadencia de ataque medida en tu propio registro. De los 19.970 huecos de silencio de dos segundos o más, el 99,1 % son más cortos que eso: no son misterio, son el ritmo del bicho.

Un enemigo dormido ya no rompe la pelea

Un mez no produce ni una línea: el bicho se calla y parece que se ha ido. Pero el registro sí escribe que está dormido, y las dos formas de despertar.

Esas líneas no se leían. En tu registro hay 217 mez puestos y 353 líneas de cierre —«has been awakened by» y «spell has worn off of»— que iban al cajón de lo no reconocido. Con ellas, 202 de los 217 tienen ventana con principio y final escritos.

Ahora el silencio explicado por un estado medido —mez, encanto o un tramo en el que no manejabas tu personaje— no cierra ninguna ventana. Y cada pelea que se apoya en eso guarda cuál es la línea que la sostiene, sobre qué enemigo y cuánto silencio tapó, para que se pueda discutir en vez de creerla.

Lo que no está: la raíz. En 850.171 líneas no hay ni una que diga que un enemigo está enraizado, así que no se puede medir y no se inventa.

Una tanda de nueve minutos, en nueve filas

Una pelea real de las Ruinas de Old Guk: nueve minutos y medio, veintidós abatidos y nueve nombres distintos, todo en una sola fila de la lista. Repartida por el modelo nuevo:

38 s a bloodthirsty ghoul, a frenzied ghoul 13 s a bloodthirsty ghoul 70 s a zol ghoul knight ×2, a dar ghoul knight 49 s an urd ghoul wizard, a zol ghoul knight ×2, a kor ghoul wizard 20 s a zol ghoul knight 84 s a dar ghoul knight ×2, the ghoul arch magus 148 s a yun ghoul wizard, a dar ghoul knight ×5 22 s a kor ghoul wizard 12 s a wan ghoul knight

Nueve filas, nueve nombres distintos. La cuenta de abatidos con «×2» hace el trabajo: sin ella, cuatro de esas nueve dirían lo mismo.

Y por eso tus cifras dejan de estar diluidas

Esto es lo que se nota al mirar una pelea, y no es orden en la lista.

Una tanda de veintisiete minutos con cuarenta bichos que caen de un golpe tenía un «dps de los tuyos» dividido por todo el tiempo que pasaste andando entre uno y otro. El número era correcto y no describía nada. Ahora cada tirón tiene su propia cifra, y «DPS sobre la pelea» vuelve a significar lo que dice.

Lo mismo con «duración», con «Tiempo sin pegar» y con «DPS sólo en segundos activos»: un denominador que incluye tres peleas y dos paseos no mide a nadie.

Una muerte ya no funda una pelea

Una muerte no es un comienzo: es la prueba de algo que ya estaba pasando. Si llega la muerte de un enemigo que no ha dado ni una línea en la pelea abierta —un veneno que acaba solo, o alguien que lo remató— ya no entra como presa tuya: se anota aparte, con a qué distancia quedó la última línea suya.

En tu histórico son 21 muertes de más de cuatro mil. Es poco, y se dice igual: era un abatido que no era tuyo, en el rótulo de una pelea que no era la suya.

Cuánto cambia tu histórico

Sobre el registro de referencia, las peleas guardadas pasan de 845 a 1.420, y la mediana de duración baja de 86 a 45 segundos. El número con el que te quedes depende de cuánto hayas jugado antes de reconstruir; la diferencia, no.

Pero no cambia por igual. En el Plano del Miedo, el Plano del Odio, la guarida de Nagafen y el Plano del Cielo —donde peleas contra una cosa a la vez— el 83 % de las peleas sale exactamente igual, y de 457 pasan a 536. Lo que se reparte de verdad son las tandas: los sitios donde encadenabas tirones sin pausa, que es donde una sola fila escondía media hora.

Lo que hace este modelo, dicho con precisión

Sólo corta, salvo donde el registro dice con todas las letras que el enemigo seguía ahí. Al reconstruir, cada pelea nueva cabe dentro de una de las que ya tenías — con diez excepciones en las 845, y las diez pueden señalar la línea de mez o de encanto que las une. Ni una sola se junta por un hueco de tiempo.

Lo que sólo se puede comprobar jugando

Una pelea se cierra por dos caminos que no usan el mismo reloj: la marca del registro y el reloj de pared. Releer es uno de los dos, así que la única forma de comprobar que los dos coinciden es jugar una sesión y releerla después.

El margen del reloj de pared sube de tres a cinco segundos por este cambio —el plazo nuevo es más corto, así que un desfase cuesta más caro— y eso significa que una pelea tarda cinco segundos en darse por terminada en el mostrador, en vez de tres. No afecta a ninguna cifra: sólo al momento en que aparece.

1.13.0 — el tiempo que no manejabas deja de contar contra ti (no distribuida)

15 de agosto de 2026

Esta versión relee tu registro, y esta vez sin preguntar

Va primero porque es lo que pasa en cuanto abras: la primera apertura tarda, porque se relee el registro entero una vez.

La 1.11.0 corregía al leer y por eso no pedía nada. Ésta no puede. Tres de las cosas que arregla se decidieron en el momento de escribir cada pelea, y lo que se decidió al escribir no se recompone leyendo:

  • el tiempo sin mando, que se cobró como parón al calcular la pelea
  • el compañero encantado, que quedó guardado en el bando enemigo
  • las peleas partidas en dos por un miedo

No se pierde nada: fights.ndjson se vuelve a generar del registro, que es la fuente. Lo que sí cambia son tus cifras, y algunas fronteras entre peleas.

El tiempo que no manejabas deja de contar contra ti

Cuando un enemigo te mete miedo no es que dejes de pelear: es que no puedes. Con un encanto tampoco decides — pegas a los tuyos, pero no lo eliges tú. En los dos casos el registro se queda sin una sola línea de combate tuya, y el programa lo estaba leyendo como si te hubieras ido a mirar el inventario.

El registro sí escribe los dos extremos de esos tramos, y no se leían. En tu histórico son 31 episodios, y 251 segundos que se te estaban cobrando y no podías evitar. La peor pelea pasa de 172 a 91 segundos de parón.

Ahora esos tramos se miden y salen de todas las cuentas que hablan de ti: de «Tiempo sin pegar», de «Buena continuidad», del denominador de «DPS sólo en segundos activos», de «Postura equivocada por tramos» y de tu cadencia. La duración tampoco es un dato sobre ti, porque no la decides.

Por el camino aparecieron dos cosas que iban en direcciones contrarias, y las dos se han quitado:

  • los huecos de miedo cortos te perdonaban de más, porque inflaban tu cadencia y con ella el margen que se te da
  • y mientras estabas sin mando te seguían pegando, así que el denominador de «DPS sólo en segundos activos» crecía mientras el numerador no podía crecer

La etiqueta sale de una medición, no de un parecido. La línea del registro no dice la causa: el miedo y el encanto escriben la misma. Lo que los separa es lo que hiciste dentro, y eso sí se ve — con miedo no puedes actuar en absoluto, así que cero acciones es miedo; encantado pegas a los tuyos sin decidirlo, así que un golpe a uno de ellos es encanto. Si actuaste contra el enemigo no es ninguna de las dos, y entonces la ficha lo dice en vez de elegir.

Y hubo que distinguir un caso que lo habría estropeado: las teclas que el juego rechaza. Dentro de esos tramos hay 24 lanzamientos empezados que no resuelven nunca — ni impacto, ni resistencia, ni interrupción. Fuera de ellos ese mismo hechizo sí resuelve. Un lanzamiento sin desenlace no es una acción, es un intento denegado, y contarlo habría convertido 10 de los 31 episodios en otra cosa por aporrear un atajo.

Un compañero encantado deja de ser un enemigo

Si a alguien de tu grupo lo encantan y te pega, hasta ahora se convertía en enemigo durante toda la pelea, no sólo durante el intercambio. El bando se deducía de quién pega a quién, y un solo golpe bastaba para cambiarlo de lado con todo su daño detrás.

En tu histórico hubo fuego amigo en cinco peleas, todas en el Plano del Miedo. En tres de ellas un compañero acabó en el bando contrario, y en la peor el 55 % del «daño enemigo» lo hacía tu propio grupo. También te quitaba a ti: el daño que ese compañero le hacía al jefe no contaba en «Los tuyos».

Ahora manda lo declarado. Quien tú has dicho que es de los tuyos no cambia de bando porque un golpe diga lo contrario, y el daño que os hacéis entre vosotros no se suma a ningún total: se aparta y se cuenta, con su nombre y en las dos direcciones, bajo «Dos de los tuyos peleando entre ellos».

Ese bloque está en la pelea, encima de la lista de combatientes — no en el reproductor. Dice qué compañero peleó contra el grupo, cuántos golpes, cuánto daño y entre qué segundos. La causa no se dice, porque el registro no la escribe en ninguna línea. Al lado va lo único que sí hay escrito cerca: el último lanzamiento del enemigo antes de ese tramo, sea el que sea, con los segundos de distancia. A veces es un encanto y a veces es una curación suya, y se enseña igual — es un hecho vecino, no una causa.

«Lo que esta pelea no sabe»

El programa llevaba versiones calculando de cuánto no se puede fiar, y sin enseñarlo en ninguna parte. Tres números, medidos, guardados y mudos. Ahora están juntos y a la vista, porque son la misma pregunta:

  • daño real sin dueño, que es un escudo de daño sin posesivo; el registro no se lo atribuye a nadie y no entra en ningún total
  • daño contado como enemigo apoyándose en una deducción y no en una línea: el encanto que se rompió al encadenar otro, que el registro no anuncia
  • botín con dos cadáveres igual de posibles, donde se eligió el más reciente

Cada uno va marcado con si está medido o deducido. Esta parte no necesitaba reconstruir nada: los tres números ya estaban calculados y guardados. Lo único que faltaba era leerlos.

«Cambios de estado», en el reproductor

Debajo de la línea de tiempo hay una pista con lo que te pasó durante la pelea: «stunned», encantos tuyos, «Sin control», absorciones, derribos y avisos de supervivencia.

Donde el registro escribe los dos extremos de un estado, la duración está medida y se dibuja una barra de principio a fin. Donde esa barra no llegaría a distinguirse de un punto al ancho que tengas en pantalla, se dibuja el punto — y al ensanchar la ventana los puntos se vuelven barras. Es a propósito: la pista enseña la resolución que hay, no una que no tiene.

Un estado que ya estaba puesto al empezar la pelea, o que seguía puesto al acabar, se dibuja abierto por ese lado. Es distinto de afirmar que duró hasta ahí, que es lo único que se sabe.

No están todos los estados posibles, sólo los que dicen algo. La raíz se lee y se guarda pero no se pinta: no te impide pegar, así que no explica ningún hueco de la curva. Estaba en la pista por frecuente, y en una pista donde todo está marcado no se marca nada.

«Lo que le resistes»

Lo que tú resistes era un total suelto de la pelea. Ese total sigue donde estaba, y ahora además va a la ficha de cada enemigo, con de qué hechizo suyo se trata — que es lo que convierte «resististe siete» en algo que se puede usar la próxima vez que bajes ahí.

No es un porcentaje, y la ficha lo dice: que un hechizo entre no deja línea en el registro, así que se cuentan las veces que lo paraste y nada más.

Peleas que estaban partidas en dos

Un tramo sin mando lo bastante largo cortaba la pelea, porque durante el miedo no hay ninguna línea tuya y eso se leía como que el combate había terminado. Pasaba por los dos caminos: el de la marca del registro y el del reloj de pared, que en directo cerraba antes incluso de que llegara el aviso de que recuperabas el mando.

Ya no corta. Al reconstruir, cinco peleas se funden con su vecina y una mueve su frontera, así que tu total baja en cuatro. El número con el que te quedes depende de cuánto hayas jugado antes de reconstruir; la diferencia, no.

Lo que sigue sin cerrar

Reconstruir no reproduce tu histórico al cien por cien. De las diez diferencias medidas entre lo que decide el reloj de pared y lo que decide la marca del registro, siete están cerradas. Las tres que quedan son arranques de la aplicación a mitad de registro, y ninguna regla de reloj las parte: donde empieza a mirar un rastreador recién creado, empieza una pelea.

Se dice aquí porque es preferible saberlo antes de reconstruir que descubrirlo después.

1.12.0 — el botín se cuelga de su cadáver, y la moneda por fin cuenta

12 de agosto de 2026

Esta versión te pide reconstruir el histórico, y reconstruir lo mueve

Va primero porque hay que saberlo antes de pulsar, no después.

Al abrir te va a salir un cartel pidiendo releer tu registro. Es obligatorio esta vez: dónde estaba colgado cada objeto se decidió al escribirlo, y no hay forma de recomponerlo leyendo mejor lo guardado.

Y reconstruir no reproduce exactamente tu histórico. El cierre de una pelea se decide con el reloj de pared mientras el programa está en marcha y con la marca de tiempo del registro cuando se relee, así que donde el hueco entre dos peleas sea de exactamente 20 segundos, cada camino decide distinto. Medido sobre un histórico real de 708 peleas: quedan 700 — 698 idénticas, 10 que se funden con la de al lado y 2 que aparecen partidas de otra manera.

Lo anterior se aparta con fecha antes de tocar nada (fights.ndjson, el índice, la enciclopedia y los ficheros laterales) y se puede recuperar copiándolo de vuelta. No se borra nada.

Es un fallo conocido, es el mismo que ya avisaba la 1.11.0, y sigue sin arreglar. La diferencia es que aquella no te pedía reconstruir y ésta sí.

Qué estaba mal en el botín

Se colgaba de la pelea que estuviera abierta al recogerlo, y se saquea después de matar. De ahí salen cuatro cosas, todas medidas sobre un registro real de 55 MB:

  • 34 objetos colgados de una pelea posterior a la muerte del bicho del que salieron. Siempre hacia adelante, nunca al revés, con una mediana de diez minutos entre una pelea y otra. Matas, sigues, y diez minutos después vacías el cadáver: el objeto se lo quedaba la pelea en la que estabas.
  • 294 objetos con el instante fuera de su propia pelea, y por eso invisibles. El reproductor recorre de cero a la duración de la pelea, así que un objeto recogido después del último golpe no se pintaba en ninguna parte. Es un tercio de las peleas con botín.
  • 51 objetos caían en un sitio distinto según se hubieran grabado en directo o releyendo — y eran justo los de los jefes, porque un jefe tiene diez objetos y vaciarle el cadáver lleva más de los veinte segundos que tarda la pelea en cerrarse.
  • Una línea de botín sin regla. and stored it in your tradeskill depot apareció una vez en todo el registro y se llevó un objeto entero sin que saltara nada.

Y la moneda de los cadáveres no se guardaba en ninguna parte: 1.392 líneas que el programa reconocía y tiraba.

Qué cambia

Cada objeto va ahora a la pelea donde murió su cadáver, no a la que estuviera abierta. Sobre las 1.901 líneas de botín del registro de referencia: 1.884 quedan colgadas de la pelea donde murió el bicho del que salieron, 17 se quedan sueltas —porque a ese enemigo lo remató entero otro y esa muerte nunca se registró— y ninguna se pierde.

El emparejamiento es por nombre y por cercanía, así que es una deducción y va dicha como tal: el registro no numera los cadáveres. Lo que sí está medido es el hueco entre la muerte y la recogida, y sale al lado de cada objeto. En las tres recogidas de las 1.901 donde había dos cadáveres igual de cerca en peleas distintas, sale marcada la duda en vez de elegir en silencio.

El reproductor termina en una ficha nueva: «Lo que recogiste». Qué objetos, de qué cadáver, en qué momento, ordenados por el instante de recogida. Los que cogiste con la pelea ya cerrada salen ahí, con su hora y dicho que la pelea había terminado — es la primera vez que se ven.

No se titula «lo que cayó» y no es un descuido: el registro no anota lo que recogen los demás, ni lo que saquea otro de un cadáver lejano, ni lo que se quedó en el suelo. Anota lo que cogiste tú, y la ficha se titula con eso.

Y una pelea sin botín ya no dice una sola cosa, porque no son la misma:

  • cayeron enemigos y no consta ninguna recogida tuya
  • no cayó nadie, así que no había nada que saquear
  • lo recogiste, pero fuera de cualquier pelea tuya

La moneda entra por fin, con su instante y sumada en cobres. Va colgada de la pelea que estuviera abierta y no del cadáver, porque la línea del registro no dice de quién sale — y eso también está escrito en la ficha, al lado de la cifra. Son dos certezas distintas y no se enseñan como si fueran la misma.

Y una red para la próxima vez

Un final de línea que el programa no sabía leer costó un objeto entero, y no saltó ninguna alarma.

Ahora un final desconocido sigue soltando el objeto y el cadáver, y el trozo que no se sabe leer viaja literal hasta la ficha, donde se ve. Un objeto puede llegar con una parte rara; lo que ya no puede es no llegar.

1.11.0 — la postura no mitiga el daño periódico ni el escudo

9 de agosto de 2026

Tus peleas guardadas van a enseñar otros números. Sin que pulses nada

Esto va primero porque es lo que va a pasar en cuanto abras.

La 1.10.0 te pedía permiso: salía un cartel, había un botón, y tu histórico anterior se guardaba con fecha antes de tocar nada. Esta no lo pide. La corrección se hace sola al leer cada pelea, así que las peleas que ya tenías van a mostrar cifras distintas la primera vez que las abras.

No hay nada que decidir y no se pierde nada: tu fights.ndjson no se toca, la corrección ocurre al leerlo. Pero un histórico que cambia sin avisar es exactamente lo que este programa no hace, así que aquí está el aviso. Sale también dentro de la aplicación, una sola vez.

Qué estaba mal

La postura no reduce el daño periódico ni el escudo de daño, y el programa actuaba como si lo hiciera.

El registro guarda el daño ya mitigado, así que para poder comparar posturas entre sí hay que reconstruir lo que habrías recibido sin ninguna. Eso se estaba haciendo también con el daño periódico y con el escudo de daño, y medido sobre un registro de 385.656 líneas, la postura no los toca:

  • Nueve aplicaciones de daño periódico recibido cruzan un cambio de postura con el hechizo ya puesto. En las nueve el valor del tick no se mueve un punto. Rotting Flesh de un dracoliche cruza Defensive ↔ Channeler en los dos sentidos y vale 100 en los 42 ticks.
  • El escudo de daño, igual: un spite golem pincha por 18 bajo Defensive, bajo Channeler y bajo Offensive.

No pasa lo mismo con los hechizos directos, que sí se mitigan y con exactitud de libro. Soul Devour del Eye of Veeshan pega 400 con Defensive, 300 con Channeler y 250 con Mage Hunter, sobre 368 impactos y sin una sola variación. Así que no era cuestión de dejar de reconstruir lo mágico: eran dos escuelas medidas por separado con dos resultados distintos.

Qué costaba: 44.924 puntos de daño recibido que no existían, sobre 416 peleas guardadas. Y el consejo de postura se apoyaba en ellos — se apuntaba como evitable un 21% de daño que ninguna postura evita.

Qué cambia en lo que ves

  • El daño recibido baja en las peleas que tuvieran daño periódico o escudo de daño. Es la cifra que estaba inflada.
  • El panel de consejo tiene una fila nueva: cuánto del daño que te entró no lo paraba ninguna postura. Es el techo de todo lo que la tabla de debajo promete, así que ahora está a la vista.
  • El veredicto deja de fingir que llevaste una sola postura. Si cambiaste de postura durante la pelea, lo que evitaste se calcula tramo a tramo. Antes se cogía la que más tiempo aguantó y se le acreditaba el daño entero, y en una pelea donde bailas eso llega a invertir el consejo: podía recomendarte cambiar a una postura que habría evitado *menos* que lo que hiciste.
  • El aviso de «Postura equivocada por tramos» del análisis se mueve. Las fases se cortan cuando cambia la composición del daño entrante, y el daño periódico contaba como mágico: una pelea de melé con un veneno encima se cortaba como si el jefe hubiera pasado a quemarte.

Tu histórico va a quedar mezclado, y es correcto

No todo se puede corregir leyendo. Lo que sí: el importe observado está guardado al lado del reconstruido, así que deshacer la reconstrucción indebida es una copia exacta y se hace sola.

Lo que no: el reparto del daño por la postura de cada golpe no está en el disco. Eso hay que sacarlo releyendo el registro entero, y hoy no se puede pedir con garantías (ver más abajo).

Consecuencia práctica: en tus peleas antiguas vas a ver «pelea guardada antes de que el daño se partiera por postura», y en las nuevas no. Eso es correcto y no es un fallo: es el programa diciéndote que ese veredicto concreto está calculado contra una sola postura porque es lo único que se puede hacer con lo que hay guardado. Cada pelea lleva ahora un número que dice con qué reglas están calculadas sus cifras.

Reconstruir ahora avisa por sí mismo

Si usas store:rebuild, o el botón de reconstruir, verás un aviso nuevo: reconstruir no reproduce exactamente tu histórico.

El cierre de una pelea se decide con el reloj de pared cuando el programa está en marcha y con la marca de tiempo del registro cuando se reconstruye. Donde el hueco entre dos peleas sea de exactamente 20 segundos, cada camino decide distinto. Medido sobre 441 peleas reales: una se funde con la siguiente, y las cifras de las dos cambian con ella.

Lo anterior se sigue apartando con fecha y se puede recuperar. Pero mejor saberlo antes de pulsar que después. Es un fallo conocido y está pendiente de arreglo; hasta entonces, esta versión no te pide reconstruir.

Y una cosa de fontanería que se notaba

Hasta ahora un solo número respondía a dos preguntas: «¿ha cambiado lo que se guarda?» y «¿hay que releer el registro?». Trece versiones seguidas las dos respuestas fueron la misma, así que nadie notó que eran dos preguntas. Esta es la primera versión en que discrepan.

Están separadas. La consecuencia es que la prueba que impide publicar un cambio de formato sin numerarlo ya no tiene excepciones: antes, decir «cambió el formato pero no reconstruyas» obligaba a silenciarla.

Las notas de la versión, dentro de la aplicación

El cartel de actualización ya traía este texto desde la 1.10.0 y no lo enseñaba en ninguna parte. Ahora lo enseña, plegado, antes de que decidas instalar. Quien actualiza desde dentro no debería tener que ir a la web a leer qué va a cambiar.

Volver atrás no cuesta nada, y no es un procedimiento de emergencia

La corrección vive en el código que lee, no en el fichero: tu fights.ndjson conserva intactos los números de antes. Si instalas la 1.10.0 encima, las peleas anteriores a actualizar vuelven a enseñar exactamente lo que enseñaban, sin recuperar copias ni deshacer nada.

Y las que grabes con esta versión tampoco se quedan atrás. Medido sobre 440 peleas escritas por la 1.11.0 y leídas por la 1.10.0: ni un error, ni una que pierda su consejo, ni un punto de daño perdido. El daño recibido sale idéntico —3.374.795 en las dos— y el análisis por fases da exactamente lo mismo: 1.820 fases y 183 avisos de postura en las dos, cero peleas con diferencias.

Lo único que la versión vieja no sabe hacer es separar el tercer cubo: mete el daño periódico y el escudo dentro de «mágico», porque sólo tiene dos. El daño está entero, contado en un cajón menos. La consecuencia es que vuelve a apuntarse como evitable ese daño al puntuar posturas, que es su modelo de siempre.

Lo único que hace al abrirse es rehacerse su propia enciclopedia, que tarda menos de un segundo y es su comportamiento normal.

1.10.0 — la reproducción, el registro con contexto y la actualización desde la aplicación

8 de agosto de 2026

Esta hay que bajarla a mano. La siguiente ya no

Esta versión es la que instala la actualización desde la aplicación, así que no se puede instalar con ella: descarga el instalador de aquí abajo una última vez. A partir de ahora, cuando salga una versión nueva, la aplicación te lo dice, te enseña cuánto ocupa antes de descargar y la instala sola si se lo pides. Nunca sin pedírselo, y si algo no se puede verificar, se queda como está y lo dice.

Si leíste «RECONSTRUYE» y nunca te salió el cartel, era un fallo nuestro

Esto hay que decirlo antes que nada.

Si instalaste alguna versión desde la 1.6.1 y leíste que había que reconstruir pero nunca te salió el cartel, no era que no te tocara: era un fallo nuestro. Esta versión sí lo pide.

El aviso de reconstruir se dispara comparando un número —STORE_VERSION— con el que lleva grabado tu histórico. Ese número no se tocó desde la 1.6.1, y en las trece versiones siguientes el parser y las cuentas cambiaron seis veces. Estas seis lo pedían en sus propias notas, cuatro de ellas en mayúsculas, y la aplicación no lo pidió nunca:

| | Lo que decía su nota | |---|---| | 1.8.0 | «Reconstruye el histórico para que lo del encantado y lo de los nombres…» | | 1.8.1 | «SI JUEGAS EN GRUPO, ACTUALIZA Y RECONSTRUYE» | | 1.8.2 | «si no reconstruiste el histórico entonces, hazlo ahora» | | 1.9.0 | «RECONSTRUYE EL HISTÓRICO para que las peleas viejas tengan sus…» | | 1.9.1 | «RECONSTRUYE EL HISTÓRICO para que las peleas viejas tengan las marcas…» | | 1.9.2 | «SI JUEGAS EN GRUPO Y HAS DECLARADO COMPAÑEROS, ACTUALIZA Y RECONSTRUYE» |

Quien las instaló, leyó eso y no vio ningún cartel concluyó lo razonable: que a él no le tocaba. Y lleva desde entonces con datos que sus propias notas decían que había que rehacer.

Una sola reconstrucción lo pone todo al día, vengas de la versión que vengas: no son migraciones encadenadas que puedan saltarse, es releer tu registro entero con el código de hoy y rehacer el histórico desde cero.

Para que no vuelva a pasar, ahora hay una prueba que compara lo que se guarda con lo que se guardaba, y no deja publicar si cambia sin subir ese número.

Antes de pulsar «Reconstruir»: si borraste o rotaste tu log

La reconstrucción lee el fichero de registro que tienes ahora. Si lo borraste, lo rotaste o lo empezaste de cero, las peleas que ya no estén en él no se recuperan y saldrás con menos peleas que antes.

La aplicación te dice cuántas había y cuántas quedan, y aparta tu histórico anterior con fecha antes de tocar nada, así que siempre se puede volver. Pero mejor saberlo antes de pulsar que después.

Qué arregla reconstruir, esta vez

Sale un cartel arriba. Tarda unos segundos y puedes decir que más tarde. Son dos cosas que no se arreglan releyendo mejor:

  • El daño que te hacías a ti mismo se contaba como daño hecho. En un histórico real eran 2.107 puntos repartidos por nueve peleas, y una de ellas era una pelea entera contra «yourself» que no existió nunca.
  • Ninguna pelea guardada lleva la forma del golpe, que se empieza a contar ahora. Sin reconstruir, el reproductor y las tablas la dan por ausente en todo lo anterior.

La reproducción

Vuelve a ver la pelea segundo a segundo, con los números flotando sobre cada combatiente como en el juego, medidores de dps al estilo del overlay y un panel de texto con lo que pasa un umbral. Se puede pausar, ir a ×2 o ×5 y saltar a cualquier segundo arrastrando sobre la gráfica.

Sale del registro releído, no de las cifras ya sumadas: cada número que ves es una línea de tu fichero. Los que no tienen instante no salen, en vez de colocarlos a ojo.

Debajo de cada enemigo abatido aparece lo que soltó. Y al pasar el ratón por cualquiera, su resumen acumulado hasta ese segundo, no el de la pelea entera.

La barra de casteo, con lo que tardó de verdad

Cada hechizo tiene su duración, y cambia con la postura y con las mejoras. No hay que declararla: sale de tus lanzamientos anteriores en esa misma sesión —la mediana, con ocho lanzamientos como mínimo—. Cuando el registro contradice a la mediana, el exceso se marca en la barra en vez de estirarla en silencio.

Y se distingue «es instantáneo» de «no hay muestra todavía», que no es lo mismo y se contaban igual.

El registro, con lo de justo antes y justo después

Las líneas originales de la pelea sin salir de la aplicación, con su contexto. Si el fichero ya no está o el tramo se salió del rango, lo dice y dice cuál era el rango — en vez de enseñar una caja vacía.

La forma del golpe, en vez del mínimo y el máximo

El mínimo y el máximo de un ataque son las dos únicas cifras de su fila que un solo golpe raro puede mover. Sobre un registro real, un ataque con 557 muestras da 3 / 25 / 60: el mínimo es 0,12 veces la mediana.

Ahora va la mediana con el p10 y el p90, que contestan lo mismo sin que se las lleve un golpe suelto. Y si un ataque tiene dos modas —dos golpes distintos contados como uno— se dice con palabras, no se deja en el dibujo.

Arreglos

  • La dificultad de las zonas. Una zona sin marca es dificultad 0, no «sin asignar». Eran 84 peleas de 410 sin asignar, y se curan al leerlas.
  • El aviso de cambiar de postura no saltaba cuando la mejor era una que no habías usado en esa pelea. Seis Eye of Vesshan en Defensive con Channeler mejor, y ni un aviso.
  • El trío se quedaba pegado. Declarabas SK/SHM/MAGE y seguía enseñando el druida de la sesión anterior.
  • El buscador de combates perdía el foco a cada letra: había que volver a pinchar en el campo para escribir la siguiente.
  • yourself aparecía como combatiente.
  • El tiempo sin pegar se medía contra cero. Con un arma de tres segundos, dos de cada tres segundos no traen daño por construcción, así que el aviso saltaba en el 98,9% de las peleas — o sea, no decía nada. Ahora se mide contra tu propia cadencia, deducida de tus huecos, y salta en el 22,2%.
  • Los hallazgos del análisis dicen si accionan algo. No es lo mismo «esto lo cambias tú» que «esto es tu equipo o tu nivel» que «esto es lo que pasó».

Y la mejor ráfaga

Los diez segundos seguidos en los que más daño pusiste, con su multiplicador contra tu ritmo de la pelea.

---

Página del proyecto: eqlparse.com

1.9.2 — el daño de tus compañeros declarados se descartaba

8 de agosto de 2026

1.9.2 — arreglo: el daño de tus compañeros declarados se descartaba

SI JUEGAS EN GRUPO Y HAS DECLARADO COMPAÑEROS, ACTUALIZA Y RECONSTRUYE.

En una pelea con varios enemigos, cada uno se encarga de unos cuantos y hay bichos que tú no llegas a tocar en toda la pelea. El daño que tus compañeros hacían contra ésos se estaba descartando entero.

En un histórico real: 21.167 puntos recuperados entre dos compañeros. Tus propias cifras no cambian ni un punto — el arreglo recupera lo suyo sin tocar lo tuyo.

Y ALGUNAS PELEAS ESTABAN PARTIDAS EN DOS. Cuando durante unos segundos sólo pegaba tu compañero, esos golpes se tiraban y el hueco parecía que la pelea había terminado. Ahora se mantiene entera.

EL FILTRO SIGUE HACIENDO SU TRABAJO. Un desconocido peleando cerca sigue sin entrar en tus datos: el arreglo sólo vale para quien hayas declarado tú como compañero.

Y RECONSTRUIR EL HISTÓRICO YA TIENE EN CUENTA A TUS COMPAÑEROS, que antes no lo hacía: rehacerlo los ignoraba aunque estuvieran declarados. Enciclopedia, botón al pie.

1.9.1 — cuándo cayó cada enemigo, y dos tablas que enseñaban la mitad

8 de agosto de 2026

1.9.1 — cuándo cayó cada enemigo, y dos tablas que enseñaban la mitad

CUÁNDO CAYÓ CADA UNO

La gráfica de cada pelea lleva ahora una marca por cada enemigo que cae, en el segundo exacto. Entre dos marcas hay, en realidad, peleas distintas que se juntaron en una porque no hubo pausa entre ellas.

Es el primer paso para poder separarlas al mirarlas, en vez de que la decisión se tome al guardar y ya no haya vuelta atrás.

DOS TABLAS DEL RESUMEN ENSEÑABAN MENOS DE LA MITAD

Al resumir muchas peleas a la vez, las tablas de «a quién pegas» y «de quién te llega el daño» estaban recortadas a 15 y 10 nombres. Sobre un histórico de 412 peleas eso escondía el 51% y el 57% del daño, sin decirlo en ninguna parte.

Ahora llegan a 60 —el 89% y el 92%— y lo que aun así no quepa se dice: «y N más». La tabla de habilidades estaba bien y se queda casi igual.

RECONSTRUYE EL HISTÓRICO para que las peleas viejas tengan las marcas de muerte: Enciclopedia, botón al pie.

1.9.0 — qué lanzó cada uno y cuánto tiempo estuvo puesto

8 de agosto de 2026

1.9.0 — qué lanzó cada uno, y cuánto tiempo estuvo puesto

DOS VISTAS NUEVAS DEBAJO DE CADA PELEA

Qué lanzó cada uno. Una fila por lanzador y una raya por lanzamiento, colocada en el segundo en que pasó. Sirve para lo que no se ve en una tabla de totales: si alguien estaba usando lo suyo o tenía la fila medio vacía. Pasa el ratón por una raya y te dice qué fue y cuándo.

Cuánto tiempo estuvo puesto. Para cada cosa que lanzaste, la barra de tiempo que estuvo activa y su porcentaje sobre la pelea. Relanzar antes de que caiga no cuenta dos veces.

Y ANTES SE GUARDABA EL 12% DE LO QUE LANZABAS

Sólo se guardaba el hechizo que la aplicación supiera clasificar —curas, raíces, mez— y se tiraba el resto. De 6.457 lanzamientos tuyos en un histórico real se guardaban 702: justamente faltaban los nukes, que es lo que uno viene a mirar. Ya se guardan todos.

RECONSTRUYE EL HISTÓRICO para que las peleas viejas tengan sus lanzamientos: Enciclopedia, botón al pie. Las nuevas ya salen completas.

LO QUE ESTA APLICACIÓN NO PUEDE MEDIR, Y LO DICE

El tiempo que un buff estuvo puesto se mide desde que lo lanzas hasta que cae. Un buff que te pusieron ANTES de empezar la pelea y seguía al acabar no deja ninguna línea, así que no aparece — ni como 0% ni como 100%.

Y no se mide maná ni vigor. El rendimiento sostenido de un lanzador se lee de tres cosas —cuánto tiempo estuvo puesto el buff, cuánto maná costó y cuánto vigor—, y el registro de EverQuest Legends no da las dos últimas. Esto es la parte que sí se puede medir: el tiempo.

1.8.2 — aguantar como vista propia y las dos velocidades

8 de agosto de 2026

1.8.2 — aguantar como vista propia, y las dos velocidades a la vez

AGUANTAR, COMO ROL

Debajo de las filas de daño hay ahora un bloque que responde a otra pregunta: quién aguantó. Cuánto le llegó a cada uno, cuánto le curaron, cuántos golpes le tiraron y cuántos se quedaron en la armadura —parada, esquiva, contraataque— más lo que absorbió una runa.

Lo que NO dice, y es a propósito: si estuviste cerca de morir. El registro no da la vida de nadie, así que 3.000 recibidos son una tragedia con 3.100 de vida y un paseo con 12.000, y la aplicación no sabe cuál de las dos. No hay barras de peligro ni nada que lo insinúe.

LAS DOS VELOCIDADES

El número grande de cada fila siempre ha sido tu daño partido por la pelea entera: lo que pones en el reloj del grupo. Ahora, al lado, va tu ritmo: el daño partido por los segundos en los que de verdad estabas haciendo algo. Son preguntas distintas — quien entra tarde a una pelea puede tener un ritmo altísimo y haber aportado poco.

Y DOS TIPOS DE GOLPE QUE SE PERDÍAN

Ya venía en la 1.8.1: «smites» y «shoots» no se contaban. Si no reconstruiste el histórico entonces, hazlo ahora — Enciclopedia, al pie.

1.8.1 — arreglo: daño de dos tipos de golpe que se tiraba

8 de agosto de 2026

1.8.1 — arreglo: se estaba tirando el daño de dos tipos de golpe

SI JUEGAS EN GRUPO, ACTUALIZA Y RECONSTRUYE.

Dos verbos de ataque —«smites» y «shoots»— no estaban en la lista que usa la aplicación para reconocer golpes, así que esas líneas se descartaban enteras y su daño no llegaba a ninguna cifra. En un histórico real son 961 líneas y 18.675 puntos.

Lo importante no es el total, es de quién era: casi todo de un mismo compañero de grupo, al que se le venía dando un número más bajo del real en cada pelea sin que pudiera darse cuenta. Para él son 613.528 en vez de 632.203, un 3% de lo suyo.

Si usas paladín, clérigo o arco, o juegas con alguien que lo haga, esto te afectaba.

PARA QUE SE APLIQUE A TUS PELEAS VIEJAS hay que reconstruir el histórico: Enciclopedia, botón al pie. Las nuevas ya salen bien solas.

1.8.0 — el pet encantado, la gráfica legible y la foto del enemigo

8 de agosto de 2026

1.8.0 — el pet encantado, la gráfica que se puede leer y la foto del enemigo

EL ENCANTADO YA NO SE MEZCLA CON EL ENEMIGO

Si juegas de encantador —o llevas un hechizo de charm—, esto es lo gordo. Encantas a un bicho, pelea para ti, y cuando se rompe vuelve a atacarte: el mismo nombre en los dos bandos dentro de la misma pelea. Hasta ahora la aplicación tenía que elegir uno y se equivocaba en la mitad.

Ahora sale en su propia fila, en tu bando, con la marca «(encantado)», y el salvaje del mismo nombre sigue entre los enemigos. Sabes exactamente cuánto hizo el tuyo.

Cuando dos bichos del mismo nombre se pegan entre ellos no hay forma de saber cuál era cuál, y eso NO se reparte a ojo: se dice cuántos golpes y cuánto daño quedan sin atribuir, y al lado una estimación de cuánto sería tuyo, marcada como estimación y sin sumarse a ninguna cifra. En una pelea real de cinco minutos: 9 golpes y 158 de daño de 2.547, un 6%.

Y de paso, encantar ya no te quita tu mascota invocada de la lista.

DOS COSAS QUE ESTABAN MAL Y AFECTAN A TU HISTÓRICO

Algunos enemigos salían partidos en dos filas: una con todo el daño hecho y cero recibido, otra al revés. Pasaba con los que EverQuest escribe sin artículo, porque la primera letra cambia de mayúscula según dónde caiga en la frase. Cuatro nombres en tu histórico, unos 14.800 de daño repartido entre filas que no existían. Ya van juntos.

Y en la gráfica, la línea de puntos —lo que recibes— se dibujaba a su propia escala, así que parecía que recibías tanto como pegabas. Ahora las dos comparten escala y se pueden comparar de verdad.

LA GRÁFICA SE PUEDE LEER

Pasa el ratón por encima y te dice el segundo exacto con lo que hiciste, lo que recibiste y lo que curaste. Y debajo, qué es lo que estás mirando: los picos NO son los golpes más fuertes, son los segundos en los que más daño se acumuló — puede ser un mandoble o cinco pinchazos.

LA FOTO DE CADA ENEMIGO

Sale de la wiki, pequeña al lado del nombre y grande al abrir su expediente. Hoy la tienen 51 de los 196 enemigos de un histórico real. No hay lista fija: se cruza con el índice de la wiki cada semana, así que el bicho que hoy no tiene foto la tendrá en cuanto alguien la suba, sin actualizar la aplicación. Donde no hay, no se pone nada.

Sólo fotos de bicho. Las páginas de la wiki llevan también iconos del botín que sueltan, y poner uno al lado de un nombre sería una imagen que engaña sobre lo que es.

Y EL RECUADRO AL PASAR EL RATÓN SE LEE EN MODO CLARO

Tenía el fondo oscuro en los dos temas, así que en claro sólo se veía el nombre y los datos quedaban invisibles debajo.

Reconstruye el histórico para que lo del encantado y lo de los nombres partidos se apliquen a tus peleas viejas: Enciclopedia, al pie.

1.7.3 — el rótulo del ratón y el cursor en hechizos

8 de agosto de 2026

1.7.3 — arreglo: el rótulo emergente al pasar el ratón, y el cursor en la tabla de hechizos

EL RÓTULO QUE SALE AL PASAR EL RATÓN

Al pasar por encima de una fila de combatientes reventaba por dentro. No se veía nada raro salvo que el rótulo con el detalle no aparecía. Ya sale.

LAS FILAS DE HECHIZOS SE VEN PULSABLES

En «Mis hechizos», las filas abren la ficha de cada hechizo, pero el cursor seguía siendo la flecha y encima parecía que ibas a seleccionar texto. Ahora sale la mano, como en el resto de la enciclopedia.

Repasadas todas: de las veintinueve cosas que se pueden pulsar en la aplicación, ésta era la única que no lo decía. Las celdas «—» de la rejilla de enemigos siguen con la mano porque lo que se pulsa ahí es la fila entera, y las marcas sin pelea que abrir siguen con la flecha, porque no se pueden pulsar.

Nada de esto toca lo guardado.

1.7.2 — arreglo: la ficha del hechizo y la de enemigo

7 de agosto de 2026

1.7.2 — arreglo: la ficha del hechizo salía apilada y la de enemigo no abría

SI TIENES LA 1.7.1, ACTUALIZA. Dos pantallas están rotas en ella.

LA FICHA DE UN ENEMIGO NO ABRÍA. Pulsabas un enemigo en la enciclopedia y no pasaba nada. Fue un fallo mío al preparar la 1.7.1: se perdió un trozo de código por el camino y se publicó así. Ya vuelve.

LA FICHA DE UN HECHIZO SALÍA APILADA. Los seis bloques de dificultad se dibujaban en el mismo sitio, uno encima de otro: el texto se pisaba y las barras se superponían. Los datos estaban bien todos —usos, medias por dificultad, curación—, sólo que no se podían leer. Y el número de peleas de cada bloque salía vacío: ponía «peleas» sin la cifra delante.

Nada de esto tocó lo guardado. Tu histórico está intacto.

QUÉ HAY AHORA PARA QUE NO VUELVA A PASAR

Un comprobador que abre la aplicación de verdad, recorre las pantallas de la enciclopedia, mide dónde queda cada cosa y avisa si algo se sale de su sitio o si una pantalla revienta. Encontró lo de la ficha de enemigo en cuanto se puso en marcha.

Es la respuesta a un tipo de fallo que se repitió tres veces seguidas: los números están bien calculados y lo que falla es dibujarlos, así que ninguna comprobación de las que miran datos lo ve. Había que mirarlo con la aplicación abierta, y ahora se mira sola.

1.7.1 — arreglo: la ficha del hechizo y la progresión no se abrían

7 de agosto de 2026

1.7.1 — arreglo: la ficha del hechizo y la progresión no se abrían

SI INSTALASTE LA 1.6.3 Y AL PULSAR UN HECHIZO O ENTRAR EN PROGRESIÓN NO PASABA NADA, NO ERA QUE FALTARA: ESTABA ROTO.

Dos de las cuatro partes que trajo la enciclopedia en la 1.6.3 —la ficha de cada hechizo y la página de progresión con sus periodos— lanzaban un error al dibujarse y no llegaban a aparecer nunca. Pulsabas la fila y la pantalla se quedaba igual. Ya funcionan, y los datos estaban bien guardados todo este tiempo: no has perdido nada, sólo no se veía.

Y AHORA REVENTAR SE NOTA

Ésa es la parte importante y es la razón de que el fallo durase. Cada pantalla se construye entera y se pone de golpe, así que si algo falla a medias no sale media pantalla ni un hueco: sale la pantalla anterior, sin tocar. No parece una avería, parece que esa parte no está hecha.

La aplicación no tenía ningún aviso de errores. A partir de ahora, si algo revienta al dibujar, sale un recuadro rojo abajo con el error, en qué pantalla pasó y con qué versión, y un botón para copiarlo. Es feo a propósito: un aviso feo que se ve vale más que un fallo elegante que no.

CADA VALOR EN SU COLUMNA, EN ENEMIGOS

Las cinco columnas de dificultad no caían debajo de su cabecera, y cada fila las ponía en un sitio distinto según lo larga que fuera su vida estimada. Ahora coinciden todas.

Y LA ENCICLOPEDIA APROVECHA LA PANTALLA

Estaba limitada a 1200 píxeles de ancho: en un monitor grande dejaba los lados vacíos mientras las cinco dificultades de un enemigo se apretaban unas contra otras. El texto explicativo no se estira, que una línea demasiado larga deja de leerse.

No toca nada guardado. Si vienes de la 1.7.0, tu carpeta de datos sigue donde estaba.

1.7.0 — se llama EQL Parse

7 de agosto de 2026

1.7.0 — se llama EQL Parse

Sólo el nombre, el icono y el crédito. No toca cómo se cuenta nada ni el formato de lo guardado, y tu histórico sigue exactamente donde estaba.

TU CARPETA DE DATOS NO SE MUEVE

Era la condición para hacer el cambio. El nombre de una aplicación de Electron decide dónde guarda las cosas, así que un renombrado hecho a la ligera deja huérfano el histórico de todo el mundo, sin aviso. Aquí el nombre visible se cambia en un campo que sólo lee el instalador; el que fija la carpeta no se ha tocado, ni el identificador que Windows usa para saber que es la misma aplicación. Está comprobado ejecutándolo y hay una guarda en las pruebas para que no se mueva por descuido más adelante.

Si actualizas desde 1.6.x, todo sigue ahí: peleas, enciclopedia, avisos y configuración.

EL ICONO

Dibujado tamaño por tamaño en vez de escalado. A 16 píxeles —que es el tamaño al que lo vas a ver en la barra de tareas— son tres barras y una regla, y nada más; el resto de los detalles sólo aparecen a partir de 32. Un icono escalado a 16 es una mancha.

EL CRÉDITO, Y LA VERSIÓN

Hecha por Campeon Delmundo de <SPAIN> Guild, jugando. El <SPAIN> sale del nombre y se queda en el crédito: son dos cosas distintas, cómo se llama la aplicación y quién la hizo.

Y en el pie hay ahora algo que no estaba: la versión que tienes instalada. Hasta ahora había que mirar el instalador para saberlo.

QUÉ NOTARÁS AL INSTALAR

El instalador se llama EQL-Parse-1.7.0-setup.exe y el acceso directo «EQL Parse». La carpeta de instalación cambia de nombre, así que la anterior se queda; se puede desinstalar desde Windows como siempre. Lo que NO se toca es tu carpeta de datos.

1.6.3 — la enciclopedia completa

7 de agosto de 2026

1.6.3 — la enciclopedia completa: ficha por hechizo, marcas que se abren, periodos y libro

Cuatro partes, y ninguna toca cómo se cuenta el daño. Todo sale del registro: no hay que exportar ningún fichero para tenerla entera.

LO QUE PUEDES CONTRASTAR EN TU PROPIO HISTÓRICO

Abre cualquier hechizo de «Mis hechizos»: verás en qué tramos pega, cuánto crítica y entre qué dos cifras se mueve. Si tiene menos de cinco usos no dibuja serie, a propósito: con tres puntos no hay tendencia, hay tres puntos.

En progresión, cuenta tus tramos. Si alguna vez cambiaste a una clase más baja, la línea baja — y eso no es un retroceso, es cómo funciona EQL. En el histórico con el que se construyó, de diez cambios tres son bajadas. Compara sólo periodos del mismo nivel: ahí, a nivel 50, las medianas salen 129, 122 y 130 y los récords 210, 190 y 293. La mediana no se mueve y el techo sube.

Y baja al final de «Mis hechizos»: está tu libro. Cuántos consta que tienes y cuántos no lanzas nunca. Aquí salieron 84 y 40.

EL HALLAZGO: DIECINUEVE ACUSACIONES FALSAS

Una lista de «hechizos que no usas» con diecinueve que sí usas no da error, sólo miente. La causa era leer del sitio equivocado: lo lanzado se sacaba de las peleas guardadas, así que un buff echado antes de entrar —o una pelea que no se guardó— salía como nunca lanzado. Medido, 59 sin usar leyendo peleas contra 40 leyendo el registro. Ahora cada casteo se anota: 29 hechizos constan usados sólo por ahí.

QUÉ MÁS SE ARREGLÓ

«You purchased 1 Spell: X» no lo cogía ningún patrón: 23 compras que el registro daba y la aplicación tiraba. El respaldo por daño metía «bash», «punch» y «slash» en el libro de hechizos. El uid 0 es un uid válido y convertirlo desde null abría la primera pelea guardada. Y los separadores de clave eran bytes NUL de verdad dentro del fuente, lo que hace que git trate el fichero como binario.

QUÉ NO SE CONSTRUYÓ, Y POR QUÉ

El juego exporta cosas con «/output», y no hace falta ninguna. El libro lo da el registro. El inventario queda como calibración documentada: contra uno real, la regla que deduce qué es equipo acierta 25 de 25. Y es una foto sin fecha, y aquí todo va fechado.

No toca nada guardado salvo añadir spells.ndjson, que se llena solo.

1.6.2 — Copiar la pelea al chat, y los jefes dichos por la wiki

7 de agosto de 2026

Español

No pide reconstruir nada. Todo lo de esta versión se calcula al mirar, no al guardar. Lo único que hace por su cuenta es preguntarle a la wiki qué enemigos son jefes de raid, y sólo la primera vez que ves cada uno.

Copiar la pelea al chat del juego

Un botón que deja la pelea en el portapapeles, ya escrita para pegarla. En el overlay, en la cabecera de cada combate, y en la ventana principal, junto a «Analizar» y «Guardar combate».

Salen dos líneas y se pegan por separado, porque el chat de EQ no respeta los saltos de línea:

Lord Nagafen 6m49s - 141.0k (345dps) | Campeon +pet 79184 (194dps 56%) | Kalforgelp 42230 (103dps 30%) | Jarektik 10609 (26dps 8%) | Notarino 8959 (22dps 6%)
vs Lord Nagafen 141.0k - 75.2k (184dps, max 711)

Lo que se midió antes de escribirlo

El límite no son 250 caracteres. Se daba por supuesto. Medido sobre 6.163 mensajes de 451 jugadores del registro, el más largo escrito por una persona son 491, y la cola de longitudes es suave: no hay ningún número repetido en el máximo, que es como se delata un corte del cliente. La wiki de EQL lista los canales y no documenta ningún máximo. El presupuesto es 240 y sobre 325 peleas guardadas la línea más larga sale de 198 — no hubo que recortar ninguna.

Lo que desborda la línea son los bichos, no el grupo. «a worry wraith, a turmoil toad pet, a turmoil toad, a scareling ×2, a shiverback» son 78 caracteres antes de nombrar a nadie. Por eso el jefe se nombra y los demás se cuentan: «Master Yael +3», «5 enemigos». Las mascotas enemigas ni aparecen.

El chat es ASCII. El único carácter no-ASCII en esos 6.163 mensajes es el rombo de «no sé pintar esto», ocho veces. En 359 mensajes propios escritos en español no hay ni una tilde. Así que nada de «·», «×» ni «máx», y si un nombre trae una tilde se degrada a su letra en vez de mandar un rombo.

La mascota no es un jugador más

Suelta y ordenada por daño, en el chat parece uno del grupo. Y no es cosmético: en una pelea real, «Campeon 15363 (40%)» con la mascota tres puestos más abajo describe a dos personas donde hay una. Sumadas son 23388, el 61%, y el reparto entero cambia de orden.

Así que por defecto se suma al dueño, marcado con «+pet» para que nadie lea la cifra como daño sólo tuyo. La otra opción las deja aparte y rotuladas:

sumada    Campeon +pet 18919 (189dps 79%) | Notarino 5000 (50dps 21%)
aparte    Campeon 7225 (72dps 30%) | Gabobtik (Campeon's Pet) 11694 (117dps 49%) | Notarino 5000 (50dps 21%)

Vale igual para las mascotas de otros: Jobarn (Notarino's Pet), sumada a él y no a ti. Y cuando se dejan aparte van pegadas a su dueño, con el orden entre grupos sacado del daño conjunto — si no, quien pega 3.000 con una mascota de 11.694 saldría por detrás de quien pega 5.000 siendo el que más pone.

Lo que no se toca: una mascota que no consta de quién es sale suelta y sin etiqueta. Inventarle un dueño sería peor.

Los jefes de raid, dichos por la wiki

Un enemigo suelto en la línea no dice si era un jefe o uno de doce. Ahora los jefes se nombran y el resto se agrega, y quién es jefe lo dice la wiki.

«Named Mobs» no valía, y se vio midiendo

Era la categoría que sonaba bien. Sobre los 119 enemigos de un registro real la llevan 96 — el 81% —, entre ellos a desert tarantula con 175 de vida y a vampire bat con 1.723. En esa wiki significa «tiene página».

La que discrimina es «Raid Encounters»: 14 enemigos, vida mediana 32.005 frente a 7.769 de los demás. Y la lista es la que uno esperaría — Nagafen, Vox, Master Yael, the Spiroc Lord, Eye of Veeshan, Overseer of Air…

Tres fuentes, y se ve cuál es

Como con las clases y con los compañeros:

  • la wiki declara — su página está en «Raid Encounters»;
  • la heurística deduce mientras la wiki no ha contestado, y va rotulada como deducida, con el borde a trazos;
  • tú corriges, y tu marca manda sobre las dos. Se puede quitar para devolver la palabra a la wiki.

La ficha del enemigo enseña las dos cosas: si es jefe y de dónde se sabe.

El caso que lo justifica

the Spiroc Lord lleva artículo, así que la deducción por el nombre lo descarta — y tiene 32.212 de vida y es un jefe de raid. La wiki lo corrige y no hay forma de que la deducción lo hiciera sola.

Al revés también: a spite golem tiene 49.452 de vida y no es raid. Por vida parecería que sí.

Y que un enemigo no tenga página en la wiki es una respuesta: significa que no es nadie. a fire giant warrior no la tiene.

Además

  • El pie de la Enciclopedia decía literalmente «enc.rebuild» y «enc.stateLine»: eran claves internas sin traducir, en los cinco idiomas. Buscándolas aparecieron 13 más por toda la aplicación. Las 18 escritas, y una comprobación nueva recorre las 517 claves que usa la interfaz y falla si alguna falta —o si está en menos de cinco idiomas, porque en ese caso la cadena de respaldo la tapa y sólo se nota en el idioma afectado—.
  • El pie dice ahora «141 enemigos aprendidos de 325 peleas guardadas», y el botón «Rehacer la ficha» vuelve a contar la Enciclopedia recorriendo el histórico. No relee el registro ni toca ninguna pelea.
  • En Ajustes: cómo tratar las mascotas al copiar, cómo escribir el reparto y qué poner delante de cada línea.

---

1.6.1 — Nada se asigna solo sin poder deshacerlo

7 de agosto de 2026

Español

Pide reconstruir el histórico, y esta vez es corto de explicar: hay una clase de botín que no se guardaba en ninguna parte y sólo aparece releyendo el registro. Como siempre, tus ficheros actuales se apartan con marca de tiempo y no se borra nada.

Nada se asigna solo sin poder deshacerlo

Esta versión no añade cifras nuevas: quita tres sitios donde el programa decidía por ti y no te dejaba cambiar de opinión.

Marcar una mascota como tuya era irreversible

En cuanto marcabas una mascota, su fila perdía todos los controles. La decisión sólo se deshacía editando config.json a mano.

Ahora el desplegable de dueño sale también cuando ya es tuya, con tu nombre elegido, y volver a «nadie» la suelta. En tu propio personaje sigue sin salir, que es lo correcto: no te asignas dueño a ti mismo.

Y había un motivo de fondo: dos puertas para la misma decisión. Una avisaba al analizador y no guardaba nada; la otra guardaba y no avisaba, y no la llamaba nadie desde la interfaz. Por eso marcar una mascota duraba lo que durase la sesión, y las que hubiera declarado una versión anterior se quedaban en la configuración sin ningún botón que las quitara. Ahora hay una sola puerta, guarda, y en Ajustes tienes la lista de las declaradas tuyas y de las que dijiste que no lo eran, con su botón en los dos sentidos.

Si al abrir ves mascotas que ya no reconoces, son de eso. Están en Ajustes, debajo de los compañeros.

Lo que dices a mano ya no lo pisa la detección

Marcabas una mascota y, al invocar otra, la detección retiraba la tuya en silencio. Sólo se tiene una a la vez y retirar la anterior es correcto — salvo cuando la anterior la habías puesto tú. Ahora lo declarado gana, y para quitarlo está su fila.

Sin marca manual el comportamiento es el de siempre.

Compañeros: detectados del canal de grupo

Aquí había un comentario en el código que decía que el registro no da ninguna señal de grupo, «se buscó y no hay nada». Era falso, y llevaba meses impidiendo ver lo que estaba delante: quien habla por el canal de grupo está en tu grupo, y esas líneas ya se leían para poder oírlas en voz alta.

Medido sobre un registro real, los emisores de ese canal son exactamente los compañeros que ya estaban declarados a mano, sin un solo falso positivo. El canal de gremio no vale y no se usa: un compañero de gremio no está en tu grupo.

Dos cosas que van con ello:

  • Se ve de dónde salió cada unodicho por ti o detectado — igual que con las clases. Lo que dices tú y lo que se deduce no pueden verse igual.
  • Lo detectado se quita igual que lo declarado, y quitarlo se recuerda: no vuelve a proponerse la próxima vez que esa persona hable. Hay una lista aparte por si cambias de idea.

Botín que se recogía sin pelea a la que colgarlo

Cuando un compañero remata él solo un cadáver que looteas, ese combate nunca fue tuyo: el filtro de relevancia sólo abre pelea contigo o con tus mascotas. El objeto no tenía dónde guardarse y se perdía. Eran 5 en el registro de referencia, más uno de un caso vecino: una pelea que se abrió, no tuvo daño de nadie, se descartó al guardar —correctamente, no describe nada— y se llevó por delante el objeto que se había recogido dentro.

Se probó primero lo evidente: dejar que un compañero declarado abriera pelea. Se midió y no era la solución. Recuperaba 3 de 5 y dejaba abierta la puerta a que la pelea de un compañero farmeando al otro lado de la zona entrase en tu histórico como tuya, que es justo lo que las pruebas prohíben «bajo ningún concepto». Se descartó.

La solución es entender qué es esto: recoger un objeto es un suceso tuyo, no de una pelea. La prueba de que estabas allí es que lo cogiste, no que él pegara. Así que se guarda por su cuenta, en su propio fichero, y entra en el recuento de Botín diciendo que se recogió sin pelea.

Lo que no hace es meterse en la ficha del enemigo ni en el reparto por dificultad, y no es un descuido: «2 de 11 caídas» necesita un denominador de peleas tuyas, y aquí no hay ninguna. Inflar el numerador con un denominador que no lo acompaña sería inventar una probabilidad.

Tras reconstruir, el histórico de referencia cuadra objeto a objeto con el registro: 775 unidades en el registro, 775 en el almacén, ninguna línea de botín fuera.

---

1.6.0 — Cuatro cosas que tu histórico no estaba contando

7 de agosto de 2026

Español

Esta versión sí cambia lo guardado y pide reconstruir el histórico. Al abrirla te lo ofrecerá; también está en el pie de la Enciclopedia, botón «Reconstruir». Relee tu registro entero —unos cinco segundos— y aparta tus ficheros actuales con marca de tiempo, nunca los borra: si algo no cuadra, lo de antes sigue ahí en fights.ndjson.<fecha>.bak.

Merece la pena hacerlo. Lo que sigue son cosas que llevaban meses sin contarse bien, y todas se pueden contrastar en tu propio histórico.

Cuatro cosas que tu histórico no estaba contando

Botín que se recogía y no se guardaba

De las 683 líneas de botín de un registro real se perdían 98, el 14%, por dos motivos distintos:

  • 83 por traer cantidad en vez de artículo. «You looted 2 Phosphorous Powder from…» no encajaba con una regla que exigía «a» o «an», y la línea entera se tiraba.
  • 15 por un final que no existía como regla: «and stored it in your currency». Son los Motes, que van al monedero en vez de a la bolsa. Entre ellos, los 9 Mote of Major Potential recogidos en ese registro, de los que no aparecía ninguno en la sección de Botín.

Y había un segundo fallo encima del primero, peor que él: la cantidad no se guardaba. Lo recogido se contaba por veces y no por unidades, así que «2 Bone Chips» valía uno. Ese error es más grave que no leer la línea, porque una línea que no se lee sale en el contador de no reconocidas y un «2» contado como «1» no lo ve nadie nunca.

En el histórico de referencia, tras reconstruir: de 566 a 761 unidades, 195 recuperadas, y 16 objetos que no figuraban.

Cómo verlo en el tuyo: abre Botín y busca «Mote». Si juegas instancias y no te sale ninguno, o te salen menos de los que recuerdas, eran éstos.

Las muertes que te causó cada enemigo: no se contaban

El campo existía desde el principio en la ficha de cada enemigo. Se declaraba, se guardaba en disco y se volvía a leer al arrancar. No lo incrementaba nadie: se guardaba un cero y se leía un cero.

Al arreglarlo apareció que el registro guardaba a la víctima de cada muerte pero no a quien la causó, así que habría habido que deducirlo de a quién apuntaba el enemigo — y en una pelea contra tres, apuntarte no es haberte rematado. El registro sí dice cuál fue («You have been slain by X!»), así que ahora se guarda eso y no una suposición.

En el histórico de referencia: 36 muertes atribuidas, con Lord Nagafen diez veces.

Cómo verlo en el tuyo: entra en cualquier enemigo que te haya matado. Ahora lo dice, y por dificultad.

Nombres inventados en la tabla de curación

Esto no era un dato mal contado. Era una fila con nombre y cifra, indistinguible de un dato real, y por eso es lo que más merece que mires tu histórico.

En la ficha de un combatiente hay una tabla de «a quién has curado». Ahí salían combatientes que no existen:

| nombre | peleas | curación | |---|---|---| | Campeon over time | 105 | 147.772 | | itself | 58 | 55.895 | | himself | 25 | 34.831 | | herself | 5 | 7.355 |

Con tu nombre en vez de «Campeon». 140 de 341 peleas tenían al menos uno.

Son dos formas del registro que se leían como si fueran nombres: el sufijo del tic de una curación con duración («You healed Campeon over time for 153…», 1.126 líneas) y el pronombre de una curación propia («a worry wraith pet healed himself for 613…», 1.131 líneas). Ninguno de los dos es nadie.

Y una tercera, con una consecuencia distinta: el registro nombra al enemigo como sanador de tu propio drenaje. «Lord Nagafen healed you for 451 hit points by Leech Touch I» aparece justo después de «Lord Nagafen has taken 451 damage from your Harm Touch X» — te devuelve lo que le has quitado, y el registro lo apunta al revés. 321 líneas, que engordaban la curación hecha por cada jefe con la tuya.

Al arreglar el pronombre salió un efecto de segundo orden que también estaba alterando cifras: la autocuración de un enemigo no llegaba nunca al enemigo, así que su vida estimada la contaba como vida que nunca tuvo. Ahora se descuenta. Cambia la cifra de 59 de 147 enemigos, un 3,9% menos en total, y a los que más los que van con sanador: the Spiroc Guardian un 17%, a scareling un 17%.

Cómo verlo en el tuyo: despliega cualquier fila tuya de una pelea con curaciones, en «a quién has curado». Si veías tu nombre dos veces, uno de los dos no existía.

El botín y las resistencias, partidos por dificultad

Cada dificultad es prácticamente un juego distinto, y hasta ahora la vida, el golpe máximo y las habilidades ya iban separadas — pero el botín y las resistencias se sumaban entre las cinco.

El botín no se puede sumar. Medido:

a fire giant warrior
  D0   Throwing Boulder ×8, Throwing Boulder +1 ×5
  D1   Throwing Boulder +1 ×11
  D2   Throwing Boulder +2 ×17
  D3   Throwing Boulder +3 ×4

Es la misma tabla subiendo un escalón por dificultad. Sumada describe una tabla que no existe en ninguna parte.

Las resistencias se parten con su tamaño de muestra siempre a la vista, y en gris por debajo de seis intentos. Partir fragmenta la muestra, y un «86% entra» sacado de 14 intentos y otro sacado de 400 se leen igual si no dices cuántos son.

Y la columna D0, que contenía East Freeport

Había una línea —repetida en cinco sitios— que convertía «no consta la dificultad» en «dificultad 0». El resultado es que la columna D0 de la rejilla de zonas contenía mundo abierto: una columna rotulada como una dificultad medida que en realidad contenía la ausencia de medida.

La D0 de verdad existe y es otra cosa: una instancia con la dificultad base, que el registro escribe como «Nagafen's Lair - Group» a secas, sin número ni etiqueta. No se ha dado por supuesto — está medido. Mismo enemigo, misma zona y mismo modo, la vida de esas instancias está un peldaño entero por debajo de D1 (0,873 de mediana sobre once enemigos, nueve de ellos entre 0,86 y 0,88), y ese peldaño mide lo mismo que el de D1 a D2 (0,853) y el de D2 a D3 (0,884).

Ahora hay cinco columnas medidas y, separados y rotulados como lo que son, dos cajones más: mundo abierto (la zona no declara dificultad porque no la hay) y sin zona conocida (peleas anteriores a la primera línea de zona del registro). Un dato ausente ya no se pinta como un dato medido.

Las cinco columnas, en todas partes

  • Enemigos es ahora una rejilla como la de Zonas. El número de cada celda es las veces que ha caído ahí, así que «lo maté en D0» se ve en la columna de D0. La celda vacía dice que en esa dificultad no te lo has cruzado, que no es lo mismo que no haberlo matado — antes las dos cosas se veían igual.
  • Botín tiene pestañas por dificultad, y el «2 de 11» de cada objeto usa las muertes de esa dificultad y no el total.
  • Dentro de un enemigo, las cinco tarjetas salen siempre, y cada una abre su propia página: sus resistencias, su vida, su golpe máximo, sus habilidades y su botín, sin nada promediado con las demás.

El modo, guardado pero sin partir la rejilla

Se comprobó si Solo y Grupo son enemigos distintos a igual dificultad. No hay muestra para afirmarlo: en enemigos normales la diferencia medida es +6,5%, menos de medio escalón de dificultad, y sólo dos jefes con una muestra cada uno dicen otra cosa (×2,3 y ×2,7 — queda como pregunta abierta). Además, el 54% de las peleas del registro no declara el modo, así que partir por él dejaría a la mayoría en un tercer cajón de «no consta», que es justo la etiqueta que esta versión quita.

Así que el modo se guarda en cada celda y se enseña ahí, sin ser un eje. Cuando haya muestra, la pregunta se podrá contestar con datos en vez de con una intuición; no guardarlo cerraba esa puerta.

Además

  • Un enemigo curándose a sí mismo ya cuenta como que la pelea sigue. Antes esa línea iba dirigida a un nombre inexistente, no pasaba el filtro de relevancia y esos segundos se leían como inactividad: tres peleas del histórico de referencia estaban partidas en dos por eso.
  • El botín recogido de un cadáver que remató entero un compañero declarado no tiene pelea a la que ir, porque el filtro sólo abre pelea contigo o con tus mascotas. Eran 5 objetos y desaparecían en silencio; ahora se cuentan. El arreglo de fondo va en la próxima.

---

1.5.0 — La Enciclopedia completa

6 de agosto de 2026

Español

Esta versión no cambia nada de lo guardado y no pide reconstruir el histórico. Sí hace dos cosas una sola vez al abrirla, y las dos son esperadas: completa los resúmenes de tus peleas guardadas con un dato nuevo —tu daño en cada una, que hace falta para medir tu progresión— y se baja los iconos de hechizo de la wiki. Lo primero lo dice el renglón del pie de la Enciclopedia; si lo ves ahí, es lo previsto, no un problema. No se relee tu registro ni se toca ninguna pelea.

La Enciclopedia, completa

Las seis secciones abren ya. Y las habilidades de los enemigos dejan de ser una sección aparte para estar donde se buscan: dentro de cada enemigo.

Iconos de hechizo

Cada hechizo con su icono, sacado de la wiki. Se ven en el catálogo, en las habilidades de los enemigos y en la lista de reutilizaciones.

Se piden en lote y se guardan una vez: después de verlos, la Enciclopedia funciona sin red. Son 40×40 y unos 2,6 KB, y sólo hay 150 distintos porque el arte clásico de las gemas se repite entre hechizos de la misma escuela.

Lo que no tiene icono es lo que no es un hechizo: hits, kicks, bashes. Ahí no verás un recuadro vacío ni un interrogante — sencillamente no hay imagen, porque no falta nada.

Mis hechizos

El catálogo estaba detrás de un botón en la barra de combate, que es un sitio raro para algo que no se mira durante una pelea sino después. Ese botón ya no está: la sección vive en la Enciclopedia y abre con un resumen —cuántos hechizos, lanzamientos, daño total y cuánto entra— antes de la tabla de siempre.

Y se pide sobre todo tu histórico, no sobre el tramo que tengas en el filtro: aquí no miras una sesión, miras tus hechizos.

Las habilidades, dentro del enemigo

Al entrar en un enemigo, un bloque por habilidad con lo que le has visto lanzar: cuántas veces, su golpe más fuerte, y en cuántos de cuántos encuentros por cada dificultad. Debajo y marcado aparte, lo que la wiki dice de esa habilidad concreta — hasta ahora sólo se consultaba la página del enemigo.

La distinción de siempre: lo medido primero y lo consultado detrás, sin mezclarse.

Mis muertes

Dónde caes por zona y dificultad, y cada caída con su fecha.

El enemigo que sale al lado es el que más daño te hizo en esa pelea, y así está rotulado. No es quien te dio el golpe final: el registro no dice cuál fue, y bien puede haberte rematado el que menos te pegó. Morir dos veces en una pelea cuenta dos.

Mi progresión

No hay curva de dps en el tiempo, y es a propósito. Sube al subir de nivel y baja al pelear con algo más duro, así que mide las dos cosas a la vez y ninguna de las dos. Lo comparable es el mismo enemigo, en la misma dificultad y al mismo nivel.

Así que hay tres cosas: tus marcas por nivel, tu mejor contra cada enemigo con su dificultad y su nivel, y una línea por cada terna que llegue a cinco peleas. Con menos no se dibuja y se dice por qué — con tres puntos no hay tendencia, hay tres puntos.

Dos exclusiones que hace y avisa: las peleas de menos de 30 segundos, y las peleas contra varios enemigos, que quedan fuera del reparto por enemigo. Tu dps en una pelea contra tres no es tu dps contra ninguno de los tres, y repartirlo sería contarlo tres veces.

Además

  • El desplegable de «Es la mascota de» vuelve a funcionar en una pelea en curso. Se abría y se cerraba solo antes de poder elegir a nadie. La lista de combatientes se repinta cuatro veces por segundo y volvía a colocar cada fila aunque ya estuviera en su sitio; recolocar una fila la saca del documento un instante, y al sacarla se pierde el foco de lo que haya dentro. Sin foco, el desglose dejaba de considerarse «en uso» y se reconstruía encima. Ahora sólo se mueve lo que de verdad ha cambiado de sitio.
  • Elegir dueño desde el resumen del tramo llamaba al sistema una vez por cada vez que se hubiera pintado el resumen en esa sesión. El resultado era el mismo, pero el trabajo se multiplicaba solo.
  • La tabla del catálogo tenía la rejilla clavada en ocho columnas, y hay una novena —«daño efectivo»— que sólo aparece cuando algo no entra al 100%. En cuanto aparecía se caía a una segunda línea y arrastraba «reutilización» con ella. Si todo lo tuyo entra siempre, esa columna no se había pintado nunca.

---

1.4.0 — Enciclopedia

6 de agosto de 2026

Español

Esta versión no cambia nada de lo guardado y no pide reconstruir el histórico. Lo único que verás distinto al abrirla es que tarda un segundo más la primera vez: se está construyendo la enciclopedia con tus peleas de siempre. Lo dice el renglón del pie de la sección, y no vuelve a pasar.

Enciclopedia

Una pestaña nueva, al lado de Combate y Avisos. Todo lo que has ido aprendiendo peleando, ordenado para consultarlo después: qué enemigos hay en cada zona y dificultad, cuánta vida tienen, con qué te pegan, qué resisten y qué sueltan.

Y una regla que gobierna la sección entera: no se calcula nada al abrirla. La ficha de cada enemigo se pone al día al cerrar cada pelea, que es cuando el dato ya está en la mano. Consultarla es leer, no calcular — abrir cualquier pantalla de la enciclopedia con dos mil peleas guardadas cuesta dos centésimas de segundo.

Zonas

Una fila por zona y una columna por dificultad, de la D0 a la D4. Pulsa «Plane of Fear · D4» y salen todos los enemigos de esa zona en esa dificultad de los que tengas datos por haber peleado con ellos, del que más cuesta al que menos.

La celda vacía va a trazos y no dice que ahí no haya nada: dice que no has entrado. Son dos cosas distintas y conviene que se distingan.

La D0 es el mundo abierto. El registro no la escribe —una zona sin instanciar no dice «- Solo 0», no dice nada—, pero la pregunta «¿en qué dificultad?» tiene respuesta. Lo guardado sigue siendo lo que el registro dijo; la equivalencia se aplica sólo al agrupar.

Enemigos

Todos los que te has cruzado, con una pastilla por cada dificultad en la que lo conoces. La vida que se enseña es la de la dificultad más alta en la que llegó a caer, con su etiqueta al lado; si en la más alta nunca cayó, se enseña la de abajo, porque decir la de arriba sería inventarla.

Entre dificultades no se promedia nunca. Medido en un registro real: Magus Rokyl tiene un 59% más de vida en D3 que en D2, pega 3,6 veces más fuerte y lanza dos hechizos que en D2 no tiene. La media de los dos describe a uno que no existe.

El buscador encuentra enemigos y zonas, y mientras escribes salen las coincidencias como accesos directos: tecleando «Nag» aparecen «Lord Nagafen» y «Nagafen's Lair», cada uno con su marca. Funciona entero con el teclado: Intro va a la primera, Abajo entra en la fila, las flechas se mueven y Escape vuelve.

Un enemigo

Al entrar sale su expediente completo —vida estimada, fichas por dificultad, qué resiste, lo que dice la wiki, con qué te pega y qué suelta— y debajo todos los combates que has tenido contra él. Pulsando uno se abre en la pestaña de Combate.

Botín

Cada objeto, de quién ha caído y cuántas veces: «2 en 9 caídas». Son dos cifras medidas puestas una al lado de la otra —las veces que lo has tumbado y las veces que soltó eso—, no una probabilidad de caída: mezcla todas las dificultades, porque el registro atribuye el objeto a un nombre y no a una instancia.

Y lo que el registro no atribuye a nadie sale igual, diciendo que no tiene fuente. Una lista de botín a la que le faltan objetos sin avisar es peor que una con huecos declarados.

La ficha se aprende, no se calcula

Se guarda en encyclopedia.json, junto a tu histórico, y lleva tres marcas que detectan tres cosas distintas: su propia generación, la del almacén con el que se construyó, y la última pelea incorporada. Con eso se da cuenta sola de si va desfasada:

  • Si sólo le faltan las peleas de mientras la aplicación estaba cerrada, las incorpora al arrancar y ya.
  • Si reconstruiste el histórico, las peleas cambiaron de sitio y lo detecta: se rehace entera.
  • Y si quieres forzarlo, hay un botón al pie de la sección y el comando npm run enc:rebuild, que además compara la rehecha con la que había y avisa si alguna cifra se ha movido.

Rehacerla no relee tu log ni toca tus peleas: recorre el histórico que ya tienes guardado. Con dos mil peleas tarda menos de un segundo.

Cuatro de las siete tarjetas —Mis hechizos, Mi progresión, Habilidades de los enemigos y Mis muertes— están dibujadas pero todavía no abren nada. Llevan el filete a trazos para que se vea, y llegan en la siguiente.

Además

  • Los tres filtros vuelven a caber en una línea. Las fichas de compañeros crecían con cada uno declarado y empujaban al tramo y al enemigo fuera de la barra: con dos ya no se leía ninguno. Ahora son un desplegable que ocupa lo mismo con dos que con veinte, y el resumen dice con qué compañeros está filtrando, que antes no lo decía.
  • La cabecera deja de comerse sus propios botones. Con un nombre de zona largo la fila medía 1.472 px dentro de una ventana de 1.182, y «Cambiar log» y el conmutador de tema quedaban fuera de la pantalla sin forma de pulsarlos. Ya pasaba antes de esta versión. Ahora lo que cede es el texto y nunca los botones, y se recorta la etiqueta y no el valor: se lee «Plane of Fear -…» y no «ZONA P…».
  • La casilla de «juntar mascotas» llevaba tiempo pintándose como una tira gris de 5 px con el texto desbordado, por un nombre de clase compartido con las barras del desglose.

---

1.3.1 — Los controles de «quién es quién», donde de verdad se usan

6 de agosto de 2026

Español

Arreglos de uso de la 1.3.0. No cambia nada de lo guardado y no pide reconstruir.

Los controles de «quién es quién» ya están donde se usan. «Es mi compañero» y «Es la mascota de» sólo aparecían al desplegar una fila dentro de una pelea suelta. Pero esa pregunta se hace mirando el reparto, y el reparto se mira en el resumen del tramo o en una selección de combates — y allí no había nada que pulsar. Ahora están en los dos sitios.

El desplegable para asignar una mascota ya no se cierra solo. En una pelea en curso el desglose se reconstruye cuatro veces por segundo, y al reconstruirse destruía el desplegable: se abría y se cerraba antes de poder elegir a nadie. Se queda quieto mientras lo estés usando.

Los dueños posibles salen de la pelea que estás mirando. Antes se sacaban de la pelea en curso aunque estuvieras revisando una guardada, así que ofrecía gente que no tenía nada que ver.

Y si te eliges a ti mismo como dueño, la mascota va a la lista de las tuyas y no a la de las ajenas. Son dos sitios distintos a propósito: las tuyas cuentan para decidir si una pelea es tuya, y las de otro no.

---

1.3.0 — Di quién es quién: compañeros, mascotas ajenas y selección a mano

6 de agosto de 2026

Español

Esta versión no cambia nada de lo guardado y no pide reconstruir. Basta con abrirla.

Tres cosas que responden a lo mismo: el registro de EQL no dice quién va en tu grupo —no hay ni invitaciones, ni entradas, ni salidas: se buscó y no existe—, ni de quién es cada mascota una vez pasada la invocación, ni qué peleas forman una sesión. Nada de eso se puede deducir. La única vía es que lo digas tú, y ahora se puede.

Declara tus compañeros de grupo

Despliega la fila de alguien en la lista de combate y pulsa «Es mi compañero». A partir de ahí deja de salir en «Sin identificar», cuenta con seguridad en «Los tuyos» y puedes filtrar por él. La lista completa está en Ajustes, junto a las exclusiones, y se quita igual de fácil: hoy juegas con ellos y mañana no.

Declararlo no mueve ninguna cifra. Ya estaba en tu bando —lo está todo el que no es enemigo— y los totales nunca miraron esa marca. Lo único que desaparece es el rótulo de «no consta que sea tuyo», que es justo lo que dejas de necesitar cuando lo dices.

Y se aplica hacia atrás al instante: declara a alguien y sus peleas de ayer se reclasifican solas, sin reconstruir nada.

Filtra por con quién jugaste

Los compañeros declarados aparecen como fichas bajo el tramo y el enemigo. Marca una y ves las peleas donde estuvo; marca varias y ves donde estuvisteis todos.

Esa distinción importa más de lo que parece. En un registro real: 19 peleas con uno, 19 con el otro, y 18 con los dos. Comparar el reparto sobre las 20 en las que estuvo alguno mete dos peleas donde faltaba uno, y entonces el porcentaje de cada cual no compara nada.

Elige a mano los combates de una sesión

Mayúsculas+clic sobre la lista coge el tramo desde la última que pinchaste: dos clics y tienes de la primera a la última. Ctrl+clic añade o quita una suelta. Arriba aparece «N combates elegidos» y un botón para verlos como uno.

No hay pantalla nueva: es el resumen del tramo de siempre, al que ahora le dices exactamente qué peleas sumar en vez de describírselas con un filtro. Mientras hay selección, manda ella: el tramo y el enemigo no le quitan nada.

Di de quién es esa mascota

Una mascota de otro jugador aparece como un desconocido más, porque en EQL el nombre cambia en cada invocación. Ahora, al desplegar su fila, hay un desplegable «Es la mascota de:» con los jugadores que hay en esa pelea.

Asignarla la rotula y la saca de «Sin identificar» sin tocar ninguna cifra. Si además marcas «Fundir mascotas», cada mascota se pliega dentro de su dueño — que es la única forma de comparar personas. En un registro real, una mascota sin asignar se llevaba el 20% del daño de un tramo, y ese 20% era de alguien:

sin fundir                        fundido
  Kalforgelp  23.771  31%           Notarino    30.984  41%  +1 mascota
  Campeon     16.557  22%           Kalforgelp  23.771  31%
  Notarino    16.204  21%           Campeon     16.557  22%
  Gobobn      14.780  20%  (de Notarino)

Dura la sesión, y es a propósito: los nombres de mascota salen de una lista cerrada y se reciclan entre jugadores, así que «esa es de Notarino» sólo es cierto mientras esté invocada. Guardarlo para siempre sería repetir el fallo que en la 1.2.2 metía la pelea de otro jugador en tu histórico.

Además

  • El botón «No es de los míos» se pintaba sin borde desde hace varias versiones, por dos variables de color que se usaban sin estar declaradas.
  • El resumen perdía el rótulo «(de Fulano)» y la marca de mascota en cuanto juntaba más de una pelea.

---

1.2.2 — Overlay combate a combate, y dos fallos que ensuciaban el histórico

6 de agosto de 2026

Español

Esta versión corrige datos ya guardados. Conviene reconstruir.

Dos fallos hacían que el histórico guardara cosas que no ocurrieron. Los dos se arreglan releyendo tu registro: al abrir la aplicación sale el cartel con el botón, tarda unos segundos y lo anterior se guarda aparte.

1 · Si usas la tabla de tríos y cambias de trío, tus peleas podían quedar con el nivel equivocado. Un /who posterior que decía otro trío se tiraba entero, clases y nivel, porque la tabla mandaba. Medido en un registro real: la tabla decía nivel 50 y el /who decía 27, y las ocho peleas siguientes se guardaron a 50. El nivel es justo lo que separa tus mejores marcas, así que eso las hacía incomparables. Ahora un /who posterior cierra el tramo declarado: no contradice lo que declaraste del pasado, lo termina.

2 · Si juegas con mascota, podía colarse en tu histórico la pelea de otro jugador. En EQL el nombre de la mascota cambia en cada invocación y sale de una lista cerrada, así que se recicla entre jugadores. Un nombre que fue tuyo hacía horas podía reaparecer siendo la mascota de otro, y como no se retiraba nunca, su combate entraba como tuyo. Ocurrió: se guardó una pelea entera con otro jugador, su mascota y un enemigo, y el personaje propio en ninguna fila. Ahora sólo cuenta la mascota de ahora.

---

El overlay va combate a combate

Acumular la sesión entera en dos columnas dejaba de decir nada tras un rato jugando: todo se mezclaba en una sola pelea que no había ocurrido nunca.

Arriba hay ahora una tira fija con tu daño acumulado y tu dps por abatido — la referencia de cómo llevas la tarde, que es lo único que interesa conservar entre combates. Debajo, una pila de peleas: la de arriba es el combate vivo, o el último si ya no hay ninguno, desplegado con sus dos bandos; los cerrados van bajando plegados a una línea, se abren al pincharlos, y se conservan ocho con scroll para el resto.

Todas las cifras de un bloque son de esa pelea: el daño, el reparto y el porcentaje. Dentro de un combate cerrado el dps es el de ese combate, no la media de la sesión — ponerla ahí sería etiquetarla mal. La media por abatido sigue estando arriba y en el desglose del combate vivo, donde se dice que lo es.

El botón de reiniciar pasa a ser borrón y cuenta nueva: vacía la pila y el acumulado a la vez.

Las contradicciones con lo declarado dejan de silenciarse

Si usas la tabla de tríos y cambias de trío de verdad, hasta ahora no había forma de enterarte de que la tabla se había quedado vieja. Ahora avisa, y de dos maneras distintas según lo que se pueda demostrar:

  • Un hechizo exclusivo de una clase que no está en tu trío. La tabla sigue mandando y no se toca nada, pero se te dice y se te ofrece el renglón nuevo. Cuál de las tres clases salió no se puede medir, así que se ofrecen las tres con su última señal y eliges tú.
  • Un /who posterior que dice otro trío. Aquí no hay nada que adivinar: el juego da el trío entero y el nivel, así que se toma. Es el fallo del aviso de arriba. Si el /who confirma el trío y sólo discrepa el nivel, sigue mandando tu tabla.

Un hechizo que tengan dos clases sigue sin probar nada, y eso no es un fallo: Regeneration la tienen druida y chamán, así que lanzarla no dice cuál llevas.

Una pelea en la que no llegaste a pegar también tiene nombre

Se quedaban sin él y la lista las enseñaba como «escaramuza». En un almacén real eran ocho, y ninguna lo era: un gigante de fuego y King Tranix metiendo 4.310 puntos sin recibir uno, una harpía, un espectro. Son muertes y huidas, y son justo las que quieres encontrar. Ahora las nombra quien más te pegó.

---

1.2.1 — Las peleas nuevas vuelven a la lista

5 de agosto de 2026

Español

Si tienes más de 60 peleas guardadas, las nuevas llevaban tiempo sin aparecer en la lista. No se ha perdido ninguna: estaban en disco desde el primer momento. Lo que fallaba era la pantalla. Actualiza y vuelven a salir solas, incluidas todas las que ya tenías guardadas sin verlas.

Las peleas nuevas vuelven a la lista. Terminabas un combate, lo habías visto en directo —las filas, la gráfica, todo— y al cerrarse desaparecía sin dejar rastro. Cambiando el filtro reaparecía, porque tocar el filtro era lo único que volvía a leer el histórico.

El fallo estaba en la señal que decía «hay algo nuevo que enseñar»: era la longitud de la lista de peleas recientes, y esa lista está recortada a 60. En cuanto tu histórico pasa de 60 peleas la longitud se queda clavada —entra una por arriba, cae otra por abajo— y no vuelve a cambiar nunca. La lista dejaba de refrescarse sola y no había forma de darse cuenta: el contador del pie decía un número congelado en el arranque, así que tampoco delataba nada.

Venía de la 1.0.2, la versión que trajo el histórico persistente, pero sólo empieza a notarse al cruzar las 60 peleas guardadas.

Tus datos están intactos. Esta versión no cambia nada de lo guardado y no pide reconstruir nada. Al abrirla verás el histórico completo, con las peleas que se guardaron durante todo este tiempo sin llegar a la lista.

---

1.2.0 — Nivel y trío de clases resueltos, y quién es de los tuyos

5 de agosto de 2026

En EQL puedes cambiar tu trío de clases y el log no lo dice en ninguna parte. Como el nivel efectivo es el de tu clase más baja, un cambio de trío puede hundirlo de 50 a 24 sin dejar rastro. Esta versión lo resuelve, y de paso corrige 19 peleas de mi propio histórico que estaban guardadas con el nivel equivocado.

Nivel y clases: tres fuentes, y un orden entre ellas

1. Lo que declaras a mano — tú estabas allí y el log no. 2. El /who — cierto, pero sólo del instante en que lo escribes. 3. Un hechizo exclusivo — prueba que esa clase estaba activa. Nunca el nivel.

Si lanzas un hechizo que sólo puede lanzar una clase que no consta en tu trío, sale un aviso en pantalla con el nombre del hechizo y de la clase, y te pide un /who. El trío se corrige solo; el nivel se borra, porque ningún hechizo prueba un nivel. Un hechizo compartido por dos clases no prueba nada y se calla.

Diccionario con 461 hechizos exclusivos entre Shadow Knight, Mago, Druida, Chamán y Brujo (esta última parcial), sacados del wiki.

La tabla de tríos

Botón «Cambié de trío» junto a tus clases, no enterrado en ajustes. Para tramos pasados, la tabla completa con fecha, trío y nivel. Tu palabra manda sobre las otras dos fuentes, incluido un /who posterior: ese /who describe un momento posterior, no el tuyo.

El nivel del renglón es opcional: déjalo vacío mientras subes y mandarán las subidas de nivel del log dentro de ese tramo.

Y como lo manual manda, debajo se señalan las veces que tu tabla y el log no dicen lo mismo. No se corrige nada: se enseña, porque si te equivocas al declarar una fecha no hay nada más que te avise.

Quién es de los tuyos

El log de EQL no dice quién va en tu grupo: ni invitaciones, ni entradas, ni salidas.

Lo que sí se puede afirmar, se afirma: quien cura a un enemigo es enemigo, y la regla se propaga al que cura al que cura. El resto —jugadores que hicieron daño real pero de los que no hay ni un /who— va en su propia sección «Sin identificar», ni borrado ni sumado a tu bando. Con un botón «No es de los míos» para los que tú sepas, recordado entre sesiones.

La mascota, que en EQL cambia de nombre en cada invocación, te pide un /pet who leader una vez por nombre y sesión, con casilla para apagarlo.

Corregido: una opción nueva podía llegar apagada en silencio

La configuración de voz se mezclaba con la de fábrica de forma plana, así que cualquier casilla nueva añadida a un grupo ya existente habría llegado desactivada sin decírtelo, aunque su valor por defecto fuese activada.

Aún no había afectado a nadie: los avisos de supervivencia de la 1.1.0 no se vieron tocados, porque un grupo entero que falta sobrevive a esa mezcla. La única víctima habría sido el aviso de mascota de esta misma versión, cazado antes de publicarlo. Si abres Avisos y ves algo desmarcado que no recuerdas haber tocado, ahora ya no volverá a pasar.

Y además

  • La etiqueta del panel decía «clases leídas de tu /who» sobre un trío deducido de un hechizo. Ahora distingue las tres procedencias: leídas de tu /who, de tu tabla de tríos, o deducidas de tus hechizos.
  • Los sin identificar salen aparte también en la lista de la pelea, no sólo en el resumen.
  • Tutorial ampliado explicando por qué hacen falta /who y /pet who leader.
  • 381 comprobaciones automáticas del motor, 57 más que en la 1.1.0.

Al actualizar

Reconstruye el histórico para que las peleas antiguas cojan el nivel corregido: la aplicación te lo ofrece sola, o npm run store:rebuild si trabajas desde el código. Sin eso, lo guardado conserva el nivel con el que se cerró.

1.1.0 — Cifras corregidas, avisos de supervivencia y dificultad de instancia

5 de agosto de 2026

Español

Esta versión corrige cifras, no sólo fallos. Lo que tienes guardado de versiones anteriores no describe lo que pasó en tus peleas. Al abrirla te saldrá un cartel con un botón que relee tu log y lo reconstruye: tarda unos segundos y lo anterior se guarda aparte. Merece la pena.

---

Avisos de supervivencia

Cuando un segundo de retraso cuesta el personaje, el programa te lo dice en voz alta, cortando cualquier otra cosa que estuviera diciendo:

  • Feign Death roto o interrumpido. Creías estar tumbado y sigues de pie.
  • Invisibilidad. Hay dos sistemas en EQL y sólo uno avisa antes de caerse: de 25 ciclos medidos en un registro real, 24 cayeron sin previo aviso y cuatro duraron menos de ocho segundos. Por eso se avisa también de la caída: para Camouflage es la única señal que existe.
  • Levitación. Entre 6 y 12 segundos de margen antes de caer. Si estás en el Plano del Cielo, eso es la diferencia.
  • Te invocan, se acaba la invulnerabilidad, caes inconsciente.
  • Y cuando tus enemigos te pierden el rastro, con voz normal: es una buena noticia, no una alarma.

Ninguno se deduplica: si la invisibilidad se te cae dos veces en un minuto, se avisa las dos. La levitación avisa dos veces por racha, porque la tercera del juego llega en el mismo segundo que la caída.

Cada aviso tiene su casilla en Avisos → Supervivencia.

Dificultad de instancia en el expediente

EQL instancia cada zona de D0 a D4 y los enemigos cambian de verdad. Medido:

| | D2 Adaptive | D3 Fused | | --- | --- | --- | | Magus Rokyl, vida estimada | 14.688 | 23.295 | | Su golpe más fuerte | 204 | 744 |

Un 59% más de vida y tres veces y media de pegada. El expediente promediaba las dos y te decía «18.992», una cifra que no describe a ninguno de los dos bichos. Ahora la vida y el golpe máximo van separados por dificultad.

Las resistencias no se separan, y es una decisión medida: en el mismo registro entran al 100% en las dos dificultades y la única diferencia sale de catorce intentos. Partirlas rompería una muestra ya corta a cambio de nada. Lo dice la propia ficha.

Y las habilidades ya no se presentan como suyas. En EQL las clases secundarias de un enemigo se sortean por instancia, así que dos encuentros con el mismo nombre pueden ser bichos distintos. Lord Nagafen lanzó los tres hechizos de Druida en una pelea y ninguno en la siguiente, pese a durar tres minutos: si fuera cosa de la dificultad las habilidades se añadirían, nunca se perderían. Así que en vez de «sus habilidades» pone «lo que lanzó en los N encuentros», con en cuántos de cuántos salió cada una.

Nivel

En EQL tu nivel efectivo es el de la clase más baja de tu trío, así que meter una clase baja te lo baja entero. Cada pelea guarda el nivel que tenías, y tus mejores marcas van agrupadas por él. Medido en un registro real:

   nivel 50    34 peleas   mejor 210 dps   mediana 125
   nivel 27     6 peleas   mejor 177 dps   mediana  97
   nivel 25    11 peleas   mejor  65 dps   mediana  44

Comparar una pelea de hoy contra el récord de cuando ibas más alto sólo informa de que ya no vas a ese nivel.

Las peleas anteriores a tu primer /who salen como sin nivel conocido, y se dice. No se hereda hacia atrás.

Catálogo de hechizos

Todo lo que has lanzado, construido sólo desde tu histórico: usos, daño medio, rango, críticos, tasa de acierto y reutilización. Incluye el tipo unresistable de EQL, que estaba en los datos y no se usaba.

La reutilización sale del aviso de «aún no está lista», que dice el tiempo que falta, no el total: es una cota inferior y se avisa. Y de las habilidades que no dejan rastro al usarse —Companion's Fury avisa 283 veces de que no está lista y ni una de que se usó— se dice que no se puede saber si las aprovechas, en vez de enseñar un cero.

---

Lo que estaba mal en tu histórico

No se contaba ninguna muerte. Desde la 1.0.7, el filtro que evita que las peleas de un desconocido entren en las tuyas descartaba también todos los sucesos de muerte, porque una muerte no nombra a un atacante y a un objetivo sino a una víctima y a un matador. En 55.000 líneas de registro real: cero enemigos abatidos. Con ellos se caían las bajas, el nombre de las peleas y la vida estimada del enemigo. La ficha de Lord Nagafen decía «sin dato» donde ahora dice 52.443.

Y las que sí se contaban, se contaban dos veces. You have been knocked unconscious! no es una muerte: es el aviso previo, y siempre lo sigue la línea de muerte de verdad. Diez muertes reales, veinte contadas.

La zona quedaba destruida en una de cada cuatro peleas. «Has entrado en un sitio donde no funciona la levitación» es un aviso de subárea dentro del Plano del Cielo, y se guardaba como si fuera la zona: se llevaba por delante la zona real y con ella la dificultad.

La vida estimada salía multiplicada. Cuando el mismo bicho caía tres veces en una pelea, se sumaba el daño de las tres y se llamaba a eso «su vida».

Peleas duplicadas. La casilla «leer el registro entero» se guardaba como preferencia en vez de ejecutarse una vez, así que cada arranque posterior releía el registro y volvía a añadir todas las peleas. Cuatro aperturas del mismo registro daban 4, 4, 8 y 12 peleas.

El resumen del tramo mezclaba peleas. Las peleas se identificaban con un número que volvía a empezar en 1 en cada arranque, así que la primera de hoy tapaba a la primera de ayer: pinchar una pelea vieja abría otra distinta, y el resumen leía varias veces la misma pelea reciente dejando fuera las antiguas. Con un solo día de más, daba 1.121.550 donde la suma real era 1.165.649.

Resistencias infladas. El primer hechizo de cada pelea nunca contaba como acertado, y todo lo que lanzaba tu mascota contaba como resistido pero nunca como acertado.

Evasive estaba mal calculada

Afecta a Bardo, Monje, Ranger, Beastlord y Pícaro.

El wiki de EQL es literal: «You have a 95% chance to evade all incoming attacks». Evasive evita golpes enteros, no reduce el daño de cada golpe. Ese 95% estaba en la casilla de mitigación, y como el programa reconstruye el daño sin postura dividiendo por lo que la postura mitigaba, cada golpe recibido en Evasive se multiplicaba por veinte.

Ahora se puntúa como lo que es: golpes evitados × daño medio, y los dos factores se miden en tu registro. Con 100 ataques y 60 que entran a 100 de daño, Evasive ahorra 5.500. Antes decía 113.000.

Y aparece un límite que no se estaba diciendo: con Evasive puesta no se puede saber cuánto daño entraría sin ella, porque el registro no distingue un esquive de postura de una parada normal. Ahí ya no se dictamina nada.

Y además

  • El consejo de postura enseña las dos cifras: lo que recibiste de verdad y la reconstrucción sin postura. Y no dictamina con menos de ocho impactos.
  • El aviso de versión nueva funciona. Llevaba muerto desde la 1.0.4.
  • La vista de análisis se puede leer. Se rehacía cuatro veces por segundo, así que el scroll volvía arriba en cuanto lo movías.
  • El análisis corta una fase cuando dejas de pegar de verdad, ya no cuenta un segundo parado de más, calcula el daño perdido por fallar con tus golpes de melé y no con el promedio de todo, y ya no llama «segundos sin pegar» a una ralentización.
  • Los /who de quien está ausente ya se leen, y traen raza y hermandad.
  • El conmutador de fusionar mascotas ya no falla, y el botón «Ver en la wiki» del expediente ya hace algo.

Para quien quiera tocarlo

npm run store:check      revisa el histórico sin escribir nada
npm run store:rebuild    lo reconstruye releyendo el registro
npm test                 324 comprobaciones

---

1.0.7

5 de agosto de 2026

Español

El overlay ya no roba el foco al juego. Era la causa de los tirones: al pulsar en él, EQ dejaba de ser la ventana activa y limitaba los fotogramas. El overlay no necesita foco —no hay nada que escribir en él— y ahora nunca lo toma. También se le ha quitado el desenfoque del fondo, que obligaba al compositor a redibujar el juego entero en cada fotograma, y se refresca a la mitad de ritmo que la ventana principal.

Si aun así notas tirones, mira Options → Display → Max Background FPS dentro del juego: con «Min CPU», EQ baja a unos pocos fotogramas al perder el foco. El aviso aparece ahora en el tutorial y la primera vez que abres el overlay.

Las filas del overlay se despliegan sin desactivar nada. Pasas el ratón por encima y ya puedes pulsar; lo retiras y los clics vuelven al juego. Antes sólo la barra superior recuperaba el ratón.

Ya no se cuela la pelea del jugador de al lado. El log ve todo lo que ocurre a tu alrededor, y un desconocido matando bichos a diez metros entraba en tus cifras. Ahora una pelea sólo se abre si estáis metidos vosotros, y dentro de ella sólo cuenta lo que toca a los tuyos o a alguien a quien ya estáis pegando. Los compañeros de grupo entran solos al golpear vuestro objetivo.

Correcciones

  • La zona se perdía al reabrir tras sesiones largas: se releen los últimos 512 KB del registro y, si llevabas horas en la misma zona, su línea de entrada quedaba fuera. Ahora la zona, la postura y la invocación se guardan junto al punto de lectura, y una pelea que empezó antes de conocerse la zona se completa al cerrarse.
  • El dps entraba en la firma de repintado del overlay. Como cambia cada segundo, la columna se reconstruía sin parar y el clic se perdía entre repintados; ahora el ritmo se actualiza en su sitio.

---

1.0.6

5 de agosto de 2026

Español

Expediente del enemigo. Elige un enemigo en el filtro y el resumen abre su ficha completa: vida estimada, cómo te pega, qué hechizos tuyos resiste, qué suelta y en qué zonas te lo has cruzado. La vida sale del daño que costó tumbarlo — el log no da la vida de nadie, así que es una cota medida, no un dato oficial, y se dice claramente.

Resistencias medidas, separadas por invocación. Cada hechizo tuyo que un enemigo resiste queda anotado junto a la invocación activa. Sin esa separación la media miente: el mismo hechizo puede entrar el 20% con Inversion y el 80% con Over Channel, y el promedio de las dos no describe ninguna de las dos situaciones. Ahora sabrás con tus propios números si el −150 de resistencia compensa contra cada bicho.

Lo que dice la wiki, dentro de la aplicación. Las notas tácticas de cada bicho se sacan de eqlwiki.com. De Lord Nagafen: «Fire and Magic Resists mean everything with this fellow». Se cachea un mes.

Filtro de enemigo con búsqueda. Escribes «Nag» y queda Nagafen; escribes «harpie» y salen todas las arpías juntas.

Correcciones

  • El consejo de postura contaba tus curaciones como daño mágico recibido. El filtro miraba la cantidad y el objetivo, pero no el tipo de suceso. Con un robo de vida como Drain Spirit, cada punto de daño mágico que hacías te curaba e inflaba el mágico entrante: por eso pedía Mage Hunter en peleas de melé puro.
  • El consejo saltaba con sólo un 8% de mejora relativa. Ahora exige además 1.200 de daño en la ventana, 5 golpes recibidos y 350 puntos de ganancia, no aconseja fuera de combate, y la recomendación debe mantenerse cinco segundos.
  • La zona se perdía al reabrir tras sesiones largas. Al reanudar se releen los últimos 512 KB del registro, y si llevabas horas en la misma zona su línea de entrada quedaba fuera. Ahora la zona, la postura y la invocación se guardan junto al punto de lectura.
  • Los bandos se deducen cuando la pelea se guardó sin ellos: los compañeros de grupo entran como aliados por pegar a tus enemigos, y los bichos sueltos dejan de aparecer entre los tuyos.
  • La mascota de otro jugador ya no se pregunta ni se funde con las tuyas.

---

1.0.5

5 de agosto de 2026

Español

Expediente del enemigo. Elige un enemigo en el filtro y el resumen abre su ficha completa: vida estimada, cómo te pega, qué hechizos tuyos resiste, qué suelta y en qué zonas te lo has cruzado. La vida sale del daño que costó tumbarlo — el log no da la vida de nadie, así que es una cota medida, no un dato oficial, y se dice claramente.

Lo que dice la wiki, dentro de la aplicación. Las notas tácticas de cada bicho se sacan de eqlwiki.com y se muestran junto a lo tuyo. De Lord Nagafen: «Fire and Magic Resists mean everything with this fellow». Se cachea un mes.

Resistencias medidas en tus peleas. Cada hechizo tuyo que un enemigo resiste queda anotado con su nombre. Con unas cuantas peleas sabrás qué le entra de verdad a cada bicho, con tu nivel y tu equipo — algo que ninguna base de datos puede decirte.

Correcciones

  • El consejo de postura contaba tus curaciones como daño mágico recibido. El filtro miraba la cantidad y el objetivo, pero no el tipo de suceso. Con un robo de vida como Drain Spirit, cada vez que hacías daño mágico te curabas y eso inflaba el mágico entrante: por eso te pedía Mage Hunter justo en las peleas de melé puro.
  • El consejo saltaba con sólo un 8% de mejora relativa. Ahora exige además 1.200 de daño en la ventana, 5 golpes recibidos y 350 puntos de ganancia, no aconseja fuera de combate, y la recomendación debe mantenerse cinco segundos.
  • Los bandos se deducen cuando la pelea se guardó sin ellos: los compañeros de grupo entran como aliados por pegar a tus enemigos, y los bichos sueltos dejan de aparecer entre los tuyos.
  • La mascota de otro jugador ya no se pregunta ni se funde con las tuyas.

---

1.0.4

4 de agosto de 2026

Español

Aviso de versión nueva. La aplicación consulta si hay una publicada y lo avisa con una barra: descargar u omitir esa versión. Solo informa, no descarga ni instala nada.

Resumen del tramo, ampliado. Ahora cada combatiente se despliega al pulsarlo con el desglose completo de todas las peleas del periodo: por habilidad, por tipo de daño, por objetivo y quién te pegó a ti. La casilla de juntar mascotas está en la propia cabecera.

Mascotas. Se pueden juntar todas en una sola fila — en EQL cambian de nombre en cada invocación y dos días de juego dejan seis filas que son la misma cosa. La lista de mascotas conocidas se guarda entre sesiones, así que el histórico de ayer también las reconoce.

Mascotas de otros jugadores. Cuando un compañero escribe /pet who leader, su mascota queda identificada y aparece como «Rufo (mascota de Notarino)». Ni se pregunta por ella ni se funde con las tuyas.

Interfaz completa en cinco idiomas. Faltaban 244 textos en francés, alemán y portugués, que caían al inglés: las descripciones de posturas e invocaciones, los nombres de clase, el análisis entero, el asistente y el editor de disparadores.

Correcciones

  • El filtro por tramo no funcionaba: las peleas se guardaban con la hora de importación en vez de la del combate, así que todas caían en cualquier periodo.
  • Grix says 'Yes, Master.' reclamaba la mascota como tuya. Dicho en voz alta puede ser la de cualquiera del grupo: ahora solo se propone, y confirmarla exige /pet who leader.
  • El resumen se dibujaba en la columna del listado y volvía arriba al hacer scroll.
  • El dps del overlay se medía sobre toda la sesión. Ahora va por enemigo abatido, desde el primer golpe hasta que cae, con lecturas de los últimos 10 y 20 segundos.

---

1.0.3

4 de agosto de 2026

Español

Resumen del tramo. Un botón bajo los filtros suma todas las peleas del periodo elegido en un único desglose: dps, daño, tiempo en combate, abatidos, bajas y curación. Con las habilidades de cada combatiente sumadas de todas las peleas, y un bloque por enemigo que se despliega para ver quién de los tuyos aportó cuánto. El dps se mide sobre los segundos de combate, no sobre las horas transcurridas.

Botín. Cada pelea guarda lo que soltó, distinguiendo lo recogido, lo autovendido y las mejoras. Al pasar el ratón por un objeto aparece su ficha con el aspecto del juego, sacada de la wiki de EQL y guardada en caché un mes. Al pulsarlo se abre su página en la wiki.

DPS con sentido en el overlay. Se mide por enemigo abatido, desde el primer golpe hasta que cae, y la media de la sesión suma esas ventanas. También hay lecturas de los últimos 10 y 20 segundos. Las filas muestran el daño, no el ritmo: en un acumulado de media hora el dps sobre el tiempo transcurrido no significa nada.

Correcciones

  • Al reanudar, la zona y la postura ya no se perdían: el precargado se hacía después de arrancar el lector y las primeras peleas nacían sin zona.
  • Un desajuste entre módulos podía tumbar el envío de datos y dejar la ventana y el overlay congelados sin decir nada.
  • Los iconos de objeto se bloqueaban por la política de seguridad de la ventana.

---

1.0.2

4 de agosto de 2026

Español

Histórico persistente. Las peleas se guardan en disco y al abrir la aplicación están ahí al instante, sin releer el log. Con filtros por tramo (2 h, 12 h, 24 h, 3 días, semana, mes) y por enemigo.

Overlay rehecho. Dos columnas, los tuyos a la izquierda y los enemigos a la derecha. El daño se acumula durante toda la sesión y solo se pone a cero con el botón de reset. Las filas se despliegan al pulsarlas, y los enemigos caídos van bajando: se conservan los últimos veinte.

Tarjeta al caer un enemigo. Muestra unos segundos quién le hizo cuánto daño, calculado sobre ese enemigo concreto y no sobre la pelea entera.

Selector de voces agrupado por idioma.

Correcciones

  • El «dps del grupo» sumaba también el del enemigo. Ahora van separados.
  • Tus muertes se cuentan de verdad y aparecen aparte de los enemigos abatidos.
  • Cargar el histórico ya no dispara avisos de voz de peleas viejas.
  • El aviso de gate solo salta con enemigos, no con cualquier jugador de la zona.
  • Las curaciones del enemigo ya no incluían las tuyas.

---

1.0.1

4 de agosto de 2026

Español

Traducción completa al inglés: el panel de consejo, las notas de postura, los nombres de clase y los avisos de voz.

Correcciones

  • El consejo de postura se calcula sobre la pelea seleccionada, no sobre la que esté en curso.
  • Tus muertes se cuentan de verdad y aparecen separadas de los enemigos abatidos.
  • El aviso de mascota caída solo salta con tu mascota.
  • Cargar el histórico ya no dispara avisos de voz de peleas viejas.
  • Las curaciones del enemigo ya no incluían las tuyas.

---

1.0.0

4 de agosto de 2026

Español

Primera versión pública. Parser de combate en tiempo real para EverQuest Legends: medidor de daño, overlay sobre el juego, consejo de postura, avisos por voz y análisis posterior de las peleas grandes.

Descarga EQL-Parse-SPAIN-1.0.0-setup.exe de la sección Assets, más abajo.

Windows dirá que no reconoce la aplicación. Es normal en programas sin certificado de firma: Más información → Ejecutar de todos modos.

Antes de usarlo, dentro del juego

  • Escribe /log on
  • Options → Filters: pon todo lo relacionado con daño al máximo detalle, tanto lo tuyo como lo de los demás. Sin esto el juego no escribe el daño del grupo y las cifras salen a cero.

---

Todas las versiones en GitHub