Xaranth Posted December 18, 2012 Share Posted December 18, 2012 (edited) So, I finished up Dead Money, played for awhile, then got suspicious that none of my needs meters were ticking. I checked, and they were all locked at null. I managed to get the sleep meter going again after sleeping in an owned bed, but Radiation, Water, and Food are still locked - I can't even move them with player.damageav in the console. Anyone know how to get them UNlocked again, and if I'm going to need to do this again after every other DLC? Edit: Forgot to mention, I tried turning Hardcore mode off and then on again (I seem to remember reading something about that being necessary), but that didn't make any difference. Edited December 18, 2012 by Xaranth Link to comment Share on other sites More sharing options...
Xaranth Posted December 18, 2012 Author Share Posted December 18, 2012 After some investigation, I found that this problem (In my case) was caused by the permanent values of my character's sleep/rad/h20/food characteristics being set to... various things other than zero. I don't know why that happened, I can only guess it was sloppy scripting on the part of some Oblivion dev. I'm going to put a fix together and upload it. Link to comment Share on other sites More sharing options...
Xaranth Posted December 18, 2012 Author Share Posted December 18, 2012 Fix Posted Link to comment Share on other sites More sharing options...
WarenAlKar Posted December 19, 2012 Share Posted December 19, 2012 I had a look into this, and the only thing I've found so far that might be causing it is the NVDLC01RestUp actor effect that Dead Money uses; each DLC has it (NVDLC02RestUp, NVDLC03RestUp, etc). It reduces all hardcore meters by 10000 and restores your health by the same amount, but on the other hand it doesn't touch the rad meter and so I'm inclined to think it's something else. Link to comment Share on other sites More sharing options...
Xaranth Posted December 19, 2012 Author Share Posted December 19, 2012 I had a look into this, and the only thing I've found so far that might be causing it is the NVDLC01RestUp actor effect that Dead Money uses; each DLC has it (NVDLC02RestUp, NVDLC03RestUp, etc). It reduces all hardcore meters by 10000 and restores your health by the same amount, but on the other hand it doesn't touch the rad meter and so I'm inclined to think it's something else. Actually found the rad meter breakage was my fault. Must've been half asleep when I scripted my auto-doc, because MY auto-doc was using modav radiationrads instead of restoreav. >.> Whoops. Link to comment Share on other sites More sharing options...
Xaranth Posted December 19, 2012 Author Share Posted December 19, 2012 Well now, this is interesting. It seems resting in a bed ALWAYS makes a change to the permanent AV SleepDeprevation, although rest can't knock your current value below 0 (Or maybe 2, hard to tell). This game is so strange, mechanics-wise. I'm going to have to tweak my fix. Link to comment Share on other sites More sharing options...
WarenAlKar Posted December 20, 2012 Share Posted December 20, 2012 Well now, this is interesting. It seems resting in a bed ALWAYS makes a change to the permanent AV SleepDeprevation, although rest can't knock your current value below 0 (Or maybe 2, hard to tell). This game is so strange, mechanics-wise. I'm going to have to tweak my fix. Good catch. Testing it out a bit I can see now why those NVDLCRestUp actor effects would cause the sleep meter to freeze. Because if the permanent actor value for sleepdeprevation is -200 or something, using the RestoreAV function with a large enough number will push the actor value all the way to the permanent actor value (so an actor value for sleepdeprevation of 4, say, will become an actor value of -200 to match the permanent actor value). Of course I'm not sure yet how that negative number grows so much, because every time you sleep it seems to reset back to 0 and then the game subtracts the difference between the two values (normal and permanent) from the permanent actor value. For example, in the test I did the PAV was -2543 and the AV was -2465 for sleep deprevation, so when my character woke up their PAV was changed to -78. Which all seems to me like a bug in the implementation, like someone forgot to use the RestoreAV function instead of the ModAV function. Link to comment Share on other sites More sharing options...
Xaranth Posted December 20, 2012 Author Share Posted December 20, 2012 Mmm. I never tested sleeping with a negative AV... But yeah, it does seem like the whole thing is really cockamamie weird. Yes though, sleeping IS messed up. I wonder if the sleep gauge items are broken the same way or it's just the bed. Link to comment Share on other sites More sharing options...
WarenAlKar Posted December 20, 2012 Share Posted December 20, 2012 (edited) Mmm. I never tested sleeping with a negative AV... But yeah, it does seem like the whole thing is really cockamamie weird. Yes though, sleeping IS messed up. I wonder if the sleep gauge items are broken the same way or it's just the bed. The only difference between beds is a script some have to check whether you own it or not so they can give you the Well Rested perk. Also I can see now how the permanent actor value keeps growing and growing. Because the actor value is always a positive number (except when the RestoreAV function is used by some effects), and the game lowers your sleepdeprevation by modifying the permanent actor value, the difference between these two values will keep growing and growing, meaning your permanent sleepdeprevation value goes further and further into negative territory. Taking my earlier example where my PAV was changed to -78 because that was what the game got when it did the calculation (PAV sleepdeprevation - AV sleep deprevation), when I woke up from sleeping my AV sleep deprevation was 4. So that means there is now a difference of 82 between PAV sleep deprevation and AV sleepdeprevation (-78 - 4). Meaning that even if I were to sleep straight away my PAV sleep deprevation would be set to -82, and when I wake up my AV sleepdeprevation is always 4 or so. And so on and so on the cycle goes every time you sleep, pushing that PAV sleep deprevation value further into negative territory. So that when the game correctly uses the RestoreAV function to restore all your hardcore meters when you transition between DLC areas, your AV sleepdeprevation is set to whatever crazy negative number your PAV sleepdeprevation has grown to because of the sleeping bug. Edit: To clarify here, this is what causes the hardcore meters to "freeze" (technically they aren't frozen because the actor value is still incrementing). If an actor value dips into negative territory it will cause the Pip-Boy meters to NOT display a value at all, at least until the actor value increments back to 0. What's also annoying with this bug is I'm pretty sure the code that handles sleeping is hard-coded, meaning it can't be fixed in the GECK. Only thing one can do is create scripts to fix the mistake, like what you've already done, and what I'd suggest doing there is correcting the permanent actor value back to 0 like you've already done, and then reducing the actor value by the same amount to account for the increase. Edited December 20, 2012 by Waren_AlKar Link to comment Share on other sites More sharing options...
Xaranth Posted December 20, 2012 Author Share Posted December 20, 2012 @Waren_AlKar - Yeah, that's pretty much what I worked out. The other two, Food and Water seem to be all right - though I haven't tested them extensively - but that SLP meter is seriously broken. It looks like they bandaged it by something like a forceAV call for the beds, but I can't really tell, it does seem to be all engine-coded, not plugin-coded. Anyway, I have my bandaid on their bandaid now, so I'm not going to worry it too much more. :) Link to comment Share on other sites More sharing options...
Recommended Posts