Game Object Pathfinding via Map Server Intermediary
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current pathfinding methods in games often fail to consider dynamic obstructions, leading to collisions and suboptimal movement paths, especially when client-led movement is used, as they do not effectively account for changes in the game environment caused by other players' game objects.
Innovation Solution
A method where a game object's movement request is processed by a map server and a pathfinding server, which generates and updates movement paths to avoid static and dynamic obstructions, ensuring a valid path is calculated and updated in real-time to prevent collisions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If client-led movement is used for pathfinding, then the server load is reduced and performance is improved, but dynamic obstructions are not considered and collisions occur
Solution Approach 1:
The patent introduces a map server as an intermediary between the client and pathfinding server. The map server receives movement requests from the client, packages them with map information including dynamic obstructions, and forwards them to the pathfinding server. This intermediary structure allows the client to remain lightweight while still achieving reliable collision avoidance through server-side pathfinding that considers dynamic obstructions.
Solution Approach 2:
The system performs preliminary pathfinding calculations on the server side before the client executes movement. By pre-calculating paths that avoid both static and dynamic obstructions, the system ensures collision-free movement while maintaining client performance. The server proactively determines valid paths based on current map state and predicted dynamic obstructions.
2Manufacturing precision
If server performs pathfinding calculation, then the shortest obstruction-free path is computed, but the system complexity increases
Solution Approach 1:
The patent divides the pathfinding system into distinct functional modules: a map server responsible for receiving movement requests and managing map data, a pathfinding server responsible for calculating optimal paths, and a client for issuing movement commands. This segmentation allows each component to specialize in its function, achieving precise path optimization while managing system complexity through clear separation of concerns.
Solution Approach 2:
The map server acts as an intermediary that simplifies the interface between the client and pathfinding server. It packages movement requests with necessary map information and coordinates with the pathfinding server, reducing the complexity burden on any single component while enabling sophisticated server-side pathfinding.
3Reliability
If dynamic obstructions are considered in pathfinding, then collision probability is reduced, but the calculation time increases
Solution Approach 1:
The system performs preliminary pathfinding calculations on the server side before the client executes movement. By pre-calculating paths that avoid both static and dynamic obstructions, the system ensures collision-free movement while maintaining client performance. The server proactively determines valid paths based on current map state and predicted dynamic obstructions.
Solution Approach 2:
The map server maintains registration information about dynamic obstructions and uses this feedback to adjust pathfinding calculations. When new obstructions are detected or existing ones change position, the server updates its understanding of the map state and recalculates paths accordingly, ensuring continuous collision avoidance while optimizing calculation efficiency through informed decision-making.
Data Source
AI summary
A pathfinding method for a game object includes the following steps: the game object receives a movement request and sends a movement starting point and a movement ending point to a map server; the map server forms map information, and sends the map information to a pathfinding server, and the pathfinding server generates a movement path and sends the movement path to the map server; the map server determines whether there is an obstruction in the movement path; when there is no obstruction, the map server marks the movement path as valid and registers map units passed in the movement path; and when there is an obstruction, the map server sends a re-finding request to the pathfinding server, and the pathfinding server generates an updated path, until the map server determines that there is no obstruction in the updated path.

