General Stores - a storage resource for packrats
v1.5

General Stores adds fully scripted, cross-mod safe storage capabilities to Skyrim. And does it with style!

Weapons, SoulGems, Books, Ore, virtually everything a packrat NEEDS can be stored and accessed from all the places you call home. General Stores creates a secure, shared storage hub accessed via stylized activators easily added to player homes or locations.  These activators function just like regular chests in-game, many with menu-driven fast transfer options.  

A simple demo home is included for non-modders or anyone interested in checking it out.  

This mod will absolutely NOT interfere with ANY other mod, unless specifically asked to do so.


	* Scripted access gives superfast menu-diven bulk transfers to and from your inventory.  Open an alchemy activator and with two clicks you've stored all the ingredients you are carrying.  Trudge across the breadth of Skyrim unencumbered to another home with an alchemy activator and with two clicks have immediate access everything previously stored.  

	* Activators can be placed anywhere in any mod as many times in as many places as you care to, allowing for direct access to your supplies from anywhere in the known universe.  Access from Elsweyr and parts unknown is theoretically possible, though such a thing has never been tried.  Also great for nofasttravel players looking to find some balance between convenience and realism.  Sucks to arrive in Windhelm ready to temper that shiny new bow only to remember you stashed your ingots in Markarth.

	* Dedicated activators for each storage Type emphasize world interaction.  This is no one button rinse cycle.  You go to your Smithing Stores to manage your smithing supplies.  You have your Enchanting Stores near [U]all[/u] your enchanting tables.  You can put a Potion Stores next to your alchemy station for brewing and another by the door to stock up before adventuring.  You interact with your environment efficiently, making inventory management engaging and immersive, not RSD inducing tedium.  

	* Multiple styles of activators are provided for each storage Type giving you more flexibility in layouts.  Some are meant to sit on shelves, others floor standing.  Different meshes, identical access.  All can be re-sized to fit your needs.  Most activators included are great for decorating, having a thematic connection to the content rather than just another copy of the same old chest.  You can, of course, build your own activators that look like the same old chests.  If you are into that sort of thing.

	* If you have any modding skills at all, you can add General Stores to ANY mod in 10 minutes or less.  Really.  Just drag activator objects to where you want them, save and go play.  CK does a pretty good job at initial object placement.  Perfection, as you are no doubt aware, takes somewhat longer.

	* You can enjoy this mod with just the included sample home, without any fuss or so much as a scrap of work on your part.  The sample nicely outfits Anise's cabin with comprehensive automated storage and a useable bed.  Cell ownership is neutralized so followers don't complain.  Its a pretty sweet flop early on and the scripted containers alone are worth the download.  Safe, stable, and did I mention, cheap?  You still have to kill Anise, but you know you want to.


7 Menu driven containers are included:

	Books & Papers Library 		: Store All, Store One Copy, Browse Library, Exit
	Smithing Stores 	        : Store All, Grab Smithing, Grab Smelting, Grab Tanning, Inspect Stores
	Food Stores 		        : Store Raw, Store Cooked, Retrieve Raw, Retrieve Cooked, Inspect Foodstores, Exit
	Alchemy Stores  	        : Store All, Keep one, Take Cooking Items, Inspect Stores, Exit
	Scroll Stores   	        : Store All, Keep one, Retrieve scrolls, Inspect Scrolls, Exit
	SoulGem Stores			: Store Grand Souls, Store Filled Gems, Store Unfilled Gems, Open Gems Stores, Exit
	Potion Stores 		        : Store All, Store Potions, Store Poisons, Take Potions, Take Poisons, Inspect Stores, Exit	
	(By default, the potion menu will not handle brewed potions.  As you add brewed potions to the locker manually, they become recognized and  and fully automated as well).

7 Additional containers provide universally accessible storage without Type restrictions.  
They have no menus and function just like normal chests in-game:

	Stolen Goods 		: (thematic activators)
	Archery Stores 	        : (thematic activators)
	Treasures		: (thematic activators)
	Armor Stores		: (chest or rack)
	Weapon Stores		: (chest or rack)
	Magical Staffs		: (rack only)
	Follower's Gear		: (plain old chest only)

Special Bonus Activators:

	Dragon Claw Displays - Placeable Dragon Claw displays are a resource for more advanced modders. While placed like storage activators, the modder must set a script property for proper function.  If you can do vanilla racks, these are much easier!  Placed claws are Havok immune until picked up by the player.

	Bug Jar Displays - Placeable Bug Jar displays are another resource for more advanced modders. They function identically to the Dragon Claw Displays, but obviously, they store your bug jars.

	Mammoth Mortar - A placeable Mortar & Pestle scripted to grind Mammoth Tusks into Mammoth Tusk Power. OK, a little OT, but I stumbled across a stack of these rummaging around Anise's basement.  I thought I'd throw one in as a bonus while supplies last.

No worries, Mate!

The GeneralStores.esm master has only a microscopic footprint, adding a small amount of new content walled off from the rest of the game.  By itself, it makes no changes to nor has any interaction whatsoever with anything in Skyrim.  All items stored during gameplay are held by the esm, NOT by esp applications.  So long as GeneralStores.esm remains active, it will continue to safeguard your valuable gear.  

Bottom line is this master will not cause conflicts and it CANNOT lose your stuff.  Compatible mods can be reset or swapped around at will with complete peace of mind.  If heaven forbid a patch file you are tweaking goes bad, the demo or any compatible mod can be activated to regain immediate access to your stores.  Anytime.  Anywhere.  You can't buy that kind of security, but you can download it here for free.


Compatibility:

Uh, like I said, "No worries, Mate".  General Stores is entirely self contained and should not interfere with any other mod.  Mod added foods and ingredients are ignored, but compatibility patches are possible.  A patch for SkyMoMod is available as an optional download.


How to install:

Open the archive and copy GeneralStores.bsa and GeneralStores.esm to your \data directory. Do not copy any of the folders.  Its only two files, really not that complicated.  Enable GeneralStores.esm in the launcher of your choice.  Load order doesn't matter. 

If you want to see what this mod looks like before you install, browse the \Totally Unnecessary Screenshots folder.

If you want to use the sample house mod, go to the \Optional Sample Home Mod folder and copy AnisesCabin(GS).esp to your \Data directory. This mod will add access to all 13 storage lockers from Anise's cabin (west of Riverside), a wretched shack you can move into early in the game. Absolutely THE BEST in dirt cheap housing!

For insights on how to use this mod with the Creation Kit, browse the \HelpfulHowtoScreenshots folder for some helpful, how-to screenshots.

If you are a modder and you are seeing <!> in the Creation Kit , go to the \Optional Unpacked BSA Files folder and copy the meshes, scripts, and textures folders to your \Data directory.  Accept all overwrite notices.  They are safe.


Changelog:

All versions are backwardly compatible.  Items stored under earlier versions are fully accessible under later releases.

v1.5 minor update
 - New Bug Jar Display Racks
 - New Potion Stores Menu
 - All meshes optimized for stability and reduced load.
 - BookStack Mesh fix (HT @berticus0001)
 - Gemstand textures now included (reduced tranparent textures from tyco1709)


v1.4 minor update
 - New storage locker for Magical Staffs
 - New rack activator for Weapon stores
 - New rack (dummy) activator for Armor stores
 - Spelling correction on Smithing Stores menu
 - Desktop books activator made fully static
 - Scroll rack activator made fully static
 - Foodstores Pot made fully static
 - Scroll stand activator trimmed to facilitate stacking and packing.
 - Updated scripts properly closes containers.  Big thanks to HerrBaron for the fix.
(NOTE to modders:  Size and orientation of Foodstores activators Pot and Cheeseboard have changed).

15June2012 
 - Compatibility patch added to Optional Files: SkyMoMod food and ingredients

v1.3 minor update
 - Dragon Claw display stands added
 - Smithing stores menu revised.  Now:  Store All, Grab Smithing, Grab Smelting, Grab Tanning, Inspect Stores
 - Internal naming standardized (more or less).
 - New activators for Food, Smithing, Scrolls, and Stolen Goods based on outstanding meshes from Oaristys
 - All StolenGoods activators updated with gems.
 - Alternative mesh for Treasures added.
 - Minor updates to AnisesCabin(GS).esp.

9June2012 
 - Compatibility patch added to Optional Files: Asteria Airship - General Stores Edition

v1.2 minor update
 - GemStand havok corrected and transparency added to gems
 - Re-stuctured object naming for ease of use.
 - New treasure chest activators
 - New bookshelf style activators for books, smithing and potions 
 - Minor compatibility tweaks for AnisesCabin(GS)
 - BSA cleaned and compressed.

v1.1 minor update
 - Adds 4 new storage lockers; Armor, Weapons, Follower Gear, and Treasures
 - Adds 2 new activators for smithing and alchemy
 - updates AnisesCabin(GS) demo mod with access to the new lockers.
 - Rebuilt BSA now useable for gameplay.
 - Optional unpacked BSA files added to main package.  BSA handling in CK seems wonky of late. 

v1.0 Initial release


How it works

GeneralStores.esm is a master file that adds an inaccessible cell containing 14 storage lockers dedicated to specific inventory types.  Each storage locker is referenced by one or more activator objects using scripts.  Seven of the lockers support menu driven access, using FormLists to identify the Type and specific code to drive the various bulk-transfer menu functions.  The remaining seven lockers share a base code which simply opens the proper container when activated.  The reference object property is used to specify the correct storage locker using a general stores script.  

Dragon Claw displays function similarly to the vanilla rack displays.  On activation, claws are removed from player inventory, dropped (for reference), then placed to the correct node on the display rack.  Havok is suspended on the claws while displayed, but the claws may still be picked up by the player.  Bug Jar displays function identically.


How to Use:

For modders, here's some simple steps:

1)  Backup the mod you are editing!!  For best results, create a new copy, i.e. MyHouseMod(GS).esp and edit that.

2)  Be sure Creation Kit is multi-master enabled (Google "bAllowMultipleMasterLoads=1").  Select the GeneralStores.esm and set your house esp to active.  If you wish to edit vanilla locations, make no active selection.

3)  In cell view, open the house cell you wish to add containers to.

4)  In object view, filter on "xGSx" (without quotes) and select activators.

5)  Select an activator and drag/drop it into your cell.  Fiddle with placement until you are happy.  Repeat as desired.

6)  Double check that you placed only ACTIVATORS and not CONTAINERS (check usage counts).  If you place new instances of the containers, your mod will not work.  There can be only one.

7)  Save, exit and enable in your launcher.

8)  Go explore your upgraded home.  


Advanced usage tips:

* Placing Dragon Claw displays requires two additional steps beyond simple drag and drop.  First, you must name the display object you placed in your cell (use MyClawDisplay) then save.  Open again, tab to scripts, and edit MyClawDisplay property to match your object.  Auto-fill "should" work. If you followed my naming advice.  Do Not re-size the stands! 

NOTE:  Claw displays function like weapon racks and store the claws LOCALLY.  Claws are NOT SHARED between homes and THEY ARE NOT PROTECTED.  If claws drop onto the floor or hang in mid-air, you forgot to set the property.   

* Bug Jar Displays work just like the Dragon Claw Displays except the property you need to edit is called MyBugDisplay.

* You do not need to put every activator into every home.  Some variety is nice.  On the other hand, there is no limited to how many activators you can add.  Sometime they just look nice.  Doesn't hurt that they are functional too.

* After living in your home for an while, you might want to fire up the CK and make some tweaks to your layout.  You can delete activators and add new ones without effecting your stored gear.  Sometimes you need to do a hard reset for moved items.  Go ahead, your stuff is safe.

* If you are modding a player home you have already visited with your save, try using search\replace to override an existing object with a GeneralStores activator to remove the "memory" of that object in the cell.  If the item has since moved from its editor position, all bets are off.  shove all your gear into storage lockers and do a hard reset.  Couldn't be easier.

* If you are bored with my activators, then roll your own.  Select the activator you want to change and open it for editing.  Change the name of the activator to something new.  Save as new (NOT rename).  Open your new object and change the NIF to point to your preferred NIF file.  You can cut\paste NIF paths from objects in CK without unpacking the BSAs.

* Check out Oaristys' Modders Resource Pack (http://skyrim.nexusmods.com/mods/16525) for lots of great objects you can use as activators.

* To create compatibility patches for mods that add additional ingredients and the like, simply add the new items to the appropriate FormList.  As with all objects in this mod, they start with "xGSx" and should be easily identified as to purpose.

* When modding beyond simple activator placement, please limit your changes to activator and FormList extensions. It is possible to add storage lockers using the general stores script properties, but it is not advised.  New lockers will not be accessible from other mods using this master.  Source code is provide for your experimentation, but please do not edit the scripts directly.


Restrictions:

General Stores is placed in the public domain and is free for anyone to use per the following restrictions:  

No restrictions for private usage.

Modders may include the BSA, ESM and readme files (ALL THREE!) in their mod release if credit is given, but are strongly encouraged to link to this page instead, assuring all players are using the most current version of this resource.  

This file must not be uploaded to Steam, in whole or in part.  It can't really, not without breaking.  General Stores is an ESM master which is not supported on the workshop.
 
Credits:

JustinOther for his Bag of Holding mod.  I learned most everything I needed to know about Papyrus by reverse engineering his work.
Sollar for finding a solution for brewed potions which had previously stumped this chump.
Blary for his beautiful meshwork.  A number of his ideas and products are incorporated into the included activators.
Oaristys for some more brilliant meshwork, most of which have collision!
tyco1709 for his Transparent SoulGem textures
Ethatron for the BSA optimizer.  CK does just a horrid job of packing.

