Skyrim Mod:SkyProc

The UESPWiki – Your source for The Elder Scrolls since 1995
Jump to: navigation, search
SkyProc Logo.png

SkyProc is a Java library that offers easy to use Java API for importing, manipulating, and exporting mods.

The SkyProc library offers Java programmers the power to create and edit objects that represent Skyrim mods and records. It is able to import mods, or even an entire load order, and give easy access to the records inside. Programmers can then make any changes they wish, and export a working Skyrim patch that is customized to every user's load order.

Its purpose is to facilitate third party creation of smart programs that create custom patches based on any given load order. For many mods, this will help reduce, or completely eliminate conflicts.

Download SkyProc v2.2
May 2nd 2013

SUM (SkyProc Unified Manager) is a manager program created to facilitate multiple SkyProc patcher maintenance. Using the Starter Project will give you all the setup you need to make your patcher compatible with it.

What Can SkyProc be Used For?[edit]

It can be used to make extremely smart and versatile patchers capable of adapting to any load order. It can be used for things such as:

Customization Patchers
Lots of mods have several hard-coded esp variants to offer users several different setups. Instead, a patcher can be made to read in an INI file, and adjust a hard-coded mod file with custom settings defined by the user. This gives the mod an unlimited amount of easy customization over things that would otherwise require slews of esp versions. See Realistic Lighting for an example of this.
Addition Patchers
Seamlessly add things to the world, without causing incompatibility issues. A patcher can be made to add spells, factions, and many other items to NPCs, or many other similar tasks. These can be done by hard-coding a mod, but having the changes done with a patcher benefits from being compatible with any load order; If a user adds another mod with more records, the records from that new mod are automatically integrated into your mod. See Automatic Spells for an example of this.
Preparation Patchers
Preparation patchers are meant for mods that require certain records to be set up in special ways. These types of patches tend to be "final" patchers that are meant to process the load order after everything else is settled in. See Automatic Variants or Dynamic Leveled Lists for an example of this

This is not an extensive list of the possibilities of applications that can be made with SkyProc. The possibilities are really up to the programmer to flex their coding muscles and take advantage of the power SkyProc offers.


SkyProc is meant to be easy to use. If you are not familiar with Java, libraries, or even programming in general, here are some helpful sections to get you started.

WARNING: The tutorials have become outdated and need to be updated to new standards. The same general concepts apply, however.


  • Source Code — Link to google hosted source code repository.
  • Bugs and Issues — Please submit a report here, with as many details as you can.
  • Change Log — External list of changes to the SkyProc library, on the Google code repository.
    • Change Log — Internal list of changes to the SkyProc library, only up to v1.5.
  • Credits — Contributors, libraries and programs used.

Mods that Use SkyProc[edit]

TES4: Oblivion

TES5: Skyrim

Other Links[edit]