Renamed syntaxes
guideSyntaxes that still exist in DiSky 5 but are written differently from DiSky 4.
This page lists the syntaxes that survived the move from DiSky 4 to DiSky 5 under a new shape: a DiSky 4 line either fails to parse, or parses and means something else. You're assumed to know DiSky 4 and to have a bot logged in as "my-bot". Syntaxes that are gone, or that changed model entirely (retrieving, builders, commands, components, events), have their own pages.
The discord prefix
Skript registers its own syntaxes before any addon and picks the first pattern that matches. When the operand is an untyped variable (every {_x} satisfies any %type% slot at parse time), a DiSky property whose wording equals a Skript one loses silently: the line parses and returns nothing. DiSky 5 avoids the clash by putting a literal discord in the property name. Where the prefix used to be optional it is now required, and a few patterns whose optional words made them ambiguous now require their qualifier.
# DiSky 4 set {_text} to content of event-message send "%message author of event-message%" to console
# DiSky 5 set {_text} to discord content of event-message send "%discord author of event-message%" to console
DiSky 4 | DiSky 5 | Note |
|---|---|---|
|
| Same name on message builders, text displays and webhook messages. |
|
| The |
|
|
|
|
| |
|
| Returns a |
|
| Guilds use the same name: |
scheduled event |
| Settable on a live event. |
|
| The prefix is mandatory; see Permissions. |
|
| Raw strings and command senders are no longer accepted. |
|
| |
|
|
|
Effects keep their own escape hatch instead: [discord] kick and [discord] ban take discord before the verb only. DiSky 4 put it after the verb (kick the discord member), and that no longer parses.
# DiSky 4 kick the discord member {_m} because of "spam"
# DiSky 5 kick {_m} because of "spam" discord kick {_m} because of "spam"
DiSky 4 | DiSky 5 | Note |
|---|---|---|
|
| Drop the word after the verb. |
|
| Same; see Ban clause order. |
|
|
|
Bots
Bot keywords were tightened so that a bare word cannot be mistaken for something else. The activity expressions keep their words, but a bot's activity is now one activity of %bot% property instead of a presence.
# DiSky 4 set presence of {_bot} to watching "the server" stop {_bot}
# DiSky 5 set activity of {_bot} to watching "the server" stop bot {_bot}
A plain string assigned to the activity is a "playing" activity. The other kinds are built with dedicated expressions:
Expression | Kind |
|---|---|
| Playing |
| Watching |
| Listening |
| Streaming |
| Competing |
| Custom status |
DiSky 4 | DiSky 5 | Note |
|---|---|---|
|
| The word |
|
|
|
|
| Assign a string or one of the expressions above. |
|
|
|
|
| Settable before |
|
| |
|
|
|
Messages and embeds
Embed properties are mostly the same words, with a few renames. They are still write-only on a builder, and an embed is snapshotted when you attach it.
# DiSky 4 set time stamp of {_embed} to now set embed color of {_embed} to red
# DiSky 5 set timestamp of {_embed} to now set color of {_embed} to red
DiSky 4 | DiSky 5 | Note |
|---|---|---|
|
| |
|
| On a Skript without the native |
|
|
|
|
| The |
|
| |
|
| Subject first; |
|
|
|
|
|
|
Guilds, members and moderation
Ban clause order
The two optional clauses of ban swapped places: the message-deletion duration now comes before the reason. A DiSky 4 line that puts the reason first stops parsing.
# DiSky 4 ban the discord member {_m} due to "spam" and delete 1 day worth of messages
# DiSky 5 ban {_m} and delete 1 day worth of messages because of "spam"
DiSky 4 | DiSky 5 | Note |
|---|---|---|
|
| Duration, then reason. |
|
| Ban by id; it gained the delete clause. |
|
| Takes a |
Permissions
DiSky 4 had one permissions of ... in ... expression with add, remove and reset. DiSky 5 makes the channel level explicit: a channel override has an allowed side and a denied side, and you edit each by name. Guild-level permissions of a role are a separate, simpler property.
add manage messages to allowed discord permissions of {_role} in {_channel} add send messages to denied discord permissions of {_role} in {_channel} remove manage messages from allowed discord permissions of {_role} in {_channel} reset allowed discord permissions of {_role} in {_channel}
addto the allowed side grants the permission (and takes it out of the denied side).addto the denied side denies it.removeclears the permission from that side only: it becomes inherited again, never an implicit deny.deleteorresetremoves the whole override.
DiSky 4 | DiSky 5 | Note |
|---|---|---|
|
|
|
|
| Effective permissions, read-only. |
|
| Effective permissions, read-only. |
|
| Pick the side explicitly. |
Members, roles and channels
DiSky 4 | DiSky 5 | Note |
|---|---|---|
|
| The V4 shape swallowed every "X in Y". |
|
| Same for every entity: it is Skript's |
|
| |
|
|
|
|
| |
|
| |
|
| |
|
| Settable on a live channel. |
|
| Settable on a live channel. |
|
| |
| same words | Unchanged to write; moving next to the highest or lowest role is now a no-op instead of an error. |
A jump across many positions at once can be refused by Discord with could not be moved due to hierarchical power. Move the role in smaller steps.