JahReit Posted June 16, 2018 Posted June 16, 2018 7 hours ago, bicobus said: CTD after beth logo usually means that a master is missing (or isn't being loaded). Check your MO's esp list to be doubly sure. On 6/14/2018 at 6:39 PM, JahReit said: I don't think this is a papyrus problem, but don't know where else to post. CTD after beth logo on new game and old saves (every profile). Load order and mods are exactly as before with no problems. MO, wyre bash, tesvedit, loot all show nothing wrong, even tried save cleaner just incase. Reinstalled papyrusutil, MO, skse, redid bash patch, everything I could think of. Also reinstalled direct x Spoiler This is the entire log: [06/14/2018 - 06:27:13PM] Papyrus log opened (PC) [06/14/2018 - 06:27:13PM] Function GetEffectMagnitudes in the empty state on type Ingredient does not exist. Function will not be flagged as callable from tasklets. [06/14/2018 - 06:27:13PM] Update budget: 1.200000ms (Extra tasklet budget: 1.200000ms, Load screen budget: 2000.000000ms) [06/14/2018 - 06:27:13PM] Memory page: 128 (min) 512 (max) 76800 (max total) I truly appreciate your attempt to help, but since I've checked MO, wyre bash, tesvedit and loot for any problems and all those report "no problems", I don't think it's a missing master ... unless there is a situation where none of those utilities can spot it. Besides, like I said, I've played on all my profiles without a hitch and I didn't change anything in the mod list nor the order. I even loaded an older copy of MO to see if MO had changed something- same results, CTD. So I reinstalled fnv to have something to play. Same thing happened, CTD. I thought updating enboost might have caused the crash, but since it has no connection to fnv don't think that is it.
Monsto Brukes Posted June 16, 2018 Posted June 16, 2018 42 minutes ago, JahReit said: I truly appreciate your attempt to help, but since I've checked MO, wyre bash, tesvedit and loot for any problems and all those report "no problems", I don't think it's a missing master ... unless there is a situation where none of those utilities can spot it. Besides, like I said, I've played on all my profiles without a hitch and I didn't change anything in the mod list nor the order. I even loaded an older copy of MO to see if MO had changed something- same results, CTD. So I reinstalled fnv to have something to play. Same thing happened, CTD. I thought updating enboost might have caused the crash, but since it has no connection to fnv don't think that is it. If you haven't already, you should go beyond automated tools. I've found that none of them detect more than superficial problems . . . which isn't their fault, it's just the nature of the beast. One thing I've found extremely useful over time is having both a minimal profile and a blank profile in MO. I had a similar problem the other day where my main profile would CTD right after the logo, but the minimal worked as usual. I exported the 2 configs to text file, ran a diff on them, and dug into the entries that were different. I eventually found the problem. That's what I suggest you do. A blank profile would be easy to create, so start there. However, if even a blank doesn't work, then there may be something in your skyrim install dir. If that's the case, look at file listings in all dirs, sorting by date to see if you can find the offending file. The main reason this shit is a pain in the ass is because nobody wants to get all fucky with the load order and eliminating mods 1 x 1 to find the flaw cuz it takes "a while" to start the game and get to the point where it crashes. You can mitigate this by going a handful of mods (5-8) at a time, then when it stops crashing, go thru the last handful 1 x 1. One way to reduce this PITA factor is to cluster up a bunch of mods into 1 dir. This is where "amazing world of shitty bikinis" (or whatever it is) is great because tht'at like ten hundred outfits all in one dir. Nothing care if there's 40 eleven .esp in one mod cuz the game sees it all the same. Bottom line is that you're going to wind up doing OS level sleuthing to figure out where the problem is. So buckle up, buttercup ? . . . bite the bullet and just do that thing you've been avoiding. 2
JahReit Posted June 16, 2018 Posted June 16, 2018 50 minutes ago, Monsto Brukes said: If you haven't already, you should go beyond automated tools. I've found that none of them detect more than superficial problems . . . which isn't their fault, it's just the nature of the beast. One thing I've found extremely useful over time is having both a minimal profile and a blank profile in MO. I had a similar problem the other day where my main profile would CTD right after the logo, but the minimal worked as usual. I exported the 2 configs to text file, ran a diff on them, and dug into the entries that were different. I eventually found the problem. That's what I suggest you do. A blank profile would be easy to create, so start there. However, if even a blank doesn't work, then there may be something in your skyrim install dir. If that's the case, look at file listings in all dirs, sorting by date to see if you can find the offending file. The main reason this shit is a pain in the ass is because nobody wants to get all fucky with the load order and eliminating mods 1 x 1 to find the flaw cuz it takes "a while" to start the game and get to the point where it crashes. You can mitigate this by going a handful of mods (5-8) at a time, then when it stops crashing, go thru the last handful 1 x 1. One way to reduce this PITA factor is to cluster up a bunch of mods into 1 dir. This is where "amazing world of shitty bikinis" (or whatever it is) is great because tht'at like ten hundred outfits all in one dir. Nothing care if there's 40 eleven .esp in one mod cuz the game sees it all the same. Bottom line is that you're going to wind up doing OS level sleuthing to figure out where the problem is. So buckle up, buttercup ? . . . bite the bullet and just do that thing you've been avoiding. Great advise, thanks. I have a bad feeling the problem isn't skyrim since fnv did the same with a new install and installing my working skyrim backup didn't either. Might/must be something else that change that's affecting both beth games. I'm old and have eye problems (a chore just reading posts) so I was hoping the solution would be simple. Doesn't appear to be the case. New install doesn't work so I have no idea where to start.
Wyrade Posted June 16, 2018 Posted June 16, 2018 It most likely won't help, as your problem doesn't feel like an issue this would handle, but do you have crash fixes installed (https://www.nexusmods.com/skyrim/mods/72725/)? If not, you could try it. But I feel your issue is before that, and the kind that is very hard to troubleshoot without being there and trying things. A shitload of things can cause crash in skyrim. Also, are you using MO1 or MO2?
JahReit Posted June 16, 2018 Posted June 16, 2018 13 minutes ago, Wyrade said: It most likely won't help, as your problem doesn't feel like an issue this would handle, but do you have crash fixes installed (https://www.nexusmods.com/skyrim/mods/72725/)? If not, you could try it. But I feel your issue is before that, and the kind that is very hard to troubleshoot without being there and trying things. A shitload of things can cause crash in skyrim. Also, are you using MO1 or MO2? Crash fix, yes. Same problem with MO1 and MO2. Game was running fine, now it isn't. I hate to lose skyrim play (10482 hrs), but outside reinstalling OS and everything, or pulling out my old computer, I'm at a loss.
JuliusXX Posted June 17, 2018 Posted June 17, 2018 12 hours ago, JahReit said: Crash fix, yes. Same problem with MO1 and MO2. Game was running fine, now it isn't. I hate to lose skyrim play (10482 hrs), but outside reinstalling OS and everything, or pulling out my old computer, I'm at a loss. I just posted this instruction to another thread. This is something you could try. IMPORTANT: 1) DISABLE SSME/SKSE memory patch (only the memory patch, if you're using it). Both of these ways to allocate more memory are oudated and less effective than the option below. 2) Install Crash Fixes. On its page, carefully read about "memory allocation". Activate it and tweak to fit your current mod setup. 3) Also, be sure to use ENBoost together with Crash Fixes, even if you don't have ENB. After you installed Crash Fixes via mod manager, do the next: 1) Install "SKSE Plugin Preloader" (http://www.nexusmods.com/skyrim/mods/75795/?). Download, unzip and place D3DX9_42 to your Skyrim folder (where your TESV.exe is, not in the /data folder). 2) Go to /data/SKSE/plugins/CrashFixPlugin.ini and open it with any text redactor (notepad for example). 3) Find and set UseOSAllocators to 1 (UseOSAllocators=1) 4) Find and set CustomMemoryBlock to 1 (CustomMemoryBlock=1) 5) Find and set MemoryInfoConsole to 1 (MemoryInfoConsole=1) 6) Launch Skyrim and open console "~" button. 7) Look on maximum memory block load. If it's 90% or higher - exit game and find CustomMemoryBlockTotalSizeMb value. Set it a bit higher (for example, if it was 110, set it to 120. Original value is 64), save .ini files, launch Skyrim and check memory block load again. Do this until maximum load won't be higher that 85-90% (check this in populated towns or combat).
Monsto Brukes Posted June 17, 2018 Posted June 17, 2018 18 hours ago, JahReit said: Great advise, thanks. I have a bad feeling the problem isn't skyrim since fnv did the same with a new install and installing my working skyrim backup didn't either. Might/must be something else that change that's affecting both beth games. I'm old and have eye problems (a chore just reading posts) so I was hoping the solution would be simple. Doesn't appear to be the case. New install doesn't work so I have no idea where to start. I wouldn't have a problem remoting in to your pc and digging around for a bit to see if I could figure it out. I'm not going to guarantee I can fix it or tell you what's wrong with it, and I don't want to become the tech help guy long term. I'm just reaching down in this moment to give you a hand up.
JahReit Posted June 17, 2018 Posted June 17, 2018 Thanks for the advice, help, and offer guys. I have one more thing to try when I can make myself do it.
JahReit Posted June 22, 2018 Posted June 22, 2018 Last post on my problem in this thread. Very long story short/shorter, bad audio driver. Reinstalled steam, skyrim and a multitude of others that got trashed during my search. Skyrim worked, but 1,000 plus fps doesn't work for skyrim, so I reinstalled msi afterburner which caused the same problem I had orignally. Replaced with Nvidia Inspector, fps and everything good now. Hopefully this solution might help someone else. 1
qotsafan Posted September 6, 2018 Posted September 6, 2018 14 hours ago, Inte said: @Ashal, what does 'AdjustIntValue' return? the int value, that's already stored on that form and string key, aka the value before it's adjusted.
darkconsole Posted September 7, 2018 Posted September 7, 2018 On 9/6/2018 at 12:23 PM, qotsafan said: the int value, that's already stored on that form and string key, aka the value before it's adjusted. *before* its adjusted? i've never needed the return since the entire point of Adjust was i didn't care what was inside, but that seems silly to me that its the before value not the after value XD i mean, you don't do If(Something == SomethingElse) to find out if it was true before you tested it, its to test the current state XD guess i better remember to never write code like If(StorageUtil.AdjustIntValue(None,KeyName,Inc) > 10) lol
qotsafan Posted September 7, 2018 Posted September 7, 2018 10 hours ago, darkconsole said: *before* its adjusted? i've never needed the return since the entire point of Adjust was i didn't care what was inside, but that seems silly to me that its the before value not the after value XD i mean, you don't do If(Something == SomethingElse) to find out if it was true before you tested it, its to test the current state XD guess i better remember to never write code like If(StorageUtil.AdjustIntValue(None,KeyName,Inc) > 10) lol Hmm, now that you say it, that does make little sense and after testing it, it indeed seems to resturn the adjusted value, instead of the already existing value. That said, I went after reading comprehension of the comment above the function, which states the following: Quote Get previously saved int/float/string/Form value on form or globally. Apparently that's not the case. Ah, I see now, since string and form are also mentioned in the comment, it seems like it was just copy/pasted from the "Get" section.
Inte Posted September 8, 2018 Posted September 8, 2018 Hence my question. But yes, my tests also show that the function does indeed return the adjusted value (as it should).
Chosen Clue Posted October 19, 2018 Posted October 19, 2018 Will there be a PapyrusUtil for Fallout 4 in the future? i feel that useful mod utilities are what is lacking for Fallout 4's modding to really get interesting.
Dragon_Nexus Posted November 13, 2018 Posted November 13, 2018 Does anyone use this mod in Vortex? I'm getting a conflict error with SexLabFramework162. I don't want to delete this mod and simply assume it's in Sexlab or something, but I'm also not sure if I should make a rule to have it load before or after Sexlab. I'm still new to Vortex and learning how it all functions. I'm more used to NMM at this point, but Vortex feels a little better...so I'm switching over. Any help appreciated ?
zaira Posted November 25, 2018 Posted November 25, 2018 Is there a source code location or a more detailed description of the functions? For example the prefix functions in StorageUtil Is my assumption below correct? SetStringValue(obj,"prefix_1","value 1") SetStringValue(obj,"prefix_2","value 2") if CountAllObjPrefix(obj,"prefix") == 2 ClearAllObjPrefix(obj,"prefix") endif if CountAllObjPrefix(obj,"prefix") == 0 ; yeah! endif And this assumption below? SetStringValue(obj,"prefix_1","value 1") SetStringValue(obj,"prefix_2","value 2") if CountAllObjPrefix(obj,"prefix") == 2 debug_DeleteValues(obj) endif if CountAllObjPrefix(obj,"prefix") == 0 ; yeah! endif And this assumption below? StringListAdd(obj,"key","test1") StringListAdd(obj,"key","test2") if StringListAdd(obj,"key","test2",false) == 1 ; yeah! endif Update: my debug_DeleteValues assumption is correct
zaira Posted November 27, 2018 Posted November 27, 2018 It seems that JsonUtil has a severe bug - this is the start of my json file { "stringList" : { "categories" : [ "Knien", "Sitzen", "Liegen", "Stehen", "Laufen", "Arbeiten", "Aktion", "Tanzen", "Sklaven Aktion", "BDSM" ], "Knien" : [ "MariaKneelHandHead,0,1,0,Niederknien Hände am Kopf", Now I have the following code string[] category_names = JsonUtil.StringListToArray(JsonFileName,"categories") string[] animations = JsonUtil.StringListToArray(JsonFileName,category_names[0]) animations is empty It only works if categories and keywords are lowercase: { "stringList" : { "categories" : [ "knien", "sitzen", "liegen", "stehen", "laufen", "arbeiten", "aktion", "tanzen", "sklaven aktion", "bdsm" ], "knien" : [ "MariaKneelHandHead,0,1,0,Niederknien Hände am Kopf", "MariaLickFeet,0,4,0,Füße lecken", "zbfxKneelHead,0,5,0,Arschfickpose", "IdleCowering,0,66,0,Angst", "ZazAPC017,1,1,0,Niederknien (gefesselt)", "ZapWriBleedoutIdle,1,0,0,Verwundet (gefesselt)" ], Update: It seems that JSonUtil KeyName input is case insensitive (makes sense cause of papyrus string pooling) but internally the KeyName is converted to lower case and the JSON parser is case sensitive.
Inte Posted January 10, 2019 Posted January 10, 2019 1. Is there an easy way to merge 2 StorageUtil lists? Without grabbing each element from one list and adding it to the other? Something like, PapyrusUtil.MergeFloatArray() but for a StorageUtil list? 2. Any way to delete a .json file?
justedufun Posted January 22, 2019 Posted January 22, 2019 On 11/13/2018 at 2:00 AM, Dragon_Nexus said: Does anyone use this mod in Vortex? I'm getting a conflict error with SexLabFramework162. I don't want to delete this mod and simply assume it's in Sexlab or something, but I'm also not sure if I should make a rule to have it load before or after Sexlab. I'm still new to Vortex and learning how it all functions. I'm more used to NMM at this point, but Vortex feels a little better...so I'm switching over. Any help appreciated ? Same problem here, someone know what to do please ?
darkconsole Posted January 23, 2019 Posted January 23, 2019 6 hours ago, justedufun said: Same problem here, someone know what to do please ? sexlab includes papyrusutil you don't install this if you already have that...
Lupine00 Posted May 25, 2019 Posted May 25, 2019 Is the C++ source for this available anywhere? I keep thinking that I had a copy of it at one time, but I can't find it in my own files, and can't find a git repos on the net. I thought it was in the main download, but it isn't, just a compiled DLL. The most recent C++ source I can find is for 2.5, which is pretty ancient.
Lupine00 Posted May 28, 2019 Posted May 28, 2019 I'm looking for the latest source, because I want to extend my array math plugin to operate directly on StorageUtil items, instead of just arrays. I can see from the old source how they are stored, so I think I can do this with the information I have. I don't intend to import json objects, just StorageUtil. But, so many versions between 2.5 and 3.3 ... were there bug fixes? What got fixed? And if there was a bug fix, presumably it was something non-obvious that I wouldn't spot, as I'm not very familiar with SKSE and its patterns. I don't want to replicate some old, long fixed StorageUtil bug.
Ashal Posted May 28, 2019 Author Posted May 28, 2019 26 minutes ago, Lupine00 said: I'm looking for the latest source, because I want to extend my array math plugin to operate directly on StorageUtil items, instead of just arrays. I can see from the old source how they are stored, so I think I can do this with the information I have. I don't intend to import json objects, just StorageUtil. But, so many versions between 2.5 and 3.3 ... were there bug fixes? What got fixed? And if there was a bug fix, presumably it was something non-obvious that I wouldn't spot, as I'm not very familiar with SKSE and its patterns. I don't want to replicate some old, long fixed StorageUtil bug. I tend to avoid changing anything that'd break compatibility, so old source should still be applicable when it comes to API. Let me know what it is you want to actually do though and I'll tell you what I can. 1
Lupine00 Posted May 28, 2019 Posted May 28, 2019 3 hours ago, Ashal said: I tend to avoid changing anything that'd break compatibility, so old source should still be applicable when it comes to API. Let me know what it is you want to actually do though and I'll tell you what I can. I want to safely access a list (type of Int, or Float) from storage, on a form, or global, without introducing a memory leak or creating a deadlock. I want to safely update the values in a list, as above. I want to safely create a completely new list, as above. I want to extend the size of an existing list, as above. There's code that does all these things in the version 2.5 source. So I can see how it's being done, and could cut-and-paste the bits of that code I need. But if I do that, I'm worried that I won't be using the same lock that you use, which I might be able to work around, or it might be trouble. I need to figure out whether ICriticalSection is a shared resource, or something per plugin. I haven't had time to dig into that properly yet. To make sure I lock the same way, it seems that I should reference your DLL and call it to perform the operations However, as it doesn't export the functions, I'm not really sure how to get at them. Possibly they're in the VMClassRegistry that's passed into RegisterFuncs? But that might be random depending on how the plugins are loaded. If I go first, StorageUtil won't be in there. Not even sure if that registry is shared between DLLs... And even if they are, I'm unclear how to fish them out of there... It seems like it will take some time to research. This pushes me back towards a replication approach, where I simply ensure I only access those stores from my mod, using my plugin to avoid a locking problem. It doesn't seem ideal. Also, I haven't looked into what ICriticalSection actually is yet, in terms of implementation, so maybe if I use it, I'll get the same mutex as you anyway? Or it's a named resource or something that can be reliably accessed from different plugins rather than your own unique (per-plugin) mutex? Maybe it's easier to not do it at all, and just stick with array processing and access StorageUtil in Papyrus? For background: Spoiler My actual intent is to perform large vector operations on the lists. I currently do this with arrays, but I have many of my arrays in StorageUtil, so I could operate on them directly without ever going to the bother of making them into an array, then calling a function to operate on them, then writing them back to StorageUtil. I process hundreds of moderate size arrays (90+ values) like this. It was time consuming in Papyrus, but is close to instant in native code. e.g. My papyrus interface looks like this: Scriptname ArrayMath Hidden Float[] Function Add(Float[] arraySourceA, Float[] arraySourceB) Global Native Float[] Function Multiply(Float[] arraySourceA, Float[] arraySourceB) Global Native ...etc... And I want to add a new script like: Scriptname StorageMath Hidden Function Add(Form objKey, String sourceKeyA, String sourceKeyB, String resultKey) Function Multiply(Form objKey, String sourceKeyA, String sourceKeyB, String resultKey)
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now