Jump to content

Bookshelves issue - how to reset them?


Hoamaii

Recommended Posts

Hey guys,

 

I need a bit of advice from you.

 

Some users of my latest mod (Clearsky Hideout) report that the custom bookshelves in there are spitting the books back at them (some use Unlimited Bookshelves, some don't - so it's not that).

 

I think I have found what may have been causing this: when I checked collision layers and Trigger boxes around the bookshelves in the CK they were all XYZ'd around without any reason at all - they LOOKED right and correctly positioned in the render window but when I checked their Ref's 3D tags one by one, they were all showing crazy rotations when in fact they should all have their X, Y and Z rotation set to 0.

 

So I fixed the whole thing and repositioned everything correctly, checked the script's properties, etc. In game, they appear to work properly in a fresh install of the mod, but when I load a Clearsky save, now they "eat" books - meaning, I place 18 books in there but it will only count 17, or 15.

 

I believe this is caused by the bookshelf script having initiated already (never changed the script tho', entirely Vanilla), or even more probably by the game itself having stored in that save the incorrect positions of the collision markers and Trigger boxes.

 

So here's my question:

 

=> what can I do to make sure my mods users' who have this bug won't have to reinstall the mod completely to get the fraking bookshelves to work? Console command pcb makes no difference btw - I guess because triggerboxes and Collision layers have no 3D.

 

So is there a way to reset a cell that's already stored in game? Or just to make sure than the fraking Vanilla bookshelf system resets?

 

Many thanks in advance for you help :)

 

Cheers,

 

Hoamaii

Link to comment
Share on other sites

OK, been seraching the CK Wiki again and found this on http://www.creationkit.com/Cell_Reset

 

"To test Cell Reset in a location:

  • Make whatever state changes you want to test (eg. 'KillAll', etc.)
  • coc RiverwoodSleepingGiantInn (or somewhere else with a bed)
  • pcb
  • SetGS iHoursToRespawnCell 1
  • SetGS iHoursToRespawnCellCleared 1
  • Sleep for 2+ hours.
  • coc to any other exterior
  • Return to your location and test the results"

What does SetGS mean? SetGameSetting, I'd guess. So these are all console commands...

 

This seems a little complicated to ask mods users to do that... Isn't there a simpler way?

Link to comment
Share on other sites

I did ass about face for testing cell reset.

Go somewhere outside not in the cell you want to test.

 

open console: Set Timescale To 200000, hit enter and exit console.

Wait and count day to night cycles till it hits 30 or more (usually a few seconds in real time).

 

open console: Set Timescale To 20, hit enter and exit console and travel to the cell your wanting to test for reset.

 

But I would only do that for a test and not on a save I was going to continue playing.

Link to comment
Share on other sites

Hey thanks for the answer and the tip :)

 

My problem is not that I cannot test the reset in my game, I've done that - my bookshelves fix seems to work. Now I need to help my mod's users install it without having to go to such extremities - or having to restart the mod.

 

My problem is more that I'm trying to find a way for my mod's users to reset the bookshelves (or the whole cell if necessary) without having to go through all the trouble of: A. reinstalling a mod which, other than the bookshelves, works perfectly or B. asking them to sleep for 30 days.

 

I can't find any proper answer anywhere... :wallbash:

 

Now I was thinking maybe of using a very simple script placed on the door, which OnInit() would reset the whole cell just once and be done.

 

Any of you guys has a better idea?

Link to comment
Share on other sites

You don't want to reset the cell via script. That has different effects than a natural reset. One of those is to delete any items left in the cell by the player!

 

The actual required steps are:

  1. Get that cell unloaded from memory.
  2. Don't return to the cell until the CellResetTimer expires.

Doing that the most obvious way does require the player not returning home for over 30 in-game days.

 

Those instructions you found were a set of console commands to shortcut the entire process. The "coc" and "pcb" command get you out of the cell and then get it out of the game memory.

 

Yes, the "SetGS" is lowering the game settings controlling cell resets to their smallest value so that a simple wait (2 hours to be safe but 1 would be enough) can trigger a natural reset.

 

Wait works just as well as sleeping and that last "coc" to an exterior is not required.

 

 

You could script the entire process with the SKSE functions which can temporarily change game setting just like the GetGS console command. But if you don't want to use SKSE then the player's will just have to deal with it themselves.

 

Frankly, if they just go somewhere else, open the console and type "pcb" and "SetGS iHoursToRespawnCell 1", then wait at least one in-game hour before returning to the house everything should reset with minimal pain. The respawn setting will return to normal as soon as they save, quit (to desktop), and restart the game.

Link to comment
Share on other sites

Hey Cdcooley,

 

Thanks for the answer. Yeah, I know that forcing a cell via script has many effects I wish to avoid: deleting items they may have left in the cell is at least something I could warn them about, but re-intitialzing most running scripts is another one they won't be able to do anyhting about, and me neither.

 

Since not everyone by far has this "bookshelf bug" which would force them to reset the cell to fix it, I guess I could ask those who have it to wait till the cell resets the natural way 30 days later to see the fiw work. They may understand.

 

A few of them are willing to test my fix for me though, I guess I'll just need to walk them through the console way of doing this. AFTER they've made a clean save they can get back to once they've tested the script ;)

 

As long as I'm sure the GameSetting command "SetGS iHoursToRespawnCell" returns to the Vanilla settings once they've quit and reloaded their games (it does, doesn't it? no glitch or bad surprises to expect there?), I guess that would be the least complicated way to test this which I've found so far.

 

I have one more question: isn't the normal game's settings delay for non-clearable cells to reset 10 days rather then 30 days?

 

Thanks for your help, cdcooley, I really appreciate it :).

Link to comment
Share on other sites

Well, tried everything - resetting the cell whether the "normal" way (wait 30 days) or through scripts or console does NOT purge the cell's memory from the "twisted 3D" collision boxes!.. (maybe because they have no 3D). Their wrong coordinates seem to be stored in the saves no matter what!..

 

Only a fresh install seems to place correctly. Frak!..

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...