ObsidianTracker — Player Tracking Plugin
ObsidianTracker is a modern player-tracking system for Paper/Spigot servers.
Players build a physical tracker structure in-game to scan directions, locate targets within range, and get clear feedback via actionbar, particles, sounds, and optional compass pointing.
Feature Overview
| Category | Highlights |
|---|---|
| Tracking Commands | /track <player> for a single target, /trackall to scan all online players |
| Physical Build | Build a tracker structure with configurable center/arm/end blocks |
| Directional Scanning | N/E/S/W arms control which directions are scanned (range scales per arm) |
| Range Scaling | Each arm block adds configurable distance (with a max radius cap) |
| Cooldown System | Anti-spam cooldowns per command (configurable) |
| Donor Tiers | Optional permission tiers increase range per arm block |
| ActionBar UI | Fast direction feedback (✓ / ✗) |
| Compass Integration | Optional: compass points to tracked target when found |
| Sound Feedback | Optional hit/miss/cooldown sounds |
| Particles | Optional particles on the tracker center block |
| Tab Completion | Smart player name suggestions |
| Vanish Support | Optionally hide vanished staff (with staff bypass permission) |
| Admin Notifications | Optional live logs showing who tracks who |
How the Tracker Works
Players build a center block and extend arms in any direction.
Each arm adds range only for that direction — longer arm = longer scan.
Rich (BB code):
[END]
|
|
[END] -- [ARM] -- [C] -- [ARM] -- [END]
|
|
[END]
[C] = Center block
[ARM] = Arm block (range)
[END] = End block (validates the arm)
Range rule (default example):
- Each arm block = +100 blocks scan distance (configurable)
- Total distance is capped by max-radius (configurable)
Build Examples (good for screenshots)
Simple 4-direction tracker:
Rich (BB code):
[END]
|
|
[END] -- [ARM][ARM][ARM] -- [C] -- [ARM][ARM][ARM] -- [END]
|
|
[END]
Range: 300 blocks per direction
Cost: 1 center + 12 arm blocks + 4 end blocks
Extended North-only tracker:
Rich (BB code):
[END]
|
[ARM]
|
[ARM]
|
[ARM]
|
[ARM]
|
[ARM]
|
[C]
Range: 500 blocks North only
Cost: 1 center + 5 arm blocks + 1 end block
Asymmetric build (different ranges per direction):
Rich (BB code):
[END]
|
[ARM]
|
[ARM]
|
[ARM]
|
[END] -- [ARM] -- [C] -- [ARM][ARM][ARM][ARM][ARM][ARM][ARM] -- [END]
|
[ARM]
|
[END]
Example ranges: N=300, E=700, S=100, W=100
Commands (quick list)
Rich (BB code):
/track <player> – Track a specific player
/trackall – Scan all online players
Output Examples (for showcase)
Rich (BB code):
▶ Tracker center: (100, 64, 200)
▶ Target results:
✓ NORTH (300 blocks)
✗ EAST (300 blocks)
✗ SOUTH (100 blocks)
✗ WEST (100 blocks)
(Compass now points to target)
Rich (BB code):
▶ Tracker Results:
↑ North (500): Steve, Alex
→ East (300): No players
↓ South (300): Herobrine
← West (100): No players
Total found: 3 player(s)
Installation
- Drop ObsidianTracker.jar into /plugins
- Restart the server (config generates automatically)
- Configure config.yml (range, blocks, cooldowns, effects, permissions)
Configuration (examples)
YAML:
# === TRACKER BUILDING ===
# These blocks define how the tracker is built
tracker-setup:
# Blocks that can be used as the CENTER of the tracker
# Player must stand on one of these to use /track or /trackall
center-blocks:
- EMERALD_BLOCK
- DIAMOND_BLOCK
- GOLD_BLOCK
# Block used for the ARMS extending from the center
# Each arm block extends the range in that direction
arm-block: OBSIDIAN
# Blocks that must be placed at the END of each arm
# Without an end block, that arm won't count
end-blocks:
- DIAMOND_BLOCK
- EMERALD_BLOCK
# === RANGE SETTINGS ===
# Default blocks per obsidian (for players without donor perks)
default-obsidian-distance: 100
# Maximum range any arm can have (prevents lag with huge trackers)
max-radius: 10000
# === DONOR TIERS ===
# Higher tiers get more blocks per obsidian!
# Players get the highest tier they have permission for
donor-tiers:
# VIP tier: 150 blocks per obsidian
vip:
permission: "obsidiantracker.tier.vip"
obsidian-distance: 150
# MVP tier: 200 blocks per obsidian
mvp:
permission: "obsidiantracker.tier.mvp"
obsidian-distance: 200
# Legend tier: 300 blocks per obsidian
legend:
permission: "obsidiantracker.tier.legend"
obsidian-distance: 300
# === COOLDOWNS ===
# Time in seconds between uses (prevents spam)
cooldowns:
track: 30 # /track cooldown
trackall: 60 # /trackall cooldown (longer because more intensive)
# === EFFECTS ===
effects:
# Sound effects when tracking
sounds:
enabled: true
# ActionBar message showing quick results
actionbar:
enabled: true
# Point compass to tracked player (if holding compass)
compass:
enabled: true
# Particle effects when standing on tracker center
particles:
enabled: true
# === PERMISSIONS REFERENCE ===
# obsidiantracker.track - Use /track <player>
# obsidiantracker.trackall - Use /trackall
# obsidiantracker.notify - Receive tracking notifications
# obsidiantracker.bypass.cooldown - Bypass cooldowns
# obsidiantracker.see.vanished - Track vanished players
# obsidiantracker.tier.vip - VIP donor tier
# obsidiantracker.tier.mvp - MVP donor tier
# obsidiantracker.tier.legend - Legend donor tier
Range Calculation
Rich (BB code):
Range = (Arm Blocks) × (Distance Per Block)
capped at max-radius
Example:
Rich (BB code):
5 arm blocks × 150 = 750 blocks
Permissions (common)
| Permission | Default | Description |
|---|---|---|
| obsidiantracker.track | Use /track | |
| obsidiantracker.trackall | Use /trackall | |
| obsidiantracker.tier.vip | VIP range bonus | |
| obsidiantracker.tier.mvp | MVP range bonus | |
| obsidiantracker.tier.legend | Legend range bonus | |
| obsidiantracker.notify | OP | Admin tracking logs |
| obsidiantracker.bypass.cooldown | OP | Bypass cooldowns |
| obsidiantracker.see.vanished | OP | Track vanished players |
Safety / Anti-Abuse
- Per-command cooldowns prevent spam
- Configurable max-radius to avoid excessive scans
- Optional vanish protection + staff bypass permission
- Optional admin notifications for moderation
Author
Wolfsketch AKA Jason — Minecraft plugin developer
License
ObsidianTracker is closed-source unless otherwise stated by the author.Redistribution, modification, or resale is prohibited without permission.
