Curious about multiplayer in TUG? Ask your questions!

2»

Comments

  • GhostGhost REGISTERED Posts: 74 Developer
    https://dl.dropboxusercontent.com/u/8942221/NK/spam_mod_gen_rel_opt.jpg

    More technical stuffs! Here is an example of some enhancements we've found! This example shows the calculations for spam-modifying terrain and how much the "raw_noise_2d" function was taking up to re-calculate heightmaps of the cell you were digging in to make sure everything contoured correctly.

    The timeline line-graph at the top shows between interval 18-30 seconds of this spamming of modifying terrain occured and how much CPU it took to process it. You can also sigh outlined at the bottom in red, the function was taking nearly 50% of our exclusive samples (meaning just the execution of the direct code within that function). We managed to find a really nice optimization (right image) that performed the same test and you can see no huge spikes on the timeline, and the exclusive sample of that function went down nearly 6x the amount!

    We've made optimizations like this all over the place.. so even in single-player mode, you should get a LOT better performance as a result as well!
  • Red AgliatorRed Agliator REGISTERED Posts: 307 Seed
    Ghost wrote:
    https://dl.dropboxusercontent.com/u/8942221/NK/spam_mod_gen_rel_opt.jpg
    Here is an example of some enhancements we've found!
    Those are absolutely beautiful charts: thank you for sharing! I especially like the bar chart at the bottom, with the way raw_noise_2d plunges dramatically down the list. (Then again, the line graphs of non-jaggy CPU use is pretty awesome, too.)
  • wreccasawlwreccasawl REGISTERED Posts: 2 Podling
    Hello TUG community. I’ve been supporting the game since Kickstarter, but this is my first post. I understand that some of these questions may not be answerable until further along in the development cycle.

    Question #1
    It is my impression that, when the game is fully completed, there will be multiplayer servers available that will cater to entire communities (meaning thousands of players). Fully functioning social environs were touted on the Kickstarter and I wanted to know that this is still the goal. Is this path TUG is on?

    Question #2
    Given question #1 is true, how will entering the world for the first time be handled? Will we be able to control, to some degree, where we spawn that first time? Some players that wish to come together with others may want to spawn in the same general area.

    Question #3
    Given question #1 is true, how will conflict between players work regarding player assets such as a player made structure? Will there be a mechanic in place that prevents easy destruction of other player’s assets?

    I am sure I will have more questions later on!

    Thank you.
  • RawrRawr REGISTERED, Tester Posts: 511 Seed
    wreccasawl wrote:
    Hello TUG community. I’ve been supporting the game since Kickstarter, but this is my first post. I understand that some of these questions may not be answerable until further along in the development cycle.

    Question #1
    It is my impression that, when the game is fully completed, there will be multiplayer servers available that will cater to entire communities (meaning thousands of players). Fully functioning social environs were touted on the Kickstarter and I wanted to know that this is still the goal. Is this path TUG is on?

    Question #2
    Given question #1 is true, how will entering the world for the first time be handled? Will we be able to control, to some degree, where we spawn that first time? Some players that wish to come together with others may want to spawn in the same general area.

    Question #3
    Given question #1 is true, how will conflict between players work regarding player assets such as a player made structure? Will there be a mechanic in place that prevents easy destruction of other player’s assets?

    I am sure I will have more questions later on!

    Thank you.

    Not speaking on behalf of NK here but an answer to your question is as follows:
    1 - When attempting to optimize multiplayer capability, some of the factors that need to be considered are: What type system should you use for communicating information to and from servers; How much work (calculations) can I get the server/client to do on stimulating physics and voxel manipluations considering the current technological limitations of the servers/clients within the majority of the "market"; what limitations are there on the amount of information that can be reasonably sent/received etc... The long and short of it is NK will be working through all of those questions (and more) and at the "end" of a lot of work will be able give us a number range. Lets hope 1-1000+ but the reality of situation is that some great coding magic will be occurring in order to get us there (and not sacrificing anything along the way).

    2 - As for your next two questions, the best answer would be that if your not comfortable with the defaults mod it. With regards to spawning I believe there's already an object that controls spawning that map builders can insert.

    3 - With regards to conflict between players, if I've picked up on anything about Ino it's the following: He's not wanting to create a world where you're "safe". Uncomfortable with that? Mod it.

    A message for NK: it'll be about time to get out some videos regarding modding different parts of TUG (after you've fleshed out multiplayer of course)
    Programmer, designer, artist.
  • StilleVandeStilleVande REGISTERED Posts: 81 Seed
    Have ya'll gotten far enough to find the average bandwidth used for each player in MP?
    Seriously, it's Faroese for Calm Water. - StilleVande
    regular-banner-3.png
    regular-banner-1.png
    regular-banner-3.png
    regular-banner-2.png
  • GhostGhost REGISTERED Posts: 74 Developer
    Have ya'll gotten far enough to find the average bandwidth used for each player in MP?

    Not as much as we should yet... we are currently working on final bug-fixes and everything else for this last release so we can get that out quickly. The next phase of networking will include us going over the networking with a fine tooth comb and doing some optimizations (we already know of 2-3 big ones that we really need to get in as well)

    But yes especially when we get to dedicated server it will require us to profile both the computation of the program as well as the bandwidth and where it's going so we can get the most out of it.
  • StilleVandeStilleVande REGISTERED Posts: 81 Seed
    Will there be a way to restrict player FOV to help on potential server load?

    Say for instance you set a setting on the dedicated server, say "Max FOV" to 6. It would then default the FOV to the max setting on login.

    Something of the sorts like that. :p

    Just curious.
    Seriously, it's Faroese for Calm Water. - StilleVande
    regular-banner-3.png
    regular-banner-1.png
    regular-banner-3.png
    regular-banner-2.png
  • Auti0Auti0 REGISTERED Posts: 277
    Will there be a way to restrict player FOV to help on potential server load?

    Say for instance you set a setting on the dedicated server, say "Max FOV" to 6. It would then default the FOV to the max setting on login.

    Something of the sorts like that. :p

    Just curious.

    I believe you are actually talking about View Distance, which yes there is already a piece in place where the server can specify the Max View Distance in which the clients can request cells to generate from the server.

    Performance implications of actual FOV (Field Of View) will only affect the clients themselves.
  • StilleVandeStilleVande REGISTERED Posts: 81 Seed
    Good to hear it's already in place. :)

    Man, ya'll are on the ball. :p
    Seriously, it's Faroese for Calm Water. - StilleVande
    regular-banner-3.png
    regular-banner-1.png
    regular-banner-3.png
    regular-banner-2.png
  • AvaeraAvaera REGISTERED Posts: 29
    wreccasawl wrote:
    Question #1
    It is my impression that, when the game is fully completed, there will be multiplayer servers available that will cater to entire communities (meaning thousands of players). Fully functioning social environs were touted on the Kickstarter and I wanted to know that this is still the goal. Is this path TUG is on?
    This. 1000x this. It's the reason I supported the kickstarter in the first place.

    Would also love to hear the answer to this question!
  • GhostGhost REGISTERED Posts: 74 Developer
    Avaera wrote:
    wreccasawl wrote:
    Question #1
    It is my impression that, when the game is fully completed, there will be multiplayer servers available that will cater to entire communities (meaning thousands of players). Fully functioning social environs were touted on the Kickstarter and I wanted to know that this is still the goal. Is this path TUG is on?
    This. 1000x this. It's the reason I supported the kickstarter in the first place.

    Would also love to hear the answer to this question!

    We definitely want to support lots of players, but running the dynamic terrain generation is an insanely expensive process. To support even a hundred people in our world with the things we are looking to do in the future would require a cluster-computing environment, which has been discussed but no definitive decisions have been made on how or when we plan on doing that.

    We are hoping the dedicated server, hosted on decent hardware of course, will give you guys at least 10 people in the world playing with you as a start, running TUG as a server requires a pretty beefy system to handle it.
  • xor1337xor1337 REGISTERED Posts: 2 Podling
    Hello Ghost.
    First I would like to say how impressed I am with this game, thanks and keep up the good work.

    I have been hosting a server with 5 users now for a few days. We are having lots of fun building and crafting. The problem is that I have to keep the game running all the time, for days and days.

    I really need a dedicated server program so that leaving the server up isn't eating up so much resources.

    I realize that a dedicated server program might be a long way off, so I'm asking for a consolation. Can I run the server where at least my character isn't in the world all the time. My character constantly dies while I'm away and other people are on the server. Or at the very least, is there some way to make the server's character temporarily immune to hunger/death? Some sort of console command of some sort?

    P.S. TUG.exe has hit over 4GB of memory usage while serving. I'm impressed. I wouldn't mind if it used more (I've got 16GB) if it actually ran a little faster. Also, how much ram is it supposed to be using? Is 4GB normal?

    xor1337
  • GhostGhost REGISTERED Posts: 74 Developer
    I am going to point this out to our CTO, Corey Clark who can give you a really in-depth answer on our current dedicated server work.

    We have been making a lot of improvements as far as processing goes in a networked game that should be released next update that should help with the performance of the server.

    You could in theory create a mod on the server that would prevent the server's player from dieing - that should be easily modifiable in the LUA scripts.

    4gb seems like quite a bit - if you have been leaving it running for day's then it's quite possible there is some memory not being cleaned up somewhere. Our next update is going to have a HUGE number of things fixed and optimized, so this might be better!
  • xor1337xor1337 REGISTERED Posts: 2 Podling
    Thanks Again Ghost,
    In regards to making a LUA mod that allows the server's character to not get hunger or damage while away.

    I've looked through the "http://eternusapi.nerdkingdom.com" API docs. I found that you don't expose any player attributes through the API. No Player health or energy or the negative EnergyRegenPerSecond that constitutes getting hungry over time.

    I think I found what I need in the Game\Core\Scripts\Characters\BasePlayer.lua
    Things like BasePlayer:_UpdateEnergy( dt )
    I can put a if statement in there to check if its the server's character and then also if a global var "awaymode" is true and then not decrease energy.
    I'm not sure how to do a global awaymode bool and then where I should add the mod for checking for a keypress (lets say F9) to toggle awaymode to true of flase.

    Any help would be appreciated. I've read the modding guide about adding an object, but it doesn't really apply to this type of mod.
  • docdoc REGISTERED Posts: 6 Developer
    edited May 2015
    @xor1337
    As @Ghost pointed out, we have made a lot of improvements and having a dedicated server is one of them. We are actually getting close to having the first iteration completed, but before we do a public release we would like to perform testing with interested members of our community. Our goal is to find active community members that are interested in dedicated servers and work close with them to verify its operation on the correct hardware to help identify bugs and usability issues. We haven't setup a system for signup or collaboration on this topic yet, so anyone interested in taking part of this select closed testing group should keep an eye out on the Forums and Twitter so they can apply.
    Doc

    Twitter: CoreyClarkPhD
  • SeradestSeradest REGISTERED Posts: 4 Podling
    First sorry for my bad english skills.

    and an question.
    is it possible that the MP Network code get an P2P expansion ?

    like 16 people are on the same server...
    so they all are very wide spread so an P2P code make from the best connection from the players an mini-Server so that the ancients help people with slower connection get their data packets

    like an mini server cluster system who each player with an very good connection use 2-10% of his connection to transport data to other players in his area so that the main server is
    discharged.
    here is an article with an p2p vs client servers
    http://www.gamespot.com/forums/system-wars-314159282/networks-peer-to-peer-servers-vs-client-servers-26276019/

    but i think an hybrid is the way to go
  • StilleVandeStilleVande REGISTERED Posts: 81 Seed
    I would love to help test the binary. :)

    Ill keep an eye out so I can be considered a candidate. :)

    Seriously, it's Faroese for Calm Water. - StilleVande
    regular-banner-3.png
    regular-banner-1.png
    regular-banner-3.png
    regular-banner-2.png
  • MeadMead REGISTERED Posts: 1 Podling
    Hi ,
    I have had the game for several months and just recently bought it for a friend too. Kinda lost on setting up a Multiplayer game for us. I have googled looking for a guide and I`am not finding any information. Could you please explain or link a guide on multiplayer setup surv mode please. We just want to build some stuff and try out the new features together.

    Thanks ,
    Mead
  • GhostGhost REGISTERED Posts: 74 Developer
    edited June 2015
    Mead said:

    Hi ,
    I have had the game for several months and just recently bought it for a friend too. Kinda lost on setting up a Multiplayer game for us. I have googled looking for a guide and I`am not finding any information. Could you please explain or link a guide on multiplayer setup surv mode please. We just want to build some stuff and try out the new features together.

    Thanks ,
    Mead

    http://forum.nerdkingdom.com/discussion/1881/how-to-run-a-tug-server-updated-for-indev-jan-16-2015

2»
Sign In or Register to comment.