CustomVillagers is a recreation of a BlissSMP villager event with more customization, custom features and more! Locating Villager Souls is also very simple due to the tracker command. Villager Souls is a enchanted pitcherpod that carries a custom name and a persistent particle aura while being FULLY invisible. The plugin supplies a configuration GUI being able to add custom trades & edit current trades All particle effects are smooth and configurable, and the command set is streamlined under the customvillager namespace.
| Action | Command / Interaction | Result |
|---|---|---|
| Give yourself a Villager Soul | /customvillager <player><name> | You receive a Villager Soul item. Villager Souls also have a built-in currency, which can be toggled off in config.yml. |
| Place the soul | Right-click any solid block while holding the soul | A custom villager spawns at that location. The villager is hidden (no name tag, invisible to other players). Hide the villager wherever you'd like players to find it. |
| Deploy the gyroscope compass | /centerparticlecompass | An animated particle compass appears at the player's current location. The compass starts but does not show any directional beams yet — beams remain hidden until the broadcast finishes. |
| Broadcast the narrative | /villagereventbc | An animated "lost souls" story is broadcast to all online players. While the broadcast is playing, the compass remains idle with no beams visible. |
| Tracking begins | Automatic — triggers when the broadcast finishes | Once the broadcast completes, the compass activates directional particle beams pointing toward every hidden villager. Each beam ends with a dimension-specific particle effect: Overworld — end-rod particles, Nether — fire particles, The End — dragon-breath particles. |
| Locate villagers | Follow the beam | Players can follow the visible beam to reach the villager(s), upon entering the same chunk a chat message is sent to the player which indicates the villager is underground. |
| End the event | /villagereventstop (event removal) | Removes all custom villagers (including souls), removes the compass, and clears villager essence (if toggled on) |
| Feature | Details |
|---|---|
| Custom Villager Souls | Assign a unique name to the villager soul which has default custom trades & Customizable trading options like 1 time trades, Or specific amounts. |
| Particle Auras | Two aura styles: • SPARKLE – slow, orbiting rings. • ROAM – continuous, history‑based trail that stays attached even while sprint‑jumping. |
| Stacked Auras | Holding multiple different souls displays independent, colour‑coded auras simultaneously. |
| Locator UI | The /customvillagerlocator command opens a chat‑based GUI that lists every soul, shows its location, dimension, and online/offline status. Clickable coordinates teleport the player instantly. |
| One‑Time Trade Logic | Trades can be set to “once”. After a successful trade the item becomes unavailable, and the GUI remains open. Switching back to infinite or resetting the trade works correctly. |
| Soul Protection | Souls cannot be fed to parrots/chickens, placed in composters, used on farmland, or used for breeding. Only players with Creative/OP can destroy them. |
| Gyroscope Particle Compass | Souls can be located by this compass creating a particle beam in the direction of the Soul. Works across all dimensions |
| Configurable | All core options (aura style, particle density, permission toggles, etc.) are exposed in config.yml with detailed comments. |
| Command | Description |
|---|---|
| /customvillager | Gives you a Villager Soul item used to spawn a custom villager. |
| /centerparticlecompass | Creates a central particle compass in the sky pointing to all custom villagers. |
| /villagereventbc | Broadcasts the animated "lost souls" narrative event to all players. |
| /villagereventinfo | Opens a clickable chat UI with plugin details and a step-by-step guide. |
| /villagereventstop | Stops the villager event and removes all custom entities. |
| /cvreload | Reloads config.yml without restarting the server. |
| /customvillagerlocator | Opens an interactive clickable chat GUI listing all custom villager souls across all worlds, containers, and inventories. |
| Permission | Default | Covers |
|---|---|---|
| customvillagers.admin | op | Every command listed above. |

