Skip to content

2.5.0 Release notes

Sparkling Comet edited this page Apr 16, 2022 · 3 revisions

This article contains a summary of the changes and optimizations for the TradeShop v2.5.0 release (download link).

A previous release (v2.2.2) drops support of MC 1.13.x and 1.14.x. while adding support to 1.16.x. If you are running a MC version older than 1.15.0, do not update.**

Important Note: Due to large changes in the way config and messages are read, please backup these files before updating. (Renaming them in the folder is sufficient)

Added Features

  • Expiration of DEV versions; 1 Month after DEV version build date you will start getting notification messages, and after 2 months the plugin will disable itself after 24-hours of run-time. This ONLY affects version tagged as DEV, all other versions will function normally.
  • New prevent trade permission (#117): tradeshop.prevent-trade.
  • Improved illegal item system (#115)
  • New Color Widening feature for Illegal Items allowing any colored item with multiple Materials(i.e. Shulker Boxes) to have all color options of the item be added, see below for options
  • Added Unlimited Admin setting as requested in #114 This setting is not recommended as it gives admins more control over shops then is necessary
  • Built-In Language support has been added. No new languages will be added for now, but servers should change the language setting in messages so that we can see what languages may have demand

Changes

  • Current Widened items are(surround with @/^ to use. I.E. @banner^): banner, candle, carpet, concrete, concrete_powder, dye, glazed_terracotta, shulker_box, stained_glass, stained_glass_pane, terracotta, and wool
  • Changed default color of NO_COMMAND_PERMISSION message to &c (light red) from &a (light green)
  • Config updated to V.1.2, illegal-items section automatically converted to new Illegal items config sections, Backup of old config file is recommended
  • Adjusted the Material Tab List to not show Materials that are not allowed via the Global Illegal Items, if an item is instead blocked by both Cost and Product Illegal lists then it will still show.
  • Air, Void_Air, and Cave_Air are automatically added to the global blacklist or removed from global whitelist
  • Added TradeItemType to Method parameters that check for Illegal items
  • Added additional metrics including the number of trades that occur, amount of shops on the server, and some Config values
  • Made TOO_MANY_ITEMS message clearer
  • Unified Setting and Message so less code was repeated
  • Buffed up file saving for Message and Setting
  • Added Metrics for new LANGUAGE setting
  • Changed Message variable replacement to process sent/uppercase/lowercase of the string sent
  • Added fix for old messages files replacing { and } with % for variable
  • Added Variable enum to prevent hand type variables(noticed there were 2 different formats in the message file)
  • Properly added Linkage file management

Bugs Fixed

  • Better back-end management of nested Config groups in Settings(if a group only contained other groups and not individual settings it wasn't created)
  • Moved reload of the ListManager to be after Setting so that list Settings are properly reloaded.
  • Fixed Colour widening not working as expected
  • Fixed Potential bug in DataStorage#getShopCountInWorld where worlds(like the nether and end) that exist without shops would throw null if checked
  • Fixed bad array count in ShopChunk#deserialize
  • Fixed bug in Data storage that caused chest-linkage files to be wiped on every launch/reload
  • Fixed "bug" where both sides of a shops double chest were not added to the chest linkage map
  • Fixed Bug causing a Shops chest to be unlinked if the other half of a double chest was destroyed
  • Fixed potential bug in Utils#findShopSign, the sign is now found in the same direction order as the sign would find the chest but with each direction flipped instead of the whole list flipped(could grab a different data from shop->chest vs chest->shop)
  • Fixed Players with the preventTrade permission seeing the message on any block break
  • Fixed OP players not being able to trade due to having the preventTrade permission
  • Fixed item names with hex codes not being displayed on signs, no color formatting from item names will appear on signs or messages
  • Fixed bug in addcost item stacking that caused the stacked amount to be added without the original item being removed
  • Fixed formatting error in en-us.yml that prevented plugin enable
  • Fixed Config manager not replacing empty values with defaults in Messages and config

Minor Changes/Reformatting

  • Added Pre and Post comments to config sections
  • Improved Spacing generation(especially with multi-line Pre-Comments)
  • Added some comments to the Config Generation method in Setting so its easier to figure out
  • Cleaned up some unnecessary checks and repeated code in Setting & SettingSectionKeys
  • Added missing param for JavaDocs on Shop#updateCost and Shop#updateProduct
  • Re-organization of some new files
  • Re-organized Debug Modes
  • Changed over some legacy code that had not been updated to newer methods
  • Separated JsonConfiguration for better readability
  • Removed old Utils#log method

Wiki Index

Downloads

  • You may download the latest version here.
  • You may clone the source with the command git clone https://github.com/TradeShop/TradeShop.git
  • You may also clone the whole wiki to your computer with the command git clone https://github.com/TradeShop/TradeShop.wiki.git.

Contact

You may contact the developers for any reason on Discord or on GitHub.

License

The entire project is licensed under the Apache License v2.0.

Clone this wiki locally