User:DavidJCobb/Papyrus logging

From the CreationKit Wiki
Jump to navigation Jump to search

Skyrim has a number of debugging features that are turned off by default. One of these is the Papyrus log, which records every warning, error, and notable event that occurs within the game's save and script engines. There are a number of misconceptions surrounding the Papyrus log, and it's generally only useful to people familiar with the game engine, but it remains a useful tool when trying to assess whether and why a script is misbehaving.

Enabling the Papyrus log[edit | edit source]

To enable the Papyrus log, you'll need to modify your INI settings. If you're using Nexus Mod Manager (or no mod manager at all), you'll need to open your Libraries\Documents\My Documents\My Games\Skyrim\Skyrim.ini file and edit it directly. If you're using Mod Organizer, you'll need to use its INI editor: click the puzzle-piece icon in the toolbar and select "INI Editor."

Add these lines to your Skyrim.ini file. If it already has a [Papyrus] section, then reuse that.

[Papyrus]
bEnableLogging=1
bEnableTrace=1
bLoadDebugInformation=1

Viewing and sharing the Papyrus log[edit | edit source]

Papyrus logs are written to the Libraries\Documents\My Games\Skyrim\Logs\Script folder. A new log is created every time you start the game. Skyrim only keeps the last four logs, and the newest is always named Papyrus.0.log.

If you need to share a Papyrus log with someone, you should upload the log to a file-sharing site, or share it on Pastebin. Pasting the entire log directly into a comments section or forum post is generally a bad idea, because it'll come out illegible and people will yell at you; and pasting only part of it is unhelpful, because if you're not familiar with the game engine, you'll probably paste the wrong part.

Facts about the Papyrus log[edit | edit source]

  • The Papyrus log is not a crash log. Skyrim does not have any crash handlers that write to the log.
  • Not everything in the Papyrus log is a problem. There are plenty of ordinary things that get written to the log, and there are plenty of harmless warnings (like those from Game.GetFormFromFile(...)).
  • Not every script error in the Papyrus log is a problem. Sometimes, the game can unload things out from under a script (most notably cells), and that can cause scripts to fail (harmlessly, if the author knew what they were doing).
  • There are certain log errors that indicate that a user has been uninstalling mods during a playthrough without cleaning their save. However, these log errors can have other causes (e.g. mods that are missing files, perhaps because someone screwed up when trying to implement a way for their mods to communicate with others).