Unofficial Patch Problems with My Mod

Post » Mon Jun 20, 2016 1:05 am

I'm having difficulty making my mod compatible with the unofficial patch (USLEEP). The biggest problem is that all of standalone weapons racks in my mod don't work. The USLEEP folks comment on their page at Nexus that the problem is likely using the old vanilla script for the racks in my mod which is altered by the patch (which my mod is over-riding). (Obviously the patch is not altering the vanilla script in my mod.) I'm assuming all mods that uses the vanilla script have this problem which is a bit odd to me because the weapons plaques use the same script and those work just fine in my mod with the USLEEP installed. But, anyway, what do I know....I'm a beginner.



I've tried to get some help over there for resolving this, but not much luck with that. My question is, how do I get this old script out of my mod, so I can get the USLEEP patched script to work. Keep in mind, we're talking about a vanilla script that is already apart of the activators for the racks, so I'm not sure I can just delete this stuff. Creating new racks with USLEEP active as well as my mod still results in broken racks so I'm not sure that just creating all new racks is the answer.

User avatar
Gill Mackin
 
Posts: 3384
Joined: Sat Dec 16, 2006 9:58 pm

Post » Sun Jun 19, 2016 11:06 am

Ok - you say you are a beginner so I hope you won't take offense at me explaining some things you might already know. Your mod can only be overriding the script in the game or the script in the patch by loading the script as part of your mod. It can only do that by providing a copy of the script as part of your mod after the game loads the script from the original script bsa and from the patch. I don't recall the name of the script for the weapon racks, but if you have it in a scripts directory that you are including in your mod, then take it out as you don't need it. If you don't have it in the scripts directory of your mod, then without knowing anything more about your situation, I would make the outright guess that you are seeing this issue in your own game when you test your mod and you have unpacked all of the scripts from the original script BSA into a script directory in your Data directory. The patch probably (i haven't checked) adds the script as part of a BSA file that is being overridden by the script that is in your own directory. If so, it doesn't really have anything to do with your mod per se, it's actually your Skyrim installation. The game loads the unpacked files in the resource directories that are located in your Data directory last so they override anything with the same name in the BSAs.

User avatar
April
 
Posts: 3479
Joined: Tue Jun 20, 2006 1:33 am

Post » Sun Jun 19, 2016 8:09 pm

The two scripts are Weaponrackactivescript and Weaponracktriggerscript. These scripts are not loose in my scripts directory (I wish they were; that would be an easy fix). I definitely checked there. I recently returned skyrim to vanilla attempting to resolve this issue, to no avail.



All I have for my mod is an esp. I've not packed loose files yet. Since this is a vanilla script, I assumed it's packed in that esp of mine and I need to somehow get it out of there? Would deleting all of my weapons' racks be the solution? That would be extreme because I have a good many of them. Should I just delete the scripts themselves from the Object Window with my mod loaded and ready for edit, then maybe do the game integrity check thing in Steam to restore missing vanilla files?



The USLEEP (Unofficial patch) does have modified scripts for these vanilla scripts that much I know which address the many well-known issues the vanilla scripts have. However, they also do not show up in the Scripts directory of my game.



Now here is something I don't get. These same scripts are used for weapons plaques and cases. And these work just fine in my mod with the USLEEP loaded as well. Only the weapons racks seem adversely affected.

User avatar
YO MAma
 
Posts: 3321
Joined: Thu Dec 21, 2006 8:24 am

Post » Sun Jun 19, 2016 6:49 pm


Scripts are not packed in the .esp. They're in the .bsa files. If you need to override a script (say from the unofficial patch), then I'd recommend you get a .bsa with your mod and have the script in there that you need.

User avatar
Anthony Diaz
 
Posts: 3474
Joined: Thu Aug 09, 2007 11:24 pm

Post » Mon Jun 20, 2016 2:58 am

Still not sure then why I'm having a problem with my mod and the script. Perhaps that script is not even the issue. I'm only going on what the USLEEP authors suggest. I just know my weapons racks don't work with USLEEP turned on.

User avatar
Megan Stabler
 
Posts: 3420
Joined: Mon Sep 18, 2006 2:03 pm

Post » Sun Jun 19, 2016 10:35 pm

Load order could be an issue, but I assume that you have your unofficial patch near the top. You can also use TESV-Edit and compare what the mods override and conflict with.

User avatar
Jessica Phoenix
 
Posts: 3420
Joined: Sat Jun 24, 2006 8:49 am

Post » Sun Jun 19, 2016 10:19 pm

Yes, my mod as at bottom and the patch is top. I have used TES5Edit to clean, but haven't really gone beyond that. If I load USLEEP and my mod up, I'll be able to compare the two then....?

User avatar
Phoenix Draven
 
Posts: 3443
Joined: Thu Jun 29, 2006 3:50 am

Post » Sun Jun 19, 2016 2:03 pm

Yeah, load them both and the Apply Filter for Cleaning tool can help find conflicts (you'll have to know what objects to look at).



Back at the script issue. I'm not sure how your mod is set up. The USLEEP script will override the vanilla script and be the active script, unless you have a bsa with the weapon rack script in it or have it out as a loose file. I don't have the USLEEP mod on my system, but I have the version of Skyrim.esm only. It looks like the unofficial patch script removed a few properties (among other edits). This right there is enough to cause problems if the USLEEP script is active in your mod.

User avatar
Smokey
 
Posts: 3378
Joined: Mon May 07, 2007 11:35 pm

Post » Sun Jun 19, 2016 9:39 pm

SkyBeth, do you have any other mods active? Might be one of those overriding the USLEEP script with the script in their BSA. A lot of people have had this problem in the past when they unpack the game BSA files into the various Data sub directories and then inadvertently include things they don't need back into their own mod bsa.

User avatar
Trey Johnson
 
Posts: 3295
Joined: Thu Oct 11, 2007 7:00 pm

Post » Sun Jun 19, 2016 4:45 pm

This is really what I don't understand....I only have the following:



USLEEP + their hi-res add-on



SKSE



ENBOOST but without the ENB



Timing is Everything: which is an interface that allows you schedule when you want things to happen, such as vampires appearing in towns, or the frequency of dragons appearing.




SKYUI: Menu Interface



Hearthfire Multiple Kids



Multiple Floors Sandboxing



Since I returned to vanilla I did not install any cities, houses, etc., that might contain that script. It's not in my Script folder.



The only script in Script folder with the word weapon in it is a SKSE script:



criptname Weapon extends Form Hidden


; Fire this weapon base object from the specified source

Function Fire(ObjectReference akSource, Ammo akAmmo = None) native



; SKSE additions built 2014-07-08 04:02:05.441000 UTC


int Function GetBaseDamage() native

Function SetBaseDamage(int damage) native


int Function GetCritDamage() native

Function SetCritDamage(int damage) native


float Function GetReach() native

Function SetReach(float reach) native


float Function GetMinRange() native

Function SetMinRange(float minRange) native


float Function GetMaxRange() native

Function SetMaxRange(float maxRange) native


float Function GetSpeed() native

Function SetSpeed(float speed) native


float Function GetStagger() native

Function SetStagger(float stagger) native


int Function GetWeaponType() native

Function SetWeaponType(int type) native


; works on the path to the nif file representing the in-game model of the weapon

string Function GetModelPath() native

Function SetModelPath(string path) native


; works on the path to the nif file representing the icon for the weapon in the inventory

string Function GetIconPath() native

Function SetIconPath(string path) native


; works on the path to the file representing the message icon for the weapon

string Function GetMessageIconPath() native

Function SetMessageIconPath(string path) native


; works on the enchantment associated with the weapon

Enchantment Function GetEnchantment() native

Function SetEnchantment(Enchantment e) native


; works on the enchantment value of the associated weapon

int Function GetEnchantmentValue() native

Function SetEnchantmentValue(int value) native


; works on the weapon model when equipped of the associated weapon

Static Function GetEquippedModel() native

Function SetEquippedModel(Static model) native


; Returns the particular equipslot type

EquipSlot Function GetEquipType() native

Function SetEquipType(EquipSlot type) native


string Function GetSkill() native

Function SetSkill(string skill) native


; DamageResist

; ElectricResist

; FireResist

; FrostResist

; MagicResist

; PoisonResist

string Function GetResist() native

Function SetResist(string resist) native


; works on the spell that applies when critting

Spell Function GetCritEffect() native

Function SetCritEffect(Spell ce) native


; Gets, sets or unsets whether the the crit effect should only occur on death

bool Function GetCritEffectOnDeath() native

Function SetCritEffectOnDeath(bool ceod) native


; Gets/sets the weapons crit multiplier

float Function GetCritMultiplier() native

Function SetCritMultiplier(float crit) native


; returns the weapon template of this weapon

Weapon Function GetTemplate() native


bool Function IsBattleaxe()

return HasKeywordString("WeapTypeBattleaxe")

endFunction


bool Function IsBow()

return HasKeywordString("WeapTypeBow")

endFunction


bool Function IsDagger()

return HasKeywordString("WeapTypeDagger")

endFunction


bool Function IsGreatsword()

return HasKeywordString("WeapTypeGreatsword")

endFunction


bool Function IsMace()

return HasKeywordString("WeapTypeMace")

endFunction


bool Function IsStaff()

return HasKeywordString("WeapTypeStaff")

endFunction


bool Function IsSword()

return HasKeywordString("WeapTypeSword")

endFunction


bool Function IsWarhammer()

return HasKeywordString("WeapTypeWarhammer")

endFunction


bool Function IsWarAxe()

return HasKeywordString("WeapTypeWarAxe")

endFunction
User avatar
Breanna Van Dijk
 
Posts: 3384
Joined: Mon Mar 12, 2007 2:18 pm

Post » Sun Jun 19, 2016 2:13 pm

The script would be in USLEEP.bsa or whatever it's called.

User avatar
Rudy Paint fingers
 
Posts: 3416
Joined: Sun Nov 11, 2007 1:52 am

Post » Sun Jun 19, 2016 3:51 pm

Right I know. But, the question is how to get that script to work in my mod.....

User avatar
CORY
 
Posts: 3335
Joined: Sat Oct 13, 2007 9:54 pm

Post » Sun Jun 19, 2016 10:41 pm

Yes, you are able to do that since I've done for AFT and USKP shown in http://afkmods.iguanadons.net/index.php?/gallery/image/1884-aft-override-uskp/ picture.

User avatar
carla
 
Posts: 3345
Joined: Wed Aug 23, 2006 8:36 am

Post » Sun Jun 19, 2016 7:11 pm

For some reason, I'm getting don't have permission error with that link. I am signed in at AFK.

User avatar
Stace
 
Posts: 3455
Joined: Sun Jun 18, 2006 2:52 pm

Post » Sun Jun 19, 2016 11:23 pm

Ok, 6 mos later and still having this problem. I know a bit more about "how to do things". I've since cleaned out skyrim reverting to vanilla. The only scripts in the DATA/Scripts are my own scripts (14) which are not related to the weapon's rack.



The problem items in question are


WeaponsRackMidActivatorPlayerHouse with script WeaponRackActivateSCRIPT



WeaponRackMidPlayerHouse with script WeaponRackTriggerSCRIPT



Here is a pic of my DATA/Scripts folder which only contains my mod's scripts:


http://i.imgur.com/QdCKLdY.png




I did check with TESEdit and here is the conflict results here (This was pre-cleanup):


http://i.imgur.com/SmN5Pwd.png



I actually did make a patch for this which made it possible to use USLEEP and my mod but I don't think I can patch someone else's mod and that is a poor resolution for this weird problem. Also, I do have PM off to Arthmoor and he commented, " If your mod merely USES the vanilla weapon rack scripts, you won't have a conflict and everything will "just work". If instead your mod is intentionally including the vanilla rack scripts (which you should never do), you will definitely have a conflict-and it would be a pretty bad one that would be damaging to the saves of anyone relying on USLEEP's fixes to keep their stuff from getting lost".....hopefully Arthmoor doesn't mind my publically posting....but I am near ready for publishing except for this major hiccup.



In the meantime, I went ahead and actually deleted every cell in my mod that had any weapon's racks, made USLEEP a master and recreated weapon's rack, no change. I deleted my Scripts folder from skyrim/data and recreated a weapon's rack in a remaining cell. Won't work. Checked with a vanilla weapon's rack, didn't work.



Wits End at this point, further input on this is very much appreciated.




User avatar
maya papps
 
Posts: 3468
Joined: Mon Aug 07, 2006 3:44 pm

Post » Mon Jun 20, 2016 12:30 am

As I mentioned to you in the PRIVATE conversation you don't seem to want to keep private now, you are editing the base weapon rack objects. That's something you should never do and is ultimately the source of your entire problem.



If all you are doing is using them in a level, you don't need to touch the base records at all. Editing base records for no reason is seriously bad practice.

User avatar
Yvonne Gruening
 
Posts: 3503
Joined: Mon Apr 23, 2007 7:31 pm

Post » Mon Jun 20, 2016 1:55 am

Ok, last evening I opened up the WeaponRackActivateSCRIPT in CK attached to one of my weapons rack. Read through the entire thing, every parentheses, semicolon, space, phrase, etc. and compared it to the same vanilla script I opened in notepad coming from skyrim.rar. They are both identical. This morning however, looking at TES5Edit again I saw (and remembered) that last yr I ticked off the WeaponRackMidActivatorPlayerHouse "Child Can Use". I cleared that this am.



Here is the current TES5Edit view:


http://imgur.com/pcCIc8p



No more WeaponsRackActivateSCRIPT conflict that I can tell....however, the weapon rack still does not work. Scrolling down TES5Edit, there are lists of Skyrim.esm and my mod, but I don't think I see any conflicts. Anyway, my mod racks works fine with skyrim, the problem is they don't with USLEEP loaded.


http://imgur.com/9Q5F9IQ



I don't know where to go with this now. Help appreciated.

User avatar
Jessica Phoenix
 
Posts: 3420
Joined: Sat Jun 24, 2006 8:49 am

Post » Sun Jun 19, 2016 7:33 pm

UPDATE & SOLVED: I neglected to clean my mod following the "child can use" edit/error mentioned above. Once cleaned and tested, the weapons rack now work with USLEEP.



Thank you all who have helped me learn a handful of things, and thanks Arthmoor for helping me out with this yesterday it got me over this massively stupid problem I created for myself.

User avatar
Kayla Oatney
 
Posts: 3472
Joined: Sat Jan 20, 2007 9:02 pm

Post » Sun Jun 19, 2016 6:31 pm

I'm sorry to say I leaped for joy too soon. I've now kind of have the opposite problem. My racks now work with USLEEP in my mod. I also tested with another published mod and they also work. Work also without USLEEP. However, the vanilla racks now do not work, not even when I don't load USLEEP.



Again, here is the TES5Edit screen. Haven't a clue where to go now except to let it be known that my mod conflicts with USLEEP when and if I publish....


http://imgur.com/XxTkHxe



Any kinda of guess is welcome at this point.

User avatar
Mark Hepworth
 
Posts: 3490
Joined: Wed Jul 11, 2007 1:51 pm


Return to V - Skyrim