Skip to content

Instantly share code, notes, and snippets.

(a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z)(A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z)(a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z)(A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z)(a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z)(A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z)(a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z)(A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z)(a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z)(A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z)(a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z)(A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z)(a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z)(A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z)(a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z)(A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z)(a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z)(A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z)(a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z)(A|B|C|D|E|F|G|H|
[00:00] Checking for Errors in [04] WheelsOfLull.esp
[00:00] _Lull_CaveLever "Lever" [ACTI:0446A26A]
[00:00] ACTI \ VMAD - Virtual Machine Adapter \ Scripts \ Script \ Properties \ Property \ Value \ Object Union \ Object v2 \ FormID -> [0446A274] < Error: Could not be resolved >
[00:00] ACTI \ VMAD - Virtual Machine Adapter \ Scripts \ Script \ Properties \ Property \ Value \ Object Union \ Object v2 \ FormID -> [0446A276] < Error: Could not be resolved >
[00:00] ACTI \ VMAD - Virtual Machine Adapter \ Scripts \ Script \ Properties \ Property \ Value \ Object Union \ Object v2 \ FormID -> [0446A26D] < Error: Could not be resolved >
[00:00] ACTI \ VMAD - Virtual Machine Adapter \ Scripts \ Script \ Properties \ Property \ Value \ Object Union \ Object v2 \ FormID -> [0446A272] < Error: Could not be resolved >
[00:00] _lull_masscroftAxe "Masscroft's Axe" [WEAP:0402EC7E]
[00:00] WEAP \ CRDT - Critical Data \ Effect -> Expected 4 bytes of data, found 0
[00:00] _Lull_Harquebus1 "Targetian Harq
@Infernio
Infernio / The Towers.md
Created January 1, 2019 23:24
The greatest mod list ever devised. Unlock your inner CHIM and fill your Skyrim installation with highly lore-friendly towers.

Attention all Lorebeards:

Titus Mede II is in great danger, and he needs your help to wipe the Thalmor off the face of Nirn. But to do This, he needs more towers, and a couple more towers. To help him, all he needs is for you to install this mod list containing several hundred tower-adding mods. But, you gotta be quick so that Titus Mede II can win the war or else the Thalmor will unmake all of creation.

What started out as a stupid joke on the xEdit discord has grown into a collection of more than 80 tower mods. Yes, I really did waste a day on this silly thing.

The Basics:

{
Check form version of all records in all currently loaded plugins.
Based on 'Check for old form version.pas'.
}
unit SSEFindOldFormVersions;
const
CheckFormVersion = 44;
function Initialize: integer;
Traceback (most recent call last):
File "bash\bash.py", line 184, in main
_main(opts)
File "bash\bash.py", line 361, in _main
app.Init() # Link.Frame is set here !
File "bash\basher\__init__.py", line 4018, in Init
self.InitData(progress)
File "bash\basher\__init__.py", line 4055, in InitData
bosh.modInfos.refresh(booting=True)
File "bash\bosh\__init__.py", line 1855, in refresh

Bash Tag Updates in 307.201910080208

Skyrim LE & Skyrim SE:

  • Actors.ACBS
  • Actors.AIData
  • Actors.AIPackages
  • Actors.AIPackagesForceAdd
  • Actors.CombatStyle
  • Actors.DeathItem
  • Actors.Skeleton
@Infernio
Infernio / wb.md
Last active October 10, 2019 00:52

CBash, a DLL that only loads plugin files, but does it damn quickly:

PS E:\Infernio\Desktop\Programming\CBash\CBash\src> cloc .
     666 text files.
     666 unique files.
      14 files ignored.

github.com/AlDanial/cloc v 1.82  T=4.00 s (166.2 files/s, 70697.2 lines/s)
-----------------------------------------------------------------------------------
Language                         files          blank        comment           code

Basically (for certain definitions of 'basic'), the patching (on PBash, I don't really understand how it works for CBash) works like this:

  1. The user clicks Build Patch
  2. PatchDialog.PatchExecute is called. This is the central method.
  3. It calls init_patchers_data, which calls initData on each patcher.
  4. Now it differs from patcher to patcher. Some use initData to read a lot of mod file to gether information, some don't use it at all (because they don't need it).
  5. Next, PatchExecute calls initFactories. This asks every patcher, 'hey, which record types do you actually need to read and write?'
  6. Every patcher answers, and we make a union of the results.
  7. Next, PatchExecute calls scanLoadMods. This loads every file in the load order, skipping all record types that no patcher wanted. Most patchers stick every record they could potentially patch into the BP at this point (you'll see why later).
  8. This is where the BP merges mods, resolves aliases, applies Filter and IIM tags, etc.
Bashed Patch, 0.esp Config:
[spoiler][xml]
== Patch Mode
** Python
== Import Cells
** Update.esm
** Dawnguard.esm
** Hearthfires.esm
** Unofficial Skyrim Special Edition Patch.esp
# coding=utf-8
# Released under MIT License
"""Checks a file or directory for unprefixed strings. Meant to be used when
porting to Python 3. Run with a Python 2 interpreter."""
from __future__ import print_function
__author__ = u'Infernio'
import ast
import codecs