Game Character Movement Synchronization via Server Authorization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Online games face synchronization challenges due to network delays, leading to jitter and deformation of game characters, especially in multiplayer scenarios where multiple inputs interact, affecting the gaming experience.
Innovation Solution
A method for controlling character movement in games that involves a server determining whether a target client is the first or second client based on movement-request data-packets, updating movement identifiers, and broadcasting these updates to both clients to ensure synchronized character movements, thereby reducing jitter and improving the gaming experience.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a dead reckoning algorithm is used to synchronize character movement in online games, then movement paths can be synchronized, but the number of data packets increases and jitter on each client increases, causing deformation or instant movement of game characters
Solution Approach 1:
The patent segments the character movement control into two independent parts: local client-side control for responsiveness and server-side authorization for synchronization. The server divides movement control into authorized movements (from controlling client) and unauthorized movements (from other clients), processing them separately to reduce data packet complexity while maintaining synchronization reliability
Solution Approach 2:
The server acts as an intermediary that receives movement requests from multiple clients, authorizes valid movements, and broadcasts authorized movement information to all clients. This intermediary role eliminates the need for complex peer-to-peer dead reckoning algorithms, reducing jitter and deformation while maintaining synchronization
2Adaptability or versatility
If multiple clients send movement requests simultaneously, then character interactions are more realistic, but network delay causes mismatch between viewing angles of different players
Solution Approach 1:
The server performs preliminary authorization of movement requests before they are executed by clients. By pre-authorizing valid movements and broadcasting them to all clients, the server ensures that all clients have the same understanding of character positions and viewing angles before actual movement occurs, eliminating synchronization mismatch
Solution Approach 2:
The server provides feedback to all clients by broadcasting authorized movement information, ensuring that all clients receive consistent updates about character positions and viewing angles. This feedback mechanism maintains measurement precision across all clients despite simultaneous movement requests
3Ease of operation
If the client responds smoothly to local user instructions, then user experience is improved, but timeliness of synchronization cannot be effectively ensured
Solution Approach 1:
The patent segments movement control into local client-side processing for responsiveness and server-side authorization for synchronization timeliness. The client smoothly responds to local instructions by executing authorized movements locally, while the server ensures synchronization timeliness by broadcasting authorized movements to all clients, resolving the contradiction between responsiveness and synchronization
Solution Approach 2:
The server acts as an intermediary that receives movement requests, authorizes valid ones, and broadcasts them to all clients with timing information. This allows clients to respond smoothly to local instructions while the server maintains synchronization timeliness through centralized control and broadcast distribution
Data Source
AI summary
A method is provided for controlling game character movement for a server. The method includes receiving a movement-request data-packet sent by a first client, where the server is configured to manage a character movement on the first client and a character movement on a second client in a same game scene. The method also includes determining whether a target client is the first client or the second client according to the movement-request data-packet, where a character on the target client is a character whose movement needs to be controlled by the first client. Further, the method includes updating a movement identifier of the target client, and broadcasting the updated movement identifier of the target client to the first client and the second client.


