Red de conocimiento informático - Problemas con los teléfonos móviles - The Elder Scrolls 5》Métodos anti-salto y análisis de causas Cómo prevenir saltos

The Elder Scrolls 5》Métodos anti-salto y análisis de causas Cómo prevenir saltos

1. Primero, active los registros de Papyrus; de lo contrario, su volumen anterior no generará archivos de registro.

La flecha roja de arriba indica el directorio del archivo y el nombre del archivo.

La flecha violeta y el cuadro a continuación significan: busque [papiro] (si no, cree uno nuevo en la parte inferior) y luego busque los tres parámetros en el cuadro (si no, cree uno uno nuevo bajo papiro), y luego cambie los tres parámetros a 1)

Si está utilizando MO, entonces el skyrim.ini que inicia el efecto está en este directorio: su archivo de configuración

2. Encuentre su archivo de registro

Después de completar el primer paso, no importa si su juego tiene CTD o si hay un error, siempre que ingrese al juego, se generará el archivo de registro.

Los archivos se encuentran en: Usuarios\Su nombre de usuario\Documentos (estos son Mis documentos)\Mis juegos\Skyrim\Logs

Se pueden registrar hasta 4 archivos de registro a la vez. El registro del juego más reciente es Papyrus.0.log, el último es 1, el último es 2 y el máximo es 3. Cada vez que sucede cuando se abre tesv.exe y finaliza tesv.exe.

La base para analizar registros es permitir que existan. Los pasos anteriores son los tutoriales para hacer que los registros existan.

Comencemos con cómo analizar

3. Según el momento en que aparece el contenido del LOG, lo divido en tres tipos.

Ejecute el juego, lea el archivo y aparecerá un REGISTRO: este llamado archivo se coloca mejor en la sala de fumadores y debe asegurarse de ser el único en la sala de fumadores, sin otros NPC, cadáveres o elementos extraños. ERROR en esta parte del contenido del LOG, se recomienda aclarar su significado. Si es obvio que estos ERRORES no son importantes, o si lo son pero puedes ignorarlos, entonces está bien no abordarlos. Si está claro que causará problemas graves en el futuro, se recomienda solucionarlo de inmediato.

Registros que no causan CTD durante el juego: estos registros en su mayoría causan problemas lógicos. Por ejemplo, la función que vincula la acción de mover la cola con el Ice Wraith no puede encontrar un OBJETO, lo que solo dará como resultado que el Ice Wraith no mueva la cola, no un CTD. Lo mismo ocurre con estos ERRORES, si crees que no importa, entonces no importa si no lo solucionas.

Registros que causan CTD: estos errores aparecerán después de papyrus0.log, donde aparece la marca de tiempo de CTD. Vale la pena decir algunas palabras aquí que hay tres razones para el CTD: archivos faltantes o incorrectos, el entorno actual del juego excede las capacidades de procesamiento de la computadora y errores graves de script. Y cuando mira el registro después de ctd, el error de secuencia de comandos en la marca de tiempo de ctd no es necesariamente el culpable de este ctd, porque también puede ser la segunda causa de ctd... La forma de distinguirlo es intentar más varias veces. , los saltos de 100 son causados ​​por guiones. Si sabe que se debe a un script, solucione este error. Es importante recordar que no es recomendable buscar el MOD erróneo y desinstalarlo, por motivos que hablaré más adelante, y por supuesto es posible olvidarlo....

Advertencia: Advertencia. Si no es quisquilloso, las advertencias pueden ignorarse ya que no causan CTD en ningún momento. Pero es posible que aprenda de ellos al analizar los errores. Introduje soluciones para las advertencias en mi artículo anterior.

tieba.baidu.com/p/3873900066 Este artículo habla sobre la solución a la Advertencia: el script no tiene atributos. Muy básico.

Anexo: Compramos juegos para jugarlos. Aunque puede haber muchas motivaciones para jugar, pocas personas programan y modifican el contenido del juego por diversión, y la gran mayoría de la gente todavía juega juegos simplemente por jugar.

Yo también. Por eso es importante tener un buen equilibrio entre técnica y jugabilidad... Por mucho que respeto a Master DK, le tomaría mucho tiempo trabajar en técnicas como esta (cada archivo para cada uno de sus modificadores se sabe qué hace -) .....Yo personalmente no elegiría hacer esto. Cada uno tiene sus propias opiniones y tú eliges cómo quieres jugar y qué quieres hacer.

4. ¿Qué debe hacer si ocurre un CTD y está seguro de que uno o un grupo de ERRORES causaron el CTD?

Encontraré un ejemplo aleatorio de un error de secuencia de comandos...

[02/11/2014-12:21:22AM]Error: (000C6984): no se puede encontrar la variable llamada fToggleBlend.

p>

pila:

[(000C6984)].FXSetBlendVariableScript.SetAnimationVariableFloat()-" "¿Está bien?

[(000C6984)].FXSetBlendVariableScript.OnLoad()-" FXSetBlendVariableScript.psc "Línea 38

[11/02/2014-12:21:22AM]: marca de tiempo, usted Puede encontrar el área de error de secuencia de comandos correspondiente según el momento en que ocurre ctd. Por lo general, el error que causa ctd es la marca de tiempo ctd, que es la última marca de tiempo en ese momento. A veces también está relacionado con un error anterior.

Error: (000C6984): canfindvariablenamedfToggleBlend.: error, paréntesis, si no es 00 o uskp, número de serie smpc entonces tendrás una idea clara de qué mod tiene el error. Si es un error 00 o uskp o smpc, será más problemático. No sabes qué módulo tiene el problema. Incluso si sabe qué módulo es el problema, no es recomendable eliminarlo directamente porque eliminar el módulo destruirá el archivo. Puede usar savetool o pdt para limpiar el archivo, pero es posible que no lo limpie por completo. ....La siguiente parte trata sobre el error que ocurrió, como objeto no encontrado, tipo de objeto incorrecto, etc. .....

[(000C6984)]: Esta es la ID de referencia incorrecta, cubriré las ID de referencia más adelante.

FXSetBlendVariableScript: Este es el script donde ocurrió el error. Debe haber un archivo PEX con el mismo nombre en datos/scripts (o bajo algún bsa), el modificador de código abierto o el original (con ck instalado) tendrá el archivo fuente psc.

SetAnimationVariableFloat(): Esta es la instrucción de la función donde ocurrió el error. La función puede ser de tipo nativo (es decir, funciones que no necesitan definirse en psc, serán reconocidas por el juego mismo), una nueva función definida en psc o una función extendida por skse.

""¿Número de líneas? Tenga en cuenta que el psc descompilado no puede encontrar una función con este número de línea.

OnLoad()-"FXSetBlendVariableScript.psc" Línea 38: Aquí está el evento donde ocurrió el error, el archivo donde ocurrió el error y el número de línea del evento. Por evento me refiero a la declaración debajo del evento que le dice al juego cuándo ejecutarlo.

5. Análisis e ideas de solución

En primer lugar, hay dos caminos divididos en dos partes. Uno es el guión y el otro es la entrada.

La primera ruta es encontrar la ruta factible a través de la descripción del archivo psc.

Tenga en cuenta que si la versión original tiene un archivo A.psc, uskp tiene un archivo A.psc y Xmod tiene un archivo A.psc, entonces el que se pueda usar debe ser de Xmod. ¿Cómo funciona? Póngalo en cola relativamente tarde y cargue el archivo de script en la entrada.

Una vez que encuentres el archivo psc, ábrelo y lee lo que hace.

Al leer esto por primera vez, observe qué están haciendo las instrucciones funcionales principales de cada evento y función.

En la segunda lectura, analiza la ubicación de los errores.

Esto requiere conocimiento del idioma Papyrus, que ya he mencionado.

Si no hay ningún archivo psc, debe buscar el archivo pex y descompilarlo usando TESVTranslator. En la gran mayoría de los casos, el trabajo de localización se realiza mediante este software. Un vago como yo definitivamente no haría localización.

Método de operación: primero abra el software, luego haga clic en el archivo, carguepapyrusPEX y luego el contenido del script descompilado aparecerá en pexdata a continuación.

Para guiones pequeños de 20 líneas o menos, este enfoque es algo aceptable. Pero si es un script de 1200 líneas, incluso si puede leerlo y desea modificarlo, necesitará reescribirlo en la sintaxis normal de Papyrus o no se compilará con ck.

Segunda ruta: encuentre el punto de entrada incorrecto según el ID de referencia incorrecto.

Tenga en cuenta que el ID de referencia es el ID después de crear una instancia de ID base, que puede no encontrarse en ck y editar.

¿Cuándo se encontrará? Se creará una instancia de esta referencia cuando se cree el archivo, como todos los NPC nombrados, las llaves colocadas en un cofre determinado, etc. También está el hecho de que no es necesario crear instancias de estas cosas.

¿Cuándo no se puede encontrar? Esta referencia se crea una instancia durante el juego. Por ejemplo, un dragón sin nombre.

Entonces, ¿cómo lidiar con el ID de referencia de la entrada que no se puede encontrar?

Abra una versión reciente de savetool y busque esta ID; puede encontrar información sobre esta referencia que puede usar para deducir de qué entrada se creó la instancia. También puedes buscar directamente el script en cuestión y deducir cuál es la entrada en función de la información encontrada.

Pero a veces todavía no encuentras la entrada, ¿por qué?

Porque durante el proceso de creación de instancias, desde el último guardado hasta este ctd... entonces es gg.

Conociendo el contenido del script y las entradas de error, podrás saber qué está haciendo exactamente esta parte del MOD.

Ahora que conoces esta información, ¿cómo puedes solucionarla?

Debe utilizar esta información para descubrir por qué falló el script.

Luego descubrirás la causa, cambiarás la entrada/script y volverás a compilar. Luego, el archivo se procesa (generalmente eliminando la parte relevante del script donde ocurrió el error o modificando los valores dentro de él).

Hay una razón por la que digo tan poco. Dado que hay millones de errores, cada uno con una solución diferente, ¿cómo puedo escribir sobre ellos?

6. Errores

La diferencia entre errores y ctd es que no causan un bloqueo y tu juego aún puede continuar.

Sin embargo, los BUG también se dividen en BUG benignos y BUG maliciosos.

Los ERRORES benignos se refieren a cosas como bastidores de armas que no se mueven, Ice Hatred atascado, etc... Si puede vivir con estos errores, no es necesario que los solucione.

Los errores graves te impedirán continuar con el juego, como que una determinada tarea se atasque o que cierta música se reproduzca continuamente.

La idea de corregir errores es más o menos la misma que la de ctd. Simplemente cambie la marca de tiempo ctd a error.

Pero se recomienda intentar leer el archivo antes de mirar los registros, y probarlo varias veces, de modo que si el error desaparece, ya no tengas que trabajar como un loco....

7. Limitaciones de los registros

Muchas veces, la información proporcionada por el registro es solo que xxx no puede xxx, porque xxx no puede ejecutarse en ningún objeto.....

¿Qué es lo sin objeto?

¿Por qué esa cosa se convierte en "Ninguno"?

No se proporcionará ninguno de estos registros. Tienes que hacer el análisis tú mismo y es muy difícil.... Es posible que ni siquiera los modificadores puedan analizarlo... Después de todo, solo los empleados de la Compañía B saben cuál es la capa subyacente del juego.

Por eso es una buena idea evitar cometer errores en la medida de lo posible. Al final del día, la cuestión es si un mod es bueno o malo.