I’ve noticed after hosting a server for a while (as little as a few hours) server functions start to break down. Merchants stop working, NPCs don’t talk, portraits don’t load, spells don’t work, encounters don’t activate, and another player couldn’t even create a new character. The only fix that I know is to reset the server. I don’t turn on “Reload When Empty”. I’ve never had this problem while playing on someone else’s server. I have an IPv4, and I use a firewall. Does anyone know why this happens? This is one of those things that’s not a big deal in the short term, but after a while gets under your skin.
I am sorry to hear about these troubles you are having. There are a few things you can consider looking into. I cannot provide much direct explanation but I know many people say things like this could be due to say a memory leak, it is perhaps evident from your description of the problem that the server is running out of memory. My first question is actually to ask how you are hosting the server. I would recommend anyone hosting nwn to do so in linux (you can install a virtual Ubuntu installation using something like Hyper-V) and simply follow these instructions, skipping the database parts or nwnx parts if you do not plan to use those. https://gist.github.com/mtijanic/0f9369bb5430f4b31906241f5c6c1ebe
Have you modified any heartbeat scripts? Do you have merchants with very large inventories, perhaps from players filling them with 5-6+ pages of items?
I’m hosting the server through NWserver on Windows. I do have the modified creature heartbeat script “nw_c2_default1” (for telling creatures when to use certain Feats). It looks like it’s set to the module’s OnHeartbeat event. I don’t remember setting that; I’m going to check if that’s really necessary. There isn’t normally a default OnHeartbeat script. It’s possible to fill up merchant inventories by a lot though I doubt it’s the cause.
I have used Ubuntu in school before. I’ll certainly give that a try.
Edit: It turns out the script “nw_c2_default1” still works if it’s not set to the module’s OnHeartbeat event, so it doesn’t need to be set that way. Hopefully this fixes it. I’ll have to wait and see.
This is what happens when you are hosting server from non-dedicated server and then you run game client. NWN-EE specific.
Could that be it? Switch to dedicated server, that should fix this.
It looks like the heartbeat event was causing the problem. Thanks for the advice. Is there some way to host it as a dedicated server for free? Also what is better about using Ubuntu other than being able to use NWNX?
Very glad to hear the problem is sorted. I am to understand hosting via Linux server is perhaps more stable but I have nothing to cite regarding that.