At the moment the game runs slow after 30/40 min. Too much units ? too much things to handle on the server side ? too much data to transfer to the client ? i don't know, but the game is unplayable when there is thousands of units. Everybody tells that optimization is comming to solve the problem. But the lag happens on game with 6 players, and Uber officially says that the game will run with 40 players. The servers don't lag a little bit, their are actually half-dead, running at 1 FPS. So if the opitimzation has to solve this issue, the optimization must not increase the performance by 50% or 100% or even 1000% but something like 10 000% ! It is realistic ? I am not a computer engineer, so i have no knowledge about that, just my common sense. Can we really improve the game to be able to run 100 times faster ? Or Uber is bullshiting us, make us dream about something impossible, and will say in 6 months "we were to optimistic sorry , finally this game will be good for 1v1 or 2v2 only". This is not a troll/complaint/insulting message. I'am very concerned about that because for me it looks impossible.
There's still one big part of optimization that could really, REALLY improve things. I think it has something to do with how units are rendered (currently they're rendered individually, after the update they'll be rendered in groups or something like that) There's also the final optimization passes that will be done before initial release, so things might get better. Now, will it get "40 player" better? Ehhhhhhhhh maybe but I do think 20-25 player games would be a realistic possibility. We'll see though.
The same thing is happening with this game that happened to TA. It will be playable is 4 to 5 years with better processors and faster internet
Do we know the quantity of ressources allocated to servers? If it's one or two core with 4-8GB, then it's quite understandable. The 40 players games always had assume a monster server with 64 cores and at least 128GB of memory. Mavor said once that he hopes to reach 15'000 units per core.
They have some v servers, last time we were told anything each of them run 8 server instances at the same time. So yeah better servers and more optimization = the game will be a lot bigger
Don't mix up server and client optimization. They don't play in the same playground. While server improvement can be made, you won't ever get tremendous performances gain by optimizing them (unless physics of the game are computed on the GPU, and then, optimization for the client side below may apply). Optimization on client side often rely on two/threes things: - Do not allocate memory on real time - Move whatever you can on the GPU - Parallelize GPU treatements. The 2 last points are where you can gain most of the performance (the first point causes only temporary performance when the computer has to allocate memory). It's clearly on how many times you call the GPU while rendering the game. For a simple example, suppose you have an army of 10 scampers. To render them, you have the choice: - loop 10 times in the CPU code, tell the GPU to render each scamper (10 calls) - gather all scampers, make an array of their positions, tell the GPU to render a scamper at each position (1 call) The second way is almost ten times faster. It's called unit/mesh instancing (and I'm pretty sure Uber did already implement this, but it was for the sake of the example). Modern GPUs are also able to do vastly parallels computations (physics models are now processed by GPUs). If you tell the GPU to compute the trajectories of 500 pelters bullets, it will be almost done as fast as one computation on the CPU (not so true now with multicore CPU, but you get the grasp), because GPUs nowadays are like hundreds of tiny CPU that works best when you ask them to do the same thing, with different parameters.
Private servers may make this possible. Think of a single high end server owned by a player running one instance of the game with a high speed connection. I imagine this server would be able to handle a 40 player game, limitation would be put on the client side. Client side optimization is needed, like taking advantage of multi-core CPUs and giving the GPU more load.
People really underestimate how much optimization is done right before game release. Uber constantly talks about how much optimization is yet to be done. And considering that they have made several RTS games while we have made none, I'd say they know what they're talking about and we should just let them finish the game.
I would appreciate that someone from uber answer the question... Because here it is just speculation.
Client side is optimized, cause my CPU never run @ 100% load (avg. 40%), my GPU is cold like in Desktopmode, and the Ram isnt maxed out. I have DSL 1600, and im not using 100% of my bandwidht. Servers this is the problem... I think many ppl doesn't enjoy the game cause of laggs, if Uber don't fix this, the game will be underplayed @ release.
Instancing. Reduces every unit the large percent of the weight they cost to render. Because they aren't all individual, bulks of them are instanced from a single one. Most game slowdown is caused by unit bulk. Unit bulk being instanced would speed it up, yes. Generally, the game does run well enough for a beta with as many units as it usually contains.