The mod is still in beta, please submit an issue if you find any problems. If you want to use the latest version, please compile the source code yourself, see Build.
Chat With NPC allows players to freely chat with NPCs, who will answer questions based on his setting (Basic Prompt) and the setting of their Groups (Nation, City, Town ,etc.). Suitable for RPG maps or puzzle maps. The NPCs would not change the game rule (if you don’t use the advanced features). NPC can also perform some actions based on the chat content if you define it.
In the future version, we will add innovative features such as NPCs chatting with each other, NPCs’ viewpoints on events, etc., so that NPCs in the same Group can interact with each other.
Any player can talk to NPCs by shift+clicking on them, if the NPC has been registered by OPs. Then the NPC will greet with players.
The NPC’s speech can be seen by everyone (in the chat bubble above their head), or by players within a certain range around NPC (in the Chat bar).
Any nearby players can reply to the NPC in the chat bar directly (or the nearest NPC if there are multiple NPCs near the player).
If you are administrator, see the Installation for more information.
NPC
has his own Instructions
, and he can belong to a Group
.NPC
can will manager their context of the conversation automatically by OpenAI.Group
also has its own Instructions
to describe them, and can also record some Event
that can be easy to
change.Group
can record a ParentGroup
until the group’s parent group is Global
, Global
cannot have a parent
group.NPC
’s conversation will combine his own Instructions
, the context of this
conversation (or all the conversation if needMemory is true), the Intructions
of his Group
and all
its ParentGroup
, and the content of Event
.Functions
that could be call by the NPC in the conversation.mods
folder, grab your OpenAI API key
from here, and set it with the /npchat setkey <key>
command./npchat
- View configuration status/npchat help
- View commands help/npchat enable/disable
- Enable/disable the mod/npchat setKey <key>
- Set OpenAI API key/npchat setModel <model>
- Set AI model/npchat setRange <range>
- Set the range of the conversation/npchat setLanguage <language>
- Set the response language/npchat setWordLimit <wordLimit>
- Set the word limit of the response/npchat setURL <url>
- Set the OpenAI API proxy URL/npchat saveAll
- Save all the data to the disk/npchat setChatBar <true/false>
- Set to display the conversation at the chat bat at the bottom left or not, true
to display, false
to hide./npchat setBubble <true/false>
- Set to display the bubble of the conversation above our lovely NPC or not, true
to display, false
to hide./npchat setBubbleStyle Color <color preset>
- Set the preset colors for font and background./npchat setBubbleStyle timeLastingPerChar <time>
- Set the time lasting for a character in unit of second. For example, setting the time to 1.5 seconds means a sentence with 6 characters will have its bubble displayed for a total of 9 seconds.Group
../gradlew build
in the root directory of the repository.build/libs
directory.Developers can create their own custom functions by extending the CustomFunction
class provided by the ChatWithNPC
API. For more information on creating custom functions, please refer to
the Advanced Function Calling documentation. Or, you can extend this mod and buildup your own chat with NPC style.
dependencies { modImplementation “com.jackdaw:chat-with-NPC:${project.chat_with_npc_version}” } ```