Revolutionize your villagers with cutting-edge AI dynamics!
- Dialogues with NPCs and giving gifts now grant the player reputation. Be rude to an NPC and reputation will decrease; give something nice — it will improve.
- When the player gives a gift to an NPC, the NPC will briefly take it in hand and a sound will play. This is done so that the NPC reacts in some way.
- Improved the code related to villager professions. Villagers now craft items from copper! (armor, tools, weapons), including unique items with enhanced attributes, as well as names and descriptions generated by AI.
- Restored the quest related to profession development. The villager will ask the player for items related to their profession; for example, armorers and weaponsmiths will ask for iron (and now also copper) ingots, and then craft armor, tools, and so on from them!
- Restored the quest to find music discs. Now, when the player completes such a quest, the disc that the NPC requested starts playing.
- Fixed the code responsible for trading items that are in the NPC's inventory.
- Fixed the calculation of the cost of unique items — now the values specified in professions.yml actually affect the price at which the NPC will sell their products.
- Restored the quest to find food. Villagers now have a hunger indicator — they eat food and can even die from hunger.
- A new library for working with configs has been written. Configs have become more beautiful, cleaner, and better grouped. gameplay.yml has been completely reworked.
- Fixed an error with incorrect display of humanoids, due to which they were sometimes not visible (the problem was at the protocol level).
- Restored quests to find unique professional items (armorers ask to find smithing templates, librarians ask for enchanted books, clerics ask for ingredients for brewing potions, cartographers generally send the player to search for treasures).
- Generative localization has been restored. To translate language.yml and all other game content, just specify the language in provider.yml; after that, the selected AI will generate the translation.
- Translation caching has been added. Instead of generating the language.yml translation every time, it will happen only once. If an update is installed where new strings appear in the localization file (i.e., the hash sum changes), the translation will be regenerated. Perhaps this is the smartest localization among all Minecraft plugins.
- A display above NPC heads has been added, containing useful information like name, profession and level, reputation, and even health. It automatically appears when the player approaches closely and disappears in the same way.
- bStats has been added. Now I can view usage statistics for my plugin.
- Update notifications have been added. If a newer version of the plugin is available on Spigot than yours, you will see a message about it in chat and on server startup.
- The hunger system has been improved. Now NPCs can die if they starve for too long (can be disabled in config); at the same time, hunger information is visible in the info display (shown only when the NPC is hungry).
- Fixed an old bug due to which NPCs produced custom items and thereby broke server balance.
- Removed everything related to Markdown.
# Update 0.3.2c
## Changes
- Added a new mechanic: "prison detection." If enabled, Ignis will continuously check villagers' positions. If a villager remains in the same position for a long time, the plugin will determine that the villager is in a trade hall and mark them as a trapped villager.
- Added a new type of phrase: trapped villagers will tell the player that they feel cramped and want more space.
- Trapped villagers cannot be traded with or interacted with in any way.
- Particles will periodically appear around a villager deemed trapped, making it easier for players to understand what's happening.
- Added an achievement system. For now, I've only created the root achievement—others will follow later. Custom achievements will help players understand how the plugin works. You could say this is the best version of a tutorial—instead of endless chat messages, the "story" will unfold through achievements.
Changes
- The /ignis dialogue format command now works correctly.
- Added support for version 1.21.8.
After a short break, an unpleasant situation with Spigot moderation (and another mood swing due to my bipolar disorder), I found the time and energy to release an update.
Added:
1. NPCs can now wear equipment: armor, weapons, tools. NPCs will automatically select the best equipment from their inventory, including shields and totems of undying. NPCs will update their equipment either periodically (frequency specified in the config) or after receiving a gift (the villager must accept the gift). For now, NPCs cannot fight, but I’ll try to add this in the future.
2. Modified NPC behavior; they no longer "cycle" trade items in their hands.
3. Added a new phrase pool: when a villager holds a totem of undying and it saves them from death, they’ll say a cool phrase related to it!
4. Added support for 1.21.6 and 1.21.7.
Recent news: Ignis went premium on Spigot, but a week later, it was marked as an inactive resource because I updated it too often (bumping content on forums is a normal practice, but apparently not in Australia). My attempts to contact support were ignored, and the folks on their Discord server told me to "fuck around and find out" and claimed I have a big ego. My plugin was developed for Spigot (I even avoided using the Paper API specifically for this), had a positive rating, and was objectively one of the most creative and unique projects on the entire site. I don’t know if this counts as a big ego or if I’ve just lost my mind, but I think it’s wrong to just de-facto delete someone’s work like that. No warnings. No chance for recovery. I ask the four people who bought the plugin on Spigot to DM me so I can add them as buyers on Polymart, where the plugin will continue to be sold.
1. Fixed an error related to accepting a quest.
2. Fixed an error that caused settlement.entry.track to do nothing.
3. Fixed character generation. Now characters will only be generated in worlds specified in core.allowed-worlds.
4. Now villagers' items are sold one at a time, not in entire stacks.