Changelogs - Lightman314/LightmansCurrency GitHub Wiki

v2.2.4.0

Released for 1.21 on 11/19/2024

  • Added new Basic Wallet
    • Is functionally the same as a Copper Wallet but is slightly cheaper and can be colored with dyes like leather armor.
    • Can be upgraded to an Iron Wallet in a crafting table, but it will lose its dyed color.
  • Added new Ender Dragon wallet that can only be found in end city loot chests.Has less storage than the Nether Star wallet, but comes with 3 bonus levels to the Coin Magnet enchantment and can still be upgraded to match it's max capacity.
    • Starts with 42 item slots, but can be upgraded more than other wallets allowing it to reach the same max item capacity as the Nether Star wallet
    • Has 3 free bonus levels of the Coin Magnet enchantment
  • Added machine_protection.quarantinedDimensions string list config option to the server config to allow dimensions to block off all network trader & bank account functionality.
    • Intended for either "Creative Dimensions" where players have access to infinite items/money in a seperate inventory from their normal inventory
    • Disables all Bank Account & Network Trader access, including the creation of Network Traders, etc.
  • Updated Tax Area bounds rendering. Now uses vanilla world border textures for improved visibility
  • Bank Account Selection buttons will now auto-scroll the account name if it is too large for the buttons available space.
  • The ATM's Transfer Tab now defaults to selecting the target bank account from a list similar to the Account Selection tab.
    • Transfer to Player mode is still an option so that you can still transfer money to players who have not yet joined the server.
    • Input Mode toggle & the Transfer Button itself are now off of the right-edge of the screen near the list selection.
    • Transfer Button now displays a description of the full transfer details, and will glow orange instead of green if transferring to a player who does not yet have a bank account (in player name input mode)
  • Improved and automated REI exclusion zone calculations, allowing REI to utilize all available space until an off-screen button attempts to use it.
  • JEI Plugin now also registers exclusion zones for my screens.
  • Added API to custom screens allowing them to give hovered item/fluid info to REI/JEI for items in abnormal slots
    • You can now look up recipes and/or usages for items in a traders item storage
    • LC Tech will be updated to allow recipe lookups for fluids in a fluid traders tank
  • Optimization changes to the Trader Storage Screen. Will break any custom traders added by an addon mod.
  • Added /lcterminal command allowing players to open the network terminal with a command. Only available if a new terminal.lcterminalCommand server config option is enabled (disabled by default).
    • Cannot be used if a player is in a "quarantined" dimension
  • Internal optimizations of various widget constructors
  • Wallets in a cosmetic Curios wallet slot will now be rendered on your hip instead of the actually equipped wallet.
    • Wallet Slot now has a cosmetic slot by default
  • Indestructible Wallets (Nether Star) will now bounce out of the void if dropped below a dimensions lower build limit
  • Game Clients will now communicate with the server and collect/cache player names for player ids.
    • Should result in more accurate player names & skulls for bank account & owner widgets, as well as the potential for future upgrades to other player name input fields such as Team Member selections, etc.
  • Fixed an issue where non-owners could not access a Network Traders customer screen by interacting with the block directly
  • Fixed a possible crash that could happen if the overworld wasn't loaded during a server tick
  • Fixed an issue where all trader settings sub-tabs would be visible for the first frame after selecting the tab
  • Fixed an issue where a notifications tooltip would still display when hovering over the delete notification button.

1.21 Exclusive Changes

  • Wallet Data (numerical level, storage capacity, model id, etc) is now all handled via Data Components
  • Re-added Supplementary's villager & trade offer manipulation compatibility as it has now updated to MC 1.21

1.21 Patch A

  • Fixed a crash with getting the name from a PlayerReference
  • Made Curios Datagen only load if curios is installed to not force any addons to have curios installed when running their own datagen

1.20.1 Patch A

  • Fixed an issue where scrolling text (normal buttons & Bank Account buttons) would render at the wrong place.

1.21 Patch B

  • Fixed an issue where the prefix text for Text Money Value Inputs would render in the wrong position (fixed in 1.20.1 at initial release)
  • Fixed an issue where the Slot Machine Screen placed the preview widgets at the wrong y positions
  • Fixed an issue where the Auction House did not block interaction if used within a quarantined dimension
  • Fixed an issue where the initial wallet recipes (not the upgrade versions) were generated at the wrong location

1.20.1 Patch B

  • Fixed an issue where the ATM's Coin Slots would always render regardless of which tab you had selected
  • Fixed an issue where Trader Interfaces don't properly collect statistics on their interactions

1.20.1 Patch C

  • Fixed an issue where EasyWidget#renderTick was not being called, resulting in various widgets not hiding or moving themselves when appropriate

API Notes:

  • Added new ClientPlayerNameCache class with various methods for getting player names on the logical client. If a result is not found instantly, it will return null but send a packet to the server requesting more data, so the result is subject to change.
  • TraderStorageScreen/TraderStorageMenu classes now utilize the formerly experimental EasyTabbedMenu and EasyTabbedMenuScreen classes for a more uniform tabbed screen experience. Very little has changed functionally, however the ChangeTab functions are different and EasyMenuTab#createClientTab has different returns/inputs, so an update will be needed to be made compatible with these changes.
  • All EasyWidget widgets added by my mod now utilize a Builder sub-class to remove the need for several redundant constructors for various common widgets, as well as removing the need for certain variables to be public (such as MoneyValueWidget#drawBG).