Instead of having dialogues, rewards and runnables all separated and npc specific, make server-wide accessible NPC scripts that NPCs can run.
Also with this will be identifiers, e.g [TEXT], [RUN], [SCRIPT] (to run other scripts), as opposed to the separators in there.
plus break identifier, like a wait function.
things should be much harder to break with this in place
Instead of having dialogues, rewards and runnables all separated and npc specific, make server-wide accessible NPC scripts that NPCs can run. Also with this will be identifiers, e.g [TEXT], [RUN], [SCRIPT] (to run other scripts), as opposed to the separators in there. plus break identifier, like a wait function. things should be much harder to break with this in place