Skip to content

Releases: NLthijs48/AreaShop

AreaShop V2.6.0

13 Jan 16:47
Compare
Choose a tag to compare

Features:

  • Add 1.13 FastAsyncWorldEdit support (note: FastAsyncWorldEdit does seem to work correctly for 1.13.0, but not yet on 1.13.2)
  • Add support for the latest WorldEdit/WorldGuard 7 versions (which have refactored the vector classes)
  • Improve adding back signs after they have been removed by players or schematic restore
  • Improve performance of the BlockPhysicsEvent (allow signs to get removed to prevent loops, while not dropping an item)
  • Updated all translations, pulled from Transifex

Fixed:

  • Fixed /as setduration tab completion
  • Fixed 1.13 Material handling, especially dealing with signs and the checks by the safe teleport function
  • /as add: properly set the landlord when the player is an owner of the region (it was only working for members)

Technical:

  • Change Maven dependencies to use .jar files in the dependencies/ folder to ensure the build keeps working even though maven repositories have disappeared

AreaShop V2.5.0

20 Oct 20:22
Compare
Choose a tag to compare

AreaShop 2.5.0

Works with Spigot/Bukkit 1.7.9 and above, tested until 1.13.1!

Features:

  • Minecraft 1.13 and 1.13.1 support.
  • WorldGuard 7 support.
  • WorldEdit 7 support.
  • Update all translations (pulled from Transifex).
  • Add import for RegionForSale regions:
    • /as import RegionForSale
    • Imports all regions from RegionForSale
    • Converts almost all settings to their AreaShop equivalent
    • Handles parent regions
  • Add setting to automatically extends a rent when the time is up: rent.autoExtend in default.yml.
  • Added options to disable players selling/reselling regions: buy.sellDisabled, buy.resellDisabled.
  • Add setting to disable cross-world teleports for the /as tp command: teleportCrossWorld in the general section of default.yml.
  • Add setting to disable cross-world teleports for the /as find command: findCrossWorld in the general section of default.yml.
  • Allow price and moneyBack values to be calculated dynamically:
    • All region variables can be used: price: "5*%volume%" would be $5 per cubic meter (block in the region).
    • Full JavaScript expressions and code can be used, the last statement will be the resulting price.
  • Add %volume% variable for the number of blocks in a region, which supports polygon regions correctly.
  • /as stack now allows the usage of # to choose the position of the number in the region name.
  • Add customizable metric suffixes, now you can decide when to shorten a number and how, see metricSymbols in config.yml.
  • Add support for automatically adding all AreaShop regions of a certain world to a RegionGroup

Technical:

  • BREAKING: BuyingRegionEvent, RentingRegionEvent and ResellingRegionEvent now use OfflinePlayer instead of Player, because renting/buying/reselling is now also possible while the player is offline.
  • Improved file loading mechanics
  • Improve sign update performance, AreaShop will never load chunks anymore, and will simply update signs when players load chunks.
  • Moved the messaging library to its own project: InteractiveMessenger
    • Added a lot of automated tests to ensure all functionality keeps working
    • Fixed bugs with formatting codes, line endings and hover messages
    • All user input that is inserted into messages is now escaped properly (using variables does not break the message anyore)
  • Add bStats.org analytics. Since mcstats.org is really unstable and offline half of the time I added bStats (which tracks the same information, plus the number of regions and their state), MCStats tracking will be removed in a future version.
  • Groups are never removed from groups.yml anymore, previously they were removed when they had zero regions, which wipe settings.
  • Github update checker has been added as replacement for the BukkitDev updater (it will never download anything, it just notifies about updates).
  • Only update WorldGuard region settings if they are different, this should prevent unnecessary saving by WorldGuard.
  • When new code is pushed to Github the translations on Transifex get updated automatically, so that translations can begin immediately.

Fixed:

  • Security issues caused by saving/restoring entities in schematics
  • Prevent missing schematicProfile causing an exception.
  • Setting schematicProfile in a region file.
  • Players could resell their region with a negative price.
  • Using landlordName without landlord (UUID) setting works correctly now.
  • Using /as addfriend with a player that is online for the first time.
  • Removing the English time modifiers from the config.yml file would cause all tasks to be broken, because their schedule time is defined with strings like 1 minute. The English modifiers from the config.yml inside the .jar file are always added now.
  • /as setowner for regions that are not yet rented has been fixed.
  • Restoring polygon regions will now only touch blocks that are actually inside the region.

AreaShop v2.4.0

02 Dec 14:09
Compare
Choose a tag to compare

AreaShop V2.4.0

Works with Bukkit/Spigot 1.7.9 and above! (tested with 1.11)

  • Change the config.yml and default.yml files to be easier to understand:
    • The profiles previously listed in the config.yml are now directly assigned to the profile settings in default.yml
    • When you give a profile setting in default.yml a string it will still look up the profile in config.yml, which ensures your old config still works.
  • Add permissions areashop.teleportavailable and areashop.teleportavailablesign, with which you can give players permission to teleport to all forsale/forrent regions (thanks jewome62 for the pull request!).
  • Support for stacking up and down with /as stack.
  • Fix clicking signs while confirmations are enabled trying to execute commands as players by default (causing that the player does not get a confirmation message).
  • Fix a line break problem in the message parser and fix line breaks on 1.7 servers.
  • Fix some color parsing issues in the message parser (it would not detect a color if you directly used the section sign).
  • Add tab completion for /as me.
  • Fix a bug that caused /as setowner extending the rent, even though the owner is different as the previous one.
  • Rename the events AreaShop emits for integration with other plugins (this breaks existing plugins that use these events!).
  • Fix WorldGuard version detection.

Note: Normally AreaShop does not need to be updated for each Minecraft version, even AreaShop v1.0 still works on the latest Spigot. The problem AreaShop v2.3.2 has is that it fails to read the WorldGuard version, which was already fixed in the development builds shortly after the v2.3.2 release.

AreaShop v2.3.2

07 Aug 20:26
Compare
Choose a tag to compare

Works with 1.7.9+, 1.8, 1.9 and 1.10

  • Added Russian translation (86% complete, so if you know Russian please help translating)
  • Fixed server crash bug caused by the new messages system (#205)
  • Improve stability of the messages system (all reflection removed, using /tellraw in the background now)
  • Fix Vault API repo link, thanks Androkai (#206)

WARNING: language files from AreaShop versions older than 2.3.0 are not supported, read more.

The translations for other languages are not complete yet, would you like to help? Check this page.

AreaShop v2.3.1

01 Aug 17:46
Compare
Choose a tag to compare

Works with 1.7.9+, 1.8, 1.9 and 1.10

  • Added German, French and Norwegian translations, thanks to all the translators!
  • Added automatic conversion for language files downloaded from Transifex (this means you can download the latest version from Transifex and AreaShop will correctly read it).

WARNING: language files from AreaShop versions older than 2.3.0 are not supported, read more.

The translations for other languages are not complete yet, would you like to help? Check this page.

AreaShop v2.3.0

24 Jul 19:55
Compare
Choose a tag to compare

Works with 1.7.9+, 1.8, 1.9 and 1.10

WARNING: Only the English and Dutch language files are currently provided, and language files made for previous version will NOT work properly.

The translations for other languages are not complete yet, would you like to help? Check this page.

Additions:

  • Add hover/click support for all messages of AreaShop:
    • If a region name is in a message then you can click the region name to see all information about the region.
    • Player names can be clicked to see which regions they own.
    • For long lists like /as info all AreaShop will use pages, with buttons you can click to go to the next/previous page.
    • A lot of buttons on the region info page, to rent/unrent, remove friends or teleport to the region
    • All these messages are defined in the messages file (EN.yml), so you can also edit and use these yourself.
    • Got any suggestions for adding more buttons like these? Please let me know.
    • Can be turned off by useFancyMessages in config.yml (no idea why you would want to do that though).
  • Improvements to inserting messages into other messages, for example passing along variables: %lang:action|My action text|%.
  • /as help now respects the areashop.help permission.
  • Add an ALL state for flagProfiles to set flags for all states (like priority).
  • By default players need to confirm selling/unrenting when using signs, to prevent accidentely losing your region and possibly the contents of it (you can also easily turn it on for renting/buying in the signProfiles section in config.yml).
  • Add compatibility for the upcoming WorldGuard version (setting flags of regions changed).

Technical:

  • Add redunded money to the UnrentedRegionEvent and SoldRegionEvent.
  • Add events for adding/removing friends: AddFriendEvent and DeleteFriendEvent, both can be cancelled.
  • Move all code to the me.wiefferink package, since I intent on keeping this domain, and will not have nl.evolutioncoding for long anymore.
  • Add an issue template to the repository so that creating Github issues has placeholder text and directions on what information to provide.
  • Cleanup the config file by making all timing settings hidden.
  • Improve the Maven setup by adding options to move plugin output to a directory, produce a jar with sources and produce Javadoc
  • Add a build server where you can find the latest in development AreaShop version.
  • Setup a Javadoc site: https://wiefferink.me/AreaShop/javadocs/, automatically updated by the Jenkins build server.

Fixes:

  • Fix problems with detecting most important region when placing a sign (problem showed up when using child/parent system of WorldGuard)

AreaShop v2.2.2

05 Mar 23:24
Compare
Choose a tag to compare

Additions:

  • Add full 1.9 compatibility (only stats reporting and some tab completions were broken, all other functionality was functional already).
  • Add feature that lets players rent a region at least to the maximum rental time (before they could not extend before the region had max-duration time left). Can be turned off in the default.yml file with extendToFullWhenAboveMaxRentTime.
  • Add event system:
    • 'ask' type events that can be cancelled, broadcasted before the action happens.
    • 'notify' type events that cannot be cancelled, but only let you know that it has happened.
    • Events for renting (with extending flag), unrenting, buying, selling, reselling, adding and removing.
    • General 'RegionUpdateEvent' to listen to as display service (update signs, update regions flags, etc).
    • Can be used to write addons for AreaShop.
    • Is currently only used for updating signs and regions, but other parts of AreaShop will also be using it soon.
  • Add areashop.linksigns permissions to the areashop.* permissions group.
  • Add priority, interact and build flag to the default config.yml file, helps to reduce support for issues with this.
  • Add middle and number options to the teleportLocationY setting in default.yml.
  • Add variable support for all language messages that can support it, which means where a region is known.
  • Add Czech language, translated by Fractival.

Fixes:

  • Fix last active time of players sometimes not updating correctly, influences inactive unrent/sell feature.
  • Fix message variables for /as info player <player>.
  • Fix the n:<name> option for member/owner region flags (the n: was not stripped away before adding them).

AreaShop v2.2.1

17 Oct 19:47
Compare
Choose a tag to compare
  • Added a setting to deny extending rental regions when the player is above his limits (if the player cannot rent the region back when he unrents it then it he is considered to be above his limits). Setting allowRegionExtendsWhenAboveLimits can be found in config.yml and is by default set at false, this modifies the behaviour of AreaShop compared to the previous version, but this is probably something that users already expect to happen.
  • Fixed a bug with /as tp sometimes teleporting to the region instead of a the sign when a player has certain permissions.
  • Moved all documentation to GitHub, as you probably have already seen.
  • Added permission areashop.buyresell and areashop.buynormal to be able to prevent players from buying regions that are in reselling mode, or regions that are not in reselling mode.
  • Fixed /as find without balance argument using a maximum of zero instead of the balance of the player + formatting of the price will now use the proper currency formatting instead of a plain number.
  • Fixed /as info trying to filter by group for a couple of sub commands when it should not.
  • Fixed /as info region <region> always showing a line specifying the landlord, even when there is not one (it would show <UNKNOWN>).
  • Added Vault jar file to the repository to make compiling easier, only cloning + running with Maven is enough now.
  • Improved handling of failed file loading for all config and region files, better messages in console for when it happens.
  • Remove lastActive line from region files when unrented/sold, nothing serious, just cleanup.
  • Fixed sign click actions still executing even when the Bukkit event is cancelled.
  • Breaking signs that are connected to regions will not longer disconnect it, but instead make it float.
  • Made removing regions from AreaShop less destructible for region flags, only greeting and farewell are removed to avoid confusion (this helps when you accidentally add wrong regions).
  • Fixed support for the seconds modifiers when using /as setduration.
  • Added support for weeks modifiers for specifying time durations.
  • Cleaned old Dutch time modifiers from config.yml, Warning: This will break existing signs with these modifiers if not re-added in the config. Regions using incorrect time specifiers will be listed in the console/log at startup.
  • Unrenting/selling a region that has a landlord will now get the money from the landlord instead of introducing new money. If the landlord does not have enough money then the user will get nothing back.
  • Change the default sign tags to [asrent] and [asbuy], this prevents clashes with for example Essentials. This will not impact already linked signs, only creating new signs and the tags can still be easily changed in the config.

AreaShop v2.2.0

31 Jul 21:58
Compare
Choose a tag to compare
  • Change to a module based Maven project to support dependencies with multiple versions:
    • 1 .jar file for AreaShop, no different files for certain dependencies anymore.
    • Support for WorldGuard 5 and WorldGuard 6.
    • Support for WorldEdit 5 and WorldEdit 6.
    • Setup to easily add support for more version if breaking changes in dependencies happen.
  • Add support for the new schematic save/restore classes of WorldEdit (supports entities).
  • Added the /as stack command to easily create and register a lot of regions, syntax:
    • /as stack <rent|buy> [group]
      • <amount> Number of regions that will be created
      • <gap> Blocks distance between the regions
      • <name> Name of the regions (number will be behind it)
      • <rent|buy> The type of the region
      • [group] A group to add the created regions to
      • The regions will be created in the direction you are facing
    • Don't be afraid to create 100+ regions with this command, it will do a certain number per tick, and therefore not lag/crash the server.
    • Setting stackRegionNumberLength to config.yml to indicate how long the numbers appended to the base region name should at least be (generate names like this: region-001, region-014, region-4567).
  • Make region loading non-descructive:
    Regions will never be removed again by AreaShop itself. If the world or WorldGuard region is missing that is required for the functions of the region then it will simply say so in the console. This will make sure that regions are not removed when you have trouble loading your world or your WorldGuard regions.
  • Make the update checker async, also when it cannot reach BukkitDev to check for updates it does not slow down the start of the server.
  • Fix /as setowner not saving the region file, and therefore losing changes when restarting the server.
  • Change Vault integration to support custom (not build into Vault) economies. This also enables support to change economies while the server is running.
  • Fix a bug with teleporting to regions, and add a message when the teleport changes from sign to region or the other way around (this happens when the user does not have permission for one of them, but has for the other).
  • Remove the enableSchematics setting from the config file, this setting is already in default.yml and only caused confusion.
  • Added landlord functionality:
    • Set the landlord of a region with /as setlandlord <player>.
    • Set the landlord in default.yml or groups by UUID or name.
    • All revenue of a region (buy/rental) will go to the landlord.
    • Permissions areashop.createrent.owner, areashop.createrent.member, areashop.createbuy.owner and areashop.createbuy.member to enable users to add existing WorldGuard regions to AreaShop if they are already owner/member (they are automatically assigned as landlord when they add regions).
    • Permissions areashop.destroybuy.landlord and areashop.destroyrent.landlord to give landlords the permission to remove their region from AreaShop.
    • Permission areashop.setprice.landlord to let landlords change the price of their region.
    • Permission areashop.setduration.landlord to let landlords change the duration of their region.
    • Permission areashop.landlord.* to give all landlord permissions to a player (all permissions above).
  • Added arguments default and reset to /as setprice and /as setduration to remove the setting from the region file (then it inherits it again from the groups or default.yml).
  • Support Metric prefixes (https://en.wikipedia.org/wiki/Metric_prefix) to display large numbers nicely. This means you can display numbers like 1000000 as 1.00G instead. Has options to indicate from which number prefixes should be used.
  • Added a decimalMark setting to config.yml to change the character used to indicate the fractional part of numbers (change from dot to comma for example).
  • Changed all time period settings in config files to a readable format like the rental times. Old values will still be read correctly, and should work exactly like in the old version.
  • Make sure regions are not unnecessary saved directly after loading them at server startup.
  • Fixed an issue with /as addfriend denying you to add players that just joined for the first time.
  • Fix a problem with depositing money to players that never joined the server (or for which there is no player.dat file anymore).
  • Add date and time variables for all config settings (can be used to save schematics as backup, creating a new one each time instead of overwriting).
  • Add fallback system for owners and landlords, if the UUID has no correct name within the Bukkit API it will use the cached name. This makes sure that these people can still be paid through Vault.

AreaShop v2.1.5

11 Feb 13:11
Compare
Choose a tag to compare
  • Changed all translations to have a period at the end of sentences.
  • Added a Chinese (Taiwan) language file
  • Added a blacklist option in the config to block certain regions from being added to AreaShop (you can provide a list of region names with regular expressions) by default only _global_ is on the list. Regular expressions make it possible to for example block all regions with a certain pattern.
  • Added a setting findTeleportToSign to change if /as find should teleport you to the first sign of the region or to the /as settp spot (with fallback to the middle of the region).
  • Fixed a small bug that would cause you to get teleported to the fallback spot instead of the /as settp one when you try to teleport to a sign but don't have permission for it (AreaShop changes your request to a non-sign teleport if you do have permission for that in that case)
  • Added an extra option to /as info to list all regions that do not have a group, use /as info nogroup.
  • Added name change detection on login of the player (checks if the players name matches the saved name for the regions that are owned by the players, works because getting regions happens with the UUID) and if it changed it will update the region flags and signs.
  • Changed that now all region flags and signs will be updated when starting the server, that way users don't think that something does not work simply because the region is not updated. This can be turned off by setting updateRegionsOnStartup to false in the config (updating the region happens slowly so it should not cause any noticeable lag).
  • Removed the /as updaterents and /as updatebuys commands, became redundant because /as reload also updates all regions now so that can be used instead.
  • Fixed translation of color codes for greeting/farewell messages for WorldGuard 6.0+ users (this problem was caused by an unintended breaking change by WorldGuard, check this ticket for details).