Skip to content

v1.2c - Vault Aliases and Item Restrictions

Pre-release
Pre-release
Compare
Choose a tag to compare
@ShimmyMySherbet ShimmyMySherbet released this 26 Jun 10:27
· 26 commits to master since this release
ab44bd6

Changelog

  • Added Vault Alias system, allowing players to set aliases for their vaults
  • Added Item Whitelist/Blacklist system, with some advanced item selectors.
  • Added option to use transient database connection for servers with an unstable database connection
  • Updated RocketExtensions to v2.12 to address issue #2
  • Fixes to default vault selection

Please Note: This is an update pre-release

This update has not been properly tested, and there could be issues with the new features
If you experience any issues with this pre-release, open an issue in the Issues tab.

Vault Aliases

Allows players to set an alias for a vault. Similar to renaming a vault.
This allows players to customise 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.
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

Transient Database Connection

By default, SherbetVaults connects to your database on launch, and maintains the single connection, using it for all database tasks. This makes anything that reads/writes the database faster and more 'snappier'. Some servers may have a poor database connection, or their database is set with a maximum connection time, and auto disconnects after it.

You can use a 'transient' database connection by setting SingletonDatabaseConnection in the config to False. With this disabled, anything that reads/writes to the database opens a new connection, and closes it after. While this is more reliable, it reduces performance and response speed of commands, though it will not create lag.

Unless you're experiencing issues with your database connection, it is advised to leave this option as the default value of 'True'

Revision B

  • Fixed an issue where /vault and /vaults would error.

Revision C

  • Fixed an error when a player tried to access an existing vault they didn't have permission to.

Misc

Note: Since RocketExtensions has been updated, you will want to also re-install the libraries for this plugin.