Dev Awad

Dev Awad Contact information, map and directions, contact form, opening hours, services, ratings, photos, videos and announcements from Dev Awad, Gaming Video Creator, .

Lag Compensation!Why?Let's imagine a scenario when networking latency exists and player A shooting Player B a hit can't ...
09/12/2023

Lag Compensation!
Why?
Let's imagine a scenario when networking latency exists and player A shooting Player B a hit can't be missed
But he missed it , how ?

While the player A shooting player B in his view player B was in the past position compared to his position in the server which player A hasn't received it yet due to the networking latency he has.

Player A shoots player B while player B is in his past position and when the shoot reaches the server for hit Detection player B wasn't facing the shoot direction because he is already moved in the server.

To deal with this problem I implemented a networking mechanism called Lag compansation.

How lag compensation works ?

When you shoot, client sends this event to the server with full information: the exact timestamp of your shot, and the exact aim of the weapon.

Here’s the crucial step. Since the server gets all the input with timestamps, it can authoritatively reconstruct the world at any instant in the past. In particular, it can reconstruct the world exactly as it looked like to any client at any point in time.

This means the server can know exactly what was on your weapon’s sights the instant you shot. It was the past position of your enemy’s head, but the server knows it was the position of their head in your present.

The server processes the shot at that point in time, and updates the clients.

And everyone is happy!

My theories became reality. Player swimming and diving system has just synchronized between the client and the server.Fo...
23/11/2023

My theories became reality.

Player swimming and diving system has just synchronized between the client and the server.

Follow me for more updates.

I goes with a problem after I implemented a client side prediction and Server reconciliation systemWhile the waves are s...
21/11/2023

I goes with a problem after I implemented a client side prediction and Server reconciliation system
While the waves are synchronized and moving with the same calculations at the same time between the client and Server with no difference

In case there's delay and client predicted his state then sent it to the server while it take time due to the delay, the waves are moving and when it reach to the server the waves would be in different height so in this case the player height in server in specific tick would be different.

I managed to fix it theoretically by appling separated floating system to server and all clients for all floating game objects , but we will go with another problem

While the enemy player is floating in specific height in my view as predicted what if I shot him and it take a delay to reach to the server then the waves changed and the enemy player height changed because he is floating with the waves, how would we make sure if he is really hit to take damage.

I managed to fix this issue theoretically by sending the current tick of each hit and rebuild the server to match this tick in this case the waves in the server and client exactly the same and the floating objects height and positions are exactly the same now we can check if the player got a hit or not authoritatively in process called Lag Compensation.

Now I'm trying to implement those theories which I'm thinking about and I'll inform you about the results

Brief explanation for the system i used to prevent cheats or hack as possible as i can .As i said before let's consider ...
14/11/2023

Brief explanation for the system i used to prevent cheats or hack as possible as i can .
As i said before let's consider the clients as chess pieces that are moved by the server which called Server Authoritative , and to avoid lag chopping i implemented a networking system which called Fast - Based Networking system, in this system everything in client is predicted and sends a request to the server and never wait for a server response until something goes wrong Then the server intervenes to correct the wrong values in a process called Server Reconciliation.

Hello guys!The past few days i was working on the sea waves and it's synchronization between the client and the server.I...
12/11/2023

Hello guys!
The past few days i was working on the sea waves and it's synchronization between the client and the server.
I managed to synchronize the waves and their physics between the client and the server finally.

Actually everything is server authoritative to prevent any cheats or hacks and apply fair game play for all players.
So any physics or calculations occurs in the server and their results are being sent to all clients.
Simply let's consider the clients as chess pieces that are moved by the server.

Follow me for more updates

Introduction about meI am a simple person whose life's dream is programming, especially game development.I started learn...
06/11/2023

Introduction about me

I am a simple person whose life's dream is programming, especially game development.

I started learning to develop games about 5 years ago, and since I learned that, I started my own project about a game whose idea was taken from the movie Pirates of the Caribbean Sea.

My enthusiasm took me to put in a lot of effort and time to develop my project and my dream, but circumstances changed and I completely neglected the project for years, and now here I am back.

I hope you will support and follow me.

I will post the latest developments in my project here.

Dev/ Awad ❤️

Address


Website

Alerts

Be the first to know and let us send you an email when Dev Awad posts news and promotions. Your email address will not be used for any other purpose, and you can unsubscribe at any time.

Videos

Shortcuts

  • Address
  • Alerts
  • Videos
  • Claim ownership or report listing
  • Want your business to be the top-listed Media Company?

Share