

Crusalis Cappinger
Активный0.0
Установок
Последнее обновление
Версии
Crusalis CapPinger
A tiny, client-side Fabric mod that watches your chat for war alerts and fires a clean Discord embed so your team can react instantly.
✨ What it does
-
Detects messages shaped like
"[War] <attacker> is attacking <city> at (x, y, z)"
-
Sends a sleek Discord embed with:
- Attacker
- City/target
- Coordinates
- Timestamp
No commands, no server plugin required—just drop it in your client.
⚙️ Configuration (Cloth Config)
Open Mods → Crusalis Cap Pinger → Config (Mod Menu), then:
-
Discord Webhook URL — paste your channel webhook.
-
Broadcast All (default ON) — forward every matching alert.
-
Target Names — when Broadcast is OFF, only send if the city/target matches one of these names (exact match, case-insensitive, trimmed).
-
Ping Role ID (optional) — paste a Discord Role ID to @mention your defense squad.
Tip: In Discord, enable Developer Mode → right-click role → Copy ID.
Settings are saved locally; you can change them in-game anytime.
🧠 How it works (in one paragraph)
The mod listens to client message events (chat/system/HUD) on Fabric 1.21.7-1.21.8, parses each line into plain text, matches a strict regex for [War] … is attacking … at (x, y, z)
, and—if allowed by your config—POSTs a JSON embed to your Discord webhook using Java’s async HttpClient
. That’s it. No invasive hooks, no mixins, no extra threads.
✅ Requirements
- Minecraft: 1.21.7-1.21.8 (works on 1.21.x builds that keep the same client message API)
- Fabric Loader + Fabric API
- Cloth Config
- Mod Menu for a “Config” button in the Mods list
🛠️ Installation
- Install Fabric Loader and Fabric API.
- Drop Crusalis CapPinger into
mods/
. - Add Mod Menu for easy config access.
- Launch → Mods → Crusalis Cap Pinger → Config → paste webhook.
- Keep Broadcast All ON or add Target Names if you only care about certain cities.
- (Optional) Add Role ID to ping a role.
You’re live the moment a war alert hits chat.
🔒 Privacy & Safety
- The mod reads incoming chat/system/HUD locally to find alerts.
- It only sends matched war alerts to your webhook (attacker, city, coords, raw line).
- Your webhook URL stays on your PC; rotate it if it’s ever leaked.
- Discord rate limits are respected by the platform; this mod sends one request per alert.
🎯 Filtering behavior
-
Broadcast All = ON: every matching
[War] … at (x, y, z)
goes to Discord. -
Broadcast All = OFF: only send if the parsed target equals one of your Target Names
- Comparison is case-insensitive and ignores surrounding spaces.
- Example:
Capital City
matchescapital city
orCapital City
, but not partials likeCapital
.
(Want partial or regex matches later? Easy to add—tell us your preference.)
🖼️ The Discord embed (at-a-glance)
-
Title: “City Under Attack”
-
Description: Attacker • Target •
x, y, z
-
Fields:
- Raw: the exact message (fenced code block) for debugging
-
Footer: mod name • Timestamp: ISO-8601 for nice sorting
-
Role ping: If a Role ID is set, the message content includes
<@&ROLE_ID>
withallowed_mentions.roles=[ROLE_ID]
so only that role is pinged.
🔧 Troubleshooting
-
No messages sent:
- Check the webhook URL in config (paste it fresh).
- Confirm the server actually prints lines starting with
[War]
in chat/system/HUD. - Some servers format spaces/punctuation differently—if yours deviates, tell us the exact text and we’ll tweak the matcher.
-
No pings: make sure the Role ID is correct and the role is mentionable (server settings).
-
Spam risk: This mod forwards each matching line; if your server repeats alerts, you’ll get multiple embeds (by design). If you want cooldowns/deduplication, that can be added on request.
🤝 Compatibility
- Client-side only. No server permissions required.
- Works alongside optimization mods (Sodium, etc.).
- Doesn’t modify gameplay state, packets, or rendering—just listens for messages and posts a webhook.
🗺️ Roadmap (tell us what you want)
- Per-city colors or emoji icons
- Dynmap links (need your base URL/world)
- Cooldown/deduping options
- Toast/sound notifications in-game
- Regex/partial matching modes
- “Test Webhook” button inside config
📦 Modpack & server policy
- Allowed in modpacks.
- Safe for client-only use on most servers (it doesn’t automate gameplay, just relays alerts you can already see).
❓ FAQ
Q: Does everyone on my Discord see pings? A: Only the channel where the webhook lives. Add a dedicated alerts channel if you want to keep it tidy.
Q: Can I ping @everyone or @here? A: You can, but it’s noisy. Using a Role ID keeps notifications targeted.
Q: Our server’s message is slightly different. A: Share the exact line (copy/paste). We can add an alternate pattern.
📋 Summary
Paste webhook → choose Broadcast All or targets → (optional) role ping → done. Crusalis CapPinger gives your team fast, clean Discord alerts the moment a city is attacked—nothing more, nothing less.