diff --git a/src/main/java/noppes/npcs/quests/QuestDialog.java b/src/main/java/noppes/npcs/quests/QuestDialog.java index 6bcedde91..37baef74a 100644 --- a/src/main/java/noppes/npcs/quests/QuestDialog.java +++ b/src/main/java/noppes/npcs/quests/QuestDialog.java @@ -264,6 +264,12 @@ public class QuestDialog extends QuestInterface implements IQuestDialog { return true; } else { HashMap readValues = new HashMap<>(); + // Every required dialog starts unread. Without this the map only ever receives true, + // so the check below cannot find a false and a shared objective is always complete -- + // including for a party that has read nothing at all. + for (int dialogId : dialogs.values()) { + readValues.put(dialogId, false); + } for (UUID uuid : party.getPlayerUUIDs()) { EntityPlayer player = NoppesUtilServer.getPlayer(uuid); PlayerData playerData;