Releases: tastybento/askyblock
For testing against the crashing
This V2.9 is to see if the server crashes still occur with this build.
RC for testing
New features/changes
- Multiple home teleport locations, using sethome # and is go #
- Make-island-if-none option
- Immediate teleport to island when entering world
- Island level variable for use in chat formatting (TEAMSUFFIX)
- New nether protection (still in beta - report issues)
- New nether no longer makes obsidian portals because they could be mined/exploited repeatedly
- Using a portal to go to the new nether is more accurate
- Donation ad removed when starting island (please still donate though!)
- New API functions - getSpawnLocation, getSpawnRange and isAtSpawn(Location)
- Picking a safe home location was improved
- Challenges panel will show the highest unlocked level of challenges when opened
Bugs Fixed
- Topbreeders command was showing armor stands
- Breeding limit alert was showing too early to players if armor stands were on their island
- Damage from Enderpearl and Splash Potion of Harming throwing on ones own island was not occurring and a PVP notice was showing
V2.8.6 RC for testing
= V2.8.6 =
New Features:
Update checker - this will display a message in the console during start up and to Ops if there is a later version available. To disable set checkupdates: false in the config.yml file
Choose your island companion! Options are COW, PIG, SHEEP, CHICKEN, VILLAGER, HORSE, IRON_GOLEM, OCELOT, RABBIT, WOLF or NOTHING. Default is COW.
New command for admins - topbreeders - this will tell you the top 10 islands with the most entities (animals and monsters) on them. Only islands that are loaded by the server can be shown. This may help detect over population.
Breeding limits are now enforced better and include spawning by monster egg and spawn blocks. This feature may help reduce lag by limiting entities.
== New permission ==
askyblock.mod.topbreeders - gives access to the /asadmin topbreeders command
== Upgrading ==
=== Quick Upgrade ===
This will use default settings where the update check is on and the cow remains the default companion:
Stop server
Copy this file over the old askyblock.jar file
Restart server
=== Longer, Safer Upgrade ===
This gives you access to the changes in the config files:
Stop server
Back up world and plugin folder
Copy this file over the old askyblock.jar file
Move your config.yml file elsewhere
Restart the server - it will generate new config.yml file with 2 new lines - updatecheck (line 17) and companion (line 281).
Stop server
Change the new options in those files how you like.
Restart server.
You should be done.
== Bug Fixes ==
- [Major] The Settings Panel was crashing on 1.7.9-based servers because armor stands are not supported.
- [Minor] Golems and villagers could be hit by visitors.
- [Minor] Players and other entities could be hit by fishing hooks.
- [Minor] Players could be hit by snowballs even if PVP was not allowed.
- [Minor] It was possible on some servers to glitch your way into a locked island by jumping, sprinting, using vehicles, etc.
- [Minor] Ops could never be damaged by acid, even if damageops was true in the config.
- [Minor] When using admin purge command, console errors could occur when trying to delete islands that did not exist anymore as they were in an old world.
- [Minor] NPE was seen during plugin reloading due to event triggering before plugin was fully loaded.
- [Minor] Recovery of obsidian back to lava with an empty bucket (only available if acid is enabled) was not working correctly in some situations.
- [Minor] If the island reset limit was changed in the config, players would not see the change.
== Locale.yml changes ==
No changes to the locale with this version.
RC for testing
Changes
- Challenges now show one level per inventory display. As each level is unlocked, players can click on the book & quill icons to switch to new levels. This enables many more challenges without overflowing the inventory display.
- Repeatable challenges can be limited to a maximum number of repetitions. See challenges.yml and the maxtimes setting. Comment out maxtimes for unlimited use.
- /adadmin info challenges gives a record of how many times a challenge has been done. Useful for exploit tracking.
- Added /challenges to bottom of /is help.
- The challenges command can now be used in other worlds to view challenges, but completing challenges still require the player to be in the right world. This helps servers where the spawn is in another world.
- Added challenges icon to the control panel
- Added /is settings command to allow players to know what the game settings are, e.g., PVP on or off, chest access allowed, etc.
- Added option to reset enderchest contents for players - do not enable unless you only run A SkyBlock worlds on your server. Enderchests can be accessed from any world. See config.yml, general.resetenderchest
- /asadmin unregister no longer teleports players away from the island.
- New API events that fire when a challenge is completed or when a player unlocks a new level. See JavaDocs here: http://tastybento.github.io/askyblock/
Bug Fixes
- Players hitting entities like villagers or iron golems on their own island were told that they were PVP protected.
- Console error occurs when starting plugin if Multiverse installed and create ASkyBlock Nether set to false.
- /asadmin setspawn was not allowing unowned islands to become spawn
- /asadmin unregister was removing mobs from the island
- Players kicked when offline were not seeing the news that they had been kicked when they logged back in.
- Accessing the mini shop from a non-island world shows an error.
- NPE were generated if events like teleport and mob spawning occurred before ASkyBlock was fully loaded.
- Players invited to a team were sometimes warned that they would lose their island even though they did not have an island.
Locale.yml changes
helpSettings: "see island protection and game settings"
helpChallenges: "/challenges: &fshow challenges"
completedtimes: "Completed [donetimes] out of [maxtimes]"
maxreached: "Max reached [donetimes] out of [maxtimes]"
Release candidate for testing
Lots of new features. Do /is help and /asadmin to see new commands.
This build is for servers with 1000's of players and islands and will significantly reduce lag during new island creation after a reset, island resetting, level calculation and Top Ten listings.
To install:
1.Stop server
2. Back up world and ASkyBlock plugin folder. This is a test build!
3. Copy this file over the old askyblock.jar file
4. Restart the server - it will go through an file update process (see below)
5. Stop server
6. Remove/rename config.yml & locale.yml
7. Restart server to regenerate the updated config and locale files
8. Stop server (again sorry)
9. Edit the config.yml and locale.yml files to how you like. Make sure important config items are set correctly!
10. Restart server
11. If you had an ASkyBlock spawn - check it works and the limits are correct
A new file called islands.yml will be generated. This replaces the files in the island directory. If this version works well, that directory can be removed because it will not be used. For now, I recommend just leaving it.
The TopTen list will be generated - see the console log. This could take up to 30 seconds on a server with a large number of players. This only will be done if the file topten.yml does not exist. i.e., once.
You should be done!
The top ten list will be continuously updated when players do island level. If an admin ever thinks it is out of sync for some reason, they can run the admin command /asadmin topten to regenerate it. This should not be needed though.
If you had an ASkyBlock spawn set up it will try to convert it. If it has a problem (see the console) then you may have to set it up again manually.
Changes
- Players making a new island will see a title and a "click to donate" text if they use V1.8+ clients. Can be changed in locale.yml.
- Improved Top Ten List creation and Level Calculation for servers with large numbers of players.
- Reset confirmation time out can be customized. Was 10 seconds and the default is 10 seconds.
- Island level calculation command has a cool down to prevent abuse (default 1 minute)
- Commands can be executed when a player leaves an island team (kick or leave)
- If teleporting when falling is disabled, additional commands can be blocked, like /home
- Custom island (schematics) pasting now properly supports sign text, attachable blocks (like trapdoors, banners, torches), and sugar cane in chests.
- Option to paste schematics with no physics, so for example, water blocks will not flow, but hang in space
- Islands now have entry and exit notices.
- Islands can be locked by the owner or team members, so that visitors cannot enter them.
- More info is provided for admins via the info command on the island, including coordinates for the protection box
- Spawn also has specific information via the info admin command.
- Island protection ranges can be made bigger or smaller by admins on a per-island basis. Note that the protection range cannot exceed the distance between islands. Command is /asadmin setrange .
- Island spawn can also have its protection range changed and can be greater than the island distance. This allows for large spawn areas. However, if you change the spawn protection range so that it overlaps adjacent islands, those islands will effectively adopt the spawn protection rules. Recommendation is to put spawn far away from islands.
- Spawn settings are now in config.yml and the spawn.yml file is no longer used.
- The use of eggs at spawn can be prevented.
- Animals can now spawn at spawn and optionally be killable.
- Monsters can be set to be killable at spawn.
- Improved new island search algorithm to be faster.
- Challenges - reward item config is more robust and the error message for failure is in locale.yml (was hardcoded before)
- New admin command - unregister - removes a player from owning an island. Exactly like delete, but does not delete the island blocks. Can be used to move a player from one island to another by using the register command.
- New admin command - deleteisland - removes the island that the admin is on without having to know the owner's name. Also useful to delete unowned islands if they are still known by the plugin. (Otherwise use world edit to remove the blocks!). Must be executed as /asadmin deleteisland confirm for safety.
- New permissions:
askyblock.island.lock, askyblock.island.expel, askyblock.admin.deleteisland, askyblock.admin.unregister, askyblock.admin.setrange
- The nether world is now registered with Multiverse if it exists.
- Item frames can no longer be removed with creeper explosions
Mega Lag Reducer for Big Servers
OUT OF DATE - DO NOT USE - JUST FOR ARCHIVE PURPOSES
This build is for servers with 1000's of players and islands and will significantly reduce lag during new island creation after a reset, island resetting, level calculation and Top Ten listings.
To install:
- Stop server
- Back up world and ASkyBlock plugin folder. This is a test build!
- Copy this file over the old askyblock.jar file
- Restart the server
- The TopTen list will be generated - see the console log. This could take up to 30 seconds on a server with a large number of players. This only will be done if the file topten.yml does not exist. i.e., once.
- A new file called islands.yml will be generated. This replaces the files in the island directory. If this version works well, that directory can be removed because it will not be used. For now, I recommend just leaving it.
- You should be done!
The top ten list will be continuously updated when players do island level. If an admin ever thinks it is out of sync for some reason, they can run the admin command /asadmin topten to regenerate it. This should not be needed though.
No /as version
This version does not have /as as an alias for /island.
V2.7.9 for testing
Adds compatibility with Server 1.7.9.
V2.7.8 for testing
Changes
- Locale.yml now accepts color codes on all text entries
- Schematic loading handles more 1.8 items like banners
Bug Fixes
- Correctly measures distance from spawn
- Phantom blocks no longer appear when resetting new island
- Sea level and island level correctly default to ASkyBlock values if missing from config.yml
- Islands will not generate inside the spawn radius.
- Challenge text with no space is handled correctly.
- Inventory was being cleared incorrectly even if keepInventory game rule was true.
- Cannot make yourself leader
- Alchemist Challenge was still taking all potions in an inventory
Pre-release for testing
Release Candidate
Changes
- Added error message for when challenges command cannot be used when in another world.
- Optimized safe location search algorithm.
- Added protection for beacons on islands and spawn.
- Spawn.yml will be created when plugin is loaded if it does not exist.
- Added a block push to the client before teleporting that should help clients with large ping times avoid falling through blocks.
- Added coop player API to find out which islands player is a coop player on and whether they are a coop player.
- Improved island calculation algorithm to work with large island protection limits. Island calculation is now done in the background in slices. A 500x500 island will take about 12 seconds to complete.
- Added portal protection option.
- Improved falling detection algorithm so that it does not trigger when not falling. Also added an error message so players know why they cannot teleport.
- Admins teleporting to a player's island that has no safe spot will receive a useful error message.
Bug fixes
- Addresses issue where server is reloaded while player has a challenge screen open. Does not cause a console error and instead just restarts challenge screen.
- Addresses issue where typing /c c sfhsdh would give the wrong error message (the challenge had not been unlocked vs. unknown challenge).
- Fixed stone hoe exploit with coarse dirt.
- Biome payments, mini shop transactions and challenge money rewards will be world-specific.
- Fixed safe location teleport algorithm to allow lower-half-slabs as home positions
- Fixed Pioneer challenge by giving special handling to MAP item.
- Fixed a number of permission checks that were not being done.
- Improved distance from spawn checking by only looking at the x and z coords.
- Fixed bypass protection for nether spawn and riding horses, etc.
- Expel - removed ability to players to expel themselves.
-
Fixed bug with free challenges not being completable.
-
Addresses NPE with inventories that have null names.
-
Fixed bug with limits on mobAcidDamage not being checked.
-
Addresses issue where all potions of a type were being removed instead of the required amount when completing a challenge (Alchemist challenge for example)
- NPE where erroneous challenge.yml item is < 3 characters long
Locale Additions:
wrongWorld: "You cannot do that in this world."
calculating: "Calculating island level. This will take a few seconds..."
cannotTeleport: "You cannot teleport when falling!"
notyourself: "You cannot expel yourself!"
Locale Changes:
errorYouAreTheLeader: "You cannot leave because you are the leader. Make someone the leader first."
errorYouCannotLeaveIsland: "You can't leave your island if you are the only person. Try restart if you want a new one!"
errorYouMustBeInWorld: "You must be in the island world to leave your team!"
errorLeadersCannotLeave: "Leaders cannot leave an island. Make someone else the leader first."