Jump to content
Dante Unbound: Share Bug Reports and Feedback Here! ×

Dedicated Conclave Servers


[DE]Drew

Recommended Posts

Possibly the answer is somewhere among the 12 pages, I didn't manage to examine, but still is there a possibility to close server without dropping players? I mean some command e.g. save and exit, applying which the server stops accept new game sessions and waits for the ending of all currently existing sessions, then exits dedicated server itself?

Thank you.

P.S. it would be really nice and excellent motivation for those running Dedicated Servers if they could see some kind of statistics, e.g. completed games, numbers of players, took part in these games, etc.

Link to comment
Share on other sites

1 hour ago, Phyrexian_man said:

Possibly the answer is somewhere among the 12 pages, I didn't manage to examine, but still is there a possibility to close server without dropping players? I mean some command e.g. save and exit, applying which the server stops accept new game sessions and waits for the ending of all currently existing sessions, then exits dedicated server itself?

Thank you.

P.S. it would be really nice and excellent motivation for those running Dedicated Servers if they could see some kind of statistics, e.g. completed games, numbers of players, took part in these games, etc.

When you close the server, it host migrates to one of the players. Not sure what you mean by not dropping players, that's simply impossible because of the whole stopping the server thing. It would be nice if it migrated to another open server, though. But even if that were a thing, it would probably be on default if any empty servers are available, not a specific option that you would have to specify.

Link to comment
Share on other sites

5 hours ago, Phasedragon said:

When you close the server, it host migrates to one of the players. Not sure what you mean by not dropping players, that's simply impossible because of the whole stopping the server thing. It would be nice if it migrated to another open server, though. But even if that were a thing, it would probably be on default if any empty servers are available, not a specific option that you would have to specify.

I may misunderstand the concept of the dedicated server then. I thought the dedicated server IS host and all connected players are clients. Dedicated server hosts several conclave rooms simultaneously. When I shutdown the server, the clients are instantly disconnected.

According to your post dedicated server is either not host but a kind of collector, who finds players one of which becomes a host of the room or still a host, but which doesn't shutdown immediately when I try to close it, but tries to transfer its clients to another suitable host.

If you have time would you be so nice to explain the exact mechanics or perhaps could you link me the necessary explanation?

Thanks

Link to comment
Share on other sites

5 minutes ago, Phyrexian_man said:

I may misunderstand the concept of the dedicated server then. I thought the dedicated server IS host and all connected players are clients. Dedicated server hosts several conclave rooms simultaneously. When I shutdown the server, the clients are instantly disconnected.

According to your post dedicated server is either not host but a kind of collector, who finds a players, one of which becomes a host of the room or still a host, but which doesn't shutdown immediately when I try to close it, but tries to transfer its clients to another suitable host.

If you have time would you be so nice to explain the exact mechanics or perhaps could you link me the necessary explanation?

Thanks

I think you got mistaken on what host migration is. I'll try to explain from the beginning. Dedicated servers each host one instance of a game. You can set it up to host more on the same machine, but on default you're just hosting a single lobby. When players choose to play, they'll be put into the best server based on several factors, like population, ping, and quality. If the server gets shut off while people are still in it, then the hosting of the whole lobby will be transferred to one of the players in a host migration.

Link to comment
Share on other sites

2 hours ago, Phasedragon said:

I think you got mistaken on what host migration is. I'll try to explain from the beginning. Dedicated servers each host one instance of a game. You can set it up to host more on the same machine, but on default you're just hosting a single lobby. When players choose to play, they'll be put into the best server based on several factors, like population, ping, and quality. If the server gets shut off while people are still in it, then the hosting of the whole lobby will be transferred to one of the players in a host migration.

Thank you, sir! So exiting the server just moves its instance to one of the players in lobby. It can get laggy for others of for new host still the game will go on. I see.

Link to comment
Share on other sites

16 hours ago, armedpoop said:

So with addition of the "clan only" button, and with hosting a "clan only" server from a non steam client (that ive logged into), My clan and I are only able to join the server if we search for a variant mode. I tested this with annihilation, team annihilation and Lunaro. (lunaro just seemed to work without the variant checked)

If you send me logs from the failed join (host/client), I can try to see what's up.

Link to comment
Share on other sites

8 hours ago, [DE]maciejs said:

If you send me logs from the failed join (host/client), I can try to see what's up.

I never failed to join, I just didnt join the server. It was either play with variant checked when searching for the server in game, or dont join the server at all. 

Link to comment
Share on other sites

Hey there, just wanted to let you hosts know that I'm currently working on a Tool/Bot companion for Dedicated Servers.
It's node.js based, it parses the logfile of your server, save the events in a json output, then provide an express.js-powered webpage on which you can look at the stats that've been saved. Here it is : https://github.com/LOVELESS-ActV/wfdedicatedserver-companion

For those of you who don't wanna mess with node & git, you can still use it, the RTU-Pack zip file includes the companion alongside a portable node.js and all its dependencies.

Link to comment
Share on other sites

Hey, @[DE]maciejs I had a few questions regarding the setup of a dedicated server.

 

  1. When setting up a new header, how do I do this? Does it overwrite previously existing files?

    Example - Inside "/Lotus/Types/GameRules/LotusPvpGameRules" is as followed:
    Quote

    ...
    "Script": {
    "Function": "OnGameRulesMasterInit",
    "Script": "/Lotus/Scripts/LotusPvpGameRules.lua",
    "_enemyProjectorFx": "/Lotus/Fx/Projectors/PvpEnemyGlow",
    "_entitiesToDestroy": {},
    "_knockdownRecoveryAura": "/Lotus/Upgrades/Mods/PvPMods/KnockdownRecoveryLevelAura",
    "_pickUpType": "/EE/Types/Game/PickUp",
    "_specTeamIndex": "2" }
    ...

    Would we be able to change these settings by doing something similar to this inside DS.cfg:
     

    Quote

    [GameRules, /Lotus/Types/GameRules/PvpGameRules]
    Script={
    Function=OnGameRulesMasterInit,
    Script=/Lotus/Scripts/LotusPvpGameRules.lua,
    _enemyProjectorFx=/Lotus/Fx/Projectors/PvpEnemyGlow,
    _entitiesToDestroy={},
    _knockdownRecoveryAura=/Lotus/Upgrades/Mods/PvPMods/KnockdownRecoveryLevelAura,
    _pickUpType=/EE/Types/Game/PickUp,
    _specTeamIndex=2}

     

  2. Why do certain maps not allow them to be loaded because they're "procedural maps"

  3. When setting a map rotation in a gamemode that the gamemode doesn't usually use, the map rotation resets after the first game is finished. Is this intended, or does the server no longer use the set rotation after the first match? Alternatively, when you set the "levels" property why can you not specify ONE level for the server?

  4. When specifying gamerules when starting the server through a command line instance, the game settings "load" but aren't apply. Is there a reason for this?

  5. When specifying mission properties, it doesn't allow any PvE types, is this meant to be this way to stop PvE content from being loaded?

  6. When modifying game settings such as; time limit, score bonus, respawn timer, and other pvp settings, the settings don't stick with the server when the game is launched, despite staying inside the config, is this an intended interaction?

  7. When specifying missionTag, does it have to be the node name?

  8. Similarly, when specifying id, does it have to be a certain title, or can it be any unique name, and then the node == missionTag?

  9. What does gaemModeId relate to? It's the same between all PvP modes.

  10. Lastly, are there any formatting options for MOTDs? Like, html or some inline formatting?

Link to comment
Share on other sites

52 minutes ago, ApprovedYT said:

Hey, @[DE]maciejs I had a few questions regarding the setup of a dedicated server.

 

  1. When setting up a new header, how do I do this? Does it overwrite previously existing files?

    Example - Inside "/Lotus/Types/GameRules/LotusPvpGameRules" is as followed:

    Would we be able to change these settings by doing something similar to this inside DS.cfg:
     

     

  2. Why do certain maps not allow them to be loaded because they're "procedural maps"

  3. When setting a map rotation in a gamemode that the gamemode doesn't usually use, the map rotation resets after the first game is finished. Is this intended, or does the server no longer use the set rotation after the first match? Alternatively, when you set the "levels" property why can you not specify ONE level for the server?

  4. When specifying gamerules when starting the server through a command line instance, the game settings "load" but aren't apply. Is there a reason for this?

  5. When specifying mission properties, it doesn't allow any PvE types, is this meant to be this way to stop PvE content from being loaded?

  6. When modifying game settings such as; time limit, score bonus, respawn timer, and other pvp settings, the settings don't stick with the server when the game is launched, despite staying inside the config, is this an intended interaction?

  7. When specifying missionTag, does it have to be the node name?

  8. Similarly, when specifying id, does it have to be a certain title, or can it be any unique name, and then the node == missionTag?

  9. What does gaemModeId relate to? It's the same between all PvP modes.

  10. Lastly, are there any formatting options for MOTDs? Like, html or some inline formatting?

The answer to most of these questions is: for the time being dedicated servers are meant to for a small subset of our maps, PVP-only and using same settings as the in-game modes. We don't allow for game rules modifications and so on, only "server properties" can be tweaked. MOTD is pure text.

Link to comment
Share on other sites

Just now, [DE]maciejs said:

The answer to most of these questions is: for the time being dedicated servers are meant to for a small subset of our maps, PVP-only and using same settings as the in-game modes. We don't allow for game rules modifications and so on, only "server properties" can be tweaked. MOTD is pure text.

And is there an ETA on a time these properties will be changeable, is this still under consideration, or is it just unlikely that it would be possible?

Link to comment
Share on other sites

I've been trying to get some servers up and running, the main issue is I have no idea if the cfg settings I've messed with are working.

I've been trying to spot info lines that tell me things like mission type, any one have help to point me in the right direction?

Also keep up the good work with the dedi server.

Link to comment
Share on other sites

First of all, if you scroll up in the window to look for info lines, you will freeze the server. So if you did that, dont :P There's lots of info in the log (%localappdata%\Warframe\DedicatedServer.log). check for "HostSession - settings".

Mission type is a bit tricky. First you need the mission gameModeId. Look for gameModeId in that line, eg "gameModeId":406010, Then look in your DS.cfg (same folder as before) and look for "pvpNode10", which is the last 2 digits of the gameModeId in the missionIdToNode part. It will tell you the missionId you're using (eg 406010 = PvpNode10 = DM_Title = DeathMatch = Annihilation).

The rest of "HostSession - Settings" line provides a lot more info that is a bit easier to follow. The log provides a lot of info.

The info for servers isn't exactly user friendly atm, which will improve in the future i'm sure. And there's also multiple people working on their own server bots/managers to get this info and more in an easier way. Hopefully we will get some documentation soon :)

Link to comment
Share on other sites

20 hours ago, spiedie said:

First of all, if you scroll up in the window to look for info lines, you will freeze the server. So if you did that, dont :P There's lots of info in the log (%localappdata%\Warframe\DedicatedServer.log). check for "HostSession - settings".

Mission type is a bit tricky. First you need the mission gameModeId. Look for gameModeId in that line, eg "gameModeId":406010, Then look in your DS.cfg (same folder as before) and look for "pvpNode10", which is the last 2 digits of the gameModeId in the missionIdToNode part. It will tell you the missionId you're using (eg 406010 = PvpNode10 = DM_Title = DeathMatch = Annihilation).

The rest of "HostSession - Settings" line provides a lot more info that is a bit easier to follow. The log provides a lot of info.

The info for servers isn't exactly user friendly atm, which will improve in the future i'm sure. And there's also multiple people working on their own server bots/managers to get this info and more in an easier way. Hopefully we will get some documentation soon :)

That probably explains a lot.

For my DS.cfg I'm guessing at:

missionNode=PvpNode9
missionId=TDM_Title
gameModeId=406009

 

HostSession looks like it's going to be real useful. And the lack of documentation is my biggest issue, but that understandable given the beta nature of the dedi servers.

Now I've just got to remember, no scrolling.

 

Edit- Next question, anyone know if there's an easy way to tell if the game is in the map selection screen... I got snowball running but I want to test 5 not one. It full 8/8 and I'd hate to drop the server in the middle of the game.

 

Edit2- I was trying to run multiple servers, couldn't run more than 6. No error, it just only spawns 6 windows. I was using:

\Launcher.exe -headless -dedicated:9

Link to comment
Share on other sites

On 1/1/2017 at 8:12 PM, BritishBob said:

That probably explains a lot.

For my DS.cfg I'm guessing at:

missionNode=PvpNode9
missionId=TDM_Title
gameModeId=406009

 

HostSession looks like it's going to be real useful. And the lack of documentation is my biggest issue, but that understandable given the beta nature of the dedi servers.

Now I've just got to remember, no scrolling.

 

Edit- Next question, anyone know if there's an easy way to tell if the game is in the map selection screen... I got snowball running but I want to test 5 not one. It full 8/8 and I'd hate to drop the server in the middle of the game.

 

Edit2- I was trying to run multiple servers, couldn't run more than 6. No error, it just only spawns 6 windows. I was using:

\Launcher.exe -headless -dedicated:9

When selecting a mission type, only missionId=TDM_Title matters. If it's set, everything else will be calculated automatically. We do limit DS to 6 processes at single machine (some of that is precaution, some is internal engine limitations).

Link to comment
Share on other sites

8 hours ago, [DE]maciejs said:

When selecting a mission type, only missionId=TDM_Title matters. If it's set, everything else will be calculated automatically. We do limit DS to 6 processes at single machine (some of that is precaution, some is internal engine limitations).

Understandable. On another note, I did notice the load was rather well spread out across multiple cores. The image is 5, but with 6 servers over 24 cores with 8/8 players was about 45%-50% cpu usage with just those last two cores not being used, which is nice. I might just continue to manually update the DS.cfg so there's no conflicts.

Once it's up and running seems fine for the moment. Keep up the good work.

fEgDPBf.jpg

Link to comment
Share on other sites

On 1/2/2017 at 2:12 AM, BritishBob said:

anyone know if there's an easy way to tell if the game is in the map selection screen

You will be in the lobby for next game when it logs "**** Starting session on HOST". You will also see players drop to 0 for a bit while players reconnect to lobby.

@[DE]maciejs Is there a difference between -headless -dedicated:6 or 6x seperate -applet:... etc? Like if one of the servers crashes, can we safely start one again or will it conflict with the others already running?

I also have a feature request if it isn't to hard: can pid be logged for the instance? Would help a lot in identifying which log belongs to which server instance (or add instance# to the title like fps, works to i guess).

Link to comment
Share on other sites

11 minutes ago, spiedie said:

You will be in the lobby for next game when it logs "**** Starting session on HOST". You will also see players drop to 0 for a bit while players reconnect to lobby.

@[DE]maciejs Is there a difference between -headless -dedicated:6 or 6x seperate -applet:... etc? Like if one of the servers crashes, can we safely start one again or will it conflict with the others already running?

I also have a feature request if it isn't to hard: can pid be logged for the instance? Would help a lot in identifying which log belongs to which server instance (or add instance# to the title like fps, works to i guess).

-dedicated:6 is a recommended way as it takes care about stuff like custom log files/port numbers and so on, but you can run it by hand too, there's not much diff (except if you're not careful 2 instances might try to write to the same log/fight for the same port). The only caveat is - you can actually bypass the 6 instance limit that way and in such case process might crash. I'll add the instance # to the title bar.

I've just started cleaning up the server properties a little bit (mostly removing old/deprecated stuff) and hopefully will write a short documentation tonight/tomorrow.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...