<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: Virtual Connection over UDP</title>
	<atom:link href="http://gafferongames.com/networking-for-game-programmers/virtual-connection-over-udp/feed/" rel="self" type="application/rss+xml" />
	<link>http://gafferongames.com</link>
	<description>Glenn Fiedler, an Australian Game Developer in Los Angeles</description>
	<lastBuildDate>Mon, 15 Mar 2010 23:43:56 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Christopher Cubells</title>
		<link>http://gafferongames.com/networking-for-game-programmers/virtual-connection-over-udp/#comment-12432</link>
		<dc:creator>Christopher Cubells</dc:creator>
		<pubDate>Mon, 18 Jan 2010 00:06:25 +0000</pubDate>
		<guid isPermaLink="false">http://gafferongames.wordpress.com/?page_id=130#comment-12432</guid>
		<description>When using Visual Studio Express 2010 Beta 2 to compile your example Client/Server code, there is an issue with the dynamic packet array in the Net.h header file.

unsigned char packet[size+4];

needs to be changed to:

unsigned char **packet;
packet = new unsigned char*[size+4];

and in the if statement below the cast of (unsigned char) needs to be changed to (unsigned char*)

These changes need to be applied to both ReceivePacket and SendPacket functions.</description>
		<content:encoded><![CDATA[<p>When using Visual Studio Express 2010 Beta 2 to compile your example Client/Server code, there is an issue with the dynamic packet array in the Net.h header file.</p>
<p>unsigned char packet[size+4];</p>
<p>needs to be changed to:</p>
<p>unsigned char **packet;<br />
packet = new unsigned char*[size+4];</p>
<p>and in the if statement below the cast of (unsigned char) needs to be changed to (unsigned char*)</p>
<p>These changes need to be applied to both ReceivePacket and SendPacket functions.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Glenn Fiedler</title>
		<link>http://gafferongames.com/networking-for-game-programmers/virtual-connection-over-udp/#comment-12076</link>
		<dc:creator>Glenn Fiedler</dc:creator>
		<pubDate>Tue, 08 Dec 2009 15:14:37 +0000</pubDate>
		<guid isPermaLink="false">http://gafferongames.wordpress.com/?page_id=130#comment-12076</guid>
		<description>Thanks, yep there are more articles coming - cheers</description>
		<content:encoded><![CDATA[<p>Thanks, yep there are more articles coming &#8211; cheers</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomas Herman</title>
		<link>http://gafferongames.com/networking-for-game-programmers/virtual-connection-over-udp/#comment-12072</link>
		<dc:creator>Tomas Herman</dc:creator>
		<pubDate>Tue, 08 Dec 2009 12:06:32 +0000</pubDate>
		<guid isPermaLink="false">http://gafferongames.wordpress.com/?page_id=130#comment-12072</guid>
		<description>I know you published this quite a while ago but dude, each one of your articles is more useful then 5x2hour lessons on our uni...thx a lot and pls keep publishing them ;]</description>
		<content:encoded><![CDATA[<p>I know you published this quite a while ago but dude, each one of your articles is more useful then 5&#215;2hour lessons on our uni&#8230;thx a lot and pls keep publishing them ;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Glenn Fiedler</title>
		<link>http://gafferongames.com/networking-for-game-programmers/virtual-connection-over-udp/#comment-11059</link>
		<dc:creator>Glenn Fiedler</dc:creator>
		<pubDate>Thu, 07 May 2009 21:43:51 +0000</pubDate>
		<guid isPermaLink="false">http://gafferongames.wordpress.com/?page_id=130#comment-11059</guid>
		<description>thank you very much! :)</description>
		<content:encoded><![CDATA[<p>thank you very much! <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Aaron</title>
		<link>http://gafferongames.com/networking-for-game-programmers/virtual-connection-over-udp/#comment-11058</link>
		<dc:creator>Aaron</dc:creator>
		<pubDate>Thu, 07 May 2009 17:39:29 +0000</pubDate>
		<guid isPermaLink="false">http://gafferongames.wordpress.com/?page_id=130#comment-11058</guid>
		<description>Excellent articles.
I highly support this endeavor, so I donated 10 of our Canadian dollars for you to continue.

If I decide to incorporate networking into my game prototype, then your articles are definitely the resource I will be using.</description>
		<content:encoded><![CDATA[<p>Excellent articles.<br />
I highly support this endeavor, so I donated 10 of our Canadian dollars for you to continue.</p>
<p>If I decide to incorporate networking into my game prototype, then your articles are definitely the resource I will be using.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Glenn Fiedler</title>
		<link>http://gafferongames.com/networking-for-game-programmers/virtual-connection-over-udp/#comment-10588</link>
		<dc:creator>Glenn Fiedler</dc:creator>
		<pubDate>Tue, 17 Mar 2009 02:29:47 +0000</pubDate>
		<guid isPermaLink="false">http://gafferongames.wordpress.com/?page_id=130#comment-10588</guid>
		<description>ok well, please feel free to click that &quot;Donate!&quot; button anytime you like =)

cheers mate</description>
		<content:encoded><![CDATA[<p>ok well, please feel free to click that &#8220;Donate!&#8221; button anytime you like =)</p>
<p>cheers mate</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: DaveSmith</title>
		<link>http://gafferongames.com/networking-for-game-programmers/virtual-connection-over-udp/#comment-10586</link>
		<dc:creator>DaveSmith</dc:creator>
		<pubDate>Mon, 16 Mar 2009 22:33:16 +0000</pubDate>
		<guid isPermaLink="false">http://gafferongames.wordpress.com/?page_id=130#comment-10586</guid>
		<description>yeah, I would have paid for your knowledge right now. I have tried to avoid network programming as much as I can but now its essential that I start to use it. Your articles have really brought me up to speed, thanks for sharing</description>
		<content:encoded><![CDATA[<p>yeah, I would have paid for your knowledge right now. I have tried to avoid network programming as much as I can but now its essential that I start to use it. Your articles have really brought me up to speed, thanks for sharing</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Glenn Fiedler</title>
		<link>http://gafferongames.com/networking-for-game-programmers/virtual-connection-over-udp/#comment-10585</link>
		<dc:creator>Glenn Fiedler</dc:creator>
		<pubDate>Mon, 16 Mar 2009 18:53:41 +0000</pubDate>
		<guid isPermaLink="false">http://gafferongames.wordpress.com/?page_id=130#comment-10585</guid>
		<description>thanks! 

well the current plan is keep plugging away on the articles over the next few years, then when they are all done in a first pass, turn it into a book, with diagrams, code samples and all that - and sell that as an ebook, or printed on dead trees (maybe)

does this sound like a good idea to you? 

did you have something else in mind? 

cheers</description>
		<content:encoded><![CDATA[<p>thanks! </p>
<p>well the current plan is keep plugging away on the articles over the next few years, then when they are all done in a first pass, turn it into a book, with diagrams, code samples and all that &#8211; and sell that as an ebook, or printed on dead trees (maybe)</p>
<p>does this sound like a good idea to you? </p>
<p>did you have something else in mind? </p>
<p>cheers</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: DaveSmith</title>
		<link>http://gafferongames.com/networking-for-game-programmers/virtual-connection-over-udp/#comment-10582</link>
		<dc:creator>DaveSmith</dc:creator>
		<pubDate>Mon, 16 Mar 2009 13:35:47 +0000</pubDate>
		<guid isPermaLink="false">http://gafferongames.wordpress.com/?page_id=130#comment-10582</guid>
		<description>Hi Glenn, these articles are the best that I have found on game networking and the samples are excellent. Would you consider selling the rest of the articles for a bundle price?</description>
		<content:encoded><![CDATA[<p>Hi Glenn, these articles are the best that I have found on game networking and the samples are excellent. Would you consider selling the rest of the articles for a bundle price?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Glenn Fiedler</title>
		<link>http://gafferongames.com/networking-for-game-programmers/virtual-connection-over-udp/#comment-9950</link>
		<dc:creator>Glenn Fiedler</dc:creator>
		<pubDate>Thu, 23 Oct 2008 18:02:54 +0000</pubDate>
		<guid isPermaLink="false">http://gafferongames.wordpress.com/?page_id=130#comment-9950</guid>
		<description>You are right you could just do this, but it is risky - what if somebody wished to fake a packet so it looked like it came from the correct address, but it was setup such that it would confuse or crash your server?

This sort of packet injection attack is actually quite common, so for now we just add our protocol id as some sort of &quot;place holder&quot; for real security

In reality it is best to use an encrypted connection such that the packet is encoded by some public key so that nobody may insert packets, you&#039;ll find this is done on serious network platforms like Xbox-Live and PSN, and if you are planning on implementing your own game protocol you should at least have some sort of security to avoid packet tampering or injection

I&#039;ll be covering this in a later article! For now please note that this simple connection is really only suitable for playing over a LAN, it is not hardened such that it would be shippable for a modern multiplayer game. You should use some comms library like Raknet or OpenTNL instead!

cheers</description>
		<content:encoded><![CDATA[<p>You are right you could just do this, but it is risky &#8211; what if somebody wished to fake a packet so it looked like it came from the correct address, but it was setup such that it would confuse or crash your server?</p>
<p>This sort of packet injection attack is actually quite common, so for now we just add our protocol id as some sort of &#8220;place holder&#8221; for real security</p>
<p>In reality it is best to use an encrypted connection such that the packet is encoded by some public key so that nobody may insert packets, you&#8217;ll find this is done on serious network platforms like Xbox-Live and PSN, and if you are planning on implementing your own game protocol you should at least have some sort of security to avoid packet tampering or injection</p>
<p>I&#8217;ll be covering this in a later article! For now please note that this simple connection is really only suitable for playing over a LAN, it is not hardened such that it would be shippable for a modern multiplayer game. You should use some comms library like Raknet or OpenTNL instead!</p>
<p>cheers</p>
]]></content:encoded>
	</item>
</channel>
</rss>
