NPC Server Oppinions

01/15/2010 10:26 Korvacs#1
Im thinking about how im going to do my NPC Dialogs, and i cant decide if i should load them into the game server, so that the game server has more load on it, but makes everything easier when it comes to accessing things like the client socket.

Or should i write a seperate server just for NPC Related things, pipe the npc requests to that server and let it deal with things and then pipe things back to the server for distribution (like hair style, despawn, spawn packets).

Both have benefits, i cant really decide which route to take.
01/15/2010 11:05 ~Yuki~#2
i would load it to the game server -> more performant since u dont have to send it to the npc server n then echo it to the game server.

But would be more easy to have a sepertate server tu quickly change dialoges without restarting the gameserver if u gonna write the dialoges into the source
01/15/2010 11:09 Korvacs#3
Well, i wouldnt be sending it via a socket, the transmission its pretty much instant, so the performance loss would be barely noticeable.

Also, the dialogs will be compiled into memory, so i can make changes whenever and i wouldnt need to restart the server anyway. :)
01/15/2010 11:10 ~Yuki~#4
aww okay then i dont know whats better :)
01/15/2010 11:18 Basser#5
Quote:
Originally Posted by Korvacs View Post
Well, i wouldnt be sending it via a socket, the transmission its pretty much instant, so the performance loss would be barely noticeable.

Also, the dialogs will be compiled into memory, so i can make changes whenever and i wouldnt need to restart the server anyway. :)
I would say, the first method.
It are just some Dialogues, if you have to edit them, do it, and restart the server, its not a daily thing I do anyway.

~Bas
01/15/2010 16:13 Nullable#6
Quote:
Originally Posted by Hepatitis X View Post
restart the server
F.y.i, you don't have to restart anything to edit dialogs, you can always use external databases. . anyhow i support loading npc dialogues into the same server however, i don't really see any major difference between loading them into the game server or piping into another npc server except for specializing purposes. .
01/15/2010 17:02 ~Yuki~#7
Quote:
Originally Posted by Korvacs View Post
Well, i wouldnt be sending it via a socket, the transmission its pretty much instant, so the performance loss would be barely noticeable.

Also, the dialogs will be compiled into memory, so i can make changes whenever and i wouldnt need to restart the server anyway. :)
.
01/15/2010 17:48 Nullable#8
Quote:
Originally Posted by Nullable View Post
F.y.i, you don't have to restart anything to edit dialogs, you can always use external databases. .
.
01/16/2010 11:44 Korvacs#9
Bringing this back to the top.

Most people seem to be saying use the same server, despite the additional load which will be added to it, it will decrease performance quite abit.
01/16/2010 12:56 Basser#10
Quote:
Originally Posted by Nullable View Post
F.y.i, you don't have to restart anything to edit dialogs, you can always use external databases. . anyhow i support loading npc dialogues into the same server however, i don't really see any major difference between loading them into the game server or piping into another npc server except for specializing purposes. .
Wait, your not talking to the average e*pvp member here. Korvacs knows all this for sure, and so do I.
01/16/2010 13:01 Zion~#11
If I were you I'd write a separate server for handling NPCs, this might be proven complicated but very rewarding in the long run.
01/16/2010 14:04 Nullable#12
Quote:
Originally Posted by Hepatitis X View Post
Wait, your not talking to the average e*pvp member here. Korvacs knows all this for sure, and so do I.
I know that Korvacs does, not sure about you, stating it won't hurt you so don't take it serious -.-
Well Korvacs, loading them into the game server would slightly decrease performance, i stated that option because, a server would never use that much cpu that will affect performance dramatically, however if you have the time to create named pipes and split the servers, do it :}
01/16/2010 14:11 Zion~#13
Quote:
Originally Posted by Nullable View Post
I know that Korvacs does, not sure about you, stating it won't hurt you so don't take it serious -.-
Well Korvacs, loading them into the game server would slightly decrease performance, i stated that option because, a server would never use that much cpu that will affect performance dramatically, however if you have the time to create named pipes and split the servers, do it :}
No.. The server would handle the NPC server as a client, how much of a load does a client apply to a server? Ask your self that question. In my opinion this is the right way to go.
01/16/2010 14:18 Nullable#14
Quote:
Originally Posted by Zion~ View Post
No.. The server would handle the NPC server as a client, how much of a load does a client apply to a server? Ask your self that question. In my opinion this is the right way to go.
Well, ask yourself this, how much memory would some dialogues occupy?
Plus, as you said a client does not apply any noticeable load to a server so that wouldn't be a problem. . Think about it, does it really 'need' another server?
However, i never said this is the best of two solutions, i also said if Korvacs had the time, he should connect both applications through pipes. .
01/16/2010 14:51 Korvacs#15
Quote:
Originally Posted by Zion~ View Post
No.. The server would handle the NPC server as a client, how much of a load does a client apply to a server? Ask your self that question. In my opinion this is the right way to go.
Atually the NPC server would connect in a completely unrelated and seperately threaded manner, so the NPC server should reduce the load quite alot.