Recommended: create saved actions with commands, then reference them by name:
/qa/qaAdmin commands for NotQuestsactionsactionsManages saved actions, inline actions, and action execution.addaddCreates a new saved action.RewardQuestPoints<actionName>Name used to save this action.Acceptsaction nameExampleRewardQuestPointsQuestPointsQuestPointsReads or changes the target player's quest points.add<operator>How to change the number variable: set, add, deduct, multiply, or divide.Acceptsaction operatorExampleadd5<expression>Number expression used as the input value for this variable action.AcceptsnumberExpressionExample5
actions:
- action RewardQuestPoints
Inline actions are also supported:
actions:
- SendMessage You made the guard happy.
- QuestPoints add 5
Saved actions are easier to check because /qa/qaAdmin commands for NotQuestsactionsactionsManages saved actions, inline actions, and action execution.addaddCreates a new saved action....<actionName>Name used to save this action.Acceptsaction name gives command feedback immediately. Inline actions are useful for short, obvious actions.
Conditions decide whether a line is allowed to play.
Recommended: create saved conditions with commands, then reference them:
/qa/qaAdmin commands for NotQuestsconditionsconditionsManages saved conditions that can be reused by quests, objectives, and actions.addaddCreates a saved condition.HasTenQuestPoints<conditionName>Name used to save this condition.Acceptscondition nameExampleHasTenQuestPointsQuestPointsQuestPointsReads or changes the target player's quest points.moreOrEqualThan<operator>How to compare the selected number variable against the expression.Acceptscomparison operatorExamplemoreOrEqualThan10<expression>Number expression to compare with the selected variable value.AcceptsnumberExpressionExample10
conditions:
- condition HasTenQuestPoints
Negate a saved condition with ! and quotes:
conditions:
-"!condition HasTenQuestPoints"
Inline conditions are also supported:
conditions:
- QuestPoints moreOrEqualThan 10
Use saved conditions when you are learning. They are easier to test and reuse.
/qa/qaAdmin commands for NotQuestsconversationsconversationsManages conversations and their NPC attachments.editeditOpens subcommands for editing a saved conversation.intro<conversation>Name of the conversation.Acceptsconversation nameExampleintronpcsnpcsManages NPCs attached to this quest or conversation.addaddAttaches the selected conversation to an NPC or armor stand.citizens:5<NPC>NPC, armor stand, or right-click selector that should start the conversation.AcceptsNPC selectorExamplecitizens:5
/qa/qaAdmin commands for NotQuestsconversationsconversationsManages conversations and their NPC attachments.editeditOpens subcommands for editing a saved conversation.intro<conversation>Name of the conversation.Acceptsconversation nameExampleintronpcsnpcsManages NPCs attached to this quest or conversation.addaddAttaches the selected conversation to an NPC or armor stand.fancynpcs:6ab312dd-ddce-42a6-8965-e45605a05321<NPC>NPC, armor stand, or right-click selector that should start the conversation.AcceptsNPC selectorExamplefancynpcs:6ab312dd-ddce-42a6-8965-e45605a05321
/qa/qaAdmin commands for NotQuestsconversationsconversationsManages conversations and their NPC attachments.editeditOpens subcommands for editing a saved conversation.intro<conversation>Name of the conversation.Acceptsconversation nameExampleintronpcsnpcsManages NPCs attached to this quest or conversation.addaddAttaches the selected conversation to an NPC or armor stand.rightClickSelect<NPC>NPC, armor stand, or right-click selector that should start the conversation.AcceptsNPC selectorExamplerightClickSelect
rightClickSelect gives a selector item. On Paper, right-click a Citizens NPC, FancyNPCs NPC, or armor stand. On NeoForge, use an armor stand.
Useful NPC commands:
/qa/qaAdmin commands for NotQuestsconversationsconversationsManages conversations and their NPC attachments.listlistLists every saved conversation. - shows conversations and attached NPCs.
/qa/qaAdmin commands for NotQuestsconversationsconversationsManages conversations and their NPC attachments.editeditOpens subcommands for editing a saved conversation.intro<conversation>Name of the conversation.Acceptsconversation nameExampleintronpcsnpcsManages NPCs attached to this quest or conversation.addaddAttaches the selected conversation to an NPC or armor stand.rightClickSelect<NPC>NPC, armor stand, or right-click selector that should start the conversation.AcceptsNPC selectorExamplerightClickSelect - attach by clicking.
/qa/qaAdmin commands for NotQuestsconversationsconversationsManages conversations and their NPC attachments.editeditOpens subcommands for editing a saved conversation.intro<conversation>Name of the conversation.Acceptsconversation nameExampleintroarmorstandarmorstandUses an armor stand selector/removal tool.removeremoveGives a player the tool used to remove conversations from an armor stand. - get the tool that removes conversations from armor stands.
Conversations belong to a category, just like quests.
Create in a specific category:
/qa/qaAdmin commands for NotQuestsconversationsconversationsManages conversations and their NPC attachments.createcreateCreates a new conversation file.intro<conversation-name>Unique file/name for the new conversation.Acceptsconversation nameExampleintro--category--categoryQuest category used to store or look up the created NotQuests object.Acceptscategory namestoryValue for --categoryQuest category used to store or look up the created NotQuests object.Acceptscategory nameExamplestory
Move an existing conversation:
/qa/qaAdmin commands for NotQuestsconversationsconversationsManages conversations and their NPC attachments.editeditOpens subcommands for editing a saved conversation.intro<conversation>Name of the conversation.Acceptsconversation nameExampleintrocategorycategoryShows or changes the category assigned to the selected conversation.setsetMoves the selected conversation into another category.story<category>New category for this conversation.Acceptscategory nameExamplestory
Show the current category:
/qa/qaAdmin commands for NotQuestsconversationsconversationsManages conversations and their NPC attachments.editeditOpens subcommands for editing a saved conversation.intro<conversation>Name of the conversation.Acceptsconversation nameExampleintrocategorycategoryShows or changes the category assigned to the selected conversation.showshowShows the category currently assigned to the selected conversation.
You can add and remove speakers with commands, but line content is still edited in the YAML file.
/qa/qaAdmin commands for NotQuestsconversationsconversationsManages conversations and their NPC attachments.editeditOpens subcommands for editing a saved conversation.intro<conversation>Name of the conversation.Acceptsconversation nameExampleintrospeakersspeakersManages speakers used by conversation lines.addaddCreates a new speaker for the selected conversation.Guard<speaker-name>Unique speaker identifier used by conversation lines and speaker options.Acceptsspeaker nameExampleGuard--speakerColor--speakerColorMiniMessage color or tag used for conversation speaker names.Acceptsspeaker color<gold>Value for --speakerColorMiniMessage color or tag used for conversation speaker names.Acceptsspeaker color
/qa/qaAdmin commands for NotQuestsconversationsconversationsManages conversations and their NPC attachments.editeditOpens subcommands for editing a saved conversation.intro<conversation>Name of the conversation.Acceptsconversation nameExampleintrospeakersspeakersManages speakers used by conversation lines.listlistLists every speaker in the selected conversation.
/qa/qaAdmin commands for NotQuestsconversationsconversationsManages conversations and their NPC attachments.editeditOpens subcommands for editing a saved conversation.intro<conversation>Name of the conversation.Acceptsconversation nameExampleintrospeakersspeakersManages speakers used by conversation lines.removeremoveRemoves a speaker from the selected conversation.Guard<speaker>Speaker identifier to remove from this conversation.AcceptsspeakerExampleGuard
/qa/qaAdmin commands for NotQuestsreloadreloadReloads selected NotQuests files without restarting the server.conversationsconversationsReloads saved NotQuests conversations from disk.
Then check how NotQuests reads the file:
/qa/qaAdmin commands for NotQuestsconversationsconversationsManages conversations and their NPC attachments.analyzeanalyzeRuns conversation analysis checks.intro<conversation>Name of the conversation.Acceptsconversation nameExampleintro
For larger conversations, print the output to console:
/qa/qaAdmin commands for NotQuestsconversationsconversationsManages conversations and their NPC attachments.analyzeanalyzeRuns conversation analysis checks.intro<conversation>Name of the conversation.Acceptsconversation nameExampleintro--printToConsole--printToConsolePrint the command output to the server console instead of only chat.
If something does not work, check these first:
YAML uses spaces, not tabs.
Indentation is consistent.
Every start: and next: target exists.
Every saved condition ... exists in /qa/qaAdmin commands for NotQuestsconditionsconditionsManages saved conditions that can be reused by quests, objectives, and actions..
Every saved action ... exists in /qa/qaAdmin commands for NotQuestsactionsactionsManages saved actions, inline actions, and action execution..
You ran /qa/qaAdmin commands for NotQuestsreloadreloadReloads selected NotQuests files without restarting the server.conversationsconversationsReloads saved NotQuests conversations from disk. after editing the file.
You are starting the conversation as a player. /qa/qaAdmin commands for NotQuestsconversationsconversationsManages conversations and their NPC attachments.startstartStarts the selected conversation.<conversation><conversation>Name of the conversation.Acceptsconversation name is player-only.
NotQuests can keep conversation chat tidy by removing previous conversation lines and restoring older chat afterwards. This is controlled in general.yml under packet magic conversation settings.
If players report that chat messages appear to disappear during conversations, that is usually this feature. It is intended, but it can be disabled in the config if your server prefers normal chat history.