Skip to content

GoatedArthur/Worthify

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Worthify

Worthify is a lightweight Paper plugin that assigns a configurable "worth" value to items and lets players sell items for in-game currency.

  • Server software: Paper / Spigot-compatible (built against Paper API)
  • Minecraft version: 1.21.x (see api-version in plugin.yml)
  • Optional integrations:
    • Vault (economy)
    • PlaceholderAPI
    • ProtocolLib (client-side "Worth" tooltip on items without breaking stacking)

Features

  • Sell items from your hand or sell all sellable items
  • Configurable item worth values
  • Sell history GUI
  • Worth multiplier system (global + category + per-material overrides)
  • Multiplier GUI (/multiplier) to view/edit category multipliers (only works when enabled)
  • Sell tools (SellWand / SellAxe) for selling containers with an expiry time or usage limit (configured in selltools.yml)
  • Simple admin tooling for reloading without restarting

Commands

  • /sell [hand|all]

    • Permission: worthify.sell
  • /pay <player> <amount>

    • Permission: worthify.sell
  • /pay admin <enable|disable|status>

    • Permission: worthify.admin (or OP)
    • Notes: Permanently enables/disables /pay for everyone (including admins). Persists after restart.
  • /worth [page]

    • Permission: worthify.sell
  • /sellhistory [page]

    • Permission: worthify.sell
  • /multiplier (alias: /mult)

    • Permission: worthify.sell
    • Notes: Only opens when worth_multiplier.enabled: true. Everyone can view, but editing requires worthify.admin.
  • /setworth <number>

    • Permission: worthify.admin
  • /worthify reload

    • Permission: worthify.admin
  • /sellwand usage <uses> [player]

    • Permission: worthify.selltools.give
    • Notes: Usage-only wand (expiry hidden in lore). Disappears when uses reach 0.
  • /sellwand selfdestruction <time> <unit> [player]

    • Permission: worthify.selltools.give
    • Notes: Time-expiring wand.
  • /sellwand setuses <uses> [player]

    • Permission: worthify.selltools.give
    • Notes: Changes uses of the SellWand in the target player's main hand.
  • /sellaxe <time> <unit> [player]

    • Permission: worthify.selltools.give

Permissions

  • worthify.sell
    • Default: true
  • worthify.admin
    • Default: op

Installation

  1. Download the latest Worthify jar from:
  2. Put the jar into your server’s plugins/ folder.
  3. (Optional) Install Vault and an economy plugin (e.g. EssentialsX Economy) to use your server's main economy.
    • If Vault is not installed, Worthify will fall back to its own internal economy (balances stored in balances.yml).
  4. Restart the server.

Configuration

Worthify writes config files into plugins/Worthify/.

  • Item values are stored in the plugin’s prices config (see plugins/Worthify/).
  • After editing configs you can reload with:
    • /worthify reload

Worth multiplier

Worthify can multiply sell payouts and displayed worth values.

  • The multiplier only applies when worth_multiplier.enabled: true.
  • Final multiplier per item is:
    • worth_multiplier.value × worth_multiplier.categories.<category> × worth_multiplier.materials.<MATERIAL> (optional override)

Example:

worth_multiplier:
  enabled: true
  value: 1.0
  categories:
    ores: 2.0
    food: 1.0
    seeds: 0.5
  materials:
    DIAMOND: 3.0

Multiplier GUI

  • /multiplier opens the GUI (only when enabled)
  • Everyone can open/view when enabled
  • Only worthify.admin can change category multipliers

The multiplier GUI can be customized in:

  • plugins/Worthify/gui/multiplier.yml

SellTools

Sell tools are configured in:

  • plugins/Worthify/selltools.yml

This file controls:

  • Tool enable/disable, materials, titles and lore
  • Activation mode (right/left click, break)
  • Allowed container whitelist
  • Self-destruction on expiry
  • Uses display via {uses} and expiry display via {expires}

PlaceholderAPI

If PlaceholderAPI is installed, Worthify registers placeholders such as:

  • %worthify_balance%
  • %worthify_balance_plain%
  • %worthify_balance_short%

Use %worthify_balance_plain% for numeric-only displays (e.g. TAB objectives).

Update checker & Auto-updater

Worthify can automatically check for new releases on Modrinth and optionally download updates.

  • Update checker (enabled by default):

    • Periodically queries Modrinth for the latest version.
    • Logs a console warning when an update is available.
    • Notifies OPs (or players with worthify.update) on join.
  • Auto-updater (disabled by default, opt-in):

    • When enabled, Worthify will download the latest jar into plugins/update/Worthify.jar.
    • The update is applied on the next server restart.
    • A clear warning is printed on startup when auto-updater is enabled.

Config

update_checker:
  enabled: true
  modrinth_project: "worthify"
  interval_minutes: 360
  notify_on_join: true

auto_updater:
  enabled: false

Building

This project uses Gradle (Shadow plugin).

./gradlew clean build

The built jar will be in:

  • build/libs/

Make sure you upload the shadow jar (plain jar task is disabled in this project).

Economy provider selection (Vault / CMI)

When Vault is installed, Worthify uses Vault's registered economy provider.

You can influence provider selection in config.yml:

economy:
  vault:
    override_provider: false
    prefer_cmi: false
    disable_cmi: false
  • prefer_cmi: picks CMI economy if it is registered (when multiple providers exist)
  • disable_cmi: skips CMI economy and picks the first non-CMI provider

Support / Links

License

MIT — see LICENSE.

About

Worthify is a lightweight Multi Version plugin that assigns a configurable worth to items and lets players sell items for in-game currency.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages