Host your Minecraft server on BisectHosting - get 25% off your first month with code MODRINTH.
Filter loader...
Filter versions...
Filter channels...

DiSky 4.15.0

by Sky on Apr 28, 2024
Download

Hi there! Doesn't a new DiSky update herald a good day?

🤖 Webhooks are coming native!

The Webhooks module is now outdated, as JDA implemented support for webhooks into the core library. Thus, it integrates smoothly with DiSky's existing features! For instance, simply use the syntax to create your rich message, you can then send it to a webhook!

➡️ More information can be found on the Wiki Page!

📝 Documentation Update!

As some of you may have noticed, I've made a few changes to the documentation/wiki:

  • All emojis have been replaced by icons to clean up the site visually.
  • Many examples have been added to the wiki (complete example codes, 99% of the time supplied with a command)
  • many new effects and expressions have been updated with documentation and missing examples
  • All the wiki has been reorganized under more logical categories than just "basic/advanced stuff".

Feedback is appreciated, and don't forget you can contribute to the wiki right here!

✨ Small Enhancements

  • The edit effect handles errors much better, and you can modify the direct message without going through the interaction (more information just here)
  • The retrieve invites effect's pattern has been enhanced to me "more English"
  • 🆕 Added avatar decoration expression for a member. It's not even in JDA yet, but DiSky has it :>

Whoa, I guess I'm in a rush now? Anyway, this update brings tons of new features and tweaks. Here's a recap:

🚀 Find Members!

Discord recently added a way to bulk-find members, thus even with thousands of members, you'll still be able to retrieve the one you want. There are two "simple" find effects available already (find members with roles %roles% and find members with nickname %string% in guild %guild%), but a brand new one is also added ... Find member filter! It's a section that lets you filter by yourself the members you want to retrieve. Wants only members with a role, or specific nickname, that are not connected to a channel? You've got it!

⚠️ It's an experimental feature, and feedback is appreciated, while I don't recommend using this in production yet!

find members in event-guild and store them in {_members::*} with filter var {_m}:
    # {_m} now contains the member to apply the filter to. For instance:
    {_m} has discord role with id "XXX"
    {_m} is muted
    return true

reply with "I have found %size of {_members::*}% that has the role and is muted!"

💻 Bot Application Info

You can now retrieve your bot's application info! This includes, but is not limited to, its avatar/id/name/owner, the Term Of Service/Privacy Policy URLs, and more! If you are interested in how it works, take a look at the wiki page!

✨ New Features!

I'm sure I'll get blamed if I continue to make updates that fast 😂 Anyway, here's yet another update for DiSky! Here's what changed:

📊 Polls Hotfix

JDA has an internal bug with their latest release (beta23), thus I fixed it on my side for DiSky. Although polls were created, they were not attached to the desired message and thus, not sent. You can also now send polls alone, without any other message value (content, components, etc..) using the reply with and post effect.

✏️ New edit components effect!

For button & dropdown clicks, you can now directly edit the clicked component with one line of code, instead of re-editing the whole message like before. You can find more information about how it works for buttons here and dropdown here!

🐛 Bugfixes

  • Fixed SelectMenu couldn't be added to the inline message's builder
  • edit and reply effects now impact the interaction (if in an interaction event of course) instead of the message.
  • Fixed polls being not set correctly using the rich message builder
  • Fixed interaction type for button/dropdown click event

✨ New Features

  • Added a way to disconnect a connecter member from its voice channel (reference)
  • Update some old WaiterEffect to the new AsyncEffect system
  • This small release introduces a lot of new polls-related stuff, such as ending existing polls and getting votes for finished polls (more information can be read here.
  • In addition, the define bot scope was converted to Skript's new Structure system, meaning it's faster, more efficient, and less laggy (e.g. you can now use function/custom expressions inside ready/guild ready events).
  • You can also set default selected values for entities dropdown, supporting roles, channels, and users. The added values will be selected once the component is sent!

Full Changelog: https://github.com/DiSkyOrg/DiSky/compare/4.14.0...4.14.1

Hello there! Long time no see since the last update ;) This one brings a lot of content here and there, so please read the whole message below to be sure to miss nothing.

Async Rework

Most DiSky effects, because of HTTP requests, require asynchronous execution to avoid lag spikes (especially when retrieving a value for instance). Although I made my own "waiter effect" to handle those timings, it was not built-in Skript and thus weird synchronization bugs appeared, especially when dealing with local variables.

All retrieve effects, and most asynchronous effects are now using a completely new method, where the code is completed in another thread (thus it'll make that other thread lag, but since Minecraft is mainly single-threaded, it does not matter at all).

:bookmark_tabs: To put it simply, most effects in DiSky are now faster and can be handled much easier by Skript, e.g. when using those effects in loops or functions

Embed section optimization (#155)

Previously, to create an embed, you had to go through make new embed and use the expression last embed, which sometimes caused conflicts when creating several embeds simultaneously. Moreover, the sole last embed expression slowed down the Skript's parser as it was overcomplicated with too many patterns.

:bookmark_tabs: While the previous embed section is still available, it has been reworked so you can provide a variable at the end of the section that'll handle your embed at the end (basically like the message builder & components row builder).

For instance:

make new embed and store it in {_embed}:
    set title of embed to "Hello there" 
    set embed color of embed to red
reply with {_embed} # 'embed' is not accessible outside the section anymore, releasing a lot of work for Skript's parsing

:bar_chart: Polls!

While they are waiting to be approved on Discord's docs, poll syntaxes are already in DiSky!

:bookmark_tabs: __You can already use the syntax, but no polls will be sent over Discord yet. Take a look at the wiki page about polls for more information: https://disky.me/docs/basic-stuff/polls/__

Syntax Changes

As I reworked some parts of DiSky, I ended up optimizing/adding existing syntax, so here they are:

  • You can now use both strings and tags when adding/removing them from forum channels
  • Added retrieve start/original message from %threadchannel% effect
  • Added type checking for the updating commands effect (e.g. giving guild when updating globally, and vice-versa)
  • Added event-long in reaction add event to get the message author's ID
  • Fixed mention tag with emotes, for custom and animated emojis

:warning: JAR & Version Support

  • Only Skript 2.8+ is supported, going forward.
  • shadowJar minimizer is now used on DiSky's final JAR, reducing its size from ~20MB to ~15MB
  • The minimal required version of Java will soon (v4.15 or v4.16, no ETA yet) become Java 11

Whoa, I've never had an update this big, apart from the reworks! I hope you have fun, and I'll be on the lookout if you have any new ideas or optimizations to suggest

First update of the year :D

Skript 2.8-beta Support

DiSKy v4.12.2-beta1 has been released on Modrinth, with several new features and bug fixes. In addition, this new version should only support Skript 2.8+, meaning :warning: Skript 2.7 won't work! Check added features/bug fixes at the GitHub History

SkEditor Addon Release

SkEditor is an IDE made for Skript developers. It brings syntax highlighting, auto-completion, code analyzer, GUI/Command generation, and many other features to make your life easier. I made a small addon, adding two (and soon more!) generators related to DiSky: bot's loading & buttons!

:information_source: How to download? Once SkEditor is installed, head over Other -> Marketplace, then look up DiSky Support and click Install.

The attached image is a preview of the bot's loading & buttons generator!

Thanks for reading, and have a nice day :D

Hello there! This small release introduces a new feature alongside bugfixes and code cleanup:

✨ • You can now serialize embeds into JSON, and vice-versa! Check here for more info! ⚡ • I'm trying to clean up annoying user-side errors little by little, and today it's hierarchy nickname! A proper and more user-friendly error message will be sent if the bot cannot modify a user's nickname! 🚀 • We bumped to JDA v5-beta13, which brings some optimizations and bugfixes on the WebSocket server!

Hello there! DiSky v4.12.0 is here, and fix/add things here and there, without a main idea to follow. Here are the main changes:

🚀 Changes

We added null checks for emojis, roles, and permissions expressions. DiSky will not throw an ugly exception anymore!

It has been requested for a pretty long time now, but you can now use options inside entries! (such as the bot's token)

Deferred and waited interactions can now be replied to correctly using the reply with effect!

🐛 A lot of conflicts came from the permissions of property from DiSky and Skript. Now, DiSky will try to unregister the Skript's property to make its own, while keeping normal Skript's behaviors!

🐛 Fixed some uncatched exceptions around the project.

🚀 Skript v2.7-beta3 is now supported! Any 2.7.X version should be tho, while keeping 2.6.X supported too!

Hey there! Another update of DiSky that brings some interesting new features :)

Voice messages

You can also directly download *voice message as an audio file!

Member Flags

Misc

Have a lovely afternoon everyone ^^

Hey there! Here's a small update from DiSky containing bug fixes and enhancements!

  • ✨ Added on bot leave event
  • ✨ Added supports for the new Structure API coming in Skript 2.7
  • ✨ Added deafen-related & voice mute-related events (thanks to @Mushkrem & @Kapilarny)
  • 🐛 Fixed DiSky project not building on Skript 2.7
  • 🐛 Fixed I/O exception about the configuration file

DiSky 4.11.0

by Sky on Mar 11, 2023
Download

Hey there! Here's, after a bit of reorganization on the docs, DiSky v4.11.0! Tons of things have been added, and a lot of bugs have been fixed:

New Features

:sparkles: Added retrieve thread members effect, to get and cache members of a thread channel. :sparkles: Added retrieve log effect, to get and cache audit logs of a guild. :sparkles: Added a console's command /disky bot to check information about a bot. :sparkles: Added the way to send silent messages (without notifications). Check the docs for more information.

:new: :sparkles: Added a brand new message caching system! You can now get a deleted message and all its data even if it's deleted! (event-message in delete message event basically)

Enhancements

:zap: Changed debug messages to be more "visible" (in purple & pink, whoa!) :zap: Added better shutdown system (graceful shutdown), that can be configured in the config file. :zap: Made modify welcome screen section work with loops.

Bug Fixes

:bug: Fixed intents that were override by cache flags :bug: Fixed configuration file that was recreated every time

Documentation

As you may notice since a few days, the documentation & wiki has been reorganized, and they are both linked together! The common link is https://disky.me/wiki/ (the old docs are still available, but won't be updated!)!

Download

:modrinth: Modrinth: https://modrinth.com/plugin/disky :paper: Documentation: https://disky.me/wiki/ :patreon~2: Patreon: https://patreon.com/itsthesky

Have a nice day everyone!

DiSky v4.10.0

by Sky on Feb 17, 2023
Download

✨ Added welcome screen management: https://docs.disky.me/basic-stuff/guild-welcome-screen

✨ Added more information and debugging when DiSky have an internal error.

⚡ Reworked the configuration's loading, and how it was used

⚡ Updated to JDA v5-beta3

🐛 Fixed the disconnect effect that was trying to use the given expression

🐛 Fixed error while using any retrieve effect

Hello there! This small release brings some new features and some bugfixes:

New Features:

  • Added self member property, to get the self-member of a bot in a guild.
  • Added connect effect, to connect a bot to an audio channel.
  • Added default expressions for every DiSky type in events
  • Added more channel-type input for commands (thanks Mushkrem!)

Bugfixes:

  • Fixed cache flags entry in the bot's scope
  • Fixed the AudioChannel type that wasn't spelled correctly.

Hello there! It's been a while, hasn't it? This update fixes a lot of issues and adds support for events.

New features

  • Scheduled events (you can create, retrieve, modify, and retrieve info such as position or members following it)
  • More documentation! (thanks to Cerial)
  • Added %thread% is locked, .. public and .. archived conditions for thread states
  • You can now define a slash command as NSFW (only executable in NSFW rooms)

Fixes

  • Attachments can be uploaded with with or without a filename.
  • Failure to open a private room will result in the deletion of the variable provided.
  • You can add components directly to a modal, without going through component lines.
  • Some documentation corrections (thanks to Mushkrem)

Others

As always, thanks for your support and good code to all!

DiSky v4.7.0 - Fixes & New feature

Requirements

  • Minecraft 1.13+
  • Skript 2.6.0+

Fixes

  • No more conflicts with SkBee's components
  • Every emoji using numbers (like 💯) are now working properly
  • Threads can now be created without problems

New features

  • You can add members to a thread manually
  • ID and name of a thread are now retrievable
  • Optimization of the loading of the bots

External resources



Project members

Sky

Owner


Technical information

License
ARR
Project ID