<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Multiplayer Games in Flash</title>
	<atom:link href="http://blog.touchmypixel.com/2009/11/multiplayer-games-in-flash/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.touchmypixel.com/2009/11/multiplayer-games-in-flash/</link>
	<description>Games + Web : Interaction Matters</description>
	<lastBuildDate>Sat, 10 Jul 2010 14:09:16 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: tonyp</title>
		<link>http://blog.touchmypixel.com/2009/11/multiplayer-games-in-flash/comment-page-1/#comment-331</link>
		<dc:creator>tonyp</dc:creator>
		<pubDate>Mon, 09 Nov 2009 04:43:26 +0000</pubDate>
		<guid isPermaLink="false">http://blog.touchmypixel.com/?p=185#comment-331</guid>
		<description>Alex &gt; 
The clients arnt totally dumb - they are running the simulation and updating positions, but then adjusting when the information from the server comes - making sure they are accurate. I havent looked into latency issues yet - it&#039;ll be a whole lot of fun it seems (reading up on it). This test is my first 4 hours of looking at multiplayer stuff- so very basic ;P I&#039;ll look at how to adjust for latency soon, maybe make a post on it next. I might not need to worry in this game however- as its turn based. 

John&gt;
Yeah - i wont be trusting box2d - will have to refresh all objects at the end of a turn, to make sure they are in correct positions. 

Tim&gt;
you can use the -debug option, which gives linenumbers on the stacktrace of runtime errors. Besides this I just output my traces to the FlashDevelop output window by redefining the haxe.Log.trace 

haxe.Log.trace = function(v, ?pos:PosInfos) 
{ 
if (v == null) v = &quot;null&quot;;	
flash.Lib.fscommand(&quot;trace&quot;, traceCount1++ + &quot;  &quot; + pos.fileName+&quot;:&quot;+pos.lineNumber+&quot;: &quot; +v); 
}


and/or i outup to Firebug with and ExternalInterface to console.log
i dont think there is a way to debug with breakpoints, i seeyour talking about it on the list anyway ;P</description>
		<content:encoded><![CDATA[<p>Alex ><br />
The clients arnt totally dumb &#8211; they are running the simulation and updating positions, but then adjusting when the information from the server comes &#8211; making sure they are accurate. I havent looked into latency issues yet &#8211; it&#8217;ll be a whole lot of fun it seems (reading up on it). This test is my first 4 hours of looking at multiplayer stuff- so very basic ;P I&#8217;ll look at how to adjust for latency soon, maybe make a post on it next. I might not need to worry in this game however- as its turn based. </p>
<p>John><br />
Yeah &#8211; i wont be trusting box2d &#8211; will have to refresh all objects at the end of a turn, to make sure they are in correct positions. </p>
<p>Tim><br />
you can use the -debug option, which gives linenumbers on the stacktrace of runtime errors. Besides this I just output my traces to the FlashDevelop output window by redefining the haxe.Log.trace </p>
<p>haxe.Log.trace = function(v, ?pos:PosInfos)<br />
{<br />
if (v == null) v = &#8220;null&#8221;;<br />
flash.Lib.fscommand(&#8220;trace&#8221;, traceCount1++ + &#8221;  &#8221; + pos.fileName+&#8221;:&#8221;+pos.lineNumber+&#8221;: &#8221; +v);<br />
}</p>
<p>and/or i outup to Firebug with and ExternalInterface to console.log<br />
i dont think there is a way to debug with breakpoints, i seeyour talking about it on the list anyway ;P</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Timothy Kerchmar</title>
		<link>http://blog.touchmypixel.com/2009/11/multiplayer-games-in-flash/comment-page-1/#comment-330</link>
		<dc:creator>Timothy Kerchmar</dc:creator>
		<pubDate>Sun, 08 Nov 2009 02:11:52 +0000</pubDate>
		<guid isPermaLink="false">http://blog.touchmypixel.com/?p=185#comment-330</guid>
		<description>Hi Tony,

What do you use when you are debugging and profiling these HaXe applications?

-Tim</description>
		<content:encoded><![CDATA[<p>Hi Tony,</p>
<p>What do you use when you are debugging and profiling these HaXe applications?</p>
<p>-Tim</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: John Nesky</title>
		<link>http://blog.touchmypixel.com/2009/11/multiplayer-games-in-flash/comment-page-1/#comment-329</link>
		<dc:creator>John Nesky</dc:creator>
		<pubDate>Sat, 07 Nov 2009 06:38:45 +0000</pubDate>
		<guid isPermaLink="false">http://blog.touchmypixel.com/?p=185#comment-329</guid>
		<description>Yeah, turn-based seems to be the wait to do it. Although I guess another way to support multiplayer physics flash games is to not let the players interact with each other and put them in separate simulations. 

Just in case it&#039;s not clear: While Box2D is as deterministic as possible, the Flash player does not guarantee consistent floating point math across architectures. It might seem deterministic if you repeat a simulation on one machine, but if you try hard enough you can find a machine that will produce a different outcome. This has been a source of contention for some people trying network-y stuff in the past. So don&#039;t rely on determinism. :)</description>
		<content:encoded><![CDATA[<p>Yeah, turn-based seems to be the wait to do it. Although I guess another way to support multiplayer physics flash games is to not let the players interact with each other and put them in separate simulations. </p>
<p>Just in case it&#8217;s not clear: While Box2D is as deterministic as possible, the Flash player does not guarantee consistent floating point math across architectures. It might seem deterministic if you repeat a simulation on one machine, but if you try hard enough you can find a machine that will produce a different outcome. This has been a source of contention for some people trying network-y stuff in the past. So don&#8217;t rely on determinism. <img src='http://blog.touchmypixel.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alex Schearer</title>
		<link>http://blog.touchmypixel.com/2009/11/multiplayer-games-in-flash/comment-page-1/#comment-328</link>
		<dc:creator>Alex Schearer</dc:creator>
		<pubDate>Fri, 06 Nov 2009 21:17:30 +0000</pubDate>
		<guid isPermaLink="false">http://blog.touchmypixel.com/?p=185#comment-328</guid>
		<description>I actually started playing around w/ Project Darkstar and got about this far, too. How do you update the clients? It sounds like you send any changes at a certain interval, does that mean the clients are totally dumb? Or do they run their own simulations, too (e.g. they control their cannon ball)? If so how do you plan on reconciling the latency issues in each client? For example, if I fire a cannon ball and it takes 100ms to reach the server then 200ms to reach my client how do you ensure that it&#039;s in the correct position across all clients?

Sorry to blast you with questions! I&#039;m just interested in hearing how others are working through these problems.</description>
		<content:encoded><![CDATA[<p>I actually started playing around w/ Project Darkstar and got about this far, too. How do you update the clients? It sounds like you send any changes at a certain interval, does that mean the clients are totally dumb? Or do they run their own simulations, too (e.g. they control their cannon ball)? If so how do you plan on reconciling the latency issues in each client? For example, if I fire a cannon ball and it takes 100ms to reach the server then 200ms to reach my client how do you ensure that it&#8217;s in the correct position across all clients?</p>
<p>Sorry to blast you with questions! I&#8217;m just interested in hearing how others are working through these problems.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: robo</title>
		<link>http://blog.touchmypixel.com/2009/11/multiplayer-games-in-flash/comment-page-1/#comment-327</link>
		<dc:creator>robo</dc:creator>
		<pubDate>Fri, 06 Nov 2009 09:04:33 +0000</pubDate>
		<guid isPermaLink="false">http://blog.touchmypixel.com/?p=185#comment-327</guid>
		<description>wow!,great!,
I want to ask is this support video?or phone steam?</description>
		<content:encoded><![CDATA[<p>wow!,great!,<br />
I want to ask is this support video?or phone steam?</p>
]]></content:encoded>
	</item>
</channel>
</rss>
