There was a point several months ago when I was building the quest system for the game and I noticed that all of the objectives I was making were pretty bland (the quest scripting system is comprised of objectives and actions- things a player needs to do, and the actions that happen when they do them). Go there. Kill that. And so on. It brought me back to when I was looking at randomly generated quests in another game and I immediately dismissed it as silly, since they were reduced to “Bring me <x> of <y>”. Which cuts to the point: the objectives of quests in RPGs have ALWAYS been silly things that happen to fit into the game part. Even your most story heavy RPG out there still boils down to “clear this dungeon to hit the next plot beat”. What makes a quest interesting isn’t the objectives themselves, but the context that you’re doing them in.
It’s a pretty obvious statement, but apparently I had to remind myself of it. When I was in a rush to write the existing sample quest I made some pretty obvious mistakes. There’s several plot beats where the players have to go somewhere to get some information. The places end up not mattering to the main plot arc. Sometimes they were short stories in of themselves, but not always. It took me a little bit to realize why they felt so off: because they were irrelevant to the primary story. Many of the existing side quests had similar problems, of me slipping into a mode of being sarcastic and dead inside and making them simple chores with excuses instead of tiny little stories.
It’s an easy thing to forget. And it’s not always just from the context not being present. MMORPGs have suffered from this for years: partially because they’re multiplayer, partially because there’s too many quests to make them all interesting, partially because players have no power over the world, and partially from how they deliver context. Take a look at the current standard for MMORPG quest dialogs, the World of Warcraft “here’s a bunch of text in a small scrolling window with an easy access button for accept so you can quickly and conveniently completely ignore it”. It makes no effort to simulate a conversation. It’s built so you can easily skip it. There is no need to read it because any required information has been folded into an automated system. It is only there to theoretically please the segment of the audience that demands it.
So I guess you want to know how the code is going. It’s going pretty good. You can walk around node style and such like now, but nuances like how traps and battles are triggered requires further work since the original system wasn’t made for how it works here.