Author Topic: Brick Physics Preview  (Read 112077 times)

You don't get it.

Leave him be..,
He'll eventually catch on. :/


This should keep me busy for a while :D
Also physics for players please?

I guess I don't, please explain.

All the players will see the physics happen but with slight variations dependent on many, many factors.

All the players will see the physics happen but with slight variations dependent on many, many factors.
Why thank you for that lovely explination kind sir. :P

All I will say is, This is made of pure win, also whats the name of the song.

It was enough though, Tater.

We need wheel-like bricks, sideways cylinders for this :3


Thats a crappy explanation.  All brick physics happen client side.  This keeps from getting lag from the server having to update you on tons of information about where all the bricks are.  What you see as a client is as Kompressor put, it, almost always nearly the same, but almost impossible to be exactly the same.  This is caused by slight differences in when the player gets information.

Clients will be able to see the bricks, and walking through bricks will cause them to be pushed by you and such, but the server doesn't actually know this, and each client will see a slightly different version, so it is impossible to do any interaction involving server side code with this system.

So that's what Kompressor has been doing down in his hole :o

Sweet Jesus! :D

Sorry if I ahve no idea how computers work, but

Would it be possible that each computer in a server process a portion of the bricks, then send it to everyone? combined, they process all the bricks, and everyone gets the same, allowing brick events?

This would need lots of port forwarding, and loss of power on computers, but it could work, right?

Not really.  Not in the practical category.

Wouldn't be smart, because it relies on every computer being 100% reliable, 100% fast, and 100% honest. It means you might have to wait literally seconds to get the results of the simulation from everyone.

It's also a lot of data. If 1000 bricks go flying, you're looking at having to transmit something like 32kb of data from every computer to every other computer in the game for every tick of simulation. Simulation ticks 32 times a sec so that's 1mb/sec right there. If it's a 8 person game, that's at least 8mb/sec of bandwidth that are needed - just for brick physics, nothing else. If everyone had that much bandwidth, you could simulate it all on the server and let people download it via their dedicated fiber optic lines.

Don't let me naysay you, though. You can get Bullet and OpenTNL and try writing your own system. If anyone can figure it out so that it works as well as the current system, I'd be happy to integrate it with Blockland. :)

Thanks, it was a wild idea. I thought it would be a reliability issue, did not foresee the 8mb problem. Thanks for the block of text, though. Makes me feel..not sure how to describe it. I guess respected would be best.