Personally, I would be very hesitant about setting up a Windows machine for a dedicated server. Security is not even a prime concern, a Windows machine just doesn't convey the same sense of perfect control that i get from a Linux rig.
Correct me if I am wrong, but porting a dedicated server seems pretty easy. You would have to change a few system calls, I'm thinking a bit of socket/network programming and some file manipulation for logs and map loading and whatnot. It should be fairly straight forward to hide behind a (thin) layer of abstraction. One would simply have different OS dependent implementations of these low-level operations. I would expect Max to be able to do this in around two days. If he anticipated a Linus DS from the beginning and structured the code accordingly (and if he is familiar with the Linux platform) he could probably do it in an afternoon and still have time for coffee. (Naturally, I am guessing here. Loads of things can complicate the hell out of these things. Using the same auto-updating libraries that Max uses for the tools might prove tricky, for instance).
In addition, the port should only take around two days (or whatever) no matter when it is done. Doing it in time for alpha would allow the community to do some (rigorous) testing (and bug-hunting) all the way through alpha and beta. Ultimately resulting in a better product come release date. What I am trying to get across here is that if I was wearing the decision-making-hat I would port a DS as soon as possible.
(I would also port the client as soon as possible, and the devs are not doing this. Just goes to show how much grasp I have on things I guess.)
<!--quoteo(post=1708963:date=May 31 2009, 09:59 PM:name=SuperBOB)--><div class='quotetop'>QUOTE (SuperBOB @ May 31 2009, 09:59 PM) <a href="index.php?act=findpost&pid=1708963"><{POST_SNAPBACK}></a></div><div class='quotemain'><!--quotec-->Not a big deal to me. Ill just use whichever VM is required <img src="style_emoticons/<#EMO_DIR#>/tounge.gif" style="vertical-align:middle" emoid=":p" border="0" alt="tounge.gif" />
P.S It is nice to see people returning here in preparation, I hope you have plenty of free time for NS2 Bry <img src="style_emoticons/<#EMO_DIR#>/biggrin-fix.gif" style="vertical-align:middle" emoid=":D" border="0" alt="biggrin-fix.gif" /><!--QuoteEnd--></div><!--QuoteEEnd--> Ofc I have mate <img src="style_emoticons/<#EMO_DIR#>/smile-fix.gif" style="vertical-align:middle" emoid=":)" border="0" alt="smile-fix.gif" />
I guess one of the main things about the dedicated server will be steamworks and how it interfaces if any with steam. For example will they be using steamIDs and anything else associated with steam? If so porting the server to windows/linux should be fairly straight forward. However, it will probably end up running a lot better on windows than linux. (Source and HLDS servers tend to run better on windows.)
devicenullJoin Date: 2003-04-30Member: 15967Members, NS2 Playtester, Squad Five Blue
<!--quoteo(post=1709222:date=Jun 1 2009, 12:40 PM:name=Private)--><div class='quotetop'>QUOTE (Private @ Jun 1 2009, 12:40 PM) <a href="index.php?act=findpost&pid=1709222"><{POST_SNAPBACK}></a></div><div class='quotemain'><!--quotec-->Personally, I would be very hesitant about setting up a Windows machine for a dedicated server. Security is not even a prime concern, a Windows machine just doesn't convey the same sense of perfect control that i get from a Linux rig.
Correct me if I am wrong, but porting a dedicated server seems pretty easy. You would have to change a few system calls, I'm thinking a bit of socket/network programming and some file manipulation for logs and map loading and whatnot. It should be fairly straight forward to hide behind a (thin) layer of abstraction. One would simply have different OS dependent implementations of these low-level operations. I would expect Max to be able to do this in around two days. If he anticipated a Linus DS from the beginning and structured the code accordingly (and if he is familiar with the Linux platform) he could probably do it in an afternoon and still have time for coffee. (Naturally, I am guessing here. Loads of things can complicate the hell out of these things. Using the same auto-updating libraries that Max uses for the tools might prove tricky, for instance).
In addition, the port should only take around two days (or whatever) no matter when it is done. Doing it in time for alpha would allow the community to do some (rigorous) testing (and bug-hunting) all the way through alpha and beta. Ultimately resulting in a better product come release date. What I am trying to get across here is that if I was wearing the decision-making-hat I would port a DS as soon as possible.
(I would also port the client as soon as possible, and the devs are not doing this. Just goes to show how much grasp I have on things I guess.)<!--QuoteEnd--></div><!--QuoteEEnd-->
If Visual Studio and GCC compiled things exactly the same way, this might be the case. In reality, there are often large differences between what they will accept as far as syntax goes, and fixing these issues can take quite a while.
I am under the impression that ALL the game code is written in Lua, including the server side game code. I'm pretty sure this has not been stated directly, but I think someone mentioned that only the engine itself is written in C++. And if I recall correctly, the Lua code survived the switch from source engine to one of Max' own design virtually unchanged. I expect it to perform equally well when it comes to dedicated servers.
That being said, I don't know how much C++ will be part of a DS. I guess there will be some Steamworks in there, as well as some kind of Lua platform, both can cause no end of problems. Good point on syntax as well. I think I am coming around on this one. Porting a DS could be a lot of work for relatively little gain.
Still, I would much prefer a Linux DS over a Windows one.
locallyunsceneFeeder of TrollsJoin Date: 2002-12-25Member: 11528Members, Constellation
edited June 2009
<!--quoteo(post=1709529:date=Jun 2 2009, 10:56 AM:name=Private)--><div class='quotetop'>QUOTE (Private @ Jun 2 2009, 10:56 AM) <a href="index.php?act=findpost&pid=1709529"><{POST_SNAPBACK}></a></div><div class='quotemain'><!--quotec-->I am under the impression that ALL the game code is written in Lua, including the server side game code. I'm pretty sure this has not been stated directly, but I think someone mentioned that only the engine itself is written in C++. And if I recall correctly, the Lua code survived the switch from source engine to one of Max' own design virtually unchanged. I expect it to perform equally well when it comes to dedicated servers.
That being said, I don't know how much C++ will be part of a DS. I guess there will be some Steamworks in there, as well as some kind of Lua platform, both can cause no end of problems. Good point on syntax as well. I think I am coming around on this one. Porting a DS could be a lot of work for relatively little gain.
Still, I would much prefer a Linux DS over a Windows one.<!--QuoteEnd--></div><!--QuoteEEnd--> The Engine code is C++ and all the game logic code is LUA IIRC. Max has been working hard to make everything portable though <a href="http://www.unknownworlds.com/ns2/news/2009/03/one_small_step_for_a_man_one_giant_leap_for_mac_kind" target="_blank">blog post</a>. And as someone else said, if he's doing this for the <i>client</i>, I'd bet dollars to donuts he's going to do it for the server too.
Comments
Correct me if I am wrong, but porting a dedicated server seems pretty easy. You would have to change a few system calls, I'm thinking a bit of socket/network programming and some file manipulation for logs and map loading and whatnot. It should be fairly straight forward to hide behind a (thin) layer of abstraction. One would simply have different OS dependent implementations of these low-level operations. I would expect Max to be able to do this in around two days. If he anticipated a Linus DS from the beginning and structured the code accordingly (and if he is familiar with the Linux platform) he could probably do it in an afternoon and still have time for coffee. (Naturally, I am guessing here. Loads of things can complicate the hell out of these things. Using the same auto-updating libraries that Max uses for the tools might prove tricky, for instance).
In addition, the port should only take around two days (or whatever) no matter when it is done. Doing it in time for alpha would allow the community to do some (rigorous) testing (and bug-hunting) all the way through alpha and beta. Ultimately resulting in a better product come release date. What I am trying to get across here is that if I was wearing the decision-making-hat I would port a DS as soon as possible.
(I would also port the client as soon as possible, and the devs are not doing this. Just goes to show how much grasp I have on things I guess.)
P.S It is nice to see people returning here in preparation, I hope you have plenty of free time for NS2 Bry <img src="style_emoticons/<#EMO_DIR#>/biggrin-fix.gif" style="vertical-align:middle" emoid=":D" border="0" alt="biggrin-fix.gif" /><!--QuoteEnd--></div><!--QuoteEEnd-->
Ofc I have mate <img src="style_emoticons/<#EMO_DIR#>/smile-fix.gif" style="vertical-align:middle" emoid=":)" border="0" alt="smile-fix.gif" />
I guess one of the main things about the dedicated server will be steamworks and how it interfaces if any with steam. For example will they be using steamIDs and anything else associated with steam? If so porting the server to windows/linux should be fairly straight forward. However, it will probably end up running a lot better on windows than linux. (Source and HLDS servers tend to run better on windows.)
Correct me if I am wrong, but porting a dedicated server seems pretty easy. You would have to change a few system calls, I'm thinking a bit of socket/network programming and some file manipulation for logs and map loading and whatnot. It should be fairly straight forward to hide behind a (thin) layer of abstraction. One would simply have different OS dependent implementations of these low-level operations. I would expect Max to be able to do this in around two days. If he anticipated a Linus DS from the beginning and structured the code accordingly (and if he is familiar with the Linux platform) he could probably do it in an afternoon and still have time for coffee. (Naturally, I am guessing here. Loads of things can complicate the hell out of these things. Using the same auto-updating libraries that Max uses for the tools might prove tricky, for instance).
In addition, the port should only take around two days (or whatever) no matter when it is done. Doing it in time for alpha would allow the community to do some (rigorous) testing (and bug-hunting) all the way through alpha and beta. Ultimately resulting in a better product come release date. What I am trying to get across here is that if I was wearing the decision-making-hat I would port a DS as soon as possible.
(I would also port the client as soon as possible, and the devs are not doing this. Just goes to show how much grasp I have on things I guess.)<!--QuoteEnd--></div><!--QuoteEEnd-->
If Visual Studio and GCC compiled things exactly the same way, this might be the case. In reality, there are often large differences between what they will accept as far as syntax goes, and fixing these issues can take quite a while.
That being said, I don't know how much C++ will be part of a DS. I guess there will be some Steamworks in there, as well as some kind of Lua platform, both can cause no end of problems. Good point on syntax as well. I think I am coming around on this one. Porting a DS could be a lot of work for relatively little gain.
Still, I would much prefer a Linux DS over a Windows one.
That being said, I don't know how much C++ will be part of a DS. I guess there will be some Steamworks in there, as well as some kind of Lua platform, both can cause no end of problems. Good point on syntax as well. I think I am coming around on this one. Porting a DS could be a lot of work for relatively little gain.
Still, I would much prefer a Linux DS over a Windows one.<!--QuoteEnd--></div><!--QuoteEEnd-->
The Engine code is C++ and all the game logic code is LUA IIRC. Max has been working hard to make everything portable though <a href="http://www.unknownworlds.com/ns2/news/2009/03/one_small_step_for_a_man_one_giant_leap_for_mac_kind" target="_blank">blog post</a>. And as someone else said, if he's doing this for the <i>client</i>, I'd bet dollars to donuts he's going to do it for the server too.