350 reputation
113
bio website jakesee.com
location Singapore, Singapore
age
visits member for 2 years, 11 months
seen Aug 25 at 13:21

Thinking


May
18
comment Determinism in multiplayer simulation with Box2D, and single computer
@JoeWreschnig I don't understand, why don't I need to confirm whether Box2D is deterministic first? I definitely think I should know my tools first even before I start coding to have anything to debug in the first place. From the vague FAQ (to me only, I have bad English I suppose) I had the impression that Box2D is deterministic (see my definition above) so I wrote a simple setup to test and I find it to behave otherwise. That's the primary reason this question is here. Is not about the client-server setup. If I run my own bad physics replacing b2World.Simulation(), everything syncs.
May
18
comment Determinism in multiplayer simulation with Box2D, and single computer
@PatrickHughes Can I humbly direct a simple question to you please: Is Box2D deterministic, given the same code, same compiler, running 2 separate instances in the same computer with exactly the same inputs (ie. I send single keyboard input to both instances), with the same number of simulation steps and fixed const time step?
May
17
comment Determinism in multiplayer simulation with Box2D, and single computer
@JoeWreschnig I have minimal experience debugging server-client multiuser setups. So I have a bit of struggle. furthermore, I need to confirm the problem is not in Box2D first, which I still cannot get the answer, each time is see an answer, it is just beating around the bush. (see patrick hughes)
May
17
awarded  Commentator
May
17
comment Determinism in multiplayer simulation with Box2D, and single computer
@kaoD I read that article already. I think although my "timestep" of 33ms is not really 33ms, but all clients are synchronised due to the blocking socket calls. i.e. if client X step simulation N times, then all other also step N times, each step is a const 33 delta time in b2World.
May
17
comment Determinism in multiplayer simulation with Box2D, and single computer
If you see my code again, I block until I receive all clients' inputs before I process them for client update. Clients do not step simulation more than once between two tcpServer.receive();
May
17
comment Determinism in multiplayer simulation with Box2D, and single computer
@PatrickHughes I read the FAQ but it's vague to me. "For the same input, and same binary, Box2D will reproduce any simulation" -- so is it yes or no? Why can't it answer directly?
May
17
awarded  Promoter
May
15
comment Determinism in multiplayer simulation with Box2D, and single computer
finally got attetion. Any clues anyone?
May
13
asked Determinism in multiplayer simulation with Box2D, and single computer
May
8
revised What data to exchange in multiplayer real time games?
added 125 characters in body
May
8
comment How do you get a multiplayer-only game to reach critical mass?
That's actually quite smart, except if user input depends on real life opponent input. Does this actually happen in commercial games?
May
7
comment What data to exchange in multiplayer real time games?
Thanks for the detailed analysis.
May
7
accepted What data to exchange in multiplayer real time games?
May
6
asked What data to exchange in multiplayer real time games?
May
5
accepted What is a “solver” in a physics engine?
May
5
comment What is a “solver” in a physics engine?
Thanks for answering the first part of the question.
May
5
comment What is a “solver” in a physics engine?
with regards to the "iterative method", does it mean that the engine probably provides a counter to set how many iterations per frame usually?
May
5
asked What is a “solver” in a physics engine?
Oct
29
awarded  Scholar