PrintScreen Mod Documentation

Overview

PrintScreen is a Skyrim mod that enables high-quality screenshots directly from within the game. Unlike the built-in screenshot functionality, PrintScreen offers advanced features such as customizable file formats, adjustable image quality, automatic HUD hiding, and dedicated hotkeys.

The mod uses the SKSE (Skyrim Script Extender) to access the Windows API for creating high-quality screenshots in various formats.

Features

  • Multiple Image Formats: Save screenshots as PNG, JPG, BMP, GIF, TIF, or DDS
  • Custom Screenshot Directory: Set your preferred save location
  • Configurable Quality Settings: Adjust JPEG compression and DDS compression options
  • HUD Removal: Automatically hide the HUD when taking screenshots
  • Hotkey Support: Assign a custom key for screenshot capture
  • Configuration Storage: Save and load your settings via MCM and JSON files
  • Automatic File Naming: Screenshots are automatically named with date and time

Installation

  1. Install Skyrim Script Extender (SKSE)
  2. Install SkyUI for MCM support
  3. Install JContainers for JSON support
  4. Place the PrintScreen mod files in your Skyrim data folder:
    • PrintScreen.esp → Skyrim/Data/
    • SKSE/Plugins/PrintScreen.dll → Skyrim/Data/SKSE/Plugins/
    • Scripts → Skyrim/Data/Scripts/
    • Interface files → Skyrim/Data/Interface/

Usage

Basic Usage

  1. Launch Skyrim with SKSE
  2. Configure the mod through MCM (Settings > PrintScreen)
  3. Press your configured hotkey (default: Backspace) during gameplay to take a screenshot
  4. Screenshots are saved to your configured directory (default: C:/Pictures)

MCM Configuration Options

The mod can be fully configured through its Mod Configuration Menu:

  • Path: Set the directory where screenshots will be saved
  • Image File Type: Select between PNG, BMP, JPG, GIF, TIF, or DDS
  • Automatic Menu Removal: Toggle automatic HUD/menu hiding when taking screenshots
  • JPG/TIF Quality: Set the compression quality for JPG and TIF files (0-100)
  • Take Photo Key: Assign your preferred hotkey
  • Save/Restore Configuration: Enable JSON configuration storage
  • DDS Compression Mode: Select compression type for DDS files

Technical Information

File Formats

  • PNG: Lossless compression, best for high-quality screenshots
  • JPG/JPEG: Lossy compression, smaller file size but lower quality
  • BMP: Uncompressed, highest quality but largest file size
  • GIF: Limited color palette, best for simple images
  • TIF/TIFF: Flexible format supporting both lossless and lossy compression
  • DDS: DirectX texture format, good for game textures

DDS Compression Options

The following DDS compression methods are available:

  • UNCOMPRESSED: No compression (high quality, large files)
  • BC1/DXT1: Basic compression with 1-bit alpha
  • BC2/DXT3: Improved compression with sharp alpha transitions
  • BC3/DXT5: Better compression with smooth alpha transitions
  • BC4: Single-channel compression (grayscale)
  • BC5: Two-channel compression
  • BC6H: High-dynamic-range compression
  • BC7_FAST: High-quality compression with faster processing
  • BC7: Highest quality compression (slow processing)

JSON Configuration

The mod can save and load settings using a JSON file. When enabled, your settings will be stored in: Data/SKSE/Plugins/Printscreen_Configure.json

Troubleshooting

Common Issues

  1. "Path failed validation": Ensure the screenshot directory exists and is writable
  2. No screenshot taken: Check that your hotkey isn't conflicting with another mod
  3. Black screenshots: Some ENB or lighting mods may interfere with the screenshot process
  4. MCM menu doesn't appear: Ensure SkyUI is properly installed

Console Commands

For debugging purposes, you can use the following console commands:

help PrintScreen

Developer Information

Papyrus Functions

The mod exposes the following Papyrus functions through the PrintScreenNS namespace:

  • PrintScreen(int validate, String path, String imageType, float compression, string ddsCompressionType): Takes a screenshot or validates a path
  • PrintScreenLatent(int validate, String path, String imageType, float compression, string ddsCompressionType): Asynchronous screenshot function
  • ValidatePath(string basePath, string imageType): Dedicated path validation function
  • TakeScreenshotLatent(string basePath, string imageType, float compression, string ddsCompressionType): Simplified latent screenshot function
  • GetScreenshotResult(): Returns the result of the last screenshot operation

SKSE Plugin

The mod uses an SKSE plugin (PrintScreen.dll) to interface with the Windows API for screenshot capture. This enables high-quality screenshots beyond what Skyrim's native functions can provide.

Event Notification

The mod sends a PrintScreenComplete event when a screenshot is taken, which scripts can register for with:

RegisterForModEvent("PrintScreenComplete", "OnPrintScreenComplete")

Version History

Current version: 1.8.0

Credits & License

This documentation covers the PrintScreen mod for Skyrim.