- Requirements
- None. Optional edits.
Some of the main storage types include:
- Resource Storage: Items like resources, where the amount is pooled into the keys.
- Tool Storage: Items like tools where the uses remaining or charges are pooled into the keys.
- Custom Storage: Make custom keys to store other custom items that you may have.
- "List" Storage: Distinguishable items like magic instruments, or treasure maps, where more than one property is needed to describe the item. These are displayed as a list of items, rather than a pooled quantity
- "Stash" Storage: Complex distinguishable items like weapons, armor, jewelry, or clothing.
- Key Storage: Store all your key types within a single Master Key!
For players
These items make item storage and management a lot easier and more organized. Multi-use tools can be developed. Thousands upon thousands of stones worth of resources can be easily carried. When you craft, the resources can be directly withdrawn from the keys. When you cast, the reagents can come from the keys. You can use potions and water directly from the keys too!
For developers
These items can significantly cut down the amount of world data on your shard. When items are "stored" within the keys, the physical item itself ceases to exist, while only relevant data (eg. uses remaining for tools, or amount for resources) is preserved. This could significantly reduce item count, and world load/save times, depending on how much stuff your players have stashed away in their houses/banks. Plus, it's easy to follow the example items to make your own type of keys that suit your shard's custom needs. Finally, this system is intended to be as easy to drop in and run as possible, so it should be little hassle to get it working for you.
Installation
- Unpack this package somewhere within your server's "Scripts" directory
- (optional) Read through the files in the "Server Modification" sub-directory of this package, and follow the instructions. These allow the server to do things like withdraw from keys when crafting, casting, or using arrows
- (optional) Read through the "Extras.cs" file in the "Extras" sub-directory of this package. If you have the XML attachment system, uncomment line #2 of "Extras.cs" to enable the "[keyguard" command, which lets a player choose which items cannot be pulled into keys.
Customizing
Look in the "Items" subdirectory of this package for example items. In each file, there is a block near the top that looks like this:
Code:
public override List<StoreEntry> EntryStructure
{
get
{
List<StoreEntry> entry = base.EntryStructure;
entry.Add( ... ) );
...
return entry;
}
}
You can modify this to suit your needs, or make new items based on these examples.