Skip to content

v1.2 - Major Update

Latest
Compare
Choose a tag to compare
@ShimmyMySherbet ShimmyMySherbet released this 04 Dec 15:16
· 14 commits to master since this release
ae7c1a3

Changelog

  • Added Vault Alias system, allowing players to set aliases for their vaults
  • Added Item Whitelist/Blacklist system, with some advanced item selectors.
  • Switched database connection mode to transient to fix database issues on some servers (#10)
  • Removed vault caching option, as the performance gain was minimal and could introduce duplication exploits
  • Added config option DatabaseTablePrefix to allow for multiple servers to have different vaults in the same database (#5)
  • Fixes to default vault selection (#6)
  • Updated RocketExtensions to v2.12 to address issue #2

Vault Aliases

Allows players to set an alias for a vault. Similar to renaming a vault.
This allows players to customize their vaults more.
E.g., creating a vault alias for 'MVP' named 'Guns'. So, using /Vault Guns opens their 'MVP' vault.
This feature is disabled by default, to enable it, set VaultAliasesEnabled in the config to True.

For a player to use a previously set vault alias, the permission SherbetVaults.Vault.Alias needs to be given. And for a player to manage their aliases, the /VaultAlias command needs to be granted.

Max aliases can be granted with the permission SherbetVaults.MaxAliases.XXX, where XXX is the max number of aliases. By default, players do not have a max number of aliases.

If a player sets aliases and then loses the SherbetVaults.Vault.Alias permission, they will lose the ability to use the aliases, but the aliases won't be deleted. If they regain the permission, they can continue to use their previously set aliases.

This feature has been designed to be suitable as a donation rank feature, as a purely QOL feature.

Item Restrictions

SherbetVaults now comes with a rather powerful item whitelist/blacklist system. You can create groups that act as a whitelist or blacklist, and assign them to players using permissions.

Restriction groups can be assigned to players with the SherbetVaults.Restrict.Group where Group is the GroupID. By default any restriction groups you create will not have an effect, you must assign players the permission.

You can also assign different messages to be sent to the player when they try to store a blacklisted item in their vault. This can be done by changing the TranslationKey setting of the group and then adding a message for it to the translations file.

Groups can have a weight assigned to them. The greater the weight the earlier it is applied. This means you can create a restriction group for e.g., Lead Staff that whitelists certain items that are blacklisted globally.

Rather than just listing item IDs, you can use item selectors. As of this update, the following selectors are available:

  • Single Item

    Format: ItemID
    Example: 15
    Specifies a single item ID
  • Item Range

    Format: ItemID-ItemID
    Example: 288-295
    Specifies a range of items, inclusive.
  • Item Slot

    Format: Slot:ItemEquipSlot
    Example: Slot:Primary
    Specifies items based on their equitable slot. E.g., Primary selects primary weapons.
    Available Options: None (Cannot be equipped), Primary, Secondary, Tertiary (equipable items, e.g., food, binoculars)
  • Item Type

    Format: Type:ItemType
    Examples: Type:Gun, Type:Medical, Type:Food
    Specifies items based on their type. E.g., Guns selects all guns, Food selects food items.
    Small Selection of options: Clothing Slots, e.g., Hat, Gun, Food, Water, Trap, Melee, Magazine, Gun Attachment slots, e.g., Optic, Structure, and a lot more. A wiki page will be made for this.
  • Item Spawn Table

    Formats: Table:TableName, Table:TableID
    Examples: Table:Police*, Table:22
    Specifies an items based on what spawn tables they appear in. Spawn tables are based on the map.
    When using a table name, specifying Police matches tables that are exactly named 'Police', so 'Police_Guns' wouldn't be matched.
    The * Symbol matches anything, So Police* would match 'Police' as well as 'Police_Guns'
    You can see a list of spawn tables for official maps Here
  • Item Workshop

    Format: Workshop:WorkshopID
    Example: Workshop:2136497468
    Specifies items that originate from a workshop mod. E.g., Workshop:2136497468 specifies Elver Items, since '2136497468' is Elver's workshop ID. These are the same workshop IDs you use in your server's WorkshopDownloadConfig.json
    Note: This currently seems to be a bit broken and may not work

Note

Since the libraries for this plugin have been updated since the last version, you will also need to re-install the libraries if you are upgrading from an older version.

Revision 2 & 5

Added some missing libraries to the release zip. (Not sure how this keeps happening...) (#16)

Revision 3 & 4

Fixed the release zip. Prev one was in rar format, not zip, meaning most archive tools couldn't open it.
I have since stopped using WinRar since this has been constantly happening.