VillagerInfo
This plugin aims to make accessing useful information that is stored in villagers brains, easier.
Accessing the information in villager's brains is useful, but /data get has much more information than is needed for most things.
Permissions
-
villagerinfo.reload- Default: OP only
- Description: Allows the Player to use
/villreloadto reload the VillagerInfo configurations. - Unlocks: Reloads the VillagerInfo configurations.
-
villagerinfo.output- Default: Enabled
- Description: Allows the player to see the information from a villager using crouch-interact.
- Unlocks: Ability to view information from a villager using crouch-interact.
-
villagerinfo.commands- Default: Enabled
- Description: Allows the player to use commands to adjust their preferences on how VillagerInfo will behave for them (
/villinfo). - Unlocks: Access to command-based adjustments for VillagerInfo behavior.
-
villagerinfo.commands.help- Default: Enabled
- Description: Allows the player to use the help command to see how the plugin functions.
- Unlocks: Access to the help command for understanding the plugin's functionality.
-
villagerinfo.commands.toggle- Default: Enabled
- Description: Allows the player to use commands to toggle certain behaviors in the VillagerInfo plugin (
/villinfo toggle). - Unlocks: Ability to toggle specific behaviors within the VillagerInfo plugin.
-
villagerinfo.commands.toggle.output- Default: Enabled
- Description: Allows the player to toggle whether they want VillagerInfo to output on crouch-interact or not (
/villinfo toggle output). - Unlocks: Toggles the output of VillagerInfo on crouch-interact.
-
villagerinfo.commands.toggle.highlight- Default: Enabled
- Description: Allows the player to toggle whether they want VillagerInfo to highlight a villager's workstation on crouch-interact or not (
/villinfo toggle highlight). - Unlocks: Toggles the highlighting of a villager's workstation on crouch-interact.
-
villagerinfo.commands.toggle.sound- Default: Enabled
- Description: Allows the player to toggle whether they want VillagerInfo to output sound on crouch-interact or not (
/villinfo toggle sound). - Unlocks: Toggles the sound output of VillagerInfo on crouch-interact.
Commands
-
villreload- Permission:
villagerinfo.reload - Description: Reloads the VillagerInfo configuration
- Aliases:
none
- Permission:
-
villagerinfo- Permission:
villagerinfo.commands - Description: Base command for VillagerInfo player commands
- Aliases:
vinfovillinfovi
- Permission:
-
villagerinfo help- Permission:
villagerinfo.commands.help - Description: Command that shows a player the help screen
- Permission:
-
villagerinfo toggle- Permission:
villagerinfo.commands.toggle - Description: Command that allows a player to toggle personal settings related to Villager Info functionality
- Permission:
-
villagerinfo toggle highlight- Permission:
villagerinfo.commands.toggle.highlight - Description: Command that allows a player to prevent a Villager's workstation from being highlighted when they crouch-interact with a villager
- Permission:
-
villagerinfo toggle output- Permission:
villagerinfo.commands.toggle.output - Description: Command that allows a player to prevent a Villager's information from being output when they crouch-interact with a villager
- Permission:
-
villagerinfo toggle sound- Permission:
villagerinfo.commands.toggle.sound - Description: Command that allows a player to prevent sound from playing when they crouch-interact with a villager
- Permission:
API
For the time being, the current way to import this project is through the modrinth maven Remember to check what the current version is - these may not be up to date
Javadocs
Maven Import
<repository>
<id>modrinth-repo</id>
<url>https://api.modrinth.com/maven/</url>
</repository>
<dependency>
<groupId>maven.modrinth</groupId>
<artifactId>villager-info</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
Gradle Import
exclusiveContent {
forRepository { maven { url = "https://api.modrinth.com/maven" } }
filter { includeGroup "maven.modrinth" }
}
dependencies {
compileOnly 'maven.modrinth:villager-info:3.0.1'
}
Todo:
- [x] Toggle for information output
- [x] Personal options for output(?)
- [ ] Add a command to clear all current highlights and reset all villager highlight PDC data
- [ ] Adjust the functionality of the workstation highlights so that if someone starts the highlight again, it's not strictly ignores, but starts the time over again
- [ ] Add different info modes
- [ ] Add more information like if the villager has been healed previously, and if so, by whom
- [ ] Use pages for the information so it's not all in one big list
- [ ] Use click events to trigger the block highlights
- [x] Highlight for bed location, Village center
All Versions
+ Add Version| Name | Game version | Platforms | Published | Downloads | Actions |
|---|---|---|---|---|---|
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
| 9h ago | 1 | ||||
|
R
2.0
|
9h ago | 1 |
- Fixed**
- Workstation/Bed highlight outlines could get stuck permanantly if you teleported/unloaded the chunk before the highlight timer finished, this should no longer occur. Any stuck highlights from before this change will need to be manually deleted/killed by server admins, it is a block display entity, so you should be able to run
/kill @n[type=minecraft:block_display]while next to a stuck highlight to remove it - Parsing professions should no longer read out a broken message and should work as expected
- Villager and Zombie Villager health will now be shortened to one decimel place instead of a long running value
- Adds the ability to switch the action a user uses to trigger output
- Valid options are 'attack', 'both', and 'interact'
- Crouching is still required while doing the interaction
- Adds toggle command:
/vi toggle interact-type [attack|interact|both] - Adds permission
villagerinfo.commands.toggle.interact-type- default istrue
Tested on 1.21.5


- Villager's beds are now highlighted
## Locale Changes:
- New lines are no longer hard-coded into the component builder.** This means that you will either need to regenerate your locale, or add
\nto the beginning of thevillager-information-messagemessages.
## Config Changes:
- Added
highlight-bed-on-output,bed-highlight-color, anddefaultssection. highlight-bed-on-outputhighlights bed at the same time as workstationbed-highlight-color- color to highlight the beds in RR GG BB formatdefaults- default settings for the highlighted blocks
- Fixes the mappings so that paper will not remap it.
- No other changes
- Updated to 1.20.6
- No longer supports 1.19-1.20.4
- Updated NMS to support 1.20.4 (it worked but was giving an error about not being supported)
- no other changes
- Fixes an issue where the highlight toggle did not actually toggle highlighting
- Adds slight backwards compatibility (to 1.19)
- Versions before 1.19.4 will not be able to use colors for their displays, as the colors are made possible by Block Display Entities - a feature introduced in Minecraft 1.19.4
- These versions will be using the old way of highlighting the work stations - falling blocks
- If you are using this plugin on an earlier version, all displays will glow white, and may have a visual glitch of falling through the ground occasionally.
- Additionally if you are on a later version than the 'latest' that the plugin is on, it will manually calculate the player's reputation instead of taking directly from the game (NMS hook) - I believe my calculations are done correctly but it might be slightly off from what the actual numbers are, so just be aware of that
- Other differences should not show on a user end, there are a number more API methods for the pre-1.19.4 methods
<details><summary>
## Permissions
</summary>
villagerinfo.reload- Default: **OP only**
- Description: Allows the Player to use
/villreloadto reload the VillagerInfo configurations. - Unlocks: Reloads the VillagerInfo configurations.
villagerinfo.output- Default: **Enabled**
- Description: Allows the player to see the information from a villager using crouch-interact.
- Unlocks: Ability to view information from a villager using crouch-interact.
villagerinfo.commands- Default: **Enabled**
- Description: Allows the player to use commands to adjust their preferences on how VillagerInfo will behave for them (
/villinfo). - Unlocks: Access to command-based adjustments for VillagerInfo behavior.
villagerinfo.commands.help- Default: **Enabled**
- Description: Allows the player to use the help command to see how the plugin functions.
- Unlocks: Access to the help command for understanding the plugin's functionality.
villagerinfo.commands.toggle- Default: **Enabled**
- Description: Allows the player to use commands to toggle certain behaviors in the VillagerInfo plugin (
/villinfo toggle). - Unlocks: Ability to toggle specific behaviors within the VillagerInfo plugin.
villagerinfo.commands.toggle.output- Default: **Enabled**
- Description: Allows the player to toggle whether they want VillagerInfo to output on crouch-interact or not (
/villinfo toggle output). - Unlocks: Toggles the output of VillagerInfo on crouch-interact.
villagerinfo.commands.toggle.highlight- Default: **Enabled**
- Description: Allows the player to toggle whether they want VillagerInfo to highlight a villager's workstation on crouch-interact or not (
/villinfo toggle highlight). - Unlocks: Toggles the highlighting of a villager's workstation on crouch-interact.
villagerinfo.commands.toggle.sound- Default: **Enabled**
- Description: Allows the player to toggle whether they want VillagerInfo to output sound on crouch-interact or not (
/villinfo toggle sound). - Unlocks: Toggles the sound output of VillagerInfo on crouch-interact.
<details><summary>
## Commands
</summary>
villreload- Permission:
villagerinfo.reload - Description: Reloads the VillagerInfo configuration
- Aliases:
none
villagerinfo- Permission:
villagerinfo.commands - Description: Base command for VillagerInfo player commands
- Aliases:
vinfovillinfovi
villagerinfo help- Permission:
villagerinfo.commands.help - Description: Command that shows a player the help screen
villagerinfo toggle- Permission:
villagerinfo.commands.toggle - Description: Command that allows a player to toggle personal settings related to Villager Info functionality
villagerinfo toggle highlight- Permission:
villagerinfo.commands.toggle.highlight - Description: Command that allows a player to prevent a Villager's workstation from being highlighted when they crouch-interact with a villager
villagerinfo toggle output- Permission:
villagerinfo.commands.toggle.output - Description: Command that allows a player to prevent a Villager's information from being output when they crouch-interact with a villager
villagerinfo toggle sound- Permission:
villagerinfo.commands.toggle.sound - Description: Command that allows a player to prevent sound from playing when they crouch-interact with a villager
<details><summary>
## API</summary>
For the time being, the current way to import this project is through the modrinth maven
Remember to check what the current version is - these may not be up to date
### [Javadocs](https://simplexity-development.github.io/VillagerInfo/)
### Maven Import
``
xml
<repository>
<id>modrinth-repo</id>
<url>https://api.modrinth.com/maven/</url>
</repository>
<dependency>
<groupId>maven.modrinth</groupId>
<artifactId>villager-info</artifactId>
<version>3.0.0</version>
<scope>provided</scope>
</dependency>
`
### Gradle Import
`gradle
exclusiveContent {
forRepository { maven { url = "https://api.modrinth.com/maven" } }
filter { includeGroup "maven.modrinth" }
}
dependencies {
compileOnly 'maven.modrinth:villager-info:3.0.0'
}
`
</details>
<details><summary>
## Config</summary>
### Config
- Workstation Highlights can now have customized RGB colors
- Added
output-enabled optionRe-arranged and renamed options
### Locale
- Separated locale into 3 sections -
ServerMessage, VillagerMessage, and MessageInsert`</details>
The plugin has been completely re-written and now should be able to be added onto by other plugins or addons.
- Lots of code refactoring
- Rename package from
adhdmctosimplexity - Start adding javadocs
- Command logic has been changed for the final time. They are now arranged in subcommands.
/villagerinfo toggle highlightfor example. - Permissions have remained the same
- Commands should not autofill if the player does not have the permission
/villagerinfo helpcommand should not show commands the player does not have access to- All the javadocs have been cleared from the code currently - in the process of trying to make the code easier to understand
- Re-added the ability to use either the reputation bar or the reputation number (uses the
REPUTATION_TOTAL_FORMATlocale message) from @Aplini in https://github.com/Simplexity-Development/VillagerInfo/pull/25
> This is a beta version, if you come across issues please report them!
> <br>⚠️ Locale, config, commands, and permissions are liable to change dramatically until the plugin is out of beta ⚠️
/villinfocommand has been changed to/vill-toggle- This is likely to change again- There is now the ability to toggle
output,highlight, andsound- these are personal toggles - The plugin now uses the configured sound, pitch, and volume from the config
- All permissions that were previously
vill.info.are nowvillagerinfo.andcommandpermissions have been changed tocommandssovill.info.command.toggle.outputis nowvillagerinfo.commands.toggle.output - More locale messages
- Adds an info toggle event
- Adds an output-toggle command
- Removes the additional arguments from the reload command (decided it was unnecessary, reloading doesn't happen enough to warrant it)
- Adds SubCommand handling
## Plugin should now be about back to where the previous plugin was at, now adding new options - locale and config are not final
## What's changed
- Plugin has been re-written from the ground up
- Now calling events when checking info on villagers and zombie villagers, as well as spawning and removing the highlights - this allows for other plugins to cancel these events far easier, or hook into them as needed.
- Using BlockDisplays instead of FallingBlocks for highlighting workstations
- This allows for RGB color options on the glow color
- The color can be defined individually per block type
- Fixes an issue where the falling blocks would slide down even though they weren't supposed to
- locale messages are divided into 3 categories:
villager-information-messages- The messages you will see when you get the information from a villagerinsertion-messages- Messages that are inserted into other messagesserver-messages- Errors and server feedback- Config options have been renamed to (hopefully) be more understandable
- Adds translation key support for the
Professionfield and theitemsin a Villager's inventory (Adopted from the [PR to the original plugin](https://github.com/ADHDMC/VillagerInfo/pull/25) - Reload command now has an option to reload the config or locale seperately
# Current Permissions:
vill.info:
true<br>description: Allows the player to see the information from a villager using crouch-right-click
vill.reload.*:
vill.reload.locale:
op<br>description: Allows the Player to reload VillagerInfo's locale
vill.reload.config:
op<br>description: Allows the Player to reload VillagerInfo's config
## Toggle command has not yet been re-implemented
- Use client's locale for villager profession output by @ApliNi in [PR 25](https://github.com/ADHDMC/VillagerInfo/pull/25)
- Use client's locale for villager inventory output by @ApliNi in [PR 25](https://github.com/ADHDMC/VillagerInfo/pull/25)
- Allow
PLAYER_REPUTATIONto be set as bar or number by using<reputation>or<reputation_number>in the locale by @ApliNi in [PR 25](https://github.com/ADHDMC/VillagerInfo/pull/25)


## New Contributors
- @ApliNi made their first contribution in [PR 25](https://github.com/ADHDMC/VillagerInfo/pull/25)
- Full Changelog**: https://github.com/ADHDMC/VillagerInfo/compare/2.6...2.7
# ⚠️ THE LOCALE KEYS HAVE CHANGED ⚠️
### You will either need to regenerate the locale or [fix the keys to match the ones here](https://github.com/ADHDMC/VillagerInfo/blob/master/src/main/resources/locale.yml)
> Please note:
> This will be the last update that will not require being on the latest minecraft release
- Full Changelog**: https://github.com/ADHDMC/VillagerInfo/compare/2.5...2.5.1
Fixes incorrect messages, saying 'Shift-right-click' instead of 'Crouch-right-click', closes issue [#23](https://github.com/ADHDMC/VillagerInfo/issues/23)
(Note you may need to update the lang file manually for the help message, or delete it and let it regenerate on
/vill reload) Larger update coming soon
- Message handling by @RhythmicSys in https://github.com/ADHDMC/VillagerInfo/pull/21
- Information is now shown in a hover by default, instead of all being printed to the chat
- Health readout
- Purpur lobtomized readout (purpur-specific feature)

If you preferred the old layout, I've attached a lang file to the [GitHub Release](https://github.com/ADHDMC/VillagerInfo/releases/tag/2.5) that can be swapped out with the current one to put it back to how it was
- Full Changelog**: https://github.com/ADHDMC/VillagerInfo/compare/2.4...2.5
- Add info to zombie villagers by @granny in https://github.com/ADHDMC/VillagerInfo/pull/20
- Fixed the sound option in config not doing anything
- Added a separate message for if there is nothing to display, rather than just sending the prefix with nothing to follow
- Added an option for seeing how long it will take for a zombie villager to convert, once you've started
#### Conversion timer

#### No info to display message

- use falling block entity instead of shulker by @granny in https://github.com/ADHDMC/VillagerInfo/pull/19
- fix toggle from defaulting as 'off', locking people who didn't have
villagerinfo.toggleout - fix link in
/villdefault output

- Full Changelog**: https://github.com/ADHDMC/VillagerInfo/compare/2.1...2.2
Plugin now will not show information that depends on previous information, if there is nothing there (i.e. if there is no profession, it will not display 'last worked')
|**Profession-less & Bed-less villager** | **Villager with a profession but no bed**|
|---|---|
|| |
|**Villager with both a profession and a bed**|**Baby Villager**|
|| |