Jump to content


  • Posts

  • Joined

  • Last visited

Everything posted by Malonn

  1. LOOT Masterlist Entries - name: 'drifting seeds.esp' dirty: - <<: *quickClean crc: 0xCC409077 util: '[TES4Edit v4.0.3](https://www.nexusmods.com/oblivion/mods/11536)' itm: 4 udr: 3 clean: - crc: 0xDF7302C7 util: 'TES4Edit v4.0.3'
  2. LOOT Masterlist Entries - name: 'Real Lights.esp' dirty: - <<: *quickClean crc: 0x5219390A util: '[TES4Edit v4.0.3](https://www.nexusmods.com/oblivion/mods/11536)' itm: 1 clean: - crc: 0xA95CBF22 util: 'TES4Edit v4.0.3'
  3. LOOT Masterlist Entries - name: 'Unofficial Shivering Isles Patch.esp' dirty: - <<: *quickClean crc: 0x5D308FDC util: '[TES4Edit v4.0.3](https://www.nexusmods.com/oblivion/mods/11536)' itm: 28 clean: - crc: 0xA4B15AC4 util: 'TES4Edit v4.0.3' The USIP? Another boo boo?
  4. LOOT Masterlist Entries - name: 'Unofficial Oblivion Patch.esp' dirty: - <<: *quickClean crc: 0x6EBDF804 util: '[TES4Edit v4.0.3](https://www.nexusmods.com/oblivion/mods/11536)' itm: 104 clean: - crc: 0x2A3B2D4F util: 'TES4Edit v4.0.3' The UOP? Did TES4Edit make a boo boo? Figured I'd post here just in case.
  5. I sure did. I never realized that setting existed. I'm sure I've seen it, but it never "clicked". Thanks for the fix, Infernio.
  6. Sure. https://www.mediafire.com/file/52wmuve1hn2f6cj/Knights_of_the_Nine_DLC.7z/file Thanks for looking into this.
  7. No it was something like "Custom%s%<x>" I forget the second format specifier. By the way, while we're talking, I'm trying to build a BAIN package with Knights of the Nine. It will not allow me. With the vanilla names, it skips the files. Why? Security thing? I want to keep DLCs optional to install, so decided to pack them up. I of course want to keep the file names for LOOT. Is there something I can do?
  8. Traceback (most recent call last): File "bash\gui\events.pyo", line 177, in _post File "bash\balt.pyo", line 825, in _conversation_wrapper File "bash\basher\patcher_dialog.pyo", line 177, in PatchExecute File "bash\patcher\patch_files.pyo", line 287, in buildPatch File "bash\patcher\patchers\base.pyo", line 178, in buildPatch File "bash\patcher\patchers\multitweak_names.pyo", line 468, in wants_record File "bash\patcher\patchers\multitweak_names.pyo", line 177, in wants_record File "bash\patcher\patchers\multitweak_names.pyo", line 481, in _exec_rename TypeError: not enough arguments for format string When building the Patch for Oblivion with The UOP and a custom mod of mine that has 1 script. Bash 309.202104172020. The Patch builds successfully if I disable Tweak Names -> Sort: Spells -> Custom. I don't know why it was on Custom? Must have been a thing from the upgrade to the latest WiP. I was running the WiP from February 6, 2021.
  9. Cool, thanks. I've never written an OBSE plugin, so don't know anything about them being tied to a plugin. I'm assuming you can, so didn't know if the UOP ones required the patch.
  10. Can the OBSE plugins that ship with the UOP be used without the patch? I mean is there some code in the plugins that check for the patch? I know I could easily launch Oblivion and find out, but I prefer to ask to make sure that all bases are covered.
  11. Ah. Good, I didn't think I'd seen too much around. I think I'll follow that link from deaths_soul and get rid of Flash for good...
  12. How much content actually uses Flash nowadays? Legit question.
  13. You listen to a wild mixture of stuff, Schtearn.
  14. Now that's a run-on sentence for ya... But I'm not sure what to tell you about your downloading issue. Sounds like something on your end, not the server's end. I assume you are able to download other things without issues?
  15. May I recommend posting in the official LOOT thread? I don't think the author really looks at threads outside of that. You're more likely to get some help by posting there.
  16. What I've discovered, for a more helpful post: 1. If a record has zero references in xEdit, it does not mean it is not used. I've been told this, suspected this, and verified this. Having said that, depending on the type of record, it could be unused. You have to know, or at least study, the plugin to figure out whats needed and what isn't. There is no quick, automated way to determine unused records. 2. My KotN question is best posed to Bethesda, I understand. The sun has set on the hayday of Oblivion modding. Perhaps in 2008 someone would have been around who had figured that out. I will make a "command decision" on what to do with those region edits. I'm 99.999% sure they are not essential to the plugin...
  17. A couple questions have come up for modders here. 1. I'll also ask this on the xEdit Discord, but if a record has no (zero) references, then it is not used by the plugin, right? My understanding says that is true for most records, except maybe quests and dialog, right? I plan on striping a mod of unused records, and want to be sure I understand. 2. In KotN, the regions of the Imperial City have the single edit of removing snow from the weathers there. Why? Is that necessary?
  18. Thanks, Leo, but that's not quite what I was looking for. I'll just use the UOP fix for that problem.
  19. zilav strikes again! Great tips, I will implement them.
  20. Okay. I got out of the holding pattern, updated and fixed the script, and it is confirmed working. Here it is for anyone interested: {Designed to change dialog formIDs unique to a plugin to free master file formIDs and then rename the associated MP3 and Lip files accordingly. This script is written for merging from ONE plugin (load order index '01') to a master (load order index '00'). It does not take into account multiple plugins.} unit UserScript; var voice_files: TStringDynArray; formidstart: Cardinal; function Initialize: integer; var TDirectory: TDirectory; voices_root: string; begin formidstart := $00000001; //Path to sound files to be renamed voices_root := 'C:\Users\MaLonn\Downloads\Sound\Voice\Unofficial Oblivion Patch.esp\'; //Create array of sound files and path voice_files := TDirectory.GetFiles(voices_root, '*.*', soAllDirectories); end; function Process(e: IInterface): integer; var oldid, newid: cardinal; j: integer; s, x, old_name, new_name: string; begin oldid := GetLoadOrderFormID(e); //Ensure the load order index (8 bits) of formID are '01', i.e. not the master. if (oldid shr 24) and $FF = $01 then begin //Zero out load order index 8 bits and replace with '00' newid := (oldid and $00FFFFFF) + ($00 shl 24); //Check for free formID in master to assign while Assigned(RecordByFormID(FileByLoadOrder(0), formidstart, True)) do Inc(formidstart); //Begin loop through sound files array for j := 0 to Length(voice_files) - 1 do begin s := voice_files[j]; //If the formID is present, proceed if Pos(IntToHex64(newid, 8), s) > 0 then begin //Replace old formID with new/free formID x := StringReplace(s, IntToHex64(newid, 8), IntToHex64(formidstart, 8), [rfReplaceAll, rfIgnoreCase]); //For message printing... old_name := StringReplace(s, ExtractFilePath(s), '', [rfReplaceAll, rfIgnoreCase]); new_name := StringReplace(x, ExtractFilePath(s), '', [rfReplaceAll, rfIgnoreCase]); AddMessage(Format('Replacing "%s" with "%s"', [for_print, new_name])); //Delphi function to rename a file RenameFile(s, x) end; end; //Change referenced records to the new/free formID while ReferencedByCount(e) > 0 do CompareExchangeFormID(ReferencedByIndex(e, 0), oldid, formidstart); SetLoadOrderFormID(e, formidstart); Inc(formidstart); end; end; end. If anyone wants to use it, make note of the opening comment. This is written for specific use. Also, the script posted in this post is the working one. Earlier posts were WIP. Another question for you, zilav: in the header (HEDR) section of a plugin there is "NextObjectID". Is that necessary to be updated in the mod I'm merging into? xEdit changes it when manually changing formIDs, but I couldn't find a function that seemed to deal with it. Finally, I'll close by saying thank you, zilav! I'm continuing to write more scripts to aid in tasks with xEdit.
  21. I'm just wondering if anyone knows of a fix outside of the UOP for the Trespasses stat being broken. I noticed it's optional in the Patch, and hoped maybe there was an OBSE plugin that fixed it? I checked MenuQue and EngineBugFixes, but neither of those seem (document) to have fixed it.
  22. Well I answered my question through investigation. It was a stupid question (again--there'll be more), but "UOPRetroactive354" and "UOPRetroactive355" do have the script changes made via direct record edit. I've found that 90% (or more maybe--exact numbers are not known) of the new quests with the UOP have direct record edits. Would you say I'm not thorough enough, Arthmoor? That all quests have direct record edits? I know that almost all of them run once and then call "stopquest" as the last line. I thought I had found several that did of have the edits. But maybe I just didn't look in the right place. Also, Arthmoor: I'm going to investigate this, but I like asking (stupid) questions. Is there new DIAL/INFO records in the patch with corresponding audio? I don't know if the patch team found audio that wasn't used and they restored it? That's more an "uncut" type job, but I like asking questions. Now, will Arthmoor respond... or do I just have to find out for myself...
  23. Gotcha, Arthmoor. Thanks for your patience with that question. It was stupid, but I ask stupid questions sometimes. I've noticed a LOT of the UOP quests and corresponding scripts are for adding to an existing save. This makes them unnecessary for what I'm doing. But this leads me to the following follow-up questions: Quests "UOPRetroactive354" and "UOPRetroactive355", are the changes in the scripts needed or are they also made via direct record editing? 90% (or more) of the new quests and quest scripts have direct record edits that make the scripts superfluous. Perhaps that number could be 100% but in my modding there were some changes I found in scripts that I could not track down in records. I completely understand you have to make the mod for existing saves; I'm not knocking the UOP by a long shot. But I'm working some "magic" here and superfluous records have to go.
  • Create New...