DUXPLIMA Documentation

webhooks.yml

Posting claim events to Discord as embeds.

Off until you paste a webhook URL. Nothing is sent otherwise.

Senders

A sender is a Discord webhook plus the identity messages are posted under.

senders:
  playerWebhook:
    username: 'uxmClaims'
    avatarUrl: 'AVATAR_URL'
    webhookUrl: 'WEBHOOK_URL'
  adminWebhook:
    username: 'uxmClaims Admin'
    avatarUrl: 'AVATAR_URL'
    webhookUrl: 'WEBHOOK_URL'

Two ship. Add as many as you like: the point of more than one is routing: player-visible events to a public channel, deletions and expiries to a staff channel.

Create the URL in Discord under Edit Channel → Integrations → Webhooks → New Webhook.

Embeds

Each event gets a block naming the senders to post through and the embed to build.

KeyWhat it is
sendersWhich senders from above receive this event
titleThe embed title
descriptionA list of lines for the body
colorHex sidebar colour, e.g. '#85e048'
thumbnailSmall image on the right
imageLarge image at the bottom
footer.text, footer.iconFooter
author.name, author.avatarUrlAuthor line above the title

Placeholders work in every text field, %claim.name%, %claim.owner.name%, %count:claim.chunks% and the rest. See Placeholders.

The events

KeyFires when
ClaimCreateEventA claim is created
ClaimDeleteEventA claim is deleted
ClaimTimeExpireEventA claim expires
ClaimNameChangeEventA claim is renamed
ClaimExpireDateChangeEventA claim's lifetime is extended
ClaimBlockPlaceEventThe claim block is placed
ClaimBlockBreakEventThe claim block is removed
ClaimMemberAddEventA member joins
ClaimMemberRemoveEventA member leaves or is kicked
ClaimChunkCreateEventA chunk is added
ClaimChunkDeleteEventA chunk is removed

Deleting or commenting out a block disables that event. There is no enabled: false.

Notes

  • Start with two or three events. ClaimChunkCreateEvent fires every time anyone buys a chunk, which on a busy server is a message every few seconds and a rate-limited webhook.

  • Route deletions and expiries to a staff channel. They are the ones worth an audit trail: "my base is gone" is answerable in seconds if the deletion is in Discord with a timestamp.

  • Webhooks are a side effect, and side effects can be switched off in the API. A plugin calling the facade with ClaimCommandOptions that exclude WEBHOOK performs the operation without posting. See The API.

A webhook URL is a credential

Anyone holding it can post to that channel as your bot. Do not commit webhooks.yml to a public repository, and regenerate the URL in Discord if it leaks.