# Message Rules — Sylon

> Limits on the shape of a message rather than its meaning — emoji, lines, shouting, mentions, zalgo. Free to run, and the same in every language.

Canonical page: https://sylon.app/features/message-rules

## Overview

Everything else that reads messages here asks what they say. The word filter matches terms you listed; the analyser judges intent and costs a model call. Message Rules ask nothing about meaning at all — how many emoji, how many lines, how much of it is shouting, how many people were pinged. That is why they cost nothing to run, need no AI, and behave identically in every language: counting is not a linguistic act.

## How it works

1. **Nine limits, each independently off** — Emoji, lines, characters, capitals, member mentions, role mentions, attachments, stickers, and a switch for zalgo. A limit of 0 means "do not check this", so the whole feature is inert until you decide what your server considers too much.
2. **Delete first, punish only if it keeps happening** — The message is always removed and the member told which rule they broke. A punishment is separate, counted across violations, and defaults to nothing — formatting is what an excited person gets wrong, not what a raider does.
3. **It reads edits too** — Post something ordinary, edit it into a wall of emoji: the same rules run again on the edited message. Both paths share one implementation, so they can never judge the same message differently.

## Key capabilities

- Emoji limit, counting unicode and custom emoji together
- Line-count and message-length limits for the wall of text that pushes a channel off screen
- A capitals percentage, measured only over letters that have case
- Separate limits for member mentions and role mentions, counted per distinct target
- Attachment and sticker limits
- Zalgo detection by ratio of combining marks, so accented writing is never touched
- Exempt roles, members and channels, and its own log channel
- Optional escalation to timeout, kick or ban after a threshold

## Frequently asked questions

### Why is every limit zero by default?
Because a numeric field a server has not filled in must be inert. If 0 meant "allow nothing", switching the feature on before configuring it would delete every message in the guild. Zero means the rule is not checked, and that is the only reading that makes the block safe to enable first and configure second.

### Will the capitals rule punish languages that have no capitals?
It cannot. The percentage is measured over letters that have a case distinction, so Arabic, Thai, Han, Hangul and Hebrew all score zero and can never trip it. There is also a minimum length, because "OK!" is 100% capitals and is not shouting.

### Does this catch @everyone abuse?
No, and deliberately. @everyone and @here are a permission rather than a quantity — a member who may use them is allowed to. Server Guard handles their abuse, where it belongs.

## Related features

- https://sylon.app/features/word-filter
- https://sylon.app/features/spam-protection
- https://sylon.app/features/moderation

Keywords: discord automod rules, discord emoji limit, discord caps lock filter, discord mass mention limit, discord zalgo blocker, discord message length limit
