SignSeeker
The lightning-fast, low-lag tool for sign discovery and moderation.
Quick challenge
How far can you run before the mobs catch you?
Minecraft check
Confirm your run
Complete the quick check to get your code.
SignSeeker
SignSeeker
*Find every sign in your world - fast, async & safe!*

---
🔍 What is SignSeeker?
SignSeeker is a powerful administrative tool designed to scan your worlds for signs. Whether you are looking for hidden messages, moderating player content, or just curious about old warps – SignSeeker reads the region files directly and delivers the results in an interactive book.
🚀 Key Features
- Fully Configurable: Uses asynchronous multithreading to scan region files (`.mca`) without lagging the main server thread. - Fully Configurable: Only scans generated chunks. It will Fully Configurable: generate new chunks or increase your world size. - Fully Configurable: Results are presented in written books. - Fully Configurable: Click on the coordinates in the book to teleport directly to the sign (even if it's in the Nether/End/Farmworld). - Fully Configurable: Blazes through empty chunks (up to 2000 chunks/tick) and slows down for populated areas to maintain 20 TPS. - Fully Configurable: Multiple admins can search simultaneously without interference. - Fully Configurable: Customize all messages, colors, and book layouts.

*Scanning thousands of chunks in seconds...*
*Interactive book report with clickable teleports!*
💻 Commands
```text /findsigns [world] - Starts scanning the current world (or the specified one). /findsigns cancel - Stops your current search operation immediately. /findsigns reload - Reloads the configuration file. ```
🛡️ Permissions
- `signseeker.use` - Allows using the search command and clicking teleport links. - `signseeker.reload` - Allows reloading the config. - `signseeker.*` - Grants all permissions.
⚙️ Configuration
```yaml
SignSeeker Configuration
The prefix shown before chat messages
prefix: "&8[&bSignSeeker&8] &7"
messages: no-permission: "&cYou do not have permission to use this command." only-players: "&cThis command is only for players." reload-success: "&aConfiguration reloaded successfully!"
Search process messages
search-start: "&eStarting search for signs in world &6%world%&e..." search-progress: "&bProcessing chunks: &f%processed%/%total% &7(%percent%%)" processing-books: "&aGenerating books..." search-finished: "&aSearch finished! Found &6%count% &asigns." inventory-full: "&eYour inventory is full! The book was dropped on the ground." error-no-region-folder: "&cCould not find 'region' folder for this world!"
Cancel & World selection
world-not-found: "&cThe world '&e%world%&c' could not be found." search-cancelled: "&eThe search operation has been cancelled." search-cancelled-error: "&cYou do not have a running search operation." already-searching: "&cYou are already searching! Use &7/findsigns cancel &cto stop."
book:
Placeholders: %world%, %page%, %total%
title: "Signs in %world% (%page%/%total%)" author: "SignSeeker"
The separator line between signs in the book
separator: "&5&l----------------"
intro: header: "&0&lSign Log Report" world-label: "&7World: &2" count-label: "&7Total Signs: &2" usage-header: "&nHow to use:" usage-text: "&0Click on &cRED &0or &9BLUE &0coordinates to teleport." ```
📥 Installation
1. Download the plugin `.jar`. 2. Drop it into your server's `plugins` folder. 3. Restart the server. 4. Enjoy! (Tested on 1.21, compatible with Paper/Spigot).