### Install SSBProxyBridge Manager Source: https://wiki.bg-software.com/superiorskyblock/overview/addons/ssbproxybridge This section details the installation of the standalone SSBProxyBridge-Manager JAR file, which needs to be run as a separate server. ```text SSBProxyBridge-Manager-X.Y.Z_standalone.jar ``` -------------------------------- ### Menu Item Configuration Example Source: https://wiki.bg-software.com/superiorskyblock/menus This example illustrates how to configure items within a menu. It shows the structure for defining items 'A' and 'B' with their respective settings. ```yaml items: 'A': ... # All the item's settings 'B': ... # All the item's settings ``` -------------------------------- ### Install SSBProxyBridge Module Source: https://wiki.bg-software.com/superiorskyblock/overview/addons/ssbproxybridge This section details the installation of the SSBProxyBridge module JAR file onto each Spigot instance in a multi-proxy network. ```text SSBProxyBridge-X.Y.Z.jar ``` -------------------------------- ### Menu Pattern Example - Single Row Source: https://wiki.bg-software.com/superiorskyblock/menus This example demonstrates a simple menu pattern with a single row, where all items are represented by the character 'A'. ```yaml pattern: - 'A A A A A A A A A' ``` -------------------------------- ### Menu Pattern Example - Multi-Row with Border Source: https://wiki.bg-software.com/superiorskyblock/menus This example shows a menu pattern with five rows, featuring a border ('A') and a fill item ('B'). ```yaml pattern: - 'A A A A A A A A A' - 'A B B B B B B B A' - 'A B B B B B B B A' - 'A B B B B B B B A' - 'A A A A A A A A A' ``` -------------------------------- ### Create Mission - Full BlocksMissions Configuration Example Source: https://wiki.bg-software.com/superiorskyblock/overview/missions This snippet provides a more complete example of configuring a BlocksMissions mission, including natural block tracking, reset conditions, level requirements, and placeholders for rewards and icons. ```yaml mission-file: BlocksMissions only-natural-blocks: true disband-reset: true required-checks: - '%superior_island_level% > 250' ``` -------------------------------- ### Install External Scripts Engine for SuperiorSkyblock Source: https://wiki.bg-software.com/superiorskyblock/overview/javascript-engine This guide explains how to install an external scripts engine, such as Nashorn, for the SuperiorSkyblock plugin. The engine is necessary for advanced features like level calculations and missions. The process involves downloading the engine's JAR file and placing it in the plugin's 'modules' folder. ```text Project: /websites/wiki_bg-software_superiorskyblock Content: BG-Software `Ctrl``K` Copy # Javascript Engine This process is done automatically by the plugin after versions 1.8.1.360 If you want to use Java 15 and you want to use SuperiorSkyblock as well, you must download an external scripts engine. The script engine is used for various of things in the plugin, including calculation of levels, for missions and more. ## How to install an external scripts engine? There are multiple different script engines available, but this tutorial will be focused on Nashron Engine. This is the default and most common engine to use. You may find a link to its github here. You may find more information about the other scripts under the addons page. Note: If you choose to use GraalVM Engine, make sure you have GraalVM set up correctly! ### First Step: Download the engine jar First of all, download your wanted scripts engine. You may find builds to all of our script-engines on our Jenkins page. ### Second Step: Add the engine to your modules folder After you downloaded the jar, you need to move it to the modules folder. This process is similar to the process of installing a regular plugin! Simply take the jar and drag it to your modules folder under SuperiorSkyblock's folder. ### Last Step: Start your server! This is the last step - simply start your server again! The plugin will load the module and set up everything for you! If you get into trouble or something doesn't work for you, make sure you contact us on out discord server. PreviousStatisticsMissionsNextCustom Blocks Last updated 3 years ago Was this helpful? ``` -------------------------------- ### Multiple Upgrade Levels Configuration Source: https://wiki.bg-software.com/superiorskyblock/overview/upgrades Provides a complete example of configuring multiple sequential levels for an upgrade, including prices, commands, and generator rates for each level. ```yaml upgrades: island-generators: '1': price-type: 'money' price: 100000.0 commands: - 'island admin setupgrade %player% island-generators 2' - 'island admin msgall %player% &e&lUpgrade | &7%player% upgraded your generators to level 2!' generator-rates: normal: STONE: 85 COAL_ORE: 10 IRON_ORE: 5 '2': price-type: 'money' price: 150000.0 commands: - 'island admin setupgrade %player% island-generators 3' - 'island admin msgall %player% &e&lUpgrade | &7%player% upgraded your generators to level 3!' generator-rates: normal: STONE: 70 COAL_ORE: 15 IRON_ORE: 10 DIAMOND_ORE: 5 '3': price-type: 'money' price: 300000.0 commands: - 'island admin setupgrade %player% island-generators 4' - 'island admin msgall %player% &e&lUpgrade | &7%player% upgraded your generators to level 4!' generator-rates: normal: STONE: 50 COAL_ORE: 25 IRON_ORE: 15 DIAMOND_ORE: 10 ``` -------------------------------- ### Get Island Discord Information - BG-Software Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/island-placeholders Retrieves the Discord information associated with an island. There are versions to get it regardless of permission or only if the player has access. ```BG-Software Placeholders superior_island_discord_all superior_island_discord ``` -------------------------------- ### Get Island PayPal Information - BG-Software Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/island-placeholders Retrieves the PayPal information associated with an island. There are versions to get it regardless of permission or only if the player has access. ```BG-Software Placeholders superior_island_paypal_all superior_island_paypal ``` -------------------------------- ### Get Island Biome - BG-Software Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/island-placeholders Retrieves the current biome of the player's island. ```BG-Software Placeholders superior_island_biome ``` -------------------------------- ### Get Island Creation Time - BG-Software Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/island-placeholders Retrieves the date and time when the island was initially created. ```BG-Software Placeholders superior_island_creation_time ``` -------------------------------- ### Get Island Name - BG-Software Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/island-placeholders Retrieves the name of the island. Also provides a placeholder to get the leader's name if the island itself does not have a name. ```BG-Software Placeholders superior_island_name superior_island_name_leader ``` -------------------------------- ### Get Island Crops Multiplier - BG-Software Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/island-placeholders Fetches the current multiplier applied to crop yields on the island. ```BG-Software Placeholders superior_island_crops_multiplier ``` -------------------------------- ### Get Island Center Location - BG-Software Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/island-placeholders Retrieves the coordinates for the center of the player's island. ```BG-Software Placeholders superior_island_center ``` -------------------------------- ### Get Island Coop Limit - BG-Software Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/island-placeholders Fetches the maximum number of co-op members allowed on an island. ```BG-Software Placeholders superior_island_coop_limit ``` -------------------------------- ### Get Player Border Color Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/player-placeholders Retrieves the border color setting for a player. This placeholder allows for customization of visual elements. ```Placeholder superior_player_border_color ``` -------------------------------- ### Get Mission Status - BG-Software Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/island-placeholders Checks the completion status of a specific mission. Requires the mission name as a parameter. ```BG-Software Placeholders superior_island_mission_status_ ``` -------------------------------- ### Get Island Level Information - BG-Software Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/island-placeholders Retrieves the island's level, available as a raw number, formatted string, or integer. ```BG-Software Placeholders superior_island_level superior_island_level_format superior_island_level_int superior_island_level_raw ``` -------------------------------- ### Get Player Completed Missions Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/player-placeholders Returns the count of missions a player has successfully completed. This placeholder is useful for tracking player progression. ```Placeholder superior_player_missions_completed ``` -------------------------------- ### Get Island Bank Limit - BG-Software Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/island-placeholders Retrieves the bank limit for an island. This can be fetched as a raw number or a formatted string. ```BG-Software Placeholders superior_island_bank_limit superior_island_bank_limit_format ``` -------------------------------- ### Get Top Island by Worth with Placeholder (BG-Software) Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/global-placeholders Runs a specified placeholder on an island ranked by worth. Requires position and placeholder name parameters. ```BG-Software superior_island_top_worth_<#>_ ``` -------------------------------- ### Get Top Island by Rating with Placeholder (BG-Software) Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/global-placeholders Runs a specified placeholder on an island ranked by rating. Requires position and placeholder name parameters. ```BG-Software superior_island_top_rating_<#>_ ``` -------------------------------- ### Get Island Rating Information - BG-Software Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/island-placeholders Retrieves various rating-related information for an island, including the overall rating, the number of ratings received, and the star rating. ```BG-Software Placeholders superior_island_rating superior_island_rating_amount superior_island_rating_stars ``` -------------------------------- ### Get Top Island by Level with Placeholder (BG-Software) Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/global-placeholders Runs a specified placeholder on an island ranked by level. Requires position and placeholder name parameters. ```BG-Software superior_island_top_level_<#>_ ``` -------------------------------- ### Configure Crafting Missions Source: https://wiki.bg-software.com/superiorskyblock/overview/missions/craftingmissions This configuration example demonstrates how to set up a CraftingMissions mission. It includes settings for the mission file, auto-reward functionality, commands to be executed upon completion, and the specific crafting requirements and icons for the mission's display. ```yaml # The mission file to use mission-file: CraftingMissions # Whether the mission should be given when completing all requirements. auto-reward: true # Rewards given when completing the mission. rewards: commands: - 'eco give %player% 1000' - 'is admin msg %player% &e&lCrafter | &7Successfully finished the mission Crafter I!' - 'is admin msg %player% &e&lCrafter | &7Now that you are familiar with recipes, lets go advanced.' - 'is admin msg %player% &e&lCrafter | &7&oFor more information about the next mission, checkout /is missions' # List of all required blocks must be gathered in order to complete the mission. craftings: '1': type: 'GOLD_BLOCK' amount: 1 # Icons used in the menus. icons: not-completed: type: PAPER name: '&aCrafter I' lore: - '&7Craft x1 Gold Block' - '' - '&6Required Craftings:' - '&8 - &7x1 Gold Block' - '' - '&6Rewards:' - '&8 - &7$1,000' - '' - '&6Gold Block Crafted: &7{value_gold_block}/1' - '&6Progress: &7{0}%' - '&c&l ✘ &7Not Completed' can-complete: type: PAPER name: '&aCrafter I' lore: - '&7Craft x1 Gold Block' - '' - '&6Required Craftings:' - '&8 - &7x1 Gold Block' - '' - '&6Rewards:' - '&8 - &7$1,000' - '' - '&6Gold Block Crafted: &71/1' - '&6Progress: &7100%' - '&a&l ✔ &7Click to redeem your reward.' enchants: DURABILITY: 1 flags: - HIDE_ENCHANTS completed: type: MAP name: '&aCrafter I' lore: - '&7Craft x1 Gold Block' - '' - '&6Rewards:' - '&8 - &7$1,000' - '' - '&6Gold Block Crafted: &71/1' - '&6Progress: &7100%' - '&a&l ✔ &7Already Claimed.' ``` -------------------------------- ### Get Player Island Role Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/player-placeholders Fetches the island role assigned to a player. This placeholder helps in managing and displaying player permissions or ranks within an island. ```Placeholder superior_player_role ``` -------------------------------- ### General Menu Configuration Source: https://wiki.bg-software.com/superiorskyblock/overview/menus/biomes-menu Sets up the basic properties of a menu, including its title, whether to open the previous menu upon closing, the inventory type, and a custom sound for opening the menu. ```YAML title: "" previous-menu: type: "" open-sound: ``` -------------------------------- ### Get Top Island by Player Count with Placeholder (BG-Software) Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/global-placeholders Runs a specified placeholder on an island ranked by player count. Requires position and placeholder name parameters. ```BG-Software superior_island_top_players_<#>_ ``` -------------------------------- ### Create Mission - BlocksMissions Jar Source: https://wiki.bg-software.com/superiorskyblock/overview/missions This snippet demonstrates the initial configuration for a mission using the BlocksMissions jar, specifying the mission file and basic settings. ```yaml mission-file: BlocksMissions # I am using the BlocksMissions jar as it knows how to handle block breaking. ``` -------------------------------- ### Open In-Game Config Editor Source: https://wiki.bg-software.com/superiorskyblock/overview/commands-and-permissions/admin-commands Launches an in-game interface for editing plugin configurations. This command does not require any parameters. ```command /island admin settings ``` -------------------------------- ### Get Island Radius - BG-Software Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/island-placeholders Retrieves the radius of the player's island. ```BG-Software Placeholders superior_island_radius ``` -------------------------------- ### Configure Bank Logs Menu - Pagination Navigation Placeholders Source: https://wiki.bg-software.com/superiorskyblock/overview/menus/bank-logs-menu Configure custom placeholders for previous and next page navigation buttons. These placeholders indicate navigation availability with color codes. ```YAML previous-page: material: "ARROW" display-name: "{0}Previous Page" next-page: material: "ARROW" display-name: "{0}Next Page" ``` -------------------------------- ### Get Island Leader Name - BG-Software Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/island-placeholders Retrieves the name of the island's leader. ```BG-Software Placeholders superior_island_leader ``` -------------------------------- ### Configure Fishing Missions Source: https://wiki.bg-software.com/superiorskyblock/overview/missions/fishingmissions This configuration file sets up a fishing mission, defining requirements, rewards, and display icons. It specifies that players need to catch 5 raw fish to complete the mission and outlines command-based rewards. ```yaml # The mission file to use mission-file: FishingMissions # Whether the mission should be given when completing all requirements. auto-reward: true # Should block counts of players get reset when completing the mission? reset-after-finish: true # Rewards given when completing the mission. rewards: commands: - 'eco give %player% 2500' - 'is admin msg %player% &e&lFisherman | &7Successfully finished the mission Fisherman I!' - 'is admin msg %player% &e&lFisherman | &7I heard you can find other items as well...' - 'is admin msg %player% &e&lFisherman | &7&oFor more information about the next mission, checkout /is missions' # List of all required blocks must be gathered in order to complete the mission. required-caughts: '1': types: - 'RAW_FISH' amount: 5 # Icons used in the menus. icons: not-completed: type: PAPER name: '&aFisherman I' lore: - '&7Let''s make a fish soup.' - '&7Catch 5 fish.' - '' - '&6Required Caughts:' - '&8 - &7x5 Fish' - '' - '&6Rewards:' - '&8 - &7$2,500' - '' - '&6Fish Caught: &7{1}/5' - '&6Progress: &7{0}%' - '&c&l ✘ &7Not Completed' can-complete: type: PAPER name: '&aFisherman I' lore: - '&7Let''s make a fish soup.' - '&7Catch 5 fish.' - '' - '&6Required Caughts:' - '&8 - &7x5 Fish' - '' - '&6Rewards:' - '&8 - &7$2,500' - '' - '&6Fish Caught: &75/5' - '&6Progress: &7100%' - '&a&l ✔ &7Click to redeem your reward.' enchants: DURABILITY: 1 flags: - HIDE_ENCHANTS completed: type: MAP name: '&aFisherman I' lore: - '&7Let''s make a fish soup.' - '&7Catch 5 fish.' - '' - '&6Rewards:' - '&8 - &7$2,500' - '' - '&6Fish Caught: &75/5' - '&6Progress: &7100%' - '&a&l ✔ &7Already Claimed.' ``` -------------------------------- ### Display Command Help Source: https://wiki.bg-software.com/superiorskyblock/overview/commands-and-permissions/player-commands Shows a list of all available commands, with an option to view specific pages of help. ```minecraft-commands /island help [page] ``` -------------------------------- ### Get Island Hoppers Limit - BG-Software Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/island-placeholders Retrieves the maximum number of hoppers that can be placed on an island. ```BG-Software Placeholders superior_island_hoppers_limit ``` -------------------------------- ### Basic Upgrade Structure Source: https://wiki.bg-software.com/superiorskyblock/overview/upgrades Defines the fundamental layout for a new upgrade, including a name and placeholders for different levels. ```yaml upgrades: island-generators: # The name of the upgrade. '1': # The first level of the upgrade. '2': # The second level of the upgrade. ``` -------------------------------- ### IslandMissions Configuration Example Source: https://wiki.bg-software.com/superiorskyblock/overview/missions/islandmissions This YAML configuration defines a mission for the IslandMissions plugin. It includes settings for auto-rewarding, resetting progress, defining rewards (commands and messages), specifying triggering events (IslandSchematicPasteEvent), setting a success condition using Java, and configuring item icons for different mission states (not completed, can complete, completed). ```YAML # The mission file to use mission-file: IslandMissions # Whether the mission should be given when completing all requirements. auto-reward: true # Should block counts of players get reset when completing the mission? reset-after-finish: true # Rewards given when completing the mission. rewards: commands: - 'eco give %player% 25000' - 'is admin msg %player% &e&lExplorer | &7Successfully finished the mission Nether Explorer!' - 'is admin msg %player% &e&lExplorer | &7Are you ready for the real challenge?' - 'is admin msg %player% &e&lExplorer | &7&oFor more information about the next mission, checkout /is missions' # List of events that will trigger the mission. events: - IslandSchematicPasteEvent # Requirement of the event to complete the mission. success-check: 'event.getSchematic().endsWith("_nether")' # Icons used in the menus. icons: not-completed: type: PAPER name: '&aNether Explorer' lore: - '&7Go to the Nether.' - '' - '&6Rewards:' - '&8 - &7$25,000' - '' - '&c&l ✘ &7Not Completed' can-complete: type: PAPER name: '&aNether Explorer' lore: - '&7Go to the Nether.' - '' - '&6Rewards:' - '&8 - &7$25,000' - '' - '&a&l ✔ &7Click to redeem your reward.' enchants: DURABILITY: 1 flags: - HIDE_ENCHANTS completed: type: MAP name: '&aNether Explorer' lore: - '&7Go to the Nether.' - '' - '&6Rewards:' - '&8 - &7$25,000' - '' - '&a&l ✔ &7Already Claimed.' ``` -------------------------------- ### Get Formatted Total Island Level (BG-Software) Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/global-placeholders Retrieves the total island-levels of all islands, formatted for readability. ```BG-Software superior_island_total_level_format ``` -------------------------------- ### Java - ChatMission with Event Listener Registration Source: https://wiki.bg-software.com/superiorskyblock/overview/missions This final code example integrates the `ChatMission` with the Spigot event system. It implements the `Listener` interface and registers itself with the `Bukkit` plugin manager within the `load` method. It also includes a placeholder for an event handler. ```Java public final class ChatMission extends Mission implements Listener { private int AMOUNT_OF_TIMES = 0; private String CHAT_MESSAGE = ""; @Override public void load(JavaPlugin plugin, ConfigurationSection section) throws MissionLoadException { if(!section.contains("times")) throw new MissionLoadException("Mission ChatMission must contain the \"times\" section!"); if(!section.contains("message")) throw new MissionLoadException("Mission ChatMission must contain the \"message\" section!"); AMOUNT_OF_TIMES = section.getInt("times"); if(AMOUNT_OF_TIMES <= 0) throw new MissionLoadException("times must be a positive value."); CHAT_MESSAGE = section.getString("message").toLowerCase(); Bukkit.getPluginManager().registerEvents(this, plugin); } @Override public double getProgress(SuperiorPlayer superiorPlayer) { Integer count = get(superiorPlayer); return count == null ? 0D : (double) count / AMOUNT_OF_TIMES; } @Override public void onComplete(SuperiorPlayer superiorPlayer) { // There's nothing special to do here, so I will just clear data from the user. clearData(superiorPlayer); } @Override public void onCompleteFail(SuperiorPlayer superiorPlayer) { // Empty } @EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true) ``` -------------------------------- ### Get Island Drops Multiplier - BG-Software Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/island-placeholders Fetches the current multiplier applied to mob drops on the island. ```BG-Software Placeholders superior_island_drops_multiplier ``` -------------------------------- ### Check Player Control Panel Status Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/player-placeholders Checks if the control panel opens when a player runs the '/is' command. This placeholder relates to user interface and command behavior. ```Placeholder superior_player_panel ``` -------------------------------- ### Define Custom Menu Command Structure Source: https://wiki.bg-software.com/superiorskyblock/menus Sets up the command structure for custom menus, including aliases, permissions, display settings, and descriptions for different languages. ```yaml command: aliases: alias1, alias2 permission: 'your.permission' display-command: true description: en-US: 'This is just a test menu.' fr-FR: 'Il s''agit du menu de test.' ``` -------------------------------- ### Configure KillsMissions - YAML Source: https://wiki.bg-software.com/superiorskyblock/overview/missions/killsmissions This YAML configuration defines a KillsMissions setup. It specifies the mission file, auto-reward behavior, progress reset options, commands to execute as rewards, required entities with their types and amounts, and icons for different mission states (not completed, can complete, completed) including item types, names, lore, enchantments, and flags. ```yaml # The mission file to use mission-file: KillsMissions # Whether the mission should be given when completing all requirements. auto-reward: true # Should block counts of players get reset when completing the mission? reset-after-finish: true # Rewards given when completing the mission. rewards: commands: - 'eco give %player% 1000' - 'is admin msg %player% &e&lSlayer | &7Successfully finished the mission Slayer I!' - 'is admin msg %player% &e&lSlayer | &7Your sword hasnt seen blood yet... Kill more mobs!' - 'is admin msg %player% &e&lSlayer | &7&oFor more information about the next mission, checkout /is missions' # List of all required blocks must be gathered in order to complete the mission. required-entities: '1': types: - 'SKELETON' - 'CREEPER' - 'ZOMBIE' - 'SPIDER' amount: 5 # Icons used in the menus. icons: not-completed: type: PAPER name: '&aSlayer I' lore: - '&7Kill 5 hostile mobs.' - '' - '&6Required Kills:' - '&8 - &7x5 Skeletons/Creepers/Zombies/Spiders' - '' - '&6Rewards:' - '&8 - &7$1,000' - '' - '&6Hostiles Killed: &7{1}/5' - '&6Progress: &7{0}%' - '&c&l ✘ &7Not Completed' can-complete: type: PAPER name: '&aSlayer I' lore: - '&7Kill 5 hostile mobs.' - '' - '&6Required Kills:' - '&8 - &7x5 Skeletons/Creepers/Zombies/Spiders' - '' - '&6Rewards:' - '&8 - &7$1,000' - '' - '&6Hostiles Killed: &75/5' - '&6Progress: &7100%' - '&a&l ✔ &7Click to redeem your reward.' enchants: DURABILITY: 1 flags: - HIDE_ENCHANTS completed: type: MAP name: '&aSlayer I' lore: - '&7Kill 5 hostile mobs.' - '' - '&6Rewards:' - '&8 - &7$1,000' - '' - '&6Hostiles Killed: &75/5' - '&6Progress: &7100%' - '&a&l ✔ &7Already Claimed.' ``` -------------------------------- ### Java - ChatMission Implementation with Configuration Source: https://wiki.bg-software.com/superiorskyblock/overview/missions This code provides a more complete implementation of `ChatMission`. It includes the `load` method to read mission-specific configurations ('times' and 'message') from a `ConfigurationSection`, and implements `getProgress`, `onComplete`, and `onCompleteFail`. ```Java public final class ChatMission extends Mission { private int AMOUNT_OF_TIMES = 0; private String CHAT_MESSAGE = ""; @Override public void load(JavaPlugin plugin, ConfigurationSection section) throws MissionLoadException { if(!section.contains("times")) throw new MissionLoadException("Mission ChatMission must contain the \"times\" section!"); if(!section.contains("message")) throw new MissionLoadException("Mission ChatMission must contain the \"message\" section!"); AMOUNT_OF_TIMES = section.getInt("times"); if(AMOUNT_OF_TIMES <= 0) throw new MissionLoadException("times must be a positive value."); CHAT_MESSAGE = section.getString("message").toLowerCase(); } @Override public double getProgress(SuperiorPlayer superiorPlayer) { Integer count = get(superiorPlayer); return count == null ? 0D : (double) count / AMOUNT_OF_TIMES; } @Override public void onComplete(SuperiorPlayer superiorPlayer) { // There's nothing special to do here, so I will just clear data from the user. clearData(superiorPlayer); } @Override public void onCompleteFail(SuperiorPlayer superiorPlayer) { // Empty } } ``` -------------------------------- ### Get Player Locale Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/player-placeholders Obtains the language locale set for a player. This placeholder is essential for implementing multi-language support in the game. ```Placeholder superior_player_locale ``` -------------------------------- ### Configure Enchanting Missions with YAML Source: https://wiki.bg-software.com/superiorskyblock/overview/missions/enchantingmissions This YAML configuration defines an 'Enchanter I' mission. It specifies the mission file, auto-reward settings, commands to execute upon completion, and detailed requirements for enchanted items, including item types and specific enchantments. It also includes configurations for how the mission's progress is displayed in-game using item icons. ```yaml # The mission file to use mission-file: EnchantingMissions # Whether the mission should be given when completing all requirements. auto-reward: true # Rewards given when completing the mission. rewards: commands: - 'eco give %player% 1000' - 'is admin msg %player% &e&lEnchanter | &7Successfully finished the mission Enchanter I!' - 'is admin msg %player% &e&lEnchanter | &7Now that you are familiar with enchantments, lets go advanced.' - 'is admin msg %player% &e&lEnchanter | &7&oFor more information about the next mission, checkout /is missions' # List of all required blocks must be gathered in order to complete the mission. required-enchants: '1': types: - 'DIAMOND_HELMET' enchants: PROTECTION_ENVIRONMENTAL: 4 amount: 1 '2': types: - 'DIAMOND_CHESTPLATE' enchants: PROTECTION_ENVIRONMENTAL: 4 amount: 1 '3': types: - 'DIAMOND_LEGGINGS' enchants: PROTECTION_ENVIRONMENTAL: 4 amount: 1 '4': types: - 'DIAMOND_BOOTS' enchants: PROTECTION_ENVIRONMENTAL: 4 amount: 1 # Icons used in the menus. icons: not-completed: type: PAPER name: '&aEnchanter I' lore: - '&7Enchant a full diamond armor with protection 4' - '' - '&6Required Enchantments:' - '&8 - &7x1 Diamond Helmet (Protection IV)' - '&8 - &7x1 Diamond Chestplate (Protection IV)' - '&8 - &7x1 Diamond Leggings (Protection IV)' - '&8 - &7x1 Diamond Boots (Protection IV)' - '' - '&6Rewards:' - '&8 - &7$1,000' - '' - '&6Diamond Helmet: &7{enchanted_diamond_helmet}' - '&6Diamond Chestplate: &7{enchanted_diamond_chestplate}' - '&6Diamond Leggings: &7{enchanted_diamond_leggings}' - '&6Diamond Boots: &7{enchanted_diamond_boots}' - '&6Progress: &7{0}%' - '&c&l ✘ &7Not Completed' can-complete: type: PAPER name: '&aEnchanter I' lore: - '&7Enchant a full diamond armor with protection 4' - '' - '&6Required Enchantments:' - '&8 - &7x1 Diamond Helmet (Protection IV)' - '&8 - &7x1 Diamond Chestplate (Protection IV)' - '&8 - &7x1 Diamond Leggings (Protection IV)' - '&8 - &7x1 Diamond Boots (Protection IV)' - '' - '&6Rewards:' - '&8 - &7$1,000' - '' - '&6Diamond Helmet: &7Yes' - '&6Diamond Chestplate: &7Yes' - '&6Diamond Leggings: &7Yes' - '&6Diamond Boots: &7Yes' - '&6Progress: &7100%' - '&a&l ✔ &7Click to redeem your reward.' enchants: DURABILITY: 1 flags: - HIDE_ENCHANTS completed: type: MAP name: '&aEnchanter I' lore: - '&7Enchant a full diamond armor with protection 4' - '' - '&6Rewards:' - '&8 - &7$1,000' - '' - '&6Diamond Helmet: &7Yes' - '&6Diamond Chestplate: &7Yes' - '&6Diamond Leggings: &7Yes' - '&6Diamond Boots: &7Yes' - '&6Progress: &7100%' - '&a&l ✔ &7Already Claimed.' ``` -------------------------------- ### Configure Brewing Missions Source: https://wiki.bg-software.com/superiorskyblock/overview/missions/brewingmissions This YAML configuration defines a brewing mission, including mission file, auto-reward settings, reset behavior, rewards (commands and messages), and required potions with their amounts and types. It also specifies icons for different mission states (not completed, can complete, completed). ```yaml # The mission file to use mission-file: BrewingMissions # Whether the mission should be given when completing all requirements. auto-reward: true # Should block counts of players get reset when completing the mission? reset-after-finish: true # Rewards given when completing the mission. rewards: commands: - 'eco give %player% 1000' - 'is admin msg %player% &e&lBrewer | &7Successfully finished the mission Brewer I!' - 'is admin msg %player% &e&lBrewer | &7Now that you are familiar with the brewing stand, lets go advanced.' - 'is admin msg %player% &e&lBrewer | &7&oFor more information about the next mission, checkout /is missions' # List of all required blocks must be gathered in order to complete the mission. required-potions: '1': # Brew 1 potion of Speed II. potions: '1': type: SPEED upgraded: true extended: false splash: false amount: 1 # Icons used in the menus. icons: not-completed: type: PAPER name: '&aBrewer I' lore: - '&7Brew x1 Speed II potion.' - '' - '&6Required Potions:' - '&8 - &7x1 Speed II' - '' - '&6Rewards:' - '&8 - &7$1,000' - '' - '&6Potions Brewed: &70/1' - '&6Progress: &7{0}%' - '&c&l ✘ &7Not Completed' can-complete: type: PAPER name: '&aBrewer I' lore: - '&7Brew x1 Speed II potion.' - '' - '&6Required Potions:' - '&8 - &7x1 Speed II' - '' - '&6Rewards:' - '&8 - &7$1,000' - '' - '&6Potions Brewed: &71/1' - '&6Progress: &7100%' - '&a&l ✔ &7Click to redeem your reward.' enchants: DURABILITY: 1 flags: - HIDE_ENCHANTS completed: type: MAP name: '&aBrewer I' lore: - '&7Brew x1 Speed II potion.' - '' - '&6Rewards:' - '&8 - &7$1,000' - '' - '&6Potions Brewed: &71/1' - '&6Progress: &7100%' - '&a&l ✔ &7Already Claimed.' ``` -------------------------------- ### Get Superior Island UUID Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/island-placeholders Retrieves the unique universal identifier (UUID) of a superior island. This is a unique identifier for the island. ```N/A superior_island_uuid ``` -------------------------------- ### Check Player Island Permission - BG-Software Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/island-placeholders Verifies if a player has a specific permission (e.g., 'build') on the island. Requires the permission name as a parameter. ```BG-Software Placeholders superior_island_permission_ ``` -------------------------------- ### Configure Schematic Item - BG-Software Source: https://wiki.bg-software.com/superiorskyblock/overview/schematics This configuration snippet shows how to add a custom schematic to the island-creation menu. It includes parameters for the schematic file name, biome, bonus worth, bonus level, offset, spawn offset, and access/no-access items. ```yaml schematic: '' biome: '' bonus-worth: bonus-level: offset: spawn-offset: " , , " access: no-access: ``` -------------------------------- ### Get Island Team Status Source: https://wiki.bg-software.com/superiorskyblock/overview/commands-and-permissions/player-commands Displays the status of island members. Accepts aliases '/island showteam' and '/island online'. ```command /island team [player-name / island-name] ``` ```command /island showteam [player-name / island-name] ``` ```command /island online [player-name / island-name] ``` -------------------------------- ### Configure Bank Logs Menu - Pattern Section Source: https://wiki.bg-software.com/superiorskyblock/overview/menus/bank-logs-menu Define the layout of your menu using a pattern section, which is a list of strings. Each character in the strings represents an item slot. The pattern can have 1 to 6 lines, each with 9 characters (spaces are ignored). ```YAML pattern: - "--------- " - "- - " - "- - " - "- - " - "--------- " - " " ``` -------------------------------- ### Configure Bank Logs Menu - Current Page Placeholder Source: https://wiki.bg-software.com/superiorskyblock/overview/menus/bank-logs-menu Configure a custom placeholder for the current page display button, showing the current page number. ```YAML current-page: material: "BOOK" display-name: "Page {0}" ``` -------------------------------- ### Get Player Disbands Left Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/player-placeholders Returns the number of remaining disbands a player is allowed. This placeholder is relevant for island management and limitations. ```Placeholder superior_player_disbands ``` -------------------------------- ### Create Schematic - BG-Software Source: https://wiki.bg-software.com/superiorskyblock/overview/schematics This snippet outlines the command to create a schematic using BG-Software's built-in system. It involves toggling schematic mode, selecting blocks with a golden axe, and executing the creation command. ```minecraft-commands /is admin schematic /is admin schematic ``` -------------------------------- ### Configure BlocksMissions Mission - BG-Software Source: https://wiki.bg-software.com/superiorskyblock/overview/missions/blocksmissions This configuration file sets up a mission for BG-Software's BlocksMissions jar. It defines mission parameters such as auto-rewarding, resetting progress, tracking natural blocks, and specifies rewards and required blocks. It also includes detailed icon configurations for different mission states (not completed, can complete, completed). ```yaml # The mission file to use mission-file: BlocksMissions # Whether the mission should be given when completing all requirements. auto-reward: true # Should block counts of players get reset when completing the mission? reset-after-finish: true # Whether only naturally spawned blocks should be counted towards the mission or not. only-natural-blocks: true # Rewards given when completing the mission. rewards: commands: - 'eco give %player% 1000' - 'is admin msg %player% &e&lMiner | &7Successfully finished the mission Miner I!' - 'is admin msg %player% &e&lMiner | &7Now that you are familiar with generators, mine some iron.' - 'is admin msg %player% &e&lMiner | &7&oFor more information about the next mission, checkout /is missions' # List of all required blocks must be gathered in order to complete the mission. required-blocks: '1': types: - 'STONE' amount: 48 '2': types: - 'COAL_ORE' amount: 16 # Icons used in the menus. icons: not-completed: type: PAPER name: '&aMiner I' lore: - '&7Mine x48 cobblestone and x16 coal ore.' - '' - '&6Required Blocks:' - '&8 - &7x48 Cobblestone' - '&8 - &7x16 Coal Ore' - '' - '&6Rewards:' - '&8 - &7$1,000' - '&8 - &7Generator Upgrade' - '' - '&6Cobblestone Mined: &7{value_stone}/48' - '&6Coal Ore Mined: &7{value_coal_ore}/16' - '&6Progress: &7{0}%' - '&c&l ✘ &7Not Completed' can-complete: type: PAPER name: '&aMiner I' lore: - '&7Mine x48 cobblestone and x16 coal ore.' - '' - '&6Required Blocks:' - '&8 - &7x48 Cobblestone' - '&8 - &7x16 Coal Ore' - '' - '&6Rewards:' - '&8 - &7$1,000' - '&8 - &7Generator Upgrade' - '' - '&6Cobblestone Mined: &748/48' - '&6Coal Ore Mined: &716/16' - '&6Progress: &7100%' - '&a&l ✔ &7Click to redeem your reward.' enchants: DURABILITY: 1 flags: - HIDE_ENCHANTS completed: type: MAP name: '&aMiner I' lore: - '&7Mine x48 cobblestone and x16 coal ore.' - '' - '&6Rewards:' - '&8 - &7$1,000' - '&8 - &7Generator Upgrade' - '' - '&6Cobblestone Mined: &748/48' - '&6Coal Ore Mined: &716/16' - '&6Progress: &7100%' - '&a&l ✔ &7Already Claimed.' ``` -------------------------------- ### Get Player Texture Value Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/player-placeholders Retrieves the texture value associated with a player. This placeholder is useful for displaying player-specific visual elements. ```Placeholder superior_player_texture ``` -------------------------------- ### Get Total Island Level (BG-Software) Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/global-placeholders Retrieves the total island-levels of all islands. This placeholder provides a raw numerical value. ```BG-Software superior_island_total_level ``` -------------------------------- ### Configure Manager Source: https://wiki.bg-software.com/superiorskyblock/overview/addons/ssbproxybridge Configuration options for the SSBProxyBridge Manager, including network settings and server exclusion lists. ```yaml port: 25566 # The IP the manager listens to. ip: "0.0.0.0" # The keep-alive interval in seconds. keep-alive-interval: 20 # List of servers that islands will not be generated at. excluded-servers: [] ``` -------------------------------- ### Get Total Island Worth (BG-Software) Source: https://wiki.bg-software.com/superiorskyblock/overview/placeholders/global-placeholders Retrieves the total worth-value of all islands. This placeholder provides a raw numerical value. ```BG-Software superior_island_total_worth ```