Releases: Foxikle/CustomNPCs
v1.7.1 -- HOTFIX
Hotfix
v1.7-pre8
New Features
- 1.21.3 support
- Support for the following languages (Not all are fully complete) -> German, Russian, Chinese
- The language is determined by the client's locale, defaulting to English.
Bug Fixes
- Fixed a bunch of errors around the API Events
- Fixed a bunch of Nametag related issues
- Fixed the teams problem (Hopefully for the final time)
- Fixed NPCs being injected in the wrong world (Only on new versions, it as fixed on older ones)
- A pile of performance enhancements
API Changes
- Setting the location now overwrites the direction settings object
- BREAKING: In order to register an object, you must call
CustomNPCs.ACTION_REGISTRY.register("ID", Action.class, Action::creationButton)
or whatever you name your creation button method. An example method is below. - The method
Action#getFavicon
have been refactored toAction#getFavicon(Player)
(For better localization support) - The corresponding API version for this release is
1.7-pre8
And probably a bunch of other small tweaks and stuff.
I am looking for Translators! 👀
If you speak a language other than English and are interested in helping me translate please reach out. You can make a ticket or just DM me on Discord. In exchange for translating, you get a swanky @Translator
role, and access to the perks of being a supporter! (This means builds of preview features much much sooner than everyone else.) More info at https://crowdin.com/project/customnpcs
Full Changelog: v1.7-pre3...v1.7-pre8
v1.7
CustomNPCs 1.7
I discovered that the Bukkit configuration api has decided to eat locations when they are invalid. There is nothing I can do to recover them. I apologize for the inconvenience
New Features
- 1.20.5 - 1.21.4 Support.
- Localization! CustomNPCs now supports the following languages:
- Russian (partially)
- German (partially)
- Arabic (partially)
- Simplified Chinese (fully)
- Vietnamese (fully)
- English (fully)
- An action System rewrite
- Custom Actions can be registered via the API
- the RunCommand action can now run commands as the console please be careful
- The RunCommand action will now parse placeholders in the raw command text
- The DisplayTitle action can now have a subtitle
- Various performance enhancements
- A new command
/npc fixconfig
:- Requres the
customnpcs.commands.fix_config
permission - Here is some example usage, with an explanation:
/npc fixconfig world <Valid World> <Strategy> <target>
- The Valid World has to be a world that is loaded by Bukkit (Multiverse should work too)
- The strategy can either be
NONE
, which doesn't care about validating the location of the NPC. theSAFE_LOCATION
strategy will verify the NPC won't be stuck in any solid blocks. If it is, the plugin will pick the highest block with the same x and z coordinate. If no position is possible, the NPC is ignored. - The Target can either be
all
, to apply to all NPCs or a specific NPC's name or UUID
- Requres the
- A new command framework
- The NPC configuration is validated on the first parse, rather than on load
- There is now a special permission for the wiki command;
customnpcs.commands.wiki
Bug Fixes:
- Fixed a bunch of injection issues causing NPCs to not appear properly
- Fixed NPCs affecting the sleeping percentage
- Fixed NPCs disappearing after respawning
- Fixed NPCs being injected in the wrong dimension
- Fixed NPC nametags being visible (The numbers and letters)
- Fixed a bunch of errors related to the events portion of the api
- Fixed an error with /reload
- Fixed an issue where you could not decrease the DisplayTitle's fade out option if the fade in option was 1
- Fixed loading the NPC's facing direction incorrectly
Developer Changes
- Removed the Bukkit services api (Not like anyone used it)
- Settings#direction is now deprecated. You should use the yaw of the SpawnLocation instead
- You can write your own actions. Read the documentation to find out how :)
CustomNPCS 1.7-pre12 (Hotfix)
Bug fix:
- Fixed loading the NPC's facing direction incorrectly
Downloading:
You can download this prerelease on Modrinth
Bug Fixes
CustomNPCs prerelease 11
This release is comprised of entirely bug fixes, as the full release is very near
Bug Fixes
- The /npc fixconfig command now requires the permission
customnpcs.commands.fix_config
- Fixed the /npc help and /npc manage commands being missing
- Fixed an error (that only appears in the console) upon translating an empty string in some action favicons
- Fixed an issue where you could not decrease the DisplayTitle's fade out option if the fade in option was 1
- Maybe fixed an issue with the menus when setting an input
Downloading
You can download this prerelease from Modrinth!
That's it
Foxikle <3
New Commands
New Features
/npc fixconfig
command.- Here is some example usage, with an explanation:
/npc fixconfig world <Valid World> <Strategy> <target>
- The Valid World has to be a world that is loaded by Bukkit (Multiverse should work too)
- The strategy can either be
NONE
, which doesn't care about validating the location of the NPC. theSAFE_LOCATION
strategy will verify the NPC won't be stuck in any solid blocks. If it is, the plugin will pick the highest block with the same x and z coordinate. If no position is possible, the NPC is ignored. - The Target can either be
all
, to apply to all NPCs or a specific NPC's name or UUID
- Here is some example usage, with an explanation:
- A new command framework that utilizes Brigadier
- The NPC configuration is validated on the first file parse, rather than on loading.
- There is now a special permission for the /npc wiki command,
customnpcs.commands.wiki
Bug Fixes
- /reload no longer throws an error
- Using the skin catalog no longer throws an error
Developer Changes
The Bukkit services api has been removed. Its not like anyone actually used it.
** I have recently discovered that the Bukkit configuration api has decided to eat locations when they are invalid. There is nothing I can do to recover them. I apologize for the inconvenience**
Thats it <3
Foxikle
v1.7-pre3
CustomNPCS 1.7-pre3
New Features:
- Localization/translation system
- I am looking for translators! If you would like to help translate the plugin, you may do so at https://crowdin.com/project/customnpcs. In exchange for your translation efforts, you will gain access to my preview builds if you join my discord.
- The
RunCommand
Action can now run commands as the console. Only players with thecustomnpcs.run_command.enable_console
can set a command to run as the console. PLEASE BE CAREFUL WITH THIS - 1.21.1 support
- A complete action system rewrite
- Custom actions can be registered via the API
- The DisplayTitle action can now have a subtitle!
Bug Fixes
- Fixed NPCs not being injected after respawn
- Fixed NPCs being injected in the wrong dimensions
- Fixed NPC nametags from being visible (The numbers and letters)
Breaking API Changes
The Conditional
, NumericConditional
, and LogicalConditional
have all been renamed to Condition
, NumericCondition
, and LogicalCondition
respectively. Additionally, the NPC#setActions(List<Action>)
has been changed to the new action class. If you would like to use legacy actions (Don't 🙏) use NPC#setLegacyActions(List<LegacyAction>)
v1.7-pre2
CustomNPCs 1.7-pre1
Hey everyone this prerelease only adds support for 1.20.5 and 1.20.6
Please note that this jar uses SPIGOT mappings, but new paper servers will remap them for you!
~ Cheers!
Foxikle