Author Topic: NCG + 1 HUGE MAP + 100 PLAYERS AT THE SAME TIME = IDEA FOR A NEW MOD  (Read 6999 times)

Axarator

  • *
  • Posts: 372
It's been a loong time. And I think it could be possible on a modded server.

Not going happen, Bugbear already said 24 players is hard coded into Wreckfest code into to many place to try and increase it by modding the game. Bugbear said it be a waste our time trying!!

Also you still would need a HUGE, fast pipe to handle that many cars a wrecking!!
Yeah, but if this is a mod, then you could just modify the code telling Wreckfest to not allow 25 or more cars on the battle field.
OS: 64x Windows 7 Home Premium
Processor: Intel Core i4130 @ 3.40GHz 3.40GHz
Ram: 8Gb
HHD (Where Steam is installed): 2TB HHD
SSD(Where browser and poop is): 111GB
Graphics: ASUS GeForce GTX 960 OC Strix edition

Mazay

  • Posts: 445
Crazy idea. I like crazy ideas.
If only 24 players are at proximity to each other at time it should work up to unlimited players.
Downside of P2P is that most of players need to know how to forward ports.

After all it sounds like project which will likely need one year of coding.

Purple44

  • *
  • Posts: 8405
Crazy idea. I like crazy ideas.
If only 24 players are at proximity to each other at time it should work up to unlimited players.
Downside of P2P is that most of players need to know how to forward ports.

After all it sounds like project which will likely need one year of coding.

Wreckfest not P2P. When you are host, you are the server and all packets go through your computer and internet connection.
« Last Edit: July 19, 2015, 02:43:32 AM by Purple44 »
Flatout Joint, where the mods were.

i5 2500 i7 8700, 16GB, Nvidia 660 960 1060 6GB, Win 10 64bit, DFGT Wheel

Axarator

  • *
  • Posts: 372
The only way this could be possible is either super lag or each area is a separate server because I doubt everywhere will be packed with players. Let's say your in a city, every suburb is a server running on the same vpn, when you enter a suburb it has a bit of loading time like it freezes for 10 seconds, but maybe if the suburb has more than 24 cars it won't allow you in. It would need almost a full conversion mod. Sorry if there is any mistakes with what I am saying. I am on a phone.
OS: 64x Windows 7 Home Premium
Processor: Intel Core i4130 @ 3.40GHz 3.40GHz
Ram: 8Gb
HHD (Where Steam is installed): 2TB HHD
SSD(Where browser and poop is): 111GB
Graphics: ASUS GeForce GTX 960 OC Strix edition

WorldofBay

  • Posts: 751
I don't think you realize just how insane the technical requirements would be.

It's not so much that it's impossible to not have 100 players in a server (if it's a text-based game, 100 players on the same server would be a cinch to achieve without any slowdowns), it's that each client (player) would need to send and receive information about not only the client's car state, speed, rotational velocities, but also receive the car state, speed and rotational velocities of the cars of other clients. All 99 of them.

Realistically we can have around 24 cars in the same viewspace without massive slowdowns. Any more than that would be pushing it.

As neat an idea as it may sound, NCG's ROMU engine is just not designed for such a large-scale multiplayer environment.

nope nope nope. opimization, heuristics, prediction and preparation are the keywords.

optimization: only cars in sight get tracked. no unnecessary calculations.
heuristics: visual damage is not accurate but satisfying on every client. (which is the case atm, too)
prediction: when a car is about to get in sight server (the only one who really knows the actual damage) sends the damage meter of this car to you. "about to get in sight" can still be a long distance as the server must ensure that your computer has the time to use his preparation aside the game before the car gets visible.
preparation: every client has predefined deformation (algorithms) stored that can get calculated/loaded fast and uses them for those cars.

what would be the result? a 100-player server running ncg! far away damaged cars might look totally different from their real visual damage but you won't even notice if the other guy doesn't talk to you.

there's still a problem, though. this mode needs a high storage rate as you can't save all the cars in your RAM and need to save far away cars in memory. many cars in one place then slow the game down due to the low storage rate of your HDD compared to the high one of RAM.

It's been a loong time. And I think it could be possible on a modded server.

Not going happen, Bugbear already said 24 players is hard coded into Wreckfest code into to many place to try and increase it by modding the game. Bugbear said it be a waste our time trying!!

Also you still would need a HUGE, fast pipe to handle that many cars a wrecking!!

24 players hardcoded? hmmm. maybe as a global variable? then the code would be easy to modify. if not the code is bad to maintain, debug, reuse, understand and modify in some parts. sad one.
GPU: Gigabyte GeForce 660ti
CPU: Intel i5-3570k
Keyboard racer inside!

Quote from: Roy
i laugh everytime i see somebody pulling on WorldofBay to overtake clean.
biggest mistake ever.

Quote from: sam223
Poor planning is a big problem for a lot of EA titles
like fifa, simcity, battlefield, ...

Purple44

  • *
  • Posts: 8405
Here post where Bugbear Dev talk about hardcode:

Wreckfest Trainer Version 1.1b

it might be that you can't actually get more than the maximum 24 AI in the race, because there might only be starting positions set for 25 cars in total.
i might be mistaken, though.

I'll quote myself from an earlier topic on the matter :)

Starting points are just one thing. There are countless places in the .exe where memory is reserved for exactly 24 cars, or some component is updated for a maximum of 24 cars etc. You cannot find a magic variable with which you can increase the car count because the compiler hardcodes the 24 limit all over the place when creating and optimizing the binary. Just a heads up so you don't get too excited. :)
Flatout Joint, where the mods were.

i5 2500 i7 8700, 16GB, Nvidia 660 960 1060 6GB, Win 10 64bit, DFGT Wheel

WorldofBay

  • Posts: 751
yeah hardcoding values is a popular optimization, it really makes code faster.

but of course in a code the number "24" is harder to understand than some value "MAX_PLAYERS". that makes it harder to understand and maintain. modifying gets hard when changing that value as you have to change it everywhere. so it lowers the modability of wreckfest. i don't like that. i think in 10 years from now there will be still people playing it and then we all have computers that can run wreckfest with 50 cars. but we can't mod that.
GPU: Gigabyte GeForce 660ti
CPU: Intel i5-3570k
Keyboard racer inside!

Quote from: Roy
i laugh everytime i see somebody pulling on WorldofBay to overtake clean.
biggest mistake ever.

Quote from: sam223
Poor planning is a big problem for a lot of EA titles
like fifa, simcity, battlefield, ...

Purple44

  • *
  • Posts: 8405
yeah hardcoding values is a popular optimization, it really makes code faster.

but of course in a code the number "24" is harder to understand than some value "MAX_PLAYERS". that makes it harder to understand and maintain. modifying gets hard when changing that value as you have to change it everywhere. so it lowers the modability of wreckfest. i don't like that. i think in 10 years from now there will be still people playing it and then we all have computers that can run wreckfest with 50 cars. but we can't mod that.

Boy we getting greedy.  :P

I would of been plenty happy with 12 AI, 12 players online. Then we got 24 players online!!  :o

And you guys want more.  :P

We tried to get 12 player online with Flatout 1 but could not get it stable.

In 10 years we went from 8 players online with FO1 to 24 players with Wreckfest, I think that pretty good progress. Maybe Bugbear give us 50 players in the next 10 years with Wreckfest 3.

And we definitely will need a better connection to the internet to handle 50 players online.
Flatout Joint, where the mods were.

i5 2500 i7 8700, 16GB, Nvidia 660 960 1060 6GB, Win 10 64bit, DFGT Wheel

WorldofBay

  • Posts: 751
Boy we getting greedy.  :P

ok let's talk about some other things and keep this topic in mind for the next century. :P
GPU: Gigabyte GeForce 660ti
CPU: Intel i5-3570k
Keyboard racer inside!

Quote from: Roy
i laugh everytime i see somebody pulling on WorldofBay to overtake clean.
biggest mistake ever.

Quote from: sam223
Poor planning is a big problem for a lot of EA titles
like fifa, simcity, battlefield, ...

Usmovers_02

  • *
  • *
  • Posts: 2102
Hey world, I totally think this would make for a brilliant game. I'd definitely play it. I'm sure something like it is possible under very different circumstances. Likely a developer would have to build the game from the ground up with such an idea in mind making compromises to things like damage. I'm no coder but what I've read suggests it's realistically impossible to do for NCG. Would love to play such a game though.

Majatek

  • *
  • *
  • *
  • *
  • Posts: 1072
I don't think you realize just how insane the technical requirements would be.

It's not so much that it's impossible to not have 100 players in a server (if it's a text-based game, 100 players on the same server would be a cinch to achieve without any slowdowns), it's that each client (player) would need to send and receive information about not only the client's car state, speed, rotational velocities, but also receive the car state, speed and rotational velocities of the cars of other clients. All 99 of them.

Realistically we can have around 24 cars in the same viewspace without massive slowdowns. Any more than that would be pushing it.

As neat an idea as it may sound, NCG's ROMU engine is just not designed for such a large-scale multiplayer environment.

nope nope nope. opimization, heuristics, prediction and preparation are the keywords.

optimization: only cars in sight get tracked. no unnecessary calculations.
heuristics: visual damage is not accurate but satisfying on every client. (which is the case atm, too)
prediction: when a car is about to get in sight server (the only one who really knows the actual damage) sends the damage meter of this car to you. "about to get in sight" can still be a long distance as the server must ensure that your computer has the time to use his preparation aside the game before the car gets visible.
preparation: every client has predefined deformation (algorithms) stored that can get calculated/loaded fast and uses them for those cars.

what would be the result? a 100-player server running ncg! far away damaged cars might look totally different from their real visual damage but you won't even notice if the other guy doesn't talk to you.

there's still a problem, though. this mode needs a high storage rate as you can't save all the cars in your RAM and need to save far away cars in memory. many cars in one place then slow the game down due to the low storage rate of your HDD compared to the high one of RAM.

Optimisation, heuristics and prediction can only go so far - but that's typically only ever useful for simple game environments (first person shooters, for example, often use prediction models to account for where a player might be in order to reduce the issues with network latency), and not something that is based upon an advanced physics model.

The way that the engine works is that all vehicles must be constantly stored in memory, and aren't allowed to drop in/out depending on distance otherwise damage states will de-synchronise - this of course is a big issue and something that Bugbear would definitely want to avoid, as the softbody physics also dictate a car's handling. Calculating the damage states of 24 cars as it is is near taxing for most computers as it is - I can't fathom how bad the lag would get with 100. :-\
YouTube - Twitter



Having problems with purchasing NCG? Contact support@bugbear.fi

I moderate forums & break games

WorldofBay

  • Posts: 751
The way that the engine works is that all vehicles must be constantly stored in memory, and aren't allowed to drop in/out depending on distance otherwise damage states will de-synchronise - this of course is a big issue and something that Bugbear would definitely want to avoid, as the softbody physics also dictate a car's handling. Calculating the damage states of 24 cars as it is is near taxing for most computers as it is - I can't fathom how bad the lag would get with 100. :-\

you can take the data stored in your RAM and save it in a file on your HDD. that is always possible. then you can reload it. that's the problem i mentioned before as this is slow. slow but possible.
GPU: Gigabyte GeForce 660ti
CPU: Intel i5-3570k
Keyboard racer inside!

Quote from: Roy
i laugh everytime i see somebody pulling on WorldofBay to overtake clean.
biggest mistake ever.

Quote from: sam223
Poor planning is a big problem for a lot of EA titles
like fifa, simcity, battlefield, ...

Majatek

  • *
  • *
  • *
  • *
  • Posts: 1072
Extremely slow. But how would that work with being able to allow players to send data of their damage states over a network? A single model can weigh in at a couple of megabytes. Multiply that by a 100 and you suddenly have an unwieldy file that you simply cannot transfer over networks in a realistic realtime environment.
YouTube - Twitter



Having problems with purchasing NCG? Contact support@bugbear.fi

I moderate forums & break games

WorldofBay

  • Posts: 751
Extremely slow. But how would that work with being able to allow players to send data of their damage states over a network? A single model can weigh in at a couple of megabytes. Multiply that by a 100 and you suddenly have an unwieldy file that you simply cannot transfer over networks in a realistic realtime environment.

that doesn't happen right now, why should it happen in an optimized mode?
other cars would just send their damage meter which can be just 7 float/integer values which is not a big issue. then the damage gets calculated fast by some pre-defined damage stored in your game folder. therefore only visual damage happening in sight is accurate.
of course the damage state of a car gets saved to a tempfile when the car leaves sight so the it doesn't get magically repaired by recalculation.

it's just the thing that when the damage feels ok, it is ok. a 100 player mode doesn't have to be at same quality as a 24 player mode because then the 24 player mode would only use a quarter of the ressources, being far below its possibilities. once you have this thing in mind it is not so hard to accept trade-offs for mmo modes.
GPU: Gigabyte GeForce 660ti
CPU: Intel i5-3570k
Keyboard racer inside!

Quote from: Roy
i laugh everytime i see somebody pulling on WorldofBay to overtake clean.
biggest mistake ever.

Quote from: sam223
Poor planning is a big problem for a lot of EA titles
like fifa, simcity, battlefield, ...

Majatek

  • *
  • *
  • *
  • *
  • Posts: 1072
It's not happening right now because the game doesn't store the damage states outside of RAM while you're in the middle of an event, nor does it send damage states to other players if the client computers de-synchronise, and there are no pre-defined damage states because the game runs a softbody physics engine that dynamically damages vehicles based on their impact.

I think there's a bit of miscommunication right now. ???
YouTube - Twitter



Having problems with purchasing NCG? Contact support@bugbear.fi

I moderate forums & break games