Los héroes que se deslizaban por Sovngarde
La mañana del 17 de octubre, uno de nosotros luchó contra los héroes de Sovngarde y derribó a dos. En la partida de ese jugador, cada héroe caía, se levantaba al rato y se marchaba. En la partida del otro jugador, esos mismos héroes se quedaban tumbados y se deslizaban por el suelo detrás de donde caminaban los de verdad, como algo atado al extremo de una cuerda.
Por qué
Cada PNJ vive en una partida, la de su dueño, y todas las demás muestran una copia que repite lo que hace el dueño.
La salud del héroe también llegó a cero en la otra partida, y esa partida derribó su copia por su cuenta, dejándola caer inerte como un muñeco de trapo. El héroe del dueño no había caído así. A partir de ahí, cada acción repetida desde el dueño escribía además el estado del dueño encima del de la copia, incluida la parte que dice si un cuerpo está tendido en el suelo. El héroe del dueño no lo estaba, así que a la copia se le decía que ella tampoco.
Una copia no ejecuta la actualización propia del juego; de eso se ocupa su dueño. Así que la parte del juego que vuelve a poner en pie un cuerpo caído no llegó a ejecutarse nunca para la copia. Cuando el héroe del dueño se levantó, la copia rechazó el «levantarse» que se le envió, porque, en lo que a sus animaciones respectaba, no estaba en el estado al que «levantarse» pone fin.
Luego el héroe del dueño se marchó, y la copia se fue moviendo detrás de él, en cada fotograma, todavía tumbada en el suelo.
Qué ha cambiado
Ahora una copia conserva su propio estado de «tendido en el suelo». Mientras está tendida ejecuta la actualización propia del juego, así que se levanta igual que cualquier cuerpo derribado, y no se la mueve hasta que está de pie. Si su «levantarse» sigue pendiente un segundo y medio después de que su dueño esté de pie, lo arranca el propio mod.
La prueba que no probaba nada
Ya teníamos una prueba para esto, y pasaba. Hacía que el juego derribara a un bandido y lo levantara mientras lo grababa, y luego hacía que nuestro bot reprodujera esa grabación sobre un bandido suyo, para que la copia que el juego tenía de él recibiera las acciones de verdad.
Solo que no recibió ninguna. Los bandidos salen de una lista, y la copia que el juego tenía del bandido del bot sacó de esa lista un bandido distinto, de otra raza. El mod trata una copia de otro tipo como otra criatura y no repite en ella ninguna de las acciones del dueño, porque no encajarían. La copia se quedó ahí de pie, así que «se levantó» era cierto solo porque nunca había caído.
Ahora la prueba usa un PNJ con nombre que no sale de ninguna lista, y comprueba que la copia es del mismo tipo. En su primera ejecución honrada, con la mitad del arreglo puesto, la copia se quedó tumbada hasta el final, sin deslizarse. Con el resto del arreglo se levanta tras unos cinco segundos, y se mueve unos diez centímetros mientras está en el suelo.
Estado
En la build que estamos probando. Todavía no se ha visto en una sesión de verdad; llega con la próxima release.