ffffffff 114 Report post Posted January 17 On 12/21/2018 at 6:01 PM, aeonios said: networking, at least on multiplayer. NetServer is threaded? i guess and NetClient awaiting patch for thread from @elexis? maybe now merging ideas and work here? EAE tnx Share this post Link to post Share on other sites
aeonios 146 Report post Posted January 17 7 minutes ago, ffffffff said: NetServer is threaded? i guess and NetClient awaiting patch for thread from @elexis? maybe now merging ideas and work here? EAE tnx Not the last time I checked. It was an idea being thrown around, something that probably ought to be done but which hasn't yet. I don't know if anyone is even working on it. Share this post Link to post Share on other sites
ffffffff 114 Report post Posted January 17 Pthread NetServer.cpp CNetServerWorker::~CNetServerWorker() Share this post Link to post Share on other sites
elexis 2,024 Report post Posted January 17 Networking code has to be threaded, because any slow code that suddenly consumes 10 seconds or more will trigger a timeout disconnect. The NetServer NetClient code are equally affected, but only the NetServer had been threaded to fix that (ages ago). In a23(a) we had such a 10 second lag on gamestart which literally broke every single 4v4 we started and left at least one player unable to start the game, which was one of the reasons we needed a re-release. We had addressed this 10 second lag and added timeout tolerance to 60 seconds, but the problem must be fixed with threading. (Other than the disconnect issue, there is also no reason other than subideal code why slow code should trigger network lag.) The according ticket is at #3700 and the according patch resting somewhere on a dusty git branch. But don't expect that this NetClient threading will make the game more performant (FPS-wise). 2 Share this post Link to post Share on other sites
odalman 4 Report post Posted January 30 (edited) On 12/18/2018 at 5:05 PM, wraitii said: I also have (this one indeed very WIP) patch for unit-pushing, which removes most of the need for the short-range pathfinder (it's still useful to keep around for stuff such as finding your way around a resource). I find this interesting and imagine that it is what I remember from Settlers 3 (there are videos online for the young people). It worked with a lot of units on a Pentium II 400 MHz. Units would automatically step aside if another unit was coming too close (quite realistic). Hope to see this in 0 A.D. Edited January 30 by odalman 1 Share this post Link to post Share on other sites
Sundiata 1,800 Report post Posted January 30 11 minutes ago, odalman said: I find this interesting and imagine that it is what I remember from Settlers 3 (there are videos online for the young people). It worked with a lot of units on a Pentium II 400 MHz. Units would automatically step aside if another unit was coming too close (quite realistic). Hope to see this in 0 A.D. Could go up to more than a thousand units (even several thousand I believe)... Not bad for 1998... Share this post Link to post Share on other sites