MiSK [Addon - 1.14.1] (Discontinued) 1.0.0

A 1.14.1 Skript addon: (Merchants, Entities, Lasers, Loot, Inventories, etc.)

  1. Moderocky
    Native Minecraft Version:
    1.14
    Tested Minecraft Versions:
    • 1.14
    Source Code:
    https://gitlab.com/Moderocky/MiSK
    Contributors:
    Moderocky
    Misk - A Miscellaneous Addon

    For Skript 1.14.4

    Abandoned - I have no plans to update this ever.

    The purpose of this addon is to add a few bits and pieces of syntax that aren't present in vanilla Skript or in other add-ons.
    Over time, I will also update syntax from abandoned add-ons, such as SkStuff.

    Requirements (Things you must have!)
    1. Skript v2.4 Alpha: https://github.com/SkriptLang/Skript/releases/
    2. Spigot 1.14.4+
    Soft Dependencies (Recommended!)
    1. ProtocolLib (latest dev build)
    2. Paper

    WARNING:
    This is a new release. There may be bugs. Please read the instructions at the bottom of this post, if you find one. :(


    Current features
    (Currently in the plugin, available for use)
    • Villager syntax
    • Merchant syntax
    • Guardian Lasers
    • Entity syntax
    • Custom trades
    • Custom merchant objects
    • Wandering Trader syntax
    • Shoot Items
    • Open new 1.14 container GUIs
    • Basic entity pathfinding/navigation syntax
    • Horse Jump event
    • Vehicle steer event (ProtocolLib required)
    • Advancements menu toggle (ProtocolLib required)

    Pipeline features (Partially finished)
    • Client-side equipment
    • Pathfinders (updated from SkStuff)
    • Loot-table utilities
    • Client brand detection (vanilla/optifine/certain mods)

    Planned features (Not started)
    • Basic file utilities
    • Have a request? Contact me on discord!

    Images and Examples (from my server)
    [​IMG]

    A Wandering Trader with custom recipes. Wait! That's illegal.
    [​IMG]
    A Custom Merchant Object using 1.14's new model data. Check out my custom item registry resource for more info.

    https://cdn.moderocky.com/mov/misk_ravager.mp4
    An example of controllable Ravagers, using the on vehicle steer: event with ProtocolLib.​


    Official Documentation and Syntax?
    Click Here


    Custom Merchant:
    Code (Text):

    command /blob:
      trigger:
        set {_m} to a new merchant named "Trader"
        add (a new trade of (2 of gold ingot) and (stone) for (iron ingot named "bob")) to {_r::*}
        add (a new trade of (1 of gold ingot) and (air) for (gold ingot named "fred")) to {_r::*}
        add trades {_r::*} to merchant {_m}
        open merchant {_m} to player
     
    Locking a chest:
    Code (Text):

    on rightclick on chest:
        player's tool is stick
        cancel event
        lock clicked block with key "key name"
        broadcast "a chest was locked!"
    # you can now open this chest ONLY if your tool is named "key name"! :D
     
    Villager Trade Editing:
    Code (Text):

    set {_e} to target entity
    set {_r} to a new trade of stone and stick for slimeball
    add trade {_r} to villager {_e}
     
    Vehicles:
    Code (Text):
    (ProtocolLib)
    on vehicle steer:
      event-string is "SPACEBAR"
      push player's vehicle up at speed 10
    # maybe don't try this, else you'll end up in space...
    # this can be used to make controllable vehicles
    # if you need help/examples, you can ask me :)
     

    The plugin contains a MerchantUtils class.
    You can use this to easily mess with CMOs and villagers, as well as using syntax that isn't publically available yet!

    These are designed to simplify Bukkit methods. They will not change between versions (as Bukkit methods sometimes do).

    Add this to the top of your skript:
    Code (Text):
    import:
        com.moderocky.misk.utils.LootTableUtils
        com.moderocky.misk.utils.SkriptUtils
        com.moderocky.misk.utils.MerchantUtils
    You can then use the following methods in your code:
    Code (Text):

    set {variable} to LootTableUtils.newSeed()
    # returns a Java Random
     
    Code (Text):

    set {variable} to SkriptUtils.getItemStack({item-here})
    # returns a real Bukkit itemstack
     
    Code (Text):

    set {list} to MerchantUtils.tradeList()
    set {list} to MerchantUtils.tradeList({recipes})
    # returns a mutable Java List for MerchantRecipes
    # the second allows you to add a pre-existing collection
     
    Code (Text):

    set {recipe} to MerchantUtils.disableRecipe({recipe})
    set {recipe} to MerchantUtils.enableRecipe({recipe})
    MerchantUtils.disableRecipe(merchant, integer)
    MerchantUtils.enableRecipe(merchant, integer)
    # allows you to disable individual recipes from a merchant or from a villager/wandering trader
     
    Code (Text):

    set {recipe} to MerchantUtils.getRecipe(merchant, integer)
    # returns a recipe at an index. Indices go from 0+, like inventory slots
     
    Code (Text):

    MerchantUtils.merchant()
    MerchantUtils.merchant(name)
    MerchantUtils.merchant(tradelist)
    MerchantUtils.merchant(name, tradelist)
    MerchantUtils.merchant(recipes[ ])
    MerchantUtils.merchant(name, recipes[ ])
    # Simple CMO creators for every situation
    # The last two accept a collection. It's just to cover every possibility

    MerchantUtils.openMerchant(player, merchant)
    # Simple CMO creators for every situation
     
    And our two favourites...
    Code (Text):

    MerchantUtils.setResult(merchant, integer, itemstack)
    MerchantUtils.recipeWithResult(merchantrecipe, itemstack)
    # Bukkit doesn't allow this by default, it took me a while to work around!
    # Remember that these take ITEMSTACKS. Use the getItemStack() method.
     
    Code (Text):

    MerchantUtils.tradeCreator(itemstack, itemstack, itemstack)
    # A LOT simpler than Bukkit's constructor. Also handles all the hard work for you.
    # Bukkit doesn't allow this by default, it took me a while to work around!
    # Remember that these take ITEMSTACKS. Use the getItemStack() method.
     

    Found a Bug?!?
    1. Are you on a supported 1.14.1 Spigot (or PaperSpigot)?
    2. Are you on a supported 2.4.x Skript?
    3. Do you have the soft-dependencies required for this syntax?
    4. Are you sure it isn't a Spigot bug?
    5. Are you sure it isn't a Skript bug?
    6. Are you sure it's a MiSK bug?
    If the answer to these is yes, then you should contact me!
    Discord: Moderocky#0001

    If you find a bug, contact me here or on discord: Moderocky#0001 and you can get support.

    Got a suggestion/feature request?
    Contact me on Discord!

    Need Skript help?
    SkUnity Discord: https://discord.gg/RBhvPG8
    Diclo and SuperJoao36 like this.

Recent Reviews

  1. L0v0lup
    L0v0lup
    5/5,
    Version: 1.0.0
    This one is great! I would really like to see updates on this one.
    (Works fine on 1.16.5)
  2. SuperJoao36
    SuperJoao36
    3/5,
    Version: 1.0.0
    Please can you give me an example of guardian laser ? Out of this the addon is exellent
  3. Kapten
    Kapten
    5/5,
    Version: 1.0.0
    Works good and have interesting feature !! Love it !
    The only problem I have is that I wanted to make a GUI to access different shop but I get this error : [20:19:49 ERROR]: [Skript] In 1.13+ you cannot get the title name of an inventory outside of an InventoryClickEvent, Only if this inventory has an InventoryHolder may it be used in this state.
    That's probably just skript
  4. paulmertens
    paulmertens
    5/5,
    Version: 0.1.9
    very good addon! please add more syntaxes from old plugins like wildskript (umbaska)!
    1. Moderocky
      Author's Response
      Thanks for the review! I'm aiming to try and update some of the old, abandoned addons.
      I've already got permission to update SkStuff - pathfinding.

      Is there a particular syntax you need from Umbaska? If so, tell me and I will ask the original developer if I may take over from it.
  5. Itunarlis
    Itunarlis
    5/5,
    Version: 0.1.5
    Although it does not contain much of content for now I can already imagine some nice new features for servers. Especially the Vehicle steer might be really handy some day.
    1. Moderocky
      Author's Response
      Thanks! I fully intend to add more stuff, particularly focused around the new 1.14 additions, and things that people request.

      If you have any suggestions, please let me know.