Activators features

These options are utilized to accomplish specific things to create simple to complex items

All this features are inside the activator, as reminder activators are different ways you have to trigger features on your ExecutableItem, it can have conditions, run commands, have cooldown, etc.

Starred features ⭐ are for premium version.

General features of an activator

Display name of the activator

  • Info: String value of the display name of the activator, it doesn't have much use, its used for the developer to recognize one activator from another. It also appears on the default message "timeLeft" inside the locale.yml file.

  • Example:

activators:
  activator0: # Activator ID, you can create as many activator on the activators list
    name: '&eThor activator'

⭐Usage modification of the activator

  • Info: Very important feature, the value of the usage of the item will be modified by this integer value. That means, if this value is positive then usage will increase and if this value is negative then the usage will decrease.

  • Example: (Increasing the value of the usage by 1 each time this activator is triggered)

activators:
  activator0: # Activator ID, you can create as many activator on the activators list
    usageModification: 1

Variables modification

  • Info: Its a list of variables modification to apply to the variables inside your item. Its useful for example, for increase the value of a variable, for overriding an old value of a variable to another value, etc.

    • variableName: Name of the variable the variableModification is targetting

    • type: Type of variableModification you are using

      • SET: Override the old value of the variable and sets the modification value.

      • ADD: Apply math to the current value of the variable using the modification value. It needs the variable to be type of NUMBER. If the modification value is positive then it will increase, if its negative then it will decrease.

      • LIST_ADD: Applied to variable type LIST, it appens the modification value to the variable list.

      • LIST_CLEAR: Applied to variable type LIST, it clears the variable list.

      • LIST_REMOVE: Applied to variable type LIST, it removes the modification value from the variable list.

    • modification: Value of modification. Its applied to the variable using the types of modifications.

  • Example:

activators:
  activator0: # Activator ID, you can create as many activators on the activators list
    variablesModification:
      varUpdt0: # Variable modification ID, you can create as many variable modifications on the activator as you want  
        # This variable modification updates the value of targethp to 20
        variableName: targethp 
        type: SET
        modification: 20
      varUpdt1: # Variable modification ID, you can create as many variable modifications on the activator as you want 
        # This variable modification updates the value of hit by increasing it on 1
        variableName: hit
        type: MODIFICATION
        modification: 1
      varUpdt1: # Variable modification ID, you can create as many variable modifications on the activator as you want 
        # This variable modification updates the value of hit by decreasing it on 1
        variableName: durability
        type: MODIFICATION
        modification: -1
  • Be careful when using placeholders here ! There is no problem with that, just make sure the returning output is a NUMBER, otherwise you will need to use STRING features. For example, let's update a variableModification by another variable that we know it returns a NUMBER.

activators:
  activator0: # Activator ID, you can create as many activators on the activators list
    variablesModification:
      varUpdt0: # Variable modification ID, you can create as many variable modifications on the activator as you want  
        # This variable modification updates the value of the bullets to the value of the variable max bullets, as if I was reloading a gun
        variableName: currentBullets
        type: SET
        modification: '%var_maxbullets_int%'
activators:
  activator1: # Activator ID, you can create as many activators on the activators list
    variablesModification:
      varUpdt0: # Variable modification ID, you can create as many variable modifications on the activator as you want  
        # This variable modification updates the value of the current bullets by the variable bullets per shot, so its decreasing our bullets depending on the amount of bullets we are firing
        variableName: currentBullets
        type: MODIFICATION
        modification: '-%var_bulletspershot%'

Detailed slots

  • Info: List of integer values that represents slots of the inventory where the activator will be able to work. This means, if the event occurs in one slot that is not from here then the activator won't be triggered.

  • Example:

activators:
  activator0: # Activator ID, you can create as many activators on the activators list
    detailedSlots:
  - -1 # Slot for mainhand, this is not a static slot but having it on mainhand
  - 40 # This is a static slot, it represents the offhand slot.

Auto update item

  • Info: This feature of the activator makes that the item is updated in one of the features of the list. Be careful ! This may not be necessary depending on what you want. There are things that are updated automatically, for example, commands on the activator, conditions, cooldown, etc are updated automatically without this feature.

  • This feature targets most the visual aspects of the item, so if you created once a ExecutableItem with id:ex_sword with a display name of "&dExcalibur" and you distributed this item to all players and now you would like all the ExecutableItems "ex_sword" to have the new display name of "&eEpic Sword" then you would need to enable this feature on one of the activators of the item. Enabling the feature (autoUpdateItem) + the feature of update name (updateName).

  • To make sure its correctly explained, this feature will override the current value depending on the options you enabled with the current option of the config file, and its only used for visual features. Its not necessary for common changes that don't involve the options of this feature.

    • autoUpdateItem: Boolean value that represents if this feature is enabled or not for the activator.

    • updateName: Boolean value to update the display name of the ExecutableItem. If its true, it will override the current display name of the item with the current/updated item name set on the config file of the ExecutableItem.

    • updateLore: Boolean value to update the lore of the ExecutableItem. If its true, it will override the current lore of the item with the current/updated lore set on the config file of the ExecutableItem.

    • updateDurability: Boolean value to update the current durability of the ExecutableItem. If its true, it will override the current durability of the item with the current/updated durability set on the config file of the ExecutableItem.

    • updateAttributes: Boolean value to update all the attributes of the ExecutableItem. If its true, it will override the current attributes of the item with the current/updated attributes set on the config file of the ExecutableItem.

    • updateEnchants: Boolean value to update the enchantments of the ExecutableItem. If its true, it will override the current enchantments of the item with the current/updated enchantments set on the config file of the ExecutableItem.

    • updateCustomModelData: Boolean value to update the custom model data value of the ExecutableItem. If its true, it will override the current custom model data of the item with the current/updated customModelData value set on the config file of the ExecutableItem.

    • updateArmorSettings: Boolean value to update the armor settings of the ExecutableItem. If its true, it will override the current armor settings of the item with the current/updated armor settings set on the config file of the ExecutableItem. e.g. (Armor color)

    • updateMaterial: Boolean value to update the material of the ExecutableItem. If its true, it will override the current material of the item with the current/updated material set on the config file of the ExecutableItem.

    • updateHiders: Boolean value to update the hider configuration of the ExecutableItem. If its true, it will override the current hiders configuration with the current/updated hiders setup on the config file of the ExecutableItem.

  • Example:

activators:
  activator0: # Activator ID, you can create as many activators on the activators list
    autoUpdateItem: false
    updateName: false
    updateLore: false
    updateDurability: false
    updateAttributes: false
    updateEnchants: false
    updateCustomModelData: false
    updateArmorSettings: false
    updateMaterial: false
    updateHiders: false

cancelEvent

  • Info: Boolean value that represents if the event related to the activator is going to be cancelled or not.

    • This can be hard to understand, I think its one of the things that most people don't understand but to explain it you must know that each ACTIVATOR is related to a Minecraft event, following the idea this event occur and then the ACTIVATOR is triggered. if we enabling cancelEvent which is a feature from the activator, that means the event occur, then at almost the same time the activator gets triggered and it cancels the event, so the activator keeps running all its enabled features but the event didn't happen, cancelling it. For example:

      • If the activator is PLAYER_HIT_PLAYER and we enable cancelEvent then the player won't be able to hit the player due all hits are cancelled/ignored.

      • If the activator is PLAYER_BLOCK_BREAK and we enable cancelEvent then the player won't be able to break blocks due the event is cancelled/ignored.

  • Example:

activators:
  activator0: # Activator ID, you can create as many activators on the activators list
    option: PLAYER_BLOCK_BREAK
    cancelEvent: true

playerCommands

Commands are a list of commands that are run from the console when the activator if it meet all conditions and requirements. You can use vanilla commands here, SCore commands and another plugin commands.

  • All the command lines of this command list are placeholder parsed first with placeholders from Ssomar Plugins and then its parsed through PAPI.

  • There are three type of entity targets on commands

    • Player: Its the player/user who triggered the activator on the ExecutableItem

    • Target: Its the player targeted/enemy involved in an activator.

    • Entity: Its the entity/mob/enemy involved in an activator.

Its important to know that even if there are different categories for activators this feature appears on every one/each one of them due on all activators is present the player who triggers the event for the ExecutableItem activator.

  • Info: Player commands is a list commands that are normally run against the player when the activator triggers.

    • This means if it has an SCore command of DAMAGE 5, if its on playerCommands then the damage will be applied to the user of the ExecutableItem.

    • Its "normally run against the player" because this works for SCore commands, remember you can use another plugin commands or vanilla commands, so if you add "minecraft:say hi" its a minecraft command which will broadcast the message of "hi".

  • Example:

activators:  
  activator1: # Activator ID, you can create as many activators on the activator    
    option: PLAYER_RIGHT_CLICK
    commands:
    - SEND_MESSAGE &eHey ! I am a message and the player who triggered this activator
      can see it ^^
    - effect give %player% regeneration 5 5 true
    - SEND_MESSAGE &dYou received regeneration :P

Cooldown

Player cooldown

  • Info: Cooldown options its the cooldown applied to the player who triggered this activator for this activator.

  • If the activator is PLAYER_RIGHT_CLICK, it has some commands [] and the cooldown is 30 seconds, if the player triggers this activator he will need to wait 30 seconds in order to make it trigger again. This doesn't prevent other player from running it between those 30 seconds as long as that player is not on cooldown too. This is a feature per player

    • cooldown: Integer value that represents the amount of time the cooldown will last for this activator.

    • isCooldownInTicks: Boolean value that sets the cooldown time to be in ticks (20 ticks = 1 second)

    • cooldownMsg: String value to be displayed when the player try to trigger the activator when its on cooldown

    • displayCooldownMessage: Boolean value to allow or prevent the message of cooldownMsg displayed if the player try to trigger the activator while he is on cooldown.

      • Placeholders that can be used:

        • %time% -> the entire cooldown in seconds

        • %time_H% -> the hours part of the cooldown

        • %time_M% -> the minutes part of the cooldown

        • %time_S% -> the seconds part of the cooldown

    • cancelEventIfInCooldown: Boolean value that cancels the event of the activator if the player is on cooldown. This means, if the activator is PLAYER_HIT_ENTITY, while he is on cooldown all the player event's of PLAYER_HIT_ENTITY will be cancelled and so they will be ignored, disabling the ability of the player to attack entities (reminder: that activator targets all entities except players)

    • pauseWhenOffline: Boolean value that pauses the cooldown if the player is offline. To better understanding, if its false, the cooldown time doesn't stop so he can leave the server, wait the cooldown and join again and he will be able to trigger the activator again. But if this feature is enabled and he left the server while on cooldown, when he joins again he will have the same remaining cooldown time that he had when he left.

    • pausePlaceholdersConditions: Its similar to pauseWhenOffline but it only pauses depending on certain placeholdersConditions. Example of usages would be pausing the cooldown if the player is VIP rank. So VIP rank has access to that feature.

    • enableVisualCooldown: Enables a visual cooldown for the item.

  • Example:

activators:
  activator0: # Activator ID, you can create as many activators on the activators list
    cooldownOptions:
      cooldown: 0
      isCooldownInTicks: false
      cooldownMsg: '&cYou are in cooldown ! &7(&e%time_H%&6H &e%time_M%&6M &e%time_S%&6S&7)'
      displayCooldownMessage: true
      cancelEventIfInCooldown: false
      pauseWhenOffline: false
      pausePlaceholdersConditions: {}
      enableVisualCooldown: false

Global cooldown

  • Info: Its the same idea as cooldown but instead of being the cooldown applied to the player its a global cooldown that is applied to all players. That means, if someone triggers the activator and it has 30 seconds of global cooldown, then no one will be able to use it after those 30 seconds has gone. It has the same features as cooldown.

    • cooldown: Integer value that represents the amount of time the cooldown will last for this activator.

    • isCooldownInTicks: Boolean value that sets the cooldown time to be in ticks (20 ticks = 1 second)

    • cooldownMsg: String value to be displayed when a player try to trigger this activator when its on cooldown

    • displayCooldownMessage: Boolean value to allow or prevent the message of cooldownMsg displayed if the player try to trigger the activator while he is on cooldown.

      • Placeholders that can be used:

        • %time% -> the entire cooldown in seconds

        • %time_H% -> the hours part of the cooldown

        • %time_M% -> the minutes part of the cooldown

        • %time_S% -> the seconds part of the cooldown

    • cancelEventIfInCooldown: Boolean value that cancels the event of the activator if the player is on cooldown. This means, if the activator is PLAYER_HIT_ENTITY, while he is on cooldown all the player event's of PLAYER_HIT_ENTITY will be cancelled and so they will be ignored, disabling the ability of the player to attack entities (reminder: that activator targets all entities except players)

    • enableVisualCooldown: Enables a visual cooldown for the item.

  • Example:

activators:
  activator0: # Activator ID, you can create as many activators on the activators list
    globalCooldownOptions:
      cooldown: 0
      isCooldownInTicks: false
      cooldownMsg: '&cYou are in cooldown ! &7(&e%time_H%&6H &e%time_M%&6M &e%time_S%&6S&7)'
      displayCooldownMessage: true
      cancelEventIfInCooldown: false
      enableVisualCooldown: false

otherEICooldowns

  • Info: This feature allows to apply player cooldown to specific ExecutableItems and optional specific activators.

    • executableItem: ID of the ExecutableItem you want to apply cooldown to.

    • activators: List of strings which are the ID of the activators you want to affect for the ExecutableItem specified with cooldown. If none are selected then the cooldown will be applied to all activators of the ExecutableItem specified.

    • cooldown: Integer value that will be the amount of time of cooldown will be applied.

    • isCooldownInTicks: Boolean value that represents if the cooldown value will be on seconds or ticks. (20 ticks = 1 second)

  • Tips:

    • You can specify the ExecutableItem who run this feature itself. For example if you want from one activator to apply cooldown to another activator in the same item.

    • Another idea can be applying cooldown to all damage related items if you use one of them.

    • Another example would be using this feature to allow the player to choose one of different ExecutableItems, when they choose one and triggers it, then they can't use neither the chosen one because its on cooldown nor the another ones because they are on cooldown too.

  • Example:

activators:
  activator0: # Activator ID, you can create as many activators on the activators list
    otherEICooldowns:
      cd1: # otherEICooldown ID, you can create as many otherEICooldown on the otherEICooldowns list
        executableItem: test 
        activators: 
        - activator0 
        cooldown: 20 
        isCooldownInTicks: false
      cd0: # otherEICooldown ID, you can create as many otherEICooldown on the otherEICooldowns
        executableItem: swordSharpness
        activators: [] 
        cooldown: 10
        isCooldownInTicks: false

silenceOutput

  • Info: Boolean value that makes all commands run from commands features such as (playerCommands, blockCommands, entityCommands and targetCommands) will not have an output on the console.

    • For example, using the minecraft vanilla command effect give [...] normally has an output on the console with this format: "Applied effect strength to <playerName>", well, to disable this output you can enable this feature

  • Example:

activators:
  activator1: # Activator ID, you can create as many activators on the activator    
    commands:
    - effect give %player% strength 5 5
    silenceOutput: true
  • Its important to understand that this feature is made to disable vanilla commands output, if you use another plugin command and it has a console output, its not our side who should fix it, the other plugin should provide you a way to hide those messages. Anyways, because we are gentle you have a way to customize messages from being hidden so you can have the default messages silenced by silenceOutput + custom messages you would like to add. This process is handled by Score config file more information here and how to do it here https://docs.ssomar.com/tools-for-all-plugins-score/score/general-config .

⭐Required features

This section is for setting up features related to required things in order to be able to trigger the activator. This means that if the event happens, the activator will only run if the player matches this required setup. The items will be consumed in the process.

  • If you would like the items not to get consumed then not use "required" feature but use conditions which are just conditions and doesn't consume.

⭐requiredExecutableItems

  • Info: This feature allows the activator to have as requirement an ExecutableItem(s). If the player meets this requirement the requirement will be consumed and the activator will run.

    • cancelEventIfError: Boolean value that represents if the event will be cancelled if the player doesn't have the requirement.

      • This means, for example, let's say there is an event of PLAYER_HIT_ENTITY, and it occurs but the player doesn't have the requirements in order to trigger the activator, if this feature is enabled the event of PLAYER_HIT_ENTITY will be cancelled so the player even though its clicking/hit the entity, the entity is not getting damage because in reality the event is not occurring due its being cancelled.

    • errorMessage: String message that will be sent to the player if the player doesn't meet the requirement.

    • executableItem: ExecutableItem ID that is needed as requiremennt

    • amount: Integer of amount of items that are needed as requirement.

    • usageConditions: Optional string condition in format of (==,!=,>,<,>=,<=){number} to the usage condition of the ExecutableItem.

      • This means, if the condition is >=5 then the requirement is that the Executableitem chosen must be on the player inventory as its a requirement but also needs to have usage over or equal a value of 5.

  • Example:

activators:  
  activator1: # Activator ID, you can create as many activators on the activator
    requiredExecutableItems:
      requiredEI0: # requiredEI ID, you can create as many requiredEI on the requiredExecutableItems
        executableItem: moon
        amount: 1
        usageConditions: '>=5'
      requiredEI1: # requiredEI ID, you can create as many requiredEI on the requiredExecutableItems
        executableItem: sun
        amount: 1
      cancelEventIfError: true
      errorMessage: '&c You dont meet the requirement'

⭐requiredItems

  • Info: This feature allows the activator to have as requirement vanilla item(s). If the player meets this requirement the requirement will be consumed and the activator will run.

    • cancelEventIfError: Boolean value that represents if the event will be cancelled if the player doesn't have the requirement.

      • This means, for example, let's say there is an event of PLAYER_HIT_ENTITY, and it occurs but the player doesn't have the requirements in order to trigger the activator, if this feature is enabled the event of PLAYER_HIT_ENTITY will be cancelled so the player even though its clicking/hit the entity, the entity is not getting damage because in reality the event is not occurring due its being cancelled.

    • errorMessage: String message that will be sent to the player if the player doesn't meet the requirement.

    • material: Vanilla MATERIAL that is needed as requirement.

    • amount: Integer of amount of items that are needed as requirement.

    • notExecutableItem: Boolean value to make the requirement able to be a ExecutableItem or not.

      • This means, if the requirement is STONE, and this feature is not enabled, then the requirement will meet with vanilla STONE(s) and ExecutableItem(s) with material of STONE and so will be consumed. If you don't want this to happen then enable this feature.

  • Example:

activators:  
  activator1: # Activator ID, you can create as many activators on the activator
    requiredItems:
      requiredItem0: # requiredItem ID, you can create as many requiredItem on the requiredItems
        material: STONE
        amount: 1
        notExecutableItem: true
      cancelEventIfError: true
      errorMessage: '&c You dont meet the requirement'

⭐requiredMoney

  • Info: This feature needs the plugin called "Vault". This feature allows the activator to have as requirement money from Vault. If the player meets this requirement the requirement will be consumed and the activator will run.

    • cancelEventIfError: Boolean value that represents if the event will be cancelled if the player doesn't have the requirement.

      • This means, for example, let's say there is an event of PLAYER_HIT_ENTITY, and it occurs but the player doesn't have the requirements in order to trigger the activator, if this feature is enabled the event of PLAYER_HIT_ENTITY will be cancelled so the player even though its clicking/hit the entity, the entity is not getting damage because in reality the event is not occurring due its being cancelled.

    • errorMessage: String message that will be sent to the player if the player doesn't meet the requirement.

    • requiredMoney: Float value that represents the amount of money needed as requirement.

  • Example:

activators:  
  activator1: # Activator ID, you can create as many activators on the activator
    requiredMoney:
      requiredMoney: 1200.0
      cancelEventIfError: true
      errorMessage: '&c You dont meet the requirement'

⭐requiredLevel

  • Info: This feature allows the activator to have as requirement vanilla experience levels. If the player meets this requirement the requirement will be consumed and the activator will run. Don't confuse experience levels with experience, more info here https://minecraft.fandom.com/wiki/Experience

    • cancelEventIfError: Boolean value that represents if the event will be cancelled if the player doesn't have the requirement.

      • This means, for example, let's say there is an event of PLAYER_HIT_ENTITY, and it occurs but the player doesn't have the requirements in order to trigger the activator, if this feature is enabled the event of PLAYER_HIT_ENTITY will be cancelled so the player even though its clicking/hit the entity, the entity is not getting damage because in reality the event is not occurring due its being cancelled.

    • errorMessage: String message that will be sent to the player if the player doesn't meet the requirement.

    • requiredLevel: Integer value that represents the amount of Minecraft vanilla experience level(s) needed as requirement.

  • Example:

 activators:  
  activator1: # Activator ID, you can create as many activators on the activator
     requiredLevel:
      requiredLevel: 50
      errorMessage: '&c You dont meet the requirement'
      cancelEventIfError: true

⭐requiredExperience

  • Info: This feature allows the activator to have as requirement minecraft vanilla experiencei. If the player meets this requirement the requirement will be consumed and the activator will run. Don't confuse experience with experience levels, they are different things, more info at https://minecraft.fandom.com/wiki/Experience

    • cancelEventIfError: Boolean value that represents if the event will be cancelled if the player doesn't have the requirement.

      • This means, for example, let's say there is an event of PLAYER_HIT_ENTITY, and it occurs but the player doesn't have the requirements in order to trigger the activator, if this feature is enabled the event of PLAYER_HIT_ENTITY will be cancelled so the player even though its clicking/hit the entity, the entity is not getting damage because in reality the event is not occurring due its being cancelled.

    • errorMessage: String message that will be sent to the player if the player doesn't meet the requirement.

    • requiredExperience: Integer value that represents the amount of experience needed as requirement.

  • Example:

activators:  
  activator1: # Activator ID, you can create as many activators on the activator
    requiredExperience:
      requiredExperience: 20
      errorMessage: '&c You dont meet the requirement'
      cancelEventIfError: true

⭐RequiredMana

  • Info: This feature allows the activator to have as requirement mana from AureliumSkills, MMOCore and AuraSkills. If the player meets this requirement the requirement will be consumed and the activator will run.

    • cancelEventIfError: Boolean value that represents if the event will be cancelled if the player doesn't have the requirement.

      • This means, for example, let's say there is an event of PLAYER_HIT_ENTITY, and it occurs but the player doesn't have the requirements in order to trigger the activator, if this feature is enabled the event of PLAYER_HIT_ENTITY will be cancelled so the player even though its clicking/hit the entity, the entity is not getting damage because in reality the event is not occurring due its being cancelled.

    • errorMessage: String message that will be sent to the player if the player doesn't meet the requirement.

    • requiredMana: Integer value that represents the amount of mana needed as requirement.

  • Example:

activators:  
  activator1: # Activator ID, you can create as many activators on the activator
    requiredMana:
      requiredMana: 10
      errorMessage: '&c You dont meet the requirement'

Compatible with AureliumSkills, MMOCore and AuraSkills

⭐RequiredMagic (EcoSkills)

  • Info: This feature allows the activator to have as requirement magic from EcoSkills. If the player meets this requirement the requirement will be consumed and the activator will run.

    • cancelEventIfError: Boolean value that represents if the event will be cancelled if the player doesn't have the requirement.

      • This means, for example, let's say there is an event of PLAYER_HIT_ENTITY, and it occurs but the player doesn't have the requirements in order to trigger the activator, if this feature is enabled the event of PLAYER_HIT_ENTITY will be cancelled so the player even though its clicking/hit the entity, the entity is not getting damage because in reality the event is not occurring due its being cancelled.

    • errorMessage: String message that will be sent to the player if the player doesn't meet the requirement.

    • magicID: The ID of the magic in EcoSkills.

    • amount: Amount of magic of the magicID needed as requirement.

activators:  
  activator1: # Activator ID, you can create as many activators on the activator
    requiredMagics:
      requiredMagic_0: # requiredMagic ID, you can create as many requiredMagic on the requiredMagics
        magicID: mana
        amount: 70
      errorMessage: '&c You dont meet the requirement'

Features exclusive depending on type of activator

To make the features more understandable on where activators do they work, we will create 5 types of categories to group activators, so if one of the features say one of this categories then you'll know the feature works for all the activators on that category.

  • PLAYER_NONE: This type of activators are exclusive to the player who triggered the activator of the ExecutableItem and don't involve anything else. Abbreviaton [P_N]

  • PLAYER_BLOCK: This type of activators are involved with the player who triggered the activator of the ExecutableItem and the block involved in the activator. Abbreviaton [P_B]

  • PLAYER_ENTITY: This type of activators are involved with the player who triggered the activator of the ExecutableItem and an entity involved in the activator. Abbreviaton [P_E]

  • PLAYER_TARGET: This type of activators are involved with the player who triggered the activator of the ExecutableItem and another player called "target" which is considered as target/enemy. Abbreviation [P_T]

  • Specific activator list: If there is a feature that contains different activators across the categories then its better for understanding creating a new temporal list, which will be mentioned on the feature. Abbreviation [S_A_L]

[P_B] blockCommands

Commands are a list of commands that are run from the console when the activator if it meet all conditions and requirements. You can use vanilla commands here, SCore commands and another plugin commands.

  • All the command lines of this command list are placeholder parsed first with placeholders from Ssomar Plugins and then its parsed through PAPI.

  • There are three type of entity targets on commands

    • Player: Its the player/user who triggered the activator on the ExecutableItem

    • Target: Its the player targeted/enemy involved in an activator.

    • Entity: Its the entity/mob/enemy involved in an activator.

  • Type of activator category: PLAYER_BLOCK

  • Info: List of commands that are normally run against the block when the activator triggers.

    • This means, the activator must have involved with a block, for example PLAYER_HIT_PLAYER is an activator, but it doesn't involve a block, so blockCommands are not available here. With the activator PLAYER_BLOCK_BREAK there is a block involved so blockCommands are available here.

    • Another example PLAYER_RIGHT_CLICK has an activatorFeature called typeTarget, by default its ONLY_AIR so blockCommands are not available due the activator is not involved with a block, but, typeTarget can be changed to ONLY_BLOCK and then the activator will have as available features blockCommands, more info here -> <IF I FORGOT PLS PING VAYK>

  • Example:

activators:  
  activator0: # Activator ID, you can create as many activator on the activators list    
    option: PLAYER_BLOCK_BREAK
    blockCommands:
    - EXPLODE
  • Its important to understand that having blockCommands doesn't mean don't having player commands, on the activator PLAYER_BLOCK_BREAK there is two target involved, the player and the block, so we can have for example:

activators:  
  activator0: # Activator ID, you can create as many activator on the activators list    
    option: PLAYER_BLOCK_BREAK
    commands:
    - SEND_MESSAGE &eYou have broken a block, it will explode in 5 seconds !
    blockCommands:
    - DELAY 5
    - EXPLODE

[P_B] detailedBlocks

  • Type of activator category: PLAYER_BLOCK

  • Info: Feature for activators that involves a block, here you can select as condition the type of block(s) where this activator will trigger by using this feature.

    • You can select blocks from Minecraft Vanilla like:

      • "STONE"

    • ⭐You can select blocks from Minecraft Vanilla with NBT (info: https://minecraft.fandom.com/wiki/Block_states) like:

      • "FURNACE{lit:true}"

    • You can select blocks from ItemsAdder like:

      • "ITEMSADDER:<id>"

    • You can select blocks from ExecutableBlocks like:

      • "EXECUTABLEBLOCKS:<id>"

    • You can blacklist certain blocks adding ! at the beginning like:

      • "!DIRT"

    • You can add Block Tags like:

      • "#MINECRAFT:MINEABLE/PICKAXE"

    • You can add group of blocks like

      • "ALL_ORES"

List of group of blocks
    ALL_CHESTS,
    ALL_FURNACES,
    ALL_PLANKS,
    ALL_LOGS,
    ALL_STRIPPED_LOGS,
    ALL_STRIPPED_WOODS,
    ALL_WOODS,
    ALL_ORES,
    ALL_WOOLS,
    ALL_SLABS,
    ALL_STAIRS,
    ALL_FENCES,
    ALL_SAPLINGS,
    ALL_CROPS,
    ALL_DOORS,
    ALL_TRAPDOORS,
    ALL_BEDS,
    ALL_TERRACOTTA,
    ALL_NORMAL_TERRACOTTA,
    ALL_GLAZED_TERRACOTTA,
    ALL_CONCRETE,
    ALL_CONCRETE_POWDERS,
    ALL_GLASS,
    ALL_STAINED_GLASS,
    ALL_SHULKER_BOXES,
    ALL_LEAVES,
    ALL_CARPETS;
  • Example:

activators:  
  activator0: # Activator ID, you can create as many activator on the activators list    
    option: PLAYER_BLOCK_BREAK
    detailedBlocks:
    - STONE
    - COBBLESTONE
    - ANDESITE
    - FURNACE{lit:true} (🎇 **BLOCK STATE FEATURE IS PREMIUM EXCLUSIVE ONLY AND FOR 1.13+** 🎇)
    - ITEMSADDER:turquoise_block
    - EXECUTABLEBLOCKS:CUSTOMDIRT
    - !DIRT
    - ALL_ORES
    - '#MINECRAFT:MINEABLE/PICKAXE'

[P_E] entityCommands

Commands are a list of commands that are run from the console when the activator if it meet all conditions and requirements. You can use vanilla commands here, SCore commands and another plugin commands.

  • All the command lines of this command list are placeholder parsed first with placeholders from Ssomar Plugins and then its parsed through PAPI.

  • There are three type of entity targets on commands

    • Player: Its the player/user who triggered the activator on the ExecutableItem

    • Target: Its the player targeted/enemy involved in an activator.

    • Entity: Its the entity/mob/enemy involved in an activator.

  • Type of activator category: PLAYER_ENTITY

  • Info: List of commands that are normally run agaisnt the entity when the activator triggers.

  • Example:

activators:  
  activator1: # Activator ID, you can create as many activator on the activators list    
    option: PLAYER_HIT_ENTITY
    entityCommands:
    - DAMAGE 10
    - BURN 5
  • Its important to understand that having entityCommands doesn't mean don't having player commands, on the activator PLAYER_HIT_ENTITY there is two target involved, the player and the entity, so we can have for example:

activators:  
  activator1: # Activator ID, you can create as many activator on the activators list    
    option: PLAYER_HIT_ENTITY
    commands:
    - SEND_MESSAGE &cThe power of the fire will rise in 5 seconds on the entity
    entityCommands:
    - DELAY 5
    - DAMAGE 10
    - BURN 2

[P_E] detailedEntities

activators:  
  activator1: # Activator ID, you can create as many activator on the activators list    
    option: PLAYER_HIT_ENTITY
    detailedEntities:
    - MM-Giant
    - MM-MyMob
    - '!SKELETON'
    - ZOMBIE{CustomName:"*"}
    - ZOMBIE{IsBaby:1}

[P_T] targetCommands

Commands are a list of commands that are run from the console when the activator if it meet all conditions and requirements. You can use vanilla commands here, SCore commands and another plugin commands.

  • All the command lines of this command list are placeholder parsed first with placeholders from Ssomar Plugins and then its parsed through PAPI.

  • There are three type of entity targets on commands

    • Player: Its the player/user who triggered the activator on the ExecutableItem

    • Target: Its the player targeted/enemy involved in an activator.

    • Entity: Its the entity/mob/enemy involved in an activator.

  • Type of activator category: PLAYER_TARGET

  • Info: Target commands is a list commands that are normally run against the target when the activator triggers.

  • Example:

activators:  
  activator1: # Activator ID, you can create as many activators on the activator    
    option: PLAYER_HIT_PLAYER
    targetCommands:
    - SEND_MESSAGE &eHey %target% you have been hit by %player%
    - effect give %target% slowness 5 5 true
    - SEND_MESSAGE &7Your feets are heavier than before, eh ?
  • Its important to understand that having targetCommands doesn't mean don't having player commands, on the activator PLAYER_HIT_PLAYER there is two target involved, the player and the target, so we can have for example:

activators:  
  activator1: # Activator ID, you can create as many activators on the activator    
    option: PLAYER_HIT_PLAYER
    commands:
    - SEND_MESSAGE &eYou have hit %target%, he cant pick up items in 5 seconds
    targetCommands:
    - SEND_MESSAGE &eHey %target% you have been hit by %player%, in 5 seconds you can't pick up items
    -CANCEL_PICKUP time:100

[S_A_L] detailedItems

  • Type of activator category: Specific activator list

    • 🔹PLAYER_DROP_ITEM

    • 🔹PLAYER_CONSUME

  • Info: For activators that involves an item you can select as condition the type of item(s) where this activator will trigger by using this feature.

    • You can select a Minecraft vanilla item like:

      • "STONE"

    • You can select a Minecraft vanilla item with NBT like:

      • "DIRT{CUSTOMMODELDATA:5}"

    • You can blacklist items using ! like:

      • "!TORCH"

  • Example:

activators:
  activator3: # Activator ID, you can create as many activator on the activators list  
    option: PLAYER_DROP_ITEM
    detailedItems:
      items:
      - DIRT{CUSTOMMODELDATA:5}
      - !TORCH
      cancelEventIfNotValid: false
      messageIfNotValid: '&4&l[Error] &cthe item is not correct !'

[S_A_L] detailedDamageCauses

  • Type of activator category: Specific Activator List

    • ⭐PLAYER_BLOCK_HIT_OF_ENTITY

    • ⭐PLAYER_BLOCK_HIT_OF_PLAYER

    • ⭐PLAYER_RECEIVE_HIT_BY_ENTITY

    • ⭐PLAYER_RECEIVE_HIT_BY_PLAYER

    • ⭐PLAYER_RECEIVE_HIT_GLOBAL

    • 🔹PLAYER_DEATH

    • 🔹PLAYER_HIT_PLAYER

  • Info: Feature for activators that involves damage, here you can select as condition the type of damage that is either received or dealt depending on the activator you are using.

  • Example:

activators:  
  activator1: # Activator ID, you can create as many activator on the activators list    
    option: PLAYER_DEATH
    detailedDamageCauses:
    - ENTITY_EXPLOSION

[S_A_L] detailedEffects

  • Type of activator category: Specific Activator List

    • ⭐PLAYER_RECEIVE_EFFECT

  • Info: Feature for activators that involves effects, here you can select as condition the type of effect involved to trigger the activator.

  • Example:

activators:  
  activator1: # Activator ID, you can create as many activator on the activators list    
    option: PLAYER_RECEIVE_EFFECT
    detailedEffects:
      effects:
      - SPEED
      cancelEventIfNotValid: true
      messageIfNotValid: '&cYou cant use the activator since you dont meet the effect
        condition'

[S_A_L] detailedCommands

  • Type of activator category: Specific Activator List

    • ⭐PLAYER_WRITE_COMMAND

  • Info: Feature for activators that involves commands, here you can select as condition the command the activator should run with.

  • Example:

activators:  
  activator1: # Activator ID, you can create as many activator on the activators list    
    option: PLAYER_WRITE_COMMAND
    detailedCommands:
    - customHealCommand
    commands:
    - SEND_MESSAGE &dYou have been healed !
    - REGAIN HEALTH 10

[S_A_L] desactiveDrops

  • Type of activator category: Specific Activator List

    • ⭐PLAYER_KILL_ENTITY

    • ⭐PLAYER_BLOCK_BREAK

    • ⭐PLAYER_KILL_PLAYER

    • ⭐PLAYER_FISH_FISH

  • Info: Boolean value that allows or prevents the vanilla loot to be dropped when breaking blocks or killing mobs. Since its vanilla drops, custom drops from custom mobs e.g. (MythicMobs) will not get affected by this.

  • Example:

activators:
  activator0: # Activator ID, you can create as many activators on the activators list
    option: PLAYER_BLOCK_BREAK
    desactiveDrops: true

[S_A_L] typeTarget

  • Type of activator category: Specific Activator List

    • 🔹PLAYER_ALL_CLICK

    • 🔹PLAYER_RIGHT_CLICK

    • 🔹PLAYER_LEFT_CLICK

  • Info: Feature that restricts the activator so it will only get activated/triggered when the event occurred with certain type of clicking

    • typeTarget

      • ONLY_AIR: Restricts the activator so it will only get activated/triggered when the event occurred when clicking only in the air, it means if you clicked on a block the activator won't get triggered. Don't get confuse ! You may think, what happens if I click on a player ? which will not be a block so its on the "air" well.. that even is outside the instance of PLAYER_(CLICK) type activators, that event is instance of PLAYER_CLICK_ON_PLAYER so the activator won't trigger too, it must be instance of PLAYER_(CLICK).

      • ONLY_BLOCK: Restricts the activator so it will only get activated/triggered when the event occurred with clicking only in a block. This means if you clicked on the air the activator won't get triggered.

        • This feature makes the activator a block instance activator so it will have blockCommands.

      • NO_TYPE_TARGET: Doesn't restrict the activator on the type of click, both type will be accepted, air clicks and block clicks.

  • Example:

activators:
  activator0: # Activator ID, you can create as many activators on the activators list
    option: PLAYER_ALL_CLICK
    typeTarget: NO_TYPE_TARGET
    commands: []
activators:
  activator0: # Activator ID, you can create as many activators on the activators list
    option: PLAYER_ALL_CLICK
    typeTarget: ONLY_BLOCK
    commands: []
    blockCommands: [] # Added because of typeTarget: ONLY_BLOCK which enables the instance of the activator to block instance

[S_A_L] detailedClick

  • Type of activator category: Specific Activator List

    • ⭐PLAYER_CLICK_ON_ENTITY

    • 🔹PLAYER_CLICK_ON_PLAYER

  • Info: Feature that restricts the activator triggers only if the correct click is involved in the event.

    • detailedClick

      • RIGHT: Restricts the activator only work when the even occurred with the right click

      • LEFT: Restricts the activator only work when the even occurred with the left click

      • RIGHTORLEFT: Doesn't restrict the type of click for this activator, it will allow right and left click.

  • Example:

activators:
  activator0: # Activator ID, you can create as many activators on the activators list
    option: PLAYER_CLICK_ON_ENTITY
    detailedClick: LEFT

[S_A_L] mustBeAProjectileLaunchWithTheSameEI

  • Type of activator category: Specific Activator List

    • ⭐PROJECTILE_ENTER_IN_LIQUID

    • ⭐PROJECTILE_HIT_BLOCK

    • ⭐PROJECTILE_HIT_ENTITY

    • 🔹PROJECTILE_HIT_PLAYER

  • Info: Feature for the activator that are related to projectile, it affects if the activator should run with projectiles not launched by the same EI.

    • Example, there is an activator PROJECTILE_HIT_ENTITY, detailedSlots: [all slots] and on commands: ["say hi"]

      • If the feature is enabled, then it will only work if this ExecutableItem has another activator that has LAUNCH command, so, the projectile will be launched from the EI and then the condition will met

      • If the feature is disabled, all projectiles, such as: vanilla bow, vanilla snowball, projectiles from others ExecutableItems, and projectile for the ExecutableItem itself will run the activator.

    • Example:

activators:
  activator1: # Activator ID, you can create as many activators on the activators list
    option: PROJECTILE_HIT_ENTITY
    mustBeAProjectileLaunchWithTheSameEI: true

[S_A_L] delay and delayTick

  • Type of activator category: Specific Activator List

    • ⭐LOOP

  • Info: Features of the activator that changes the interval time where this activator triggers, it affects the behavior of the loop repetitions of the activator.

    • delay: Integer value that represents how many seconds will the loop be. This means, each <delay> [time] the loop will trigger again. e.g. (If the delay is 30 seconds then each 30 seconds the activator will trigger)

    • delayTick: Boolean value to set the delay time in ticks, otherwise it is in seconds. (20 ticks = 1 second)

  • Example:

activators:
  activator1: # Activator ID, you can create as many activators on the activators list
    option: LOOP
    delay: 30 # Value in seconds due delayInTick its false
    delayInTick: false

Last updated