<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://debianws.lexgopc.com/wiki143/index.php?action=history&amp;feed=atom&amp;title=Lockstep_protocol</id>
	<title>Lockstep protocol - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://debianws.lexgopc.com/wiki143/index.php?action=history&amp;feed=atom&amp;title=Lockstep_protocol"/>
	<link rel="alternate" type="text/html" href="http://debianws.lexgopc.com/wiki143/index.php?title=Lockstep_protocol&amp;action=history"/>
	<updated>2026-10-26T17:42:00Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>http://debianws.lexgopc.com/wiki143/index.php?title=Lockstep_protocol&amp;diff=4971265&amp;oldid=prev</id>
		<title>imported&gt;Patar knight: Adding local short description: &quot;Anti-cheat method in multiplayer video games&quot;, overriding Wikidata description &quot;protocol that tackles the look-ahead cheating problem in peer-to-peer gaming networks&quot;</title>
		<link rel="alternate" type="text/html" href="http://debianws.lexgopc.com/wiki143/index.php?title=Lockstep_protocol&amp;diff=4971265&amp;oldid=prev"/>
		<updated>2024-12-26T18:02:22Z</updated>

		<summary type="html">&lt;p&gt;Adding local &lt;a href=&quot;https://en.wikipedia.org/wiki/Short_description&quot; class=&quot;extiw&quot; title=&quot;wikipedia:Short description&quot;&gt;short description&lt;/a&gt;: &amp;quot;Anti-cheat method in multiplayer video games&amp;quot;, overriding Wikidata description &amp;quot;protocol that tackles the look-ahead cheating problem in peer-to-peer gaming networks&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Short description|Anti-cheat method in multiplayer video games}}&lt;br /&gt;
{{otheruses|Lockstep (disambiguation)}}&lt;br /&gt;
{{multiple|&lt;br /&gt;
{{cleanup rewrite|date=August 2017}}&lt;br /&gt;
{{refimprove|date=May 2016}}&lt;br /&gt;
}}&lt;br /&gt;
The &amp;#039;&amp;#039;&amp;#039;lockstep protocol&amp;#039;&amp;#039;&amp;#039; is a partial solution to the [[look-ahead cheating]] problem in [[peer-to-peer]] architecture [[multiplayer games]], in which a cheating client delays their own actions to await the messages of other players.&amp;lt;ref&amp;gt;&amp;#039;&amp;#039;Algorithms and Networking for Computer Games&amp;#039;&amp;#039;, Jouni Smed and Harri Hakonen&amp;lt;/ref&amp;gt; A client can do so by acting as if they&amp;#039;re suffering from high [[latency (engineering)|latency]]; the outgoing packet is forged by attaching a time stamp that is prior to the actual moment the packet is sent.&lt;br /&gt;
&lt;br /&gt;
To avoid this method of cheating, the lockstep protocol requires each player to first announce a &amp;quot;commitment&amp;quot; (e.g. [[Cryptographic hash function|hash]] value of the action); this commitment is a representation of an action that:&lt;br /&gt;
* Cannot be used to infer the action; and&lt;br /&gt;
* Easily compares whether an action corresponds with a commitment.&lt;br /&gt;
&lt;br /&gt;
Once all players have received the commitments, they reveal their actions, which are compared with the corresponding commitments to ensure that the commitment is indeed the sent action.&amp;lt;ref&amp;gt;[http://forensics.umass.edu/pubs/baughman.infocom01.pdf &amp;quot;Cheat-Proof Playout for Centralized and Distributed Online Games&amp;quot;], Baughman and Levine, 2001&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Drawbacks==&lt;br /&gt;
&lt;br /&gt;
As all players must wait for all commitments to arrive before sending their actions, the game progresses as slowly as the player with the highest latency. Although this may not be noticeable in a [[turn-based game]], real-time online games, such as [[first person shooters]], require much faster reactions.&lt;br /&gt;
&lt;br /&gt;
This can be acquired by placing a limit on the time in which a player can announce their action. If no action is sent within this period, other players do not announce their actions to that player and ignore any action that arrives too late.&lt;br /&gt;
&lt;br /&gt;
==Asynchronous lockstep protocol==&lt;br /&gt;
To overcome the obvious drawback of the simple lockstep protocol, an [[Asynchrony (game theory)|asynchronous]] variant of the protocol exists wherein players advance in time free of any negotiations with other players until interaction between players exists, known as a &amp;quot;lockstep mode.&amp;quot; This mode may be defined by a certain area around a player, such as a sphere, in which the game world may be affected by the player.&lt;br /&gt;
&lt;br /&gt;
Such an interaction can only occur when, for example, the areas of influence surrounding two players intersect.&lt;br /&gt;
&lt;br /&gt;
==External links==&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;[https://www.gamedeveloper.com/programming/1500-archers-on-a-28-8-network-programming-in-age-of-empires-and-beyond 1500 Archers on a 28.8]&amp;#039;&amp;#039;&amp;#039;, a comprehensive write-up by [[Mark Terrano]] and [[Paul Bettner]], who developed the lock-step protocol for [[Age of Empires]].&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
{{Reflist}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Cheating in video games]]&lt;br /&gt;
[[Category:Network protocols]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Patar knight</name></author>
	</entry>
</feed>