<li><aclass="backlink"title="Click to do a full-text search for this title"href="./NetworkDemos?action=fullsearch&value=linkto%3A%22NetworkDemos%22&context=180">NetworkDemos</a></li>
<spanclass="anchor"id="line-1"></span><pclass="line862">Network demos are a recording of the network traffic during a multiplayer game. You can record a network demo on a client connected to a multiplayer server ( which we will refer to as <em>client netdemos</em> ), or you can record them directly on the server ( <em>server netdemos</em>, which were introduced in <strong>Quake 4 1.1</strong> ). <spanclass="anchor"id="line-2"></span><spanclass="anchor"id="line-3"></span><pclass="line862">When you play back a network demo, Quake 4 will behave just as if it was playing a live game and will reproduce the recorded session. <em>Server netdemos</em> record more information that <em>client netdemos</em>, and will allow you to fly around in the world during the replay, and to cycle between following the various players. <spanclass="anchor"id="line-4"></span><spanclass="anchor"id="line-5"></span><pclass="line867">
<spanclass="anchor"id="line-6"></span><spanclass="anchor"id="line-7"></span><ul><li><pclass="line891"><strong>recordNetDemo [<em>demoname</em>]</strong>: start a recording <spanclass="anchor"id="line-8"></span></li><li><pclass="line891"><strong>playNetDemo <em>demoname</em></strong>: play back a network demo <spanclass="anchor"id="line-9"></span></li><li><pclass="line891"><strong>stopNetDemo</strong>: stop current recording or replay <spanclass="anchor"id="line-10"></span></li><li><pclass="line891"><strong>playNetTimeDemo <em>demoname</em></strong>: run a timedemo benchmark on the given network demo <spanclass="anchor"id="line-11"></span><spanclass="anchor"id="line-12"></span></li></ul><pclass="line867">
<spanclass="anchor"id="line-13"></span><spanclass="anchor"id="line-14"></span><ul><li><pclass="line891"><strong>demo_snapshotDelay</strong>: How often to record game snapshots to the demo stream <strong>( server netdemo only )</strong><spanclass="anchor"id="line-15"></span></li><li><pclass="line891"><strong>demo_debug</strong>: verbose various information about the network demo subsystem when using demo commands <spanclass="anchor"id="line-16"></span></li><li><pclass="line891"><strong>demo_enforceFS</strong>: enforce pure filesystem checks when playing back a demo. See below for details <spanclass="anchor"id="line-17"></span></li><li><pclass="line891"><strong>demo_scale</strong>: slows or speeds up the replay ( mostly for debugging purposes ) <spanclass="anchor"id="line-18"></span><spanclass="anchor"id="line-19"></span></li></ul><pclass="line867">
<h3id="head-4a0e43dcd660432f0509931d4daa00dd70c0cf34">Why you should use network timedemos for benchmarking</h3>
<spanclass="anchor"id="line-20"></span><spanclass="anchor"id="line-21"></span><pclass="line862">Render demos were written as a driver compatibility testing tool, and never intended as a benchmark tool for the game. A render demo stores render commands and feeds them to the graphics drivers. So all you're benchmarking is the performance of your GPU and it's drivers. Network demos however, will run the game code on the CPU, produce render commands and render frames to the GPU, so they are much closer to a real gameplay situation. That's why you should always use <strong>playNetTimeDemo</strong> for benchmarking rather than render demos. <spanclass="anchor"id="line-22"></span><spanclass="anchor"id="line-23"></span><pclass="line862">See <strong><ahref="./Benchmarking.html">Benchmarking</a></strong> for complete information on good benchmarking procedures with Quake 4. <spanclass="anchor"id="line-24"></span><spanclass="anchor"id="line-25"></span><pclass="line867">
<spanclass="anchor"id="line-26"></span><spanclass="anchor"id="line-27"></span><pclass="line874">When playing back a network demo, it is essential that the game code and assets are exactly the same as they were at the time of recording. If you are using a lot of custom pak files, it's very likely the filesystem needs a reconfiguration before it can play a demo under good conditions. Enable demo_enforceFS ( which is off by default ), so the filesystem will restart with the correct pak files whenever it needs to play a network demo. It will abort if that's not possible. Note that this only works for network demos that have been recorded on a pure server. <spanclass="anchor"id="line-28"></span><spanclass="anchor"id="line-29"></span><pclass="line867">
<spanclass="anchor"id="line-30"></span><spanclass="anchor"id="line-31"></span><pclass="line862">Please send feedback and bug reports about the network demo functionality to <em>ttimo AT idsoftware DOT com</em><spanclass="anchor"id="line-32"></span><spanclass="anchor"id="bottom"></span></div><pid="pageinfo"class="info"lang="en"dir="ltr">NetworkDemos (last edited 2006-07-17 22:11:36 by <spantitle="TimotheeBesset @ hellstorm.idsoftware.com[192.246.40.8]"><aclass="nonexistent"href="./TimotheeBesset.html"title="TimotheeBesset @ hellstorm.idsoftware.com[192.246.40.8]">TimotheeBesset</a></span>)</p>
<li><ahref="http://moinmoin.wikiwikiweb.de/">MoinMoin Powered</a></li><li><ahref="http://www.python.org/">Python Powered</a></li><li><ahref="http://validator.w3.org/check?uri=referer">Valid HTML 4.01</a></li>