So, several people looking at the Aledona module first cut suggested that I try to turn the Crescent Sea modules into something a bit more professional, because they had a lot of potential. So, I've stopped working on Aledona itself for the moment; I've moved the Crescent Sea and Aledona stuff to being done by Riverdark Studios, and I'm going to try and find a few others to help me with this eventually. Hey, it might turn out really nicely, after all; I'm building Aledona both as a world I can GM campaigns in AND something that a real automated quest system could be built on-top-of. Worst comes to worst, it's an interesting learning experience. Best comes to best, maybe the people who work on it even get hired by game companies.
So right now, I'm working on the Riverdark libraries for NWN's scripting language. For example:
- rd_util: Provides some global functions, like an equivalent to UTC timestamps and some debugging functions, which other Riverdark Libraries use.
- rd_stringlib: Provides functions for working with strings. String tokenizer, string splitting, uppercase/lowercase/capitalize-first-let
ter, and other useful functions.
- rd_arrayset: Provides functions for managing arrays, keysets, and other data collections. Yes, I know 8 million people have written something like this for NWN, but I wanted one for myself, darnit, so that if it breaks I have only myself to blame and so that it does what I want without me having to graft other stuff in.
- rd_npc: Provides functions for managing NPC 'opinions' and worldviews, adding tidbits to their background or to the global gossip/rumor system, managing 'faction' viewpoints like the city guards, and so on.
- rd_npc_dynconv: Provides functionality to generate dynamic conversations on-the-fly for NPCs, which work both PC-to-NPC, and NPC-to-NPC. This is really my pride-and-joy in some ways, though it's really a bit insane. The conversation stuff is a little clunky for PC-to-NPC, because I abused a quirk in the conversation system... but it's getting there, at least, and I think it's pretty neat overall.
I've tossed the old NPC AI that I was working on, in favor of making all the NPCs use this newer system. So far, it's actually turning out surprisingly well. I also redesigned the layout of Aledona's waterfront district, and I think I like it a lot better now. I'm going to finish up a bit more of the NPC library before long, and then get back to laying out more of the town and creating NPCs who'll use the library. Then I should eventually be able to GM a campaign in the world to test it out and inaugurate the module!