Prosecution Insights
Last updated: July 17, 2026
Application No. 18/755,724

METHOD FOR MANAGING MESSAGE TRANSMISSION, CONTROL DEVICE, AND COMPUTER READABLE STORAGE MEDIUM

Final Rejection §102§103
Filed
Jun 27, 2024
Priority
Jan 18, 2024 — provisional 63/622,078
Examiner
HACKENBERG, RACHEL J
Art Unit
2454
Tech Center
2400 — Computer Networks
Assignee
HTC Corporation
OA Round
2 (Final)
78%
Grant Probability
Favorable
3-4
OA Rounds
8m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 78% — above average
78%
Career Allowance Rate
243 granted / 310 resolved
+20.4% vs TC avg
Strong +26% interview lift
Without
With
+25.9%
Interview Lift
resolved cases with interview
Typical timeline
2y 9m
Avg Prosecution
23 currently pending
Career history
339
Total Applications
across all art units

Statute-Specific Performance

§101
0.2%
-39.8% vs TC avg
§103
88.9%
+48.9% vs TC avg
§102
3.8%
-36.2% vs TC avg
§112
3.7%
-36.3% vs TC avg
Black line = Tech Center average estimate • Based on career data from 310 resolved cases

Office Action

§102 §103
DETAILED ACTION Notice of AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Response to Arguments Applicant's arguments filed 03/10/2026 have been fully considered. Applicant argues that the replacement drawings render the drawing objection moot. In response to the argument, Examiner respectfully agrees. The drawing objection is withdrawn. Applicant argues that the amendments to the claims overcome the 112(b) rejections. In response to the argument, Examiner respectfully agrees. The 112(b) rejections are withdrawn. Applicant argues that the prior art of record does not teach on all the features of the amended independent claims. In response to the argument, Examiner respectfully disagrees. The amendments to the claims change the scope of the invention as the 112(b) issues were resolved. Claims 9 & 13 are incorporated into the independent claims in an alternate form. Snyder teaches on the amended limitations. The claims are recited broadly, the “location” of the client device is not further defined or limited. The term client device is not further limited in the claim. The term “zone” is not further defined or limited in the claim. Snyder teaches on the limitations of the independent claims as recited. (A) Snyder teaches on “determining, by the control device, a first zone where a first client device is located among a plurality of predetermined zones”. See Snyder: [0028] The server 210 may monitor and track the positions of each entity in a simulated world. For example, the server 210 may receive entity position information from each client (e.g., the client 220). [0066][0067] Steps 401-425 may be repeated to transmit entity position updates to the clients and to maintain state consistency between the computing device and the clients. The state consistency may ensure accurate and complete entity position replication between the computing device and the clients. The computing device may determine entity position changes based on an ongoing predetermined time interval. (B) Snyder teaches on “determining, by the control device, a first relative position between the first zone and a second zone among the plurality of predetermined zones”. See Snyder: [0057] At step 407, the computing device may determine an entity position change of an entity. For example, the computing device may determine the entity position changes based on an update rate (e.g., a game tick) of the simulated world. (C) Snyder teaches on “determining, by the control device, a first message transmitting frequency associated with the second zone based on the first relative position”. See Snyder: [0028] The client may instruct an entity to move to a new position at a specific time point. The client may send the instruction to the server 210. The server 210 may then receive the instruction indicating the new position from the client. In another example, the server 210 may initiate an entity position change and may determine a new position by itself. In either case, the server 210 may obtain the entity position information at various time points (e.g. , after each server update) during the simulation. [0029] The entity position information may be updated at a predetermined rate. For example, the server 210 may update the simulated world at a predetermined frequency (e.g., 1-5 Hz) based on the types of the simulated world and/or a number of the connected clients. The entity position information may be updated based on the update frequency of the simulated world. (D) Snyder teaches on “in response to determining that the second client device is located in the second zone, providing, by the control device, at least a first part of a plurality of first messages from the first client device located in the first zone to the second client device based on the first message transmitting frequency”. See Snyder: [0029] The entity position information may be updated based on the update frequency of the simulated world. [0067] Steps 401-425 may be repeated to transmit entity position updates to the clients and to maintain state consistency between the computing device and the clients. The state consistency may ensure accurate and complete entity position replication between the computing device and the clients. (E) Snyder teaches on “modifying the first message transmitting frequency based simulated world. [0066][0067] Steps 401-425 may be repeated to transmit entity position updates to the clients and to maintain state consistency between the computing device and the clients. The state consistency may ensure accurate and complete entity position replication between the computing device and the clients. The computing device may determine entity position changes based on an ongoing predetermined time interval. Applicant argues that the Snyder (as modified by Gower) does not teach “modifying the first message transmitting frequency based at least on one of a loading state and a visible range of a second client device”. In response to the argument, Examiner respectfully disagrees. The current claim language is in the alternate form. Snyder teaches on the limitation for the visible range (see response to argument 5(E) above). Please see updated rejected below: Claim(s) 1-3, 5-8, 17-20 is/are rejected under 35 U.S.C. 102(a)(1) as being anticipated by US 2022/0286523 Al (Snyder). Claim(s) 10, 14-16 is/are rejected under 35 U.S.C. 103 as being unpatentable over US 2022/0286523 Al (Snyder) in view of US 2010/0275136 Al (Gower). Claim(s) 4, 11-12 is/are objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims. Claims 9 & 13 are cancelled. Claim Rejections - 35 USC § 102 In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action: A person shall be entitled to a patent unless – (a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention. Claim(s) 1-3, 5-8, 17-20 is/are rejected under 35 U.S.C. 102(a)(1) as being anticipated by US 2022/0286523 Al (Snyder). Regarding Claim 1: Snyder teaches A method for managing message transmission, applied to a control device, comprising: determining, by the control device (Fig 4 A & B, computing device), a first zone (ie. [0057] first location) where a first client device is located among a plurality of predetermined zones; ([0027] The server 210 may communicate with a plurality of clients 220 and each client 220 may control one or more entities (e.g., control the movement of the one or more entities) or may be interested in one or more entities controlled by other clients. [0028] The server 210 may monitor and track the positions of each entity in a simulated world. For example, the server 210 may receive entity position information from each client (e.g., the client 220). The client may instruct an entity to move to a new position at a specific time point. The client may send the instruction to the server 210. The server 210 may then receive the instruction indicating the new position from the client. [0036] A simulated world may be divided into a plurality of grids ( e.g., square grids, hex grids) and each grid may be further divided into a plurality of layers. Each grid may comprise a plurality of cells and each cell may have an index (e.g., a vector (a, b, c)) identifying the location of the cell based on, for example, a coordinate system. [0056] At step 405, the computing device may determine quantized positions of entity positions. As discussed above, entity positions may be indicated using a coordinate system.) determining, by the control device (Fig 4 A & B, computing device), a first relative position (ie. area for position change) between the first zone and a second zone (ie. [0057] second location) among the plurality of predetermined zones; ([0057] At step 407, the computing device may determine an entity position change of an entity. For example, the computing device may determine the entity position changes based on an update rate (e.g., a game tick) of the simulated world. An entity may move from a first location with a first quantized position value to a second location with a second quantized position value. [0060] If the computing device determines that the entity is located in a particular area that corresponds to particular next state dictionaries, the computing device may query the server dictionaries 215 for the new state dictionaries corresponding to the area for the position change acceleration based on a previous acceleration.) determining, by the control device (Fig 4 A & B, computing device), a first message transmitting frequency (ie. update frequency of entity position information) associated with the second zone based on the first relative position; ([0028] The client may instruct an entity to move to a new position at a specific time point. The client may send the instruction to the server 210. The server 210 may then receive the instruction indicating the new position from the client. In another example, the server 210 may initiate an entity position change and may determine a new position by itself. In either case, the server 210 may obtain the entity position information at various time points (e.g. , after each server update) during the simulation. [0029] The entity position information may be updated at a predetermined rate. For example, the server 210 may update the simulated world at a predetermined frequency (e.g., 1-5 Hz) based on the types of the simulated world and/or a number of the connected clients. The entity position information may be updated based on the update frequency of the simulated world.) modifying the first message transmitting frequency based at least on (ie. new feature added to the 3D world) of a second client device. ([0033] Each acceleration of an entity may be denoted by a vector (x, y, z). [0075] At step 511, the computing device may train (e.g., modify, update) the global dictionary and the next state dictionaries. As an example, if a new feature (e.g., a new road, a new bridge, an obstacle, a vehicle) is added to the simulated world or an old feature is deleted from the simulated world, the computing device may recalculate the frequencies of the accelerations of each entity in the simulated world. [0066][0067] Steps 401-425 may be repeated to transmit entity position updates to the clients and to maintain state consistency between the computing device and the clients. The state consistency may ensure accurate and complete entity position replication between the computing device and the clients. The computing device may determine entity position changes based on an ongoing predetermined time interval.) determining that the second client device is located in the second zone; ([0066] At step 425, the computing device may send the encoded data to one or more clients (e.g., the client 220). The computing device may send the encoded data to all the clients connected to the simulated world, so that each of the client may be able to receive the entity position updates and see other players in real-time or near real-time.) and in response to determining that the second client device is located in the second zone, providing, by the control device (Fig 4 A & B, computing device), at least a first part of a plurality of first messages from the first client device (ie. client device/entity) located in the first zone to the second client device (ie. other client device/entity) based on the first message transmitting frequency. ([0067] Steps 401-425 may be repeated to transmit entity position updates to the clients and to maintain state consistency between the computing device and the clients. The state consistency may ensure accurate and complete entity position replication between the computing device and the clients. [0029] The entity position information may be updated based on the update frequency of the simulated world.) Update position messages are transmitted to the computing device/server and the computing device/server sends the position update messages to the second client device. Regarding Claim 17: Snyder teaches A control device, comprising: a non-transitory storage circuit, storing a program code; and a processor, coupled to the non-transitory storage circuit and accessing the program code ([0009] In various embodiments, either or both methods may be performed by a data processing device, system and/or apparatus. In yet other embodiments the method may be embodied within a non-transitory computer-readable medium. The non-transitory computer-readable medium store instructions which, when executed by a processor, may cause a data processing system, device, or apparatus to perform the method for replicating states and/or views.) to perform: determining a first zone (ie. [0057] first location) where a first client device is located among a plurality of predetermined zones; ([0027] The server 210 may communicate with a plurality of clients 220 and each client 220 may control one or more entities (e.g., control the movement of the one or more entities) or may be interested in one or more entities controlled by other clients. [0028] The server 210 may monitor and track the positions of each entity in a simulated world. For example, the server 210 may receive entity position information from each client (e.g., the client 220). The client may instruct an entity to move to a new position at a specific time point. The client may send the instruction to the server 210. The server 210 may then receive the instruction indicating the new position from the client. [0036] A simulated world may be divided into a plurality of grids ( e.g., square grids, hex grids) and each grid may be further divided into a plurality of layers. Each grid may comprise a plurality of cells and each cell may have an index (e.g., a vector (a, b, c)) identifying the location of the cell based on, for example, a coordinate system. [0056] At step 405, the computing device may determine quantized positions of entity positions. As discussed above, entity positions may be indicated using a coordinate system.) determining a first relative position (ie. area for position change) between the first zone and a second zone (ie. [0057] second location) among the plurality of predetermined zones; ([0057] At step 407, the computing device may determine an entity position change of an entity. For example, the computing device may determine the entity position changes based on an update rate (e.g., a game tick) of the simulated world. An entity may move from a first location with a first quantized position value to a second location with a second quantized position value. [0060] If the computing device determines that the entity is located in a particular area that corresponds to particular next state dictionaries, the computing device may query the server dictionaries 215 for the new state dictionaries corresponding to the area for the position change acceleration based on a previous acceleration.) determining a first message transmitting frequency (ie. update frequency of entity position information) associated with the second zone based on the first relative position; ([0028] The client may instruct an entity to move to a new position at a specific time point. The client may send the instruction to the server 210. The server 210 may then receive the instruction indicating the new position from the client. In another example, the server 210 may initiate an entity position change and may determine a new position by itself. In either case, the server 210 may obtain the entity position information at various time points (e.g. , after each server update) during the simulation. [0029] The entity position information may be updated at a predetermined rate. For example, the server 210 may update the simulated world at a predetermined frequency (e.g., 1-5 Hz) based on the types of the simulated world and/or a number of the connected clients. The entity position information may be updated based on the update frequency of the simulated world.) modifying the first message transmitting frequency based at least on (ie. new feature added to the 3D world) of a second client device. ([0033] Each acceleration of an entity may be denoted by a vector (x, y, z). [0075] At step 511, the computing device may train (e.g., modify, update) the global dictionary and the next state dictionaries. As an example, if a new feature (e.g., a new road, a new bridge, an obstacle, a vehicle) is added to the simulated world or an old feature is deleted from the simulated world, the computing device may recalculate the frequencies of the accelerations of each entity in the simulated world. [0066][0067] Steps 401-425 may be repeated to transmit entity position updates to the clients and to maintain state consistency between the computing device and the clients. The state consistency may ensure accurate and complete entity position replication between the computing device and the clients. The computing device may determine entity position changes based on an ongoing predetermined time interval.) determining that the second client device is located in the second zone; ([0066] At step 425, the computing device may send the encoded data to one or more clients (e.g., the client 220). The computing device may send the encoded data to all the clients connected to the simulated world, so that each of the client may be able to receive the entity position updates and see other players in real-time or near real-time.) and in response to determining that the second client device is located in the second zone, providing at least a first part of a plurality of first messages from the first client device (ie. client device/entity) located in the first zone to the second client device (ie. other client device/entity) based on the first message transmitting frequency. ([0066] At step 425, the computing device may send the encoded data to one or more clients (e.g., the client 220). The computing device may send the encoded data to all the clients connected to the simulated world, so that each of the client may be able to receive the entity position updates and see other players in real-time or near real-time. [0067] Steps 401-425 may be repeated to transmit entity position updates to the clients and to maintain state consistency between the computing device and the clients. The state consistency may ensure accurate and complete entity position replication between the computing device and the clients. [0029] The entity position information may be updated based on the update frequency of the simulated world.) Update position messages are transmitted to the computing device/server and the computing device/server sends the position update messages to the second client device. Regarding Claim 20: Snyder teaches A non-transitory computer readable storage medium, the computer readable storage medium recording an executable computer program, the executable computer program being loaded by a control device ([0009] In various embodiments, either or both methods may be performed by a data processing device, system and/or apparatus. In yet other embodiments the method may be embodied within a non-transitory computer-readable medium. The non-transitory computer-readable medium store instructions which, when executed by a processor, may cause a data processing system, device, or apparatus to perform the method for replicating states and/or views.) to perform steps of: determining a first zone (ie. [0057] first location) where a first client device is located among a plurality of predetermined zones; ([0027] The server 210 may communicate with a plurality of clients 220 and each client 220 may control one or more entities (e.g., control the movement of the one or more entities) or may be interested in one or more entities controlled by other clients. [0028] The server 210 may monitor and track the positions of each entity in a simulated world. For example, the server 210 may receive entity position information from each client (e.g., the client 220). The client may instruct an entity to move to a new position at a specific time point. The client may send the instruction to the server 210. The server 210 may then receive the instruction indicating the new position from the client. [0036] A simulated world may be divided into a plurality of grids ( e.g., square grids, hex grids) and each grid may be further divided into a plurality of layers. Each grid may comprise a plurality of cells and each cell may have an index (e.g., a vector (a, b, c)) identifying the location of the cell based on, for example, a coordinate system. [0056] At step 405, the computing device may determine quantized positions of entity positions. As discussed above, entity positions may be indicated using a coordinate system.) determining a first relative position (ie. area for position change) between the first zone and a second zone (ie. [0057] second location) among the plurality of predetermined zones; ([0057] At step 407, the computing device may determine an entity position change of an entity. For example, the computing device may determine the entity position changes based on an update rate (e.g., a game tick) of the simulated world. An entity may move from a first location with a first quantized position value to a second location with a second quantized position value. [0060] If the computing device determines that the entity is located in a particular area that corresponds to particular next state dictionaries, the computing device may query the server dictionaries 215 for the new state dictionaries corresponding to the area for the position change acceleration based on a previous acceleration.) determining a first message transmitting frequency (ie. update frequency of entity position information) associated with the second zone based on the first relative position; ([0028] The client may instruct an entity to move to a new position at a specific time point. The client may send the instruction to the server 210. The server 210 may then receive the instruction indicating the new position from the client. In another example, the server 210 may initiate an entity position change and may determine a new position by itself. In either case, the server 210 may obtain the entity position information at various time points (e.g. , after each server update) during the simulation. [0029] The entity position information may be updated at a predetermined rate. For example, the server 210 may update the simulated world at a predetermined frequency (e.g., 1-5 Hz) based on the types of the simulated world and/or a number of the connected clients. The entity position information may be updated based on the update frequency of the simulated world.) modifying the first message transmitting frequency based at least on (ie. new feature added to the 3D world) of a second client device. ([0033] Each acceleration of an entity may be denoted by a vector (x, y, z). [0075] At step 511, the computing device may train (e.g., modify, update) the global dictionary and the next state dictionaries. As an example, if a new feature (e.g., a new road, a new bridge, an obstacle, a vehicle) is added to the simulated world or an old feature is deleted from the simulated world, the computing device may recalculate the frequencies of the accelerations of each entity in the simulated world. [0066][0067] Steps 401-425 may be repeated to transmit entity position updates to the clients and to maintain state consistency between the computing device and the clients. The state consistency may ensure accurate and complete entity position replication between the computing device and the clients. The computing device may determine entity position changes based on an ongoing predetermined time interval.) determining that the second client device is located in the second zone; ([0066] At step 425, the computing device may send the encoded data to one or more clients (e.g., the client 220). The computing device may send the encoded data to all the clients connected to the simulated world, so that each of the client may be able to receive the entity position updates and see other players in real-time or near real-time.) and in response to determining that the second client device is located in the second zone, providing at least a first part of a plurality of first messages from the first client device (ie. client device/entity) located in the first zone to the second client device (ie. other client device/entity) based on the first message transmitting frequency. ([0066] At step 425, the computing device may send the encoded data to one or more clients (e.g., the client 220). The computing device may send the encoded data to all the clients connected to the simulated world, so that each of the client may be able to receive the entity position updates and see other players in real-time or near real-time. [0067] Steps 401-425 may be repeated to transmit entity position updates to the clients and to maintain state consistency between the computing device and the clients. The state consistency may ensure accurate and complete entity position replication between the computing device and the clients. [0029] The entity position information may be updated based on the update frequency of the simulated world.) Update position messages are transmitted to the computing device/server and the computing device/server sends the position update messages to the second client device. Regarding Claim 2: Snyder teaches the invention of Claim 1 as described. Snyder teaches dividing the plurality of predetermined zones (ie. locations in the simulated world) into a plurality of zone groups (ie. vectors) based on a relative position (ie. 3D location of a cell) between the first zone and each of the plurality of predetermined zones; ([0036] A simulated world may be divided into a plurality of grids ( e.g., square grids, hex grids) and each grid may be further divided into a plurality of layers. Each grid may comprise a plurality of cells and each cell may have an index (e.g., a vector (a, b, c)) identifying the location of the cell based on, for example, a coordinate system. [0056] At step 405, the computing device may determine quantized positions of entity positions. As discussed above, entity positions may be indicated using a coordinate system.) and assigning a message transmitting frequency (ie. acceleration frequency) to each of the plurality of zone groups. ([0033] Each acceleration of an entity may be denoted by a vector (x, y, z). [0075] At step 511, the computing device may train (e.g., modify, update) the global dictionary and the next state dictionaries. As an example, if a new feature (e.g., a new road, a new bridge, an obstacle, a vehicle) is added to the simulated world or an old feature is deleted from the simulated world, the computing device may recalculate the frequencies of the accelerations of each entity in the simulated world.) The message frequency – updates for position – are assigned using vectors. Regarding Claim 3: Snyder teaches the invention of Claim 2 as described. Snyder teaches wherein determining the first message transmitting frequency associated with the second zone based on the first relative position comprises: in response to determining that the second zone belongs to one of the plurality of zone groups, ([0056][0057] At step 407, the computing device may determine an entity position change of an entity. For example, the computing device may determine the entity position changes based on an update rate (e.g., a game tick) of the simulated world. An entity may move from a first location with a first quantized position value to a second location with a second quantized position value. [0060] If the computing device determines that the entity is located in a particular area that corresponds to particular next state dictionaries, the computing device may query the server dictionaries 215 for the new state dictionaries corresponding to the area for the position change acceleration based on a previous acceleration.) determining the message transmitting frequency corresponding to the one of the plurality of zone groups as the first message transmitting frequency associated with the second zone. ([0033] Each acceleration of an entity may be denoted by a vector (x, y, z). [0075] At step 511, the computing device may train (e.g., modify, update) the global dictionary and the next state dictionaries. As an example, if a new feature (e.g., a new road, a new bridge, an obstacle, a vehicle) is added to the simulated world or an old feature is deleted from the simulated world, the computing device may recalculate the frequencies of the accelerations of each entity in the simulated world.) The message frequency – updates for position – are assigned using vectors. Regarding Claim 5: Snyder teaches the invention of Claim 2 as described. Snyder teaches wherein assigning the message transmitting frequency to each of the plurality of zone groups comprising: determining an i-th element among a plurality of frequency elements of a transmitting frequency vector as the message transmitting frequency of an i-th zone group among the plurality of zone groups, wherein the plurality of frequency elements are monotonically decreasing, wherein i is an index. ([0070] At step 503, the computing device may build a global dictionary that identifies one or more most common accelerations of the simulated world. For example, the computing device may count the number of times that each acceleration occurs in the simulated world for a time period. The computing device may determine that acceleration vector (0, 0, 0) is the most common acceleration because it is very likely that a velocity of the movement of an entity does not change during a game tick. [0072] If a game has mechanics that slow down the movement of the entity the longer the entity has been alive, the acceleration associated with the entity may be affected by the time the entity has existed in the simulated world. Thus, the computing device may modify the next state dictionaries for each previous acceleration for those entities as those entities' accelerations tend to decrease over time.) Regarding Claim 6: Snyder teaches the invention of Claim 1 as described. Snyder teaches receiving the plurality of first messages from the first client device. ([0066] At step 425, the computing device may send the encoded data to one or more clients (e.g., the client 220). The computing device may send the encoded data to all the clients connected to the simulated world, so that each of the client may be able to receive the entity position updates and see other players in real-time or near real-time. [0067] Steps 401-425 may be repeated to transmit entity position updates to the clients and to maintain state consistency between the computing device and the clients. The state consistency may ensure accurate and complete entity position replication between the computing device and the clients. The computing device may determine entity position changes based on an ongoing predetermined time interval. ) Sending update messages of position to the computing device/server and the computing device/server sends the position update messages to the second client device. Regarding Claim 7: Snyder teaches the invention of Claim 1 as described. Snyder teaches wherein providing at least the first part of the plurality of first messages from the first client device to the second client device based on the first message transmitting frequency comprising: in response to determining that the first message transmitting frequency is 1/K, transmitting one of the plurality of first messages every K of the plurality of first messages, wherein K is a positive integer. ([0029] The entity position information may be updated at a predetermined rate. For example, the server 210 may update the simulated world at a predetermined frequency (e.g., 1-5 Hz) based on the types of the simulated world and/or a number of the connected clients. The entity position information may be updated based on the update frequency of the simulated world. [0067] The computing device may determine entity position changes based on an ongoing predetermined time interval.) The update frequency is 1/K, the update messages will be sent every K. Regarding Claim 8: Snyder teaches the invention of Claim 1 as described. Snyder teaches determining, by the control device, a second relative position between the first zone and a third zone among the plurality of predetermined zones; ([0027] The server 210 may communicate with a plurality of clients 220 and each client 220 may control one or more entities (e.g., control the movement of the one or more entities) or may be interested in one or more entities controlled by other clients. [0028] The server 210 may monitor and track the positions of each entity in a simulated world. For example, the server 210 may receive entity position information from each client (e.g., the client 220). The client may instruct an entity to move to a new position at a specific time point. The client may send the instruction to the server 210. The server 210 may then receive the instruction indicating the new position from the client. [0036] A simulated world may be divided into a plurality of grids ( e.g., square grids, hex grids) and each grid may be further divided into a plurality of layers. Each grid may comprise a plurality of cells and each cell may have an index (e.g., a vector (a, b, c)) identifying the location of the cell based on, for example, a coordinate system. [0056] At step 405, the computing device may determine quantized positions of entity positions. As discussed above, entity positions may be indicated using a coordinate system.) determining, by the control device, a second message transmitting frequency associated with the third zone based on the second relative position; ([0057] At step 407, the computing device may determine an entity position change of an entity. For example, the computing device may determine the entity position changes based on an update rate (e.g., a game tick) of the simulated world. An entity may move from a first location with a first quantized position value to a second location with a second quantized position value. [0060] If the computing device determines that the entity is located in a particular area that corresponds to particular next state dictionaries, the computing device may query the server dictionaries 215 for the new state dictionaries corresponding to the area for the position change acceleration based on a previous acceleration.) and in response to determining that a third client device is located in the third zone, providing at least a second part of the plurality of first messages from the first client device located in the first zone to the third client device based on the second message transmitting frequency. ([0066] At step 425, the computing device may send the encoded data to one or more clients (e.g., the client 220). The computing device may send the encoded data to all the clients connected to the simulated world, so that each of the client may be able to receive the entity position updates and see other players in real-time or near real-time. [0067] Steps 401-425 may be repeated to transmit entity position updates to the clients and to maintain state consistency between the computing device and the clients. The state consistency may ensure accurate and complete entity position replication between the computing device and the clients. The computing device may determine entity position changes based on an ongoing predetermined time interval. ) Sending update messages of position to the computing device/server and the computing device/server sends the position update messages to the second client device. Regarding Claim 18: Snyder teaches the invention of Claim 17 as described. Snyder teaches wherein the processor performs: dividing the plurality of predetermined zones into a plurality of zone groups based on a relative position between the first zone and each of the plurality of predetermined zones; ([0036] A simulated world may be divided into a plurality of grids ( e.g., square grids, hex grids) and each grid may be further divided into a plurality of layers. Each grid may comprise a plurality of cells and each cell may have an index (e.g., a vector (a, b, c)) identifying the location of the cell based on, for example, a coordinate system. [0056] At step 405, the computing device may determine quantized positions of entity positions. As discussed above, entity positions may be indicated using a coordinate system.) assigning a message transmitting frequency to each of the plurality of zone groups; ([0033] Each acceleration of an entity may be denoted by a vector (x, y, z). [0075] At step 511, the computing device may train (e.g., modify, update) the global dictionary and the next state dictionaries. As an example, if a new feature (e.g., a new road, a new bridge, an obstacle, a vehicle) is added to the simulated world or an old feature is deleted from the simulated world, the computing device may recalculate the frequencies of the accelerations of each entity in the simulated world.) The message frequency – updates for position – are assigned using vectors. and in response to determining that the second zone belongs to one of the plurality of zone groups, ([0036] A simulated world may be divided into a plurality of grids ( e.g., square grids, hex grids) and each grid may be further divided into a plurality of layers. Each grid may comprise a plurality of cells and each cell may have an index (e.g., a vector (a, b, c)) identifying the location of the cell based on, for example, a coordinate system. [0056] At step 405, the computing device may determine quantized positions of entity positions. As discussed above, entity positions may be indicated using a coordinate system.) determining the message transmitting frequency corresponding to the one of the plurality of zone groups as the first message transmitting frequency associated with the second zone. ([0033] Each acceleration of an entity may be denoted by a vector (x, y, z). [0075] At step 511, the computing device may train (e.g., modify, update) the global dictionary and the next state dictionaries. As an example, if a new feature (e.g., a new road, a new bridge, an obstacle, a vehicle) is added to the simulated world or an old feature is deleted from the simulated world, the computing device may recalculate the frequencies of the accelerations of each entity in the simulated world.) The message frequency – updates for position – are assigned using vectors. Regarding Claim 19: Snyder teaches the invention of Claim 17 as described. Snyder teaches wherein before providing at least the first part of the plurality of first messages from the first client device located in the first zone to the second client device based on the first message transmitting frequency, the processor further performs: modifying the first message transmitting frequency based on a visible range (ie. new feature added to the 3D world) of the first client device in a virtual world. ([0033] Each acceleration of an entity may be denoted by a vector (x, y, z). [0075] At step 511, the computing device may train (e.g., modify, update) the global dictionary and the next state dictionaries. As an example, if a new feature (e.g., a new road, a new bridge, an obstacle, a vehicle) is added to the simulated world or an old feature is deleted from the simulated world, the computing device may recalculate the frequencies of the accelerations of each entity in the simulated world. [0066][0067] Steps 401-425 may be repeated to transmit entity position updates to the clients and to maintain state consistency between the computing device and the clients. The state consistency may ensure accurate and complete entity position replication between the computing device and the clients. The computing device may determine entity position changes based on an ongoing predetermined time interval.) Claim Rejections - 35 USC § 103 In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. Claim(s) 10, 14-16 is/are rejected under 35 U.S.C. 103 as being unpatentable over US 2022/0286523 Al (Snyder) in view of US 2010/0275136 Al (Gower). Regarding Claim 10: Snyder (as modified by Gower) teaches on the invention of Claim 1 as described. Snyder teaches on distribution of load across multiple devices ([0023]). However, Snyder is silent on wherein modifying the first message transmitting frequency based on the loading state of the second client device comprising: in response to determining that the loading state of the second client device indicates that a message receiving loading of the second client device is higher than a loading threshold, decreasing the first message transmitting frequency; and in response to determining that the loading state of the second client device indicates that the message receiving loading of the second client device is not higher than the loading threshold, maintaining the first message transmitting frequency. Gower teaches in response to determining that the loading state of the second client device indicates that a message receiving loading of the second client device is higher than a loading threshold, decreasing the first message transmitting frequency; ([0050] A temporal resolution may be used to more efficiently manage bandwidth usage. For example, the positions of avatars farther away may be reported at a lower frequency (lower frame rate) than more closely located avatars to reduce the amount of bandwidth used per transmission frame. [0054][0055] Fig 11, In step 1105, the virtual world system may then determine whether the number of avatars within the high resolution range is above a specified threshold. If, the number of avatars is greater than the specified threshold and the range is above the minimum range, the virtual world system may reduce the high resolution range in step 1115 and then go back to step 1100 to test the new range.) and in response to determining that the loading state of the second client device indicates that the message receiving loading of the second client device is not higher than the loading threshold, maintaining the first message transmitting frequency. ([0050] A temporal resolution may be used to more efficiently manage bandwidth usage. For example, the positions of avatars farther away may be reported at a lower frequency (lower frame rate) than more closely located avatars to reduce the amount of bandwidth used per transmission frame. [0055] Once the number of avatars in range is equal to or below the threshold, or if the range cannot be reduced any further, the server will move to step 1110 and select/determine high resolution bitcodes for avatars within the high resolution range and low resolution bitcodes for all other avatars.) It would have been obvious to a person having ordinary skill in the art before the effective filing date of the claimed invention, to modify Snyder per Gower to include that in response to determining that the loading state of the second client device indicates that a message receiving loading of the second client device is higher than a loading threshold, decreasing the first message transmitting frequency. This would have been advantageous as discussed above, as this would allow the modified system to provide updates based on threshold ranges in order to have best possible gaming experience based on the client device processing load capabilities. Regarding Claim 14: Snyder teaches the invention of Claim 1 as described. Snyder teaches on zones, visible range and on modifying transmitting frequency ([0036][0075]). However, Snyder is silent on determining a plurality of valid zones and a plurality of invalid zones among the plurality of predetermined zones based on the visible range of the second client device; in response to determining that the first zone belongs to the plurality of invalid zones, decreasing the first message transmitting frequency. Gower teaches wherein modifying the first message transmitting frequency based on the visible range of the second client device in comprises: determining a plurality of valid zones and a plurality of invalid zones among the plurality of predetermined zones based on the visible range of the second client device; ([0050] A temporal resolution may be used to more efficiently manage bandwidth usage. For example, the positions of avatars farther away may be reported at a lower frequency (lower frame rate) than more closely located avatars to reduce the amount of bandwidth used per transmission frame. [0052] In steps 735 and 7 40, the server determines whether more avatar positions need to be reported to the current client and, if so, repeats steps 710-730 for each additional avatar whose position will be reported.) in response to determining that the first zone belongs to the plurality of invalid zones, decreasing the first message transmitting frequency. ([0050] A temporal resolution may be used to more efficiently manage bandwidth usage. For example, the positions of avatars farther away may be reported at a lower frequency (lower frame rate) than more closely located avatars to reduce the amount of bandwidth used per transmission frame.) It would have been obvious to a person having ordinary skill in the art before the effective filing date of the claimed invention, to modify Snyder per Gower to include determining a plurality of valid zones and a plurality of invalid zones among the plurality of predetermined zones based on the visible range of the second client device; in response to determining that the first zone belongs to the plurality of invalid zones, decreasing the first message transmitting frequency. This would have been advantageous as discussed above, as this would allow the modified system to save on processing resources by providing updates only when/as required. Regarding Claim 15: Snyder (as modified by Gower) teaches on the invention of Claim 14 as described. Snyder teaches wherein decreasing the first message transmitting frequency comprises decreasing the first message transmitting frequency to be zero. ([0050] The most common (e.g., the most likely) acceleration vector after a previous acceleration vector (0, 0, 0) may be determined to be (0, 0, 0). [0051] The most common acceleration vector may be indicated by the smallest dictionary index. Therefore, the smallest dictionary index (e.g., 0) may be assigned to (0, 0, 0) corresponding to a previous state (0, 0, 0). In this case, the server 210 might not need to send the actual acceleration vector (0, 0, 0) to the client 220.) Based on previous acceleration vectors being zero, update position messages are not sent. Regarding Claim 16: Snyder (as modified by Gower) teaches on the invention of Claim 14 as described. Snyder teaches on zones, visible range and on modifying/maintaining transmitting frequency ([0050][0051][0036][0075]). However, Snyder is silent on in response to determining that the first zone belongs to the plurality of valid zones, maintaining the first message transmitting frequency. Gower teaches in response to determining that the first zone belongs to the plurality of valid zones, maintaining the first message transmitting frequency. ([0048] FIGS. 6A and 6B illustrate example bitcodes that each include a special bitcode for indicating a change in the bitcode resolution used to report an avatar's position. This may be relevant because the bitcodes themselves do not indicate whether the position information is in a high resolution format or a low resolution format and, as indicated above, the receiving device needs to know which bitcode resolution is in use before the prefix codes would otherwise conflict. In most if not all cases, a client device or application will assume that the position information is of the same resolution as the previous position received for that avatar. Accordingly, if a change in resolution occurs, the corresponding bitcodes of FIGS. 6A and 6B may be used to notify the client.) It would have been obvious to a person having ordinary skill in the art before the effective filing date of the claimed invention, to modify Snyder per Gower to include that in response to determining that the first zone belongs to the plurality of valid zones, maintaining the first message transmitting frequency. This would have been advantageous as discussed above, as this would allow the modified system to save on processing resources by providing updates only when/as required. Allowable Subject Matter Claim(s) 4, 11-12 is/are objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims. The prior art does not teach: 4. The method according to claim 2, wherein: in a case where 2 < i <N, the predetermined zones in an i-th zone group among the plurality of zone groups at least partially surround the predetermined zones in an (i-1)-th zone group among the plurality of zone groups, wherein N is a number of the plurality of zone groups; and in a case where i is 1, the i-th zone group comprises the first zone, wherein i is an index. Claim 11. The method according to claim 10, further comprising: obtaining a first number of messages transmitted to the second client device within each of a plurality of first durations; obtaining a second number of processed messages of the second client device within each of the plurality of first durations; obtaining a plurality of first differences respectively corresponding to the plurality of first durations, wherein a m-th first difference among the plurality of first differences is obtained by subtracting the second number corresponding to a m-th first duration among the plurality of first durations from the first number corresponding to the m-th first duration, wherein m is an index; and in response to determining that the plurality of first differences are higher than a threshold, determining that the loading state of the second client device indicates that the message receiving loading of the second client device is higher than the loading threshold and accordingly decreasing the first message transmitting frequency. Claim 12. The method according to claim 11, wherein after decreasing the first message transmitting frequency, the method further comprises: obtaining a third number of messages transmitted to the second client device within each of a plurality of second durations; obtaining a fourth number of processed messages of the second client device within each of the plurality of second durations; obtaining a plurality of second differences respectively corresponding to the plurality of second durations, wherein a n-th second difference among the plurality of second differences is obtained by subtracting the fourth number corresponding to a n-th second duration among the plurality of second durations from the third number corresponding to the n-th second duration, wherein n is an index; and in response to determining that the plurality of second differences are not higher than the threshold, recovering the first message transmitting frequency. Conclusion & Contact Information THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a). A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action. Any inquiry concerning this communication or earlier communications from the examiner should be directed to RACHEL J HACKENBERG whose telephone number is (571)272-5417. The examiner can normally be reached 9am-5pm M-F. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Glenton B Burgess can be reached at (571)272-3949. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /RACHEL J HACKENBERG/Primary Examiner, Art Unit 2454
Read full office action

Prosecution Timeline

Jun 27, 2024
Application Filed
Dec 12, 2025
Non-Final Rejection mailed — §102, §103
Mar 10, 2026
Response Filed
Jun 02, 2026
Final Rejection mailed — §102, §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12683901
APPARATUSES, METHODS AND NON-TRANSITORY COMPUTER-READABLE STORAGE MEDIUMS FOR NETWORK ACCESS
3y 4m to grant Granted Jul 14, 2026
Patent 12683887
DETECTION OF NETWORK MEASUREMENT INACCURACIES
2y 11m to grant Granted Jul 14, 2026
Patent 12676917
FACILITATING ELASTIC DISTRIBUTED COMPUTING FOR RESOURCE INTENSIVE TASKS INCLUDING SPLIT RENDERING IN ADVANCED NETWORKS
3y 10m to grant Granted Jul 07, 2026
Patent 12671750
System and Method for Improving Internet Communication by Using Intermediate Nodes
2y 0m to grant Granted Jun 30, 2026
Patent 12665874
SYSTEMS AND METHODS FOR SYNCHRONIZING HOSTNAMES AND IP ADDRESSES IN EMAIL SYSTEMS
2y 9m to grant Granted Jun 23, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

3-4
Expected OA Rounds
78%
Grant Probability
99%
With Interview (+25.9%)
2y 9m (~8m remaining)
Median Time to Grant
Moderate
PTA Risk
Based on 310 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month