<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.cas.mcmaster.ca/skins/common/feed.css?207"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://wiki.cas.mcmaster.ca/index.php?feed=atom&amp;target=Leunga5&amp;title=Special%3AContributions</id>
		<title>Computing and Software Wiki - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.cas.mcmaster.ca/index.php?feed=atom&amp;target=Leunga5&amp;title=Special%3AContributions"/>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/Special:Contributions/Leunga5"/>
		<updated>2026-04-06T03:21:37Z</updated>
		<subtitle>From Computing and Software Wiki</subtitle>
		<generator>MediaWiki 1.15.1</generator>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/BitTorrent</id>
		<title>BitTorrent</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/BitTorrent"/>
				<updated>2008-04-14T03:31:19Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''BitTorrent''' is a peer to peer file sharing protocol.  The protocol works in a way such that there is not a single host distributing the file, instead, all users downloading the file also share in uploading as well.  This reduces the burden on resources by the distributer as all users wishing to download the content are taking part in uploading pieces and parts of the data file.  &lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
==How It Works==&lt;br /&gt;
The method allows essentially any kind of data to be distributed in a manor such that all users downloading the same file, referred as leechers, will upload bits and parts of the file that they have already downloaded.  Users that have the complete file and still connected to the tracker are referred as seeders.  The tracker is simply a list of all users that are currently connected to the torrent of interest, while categorizing the number of leechers and seeders to determine the healthiness of the torrent.  &lt;br /&gt;
&lt;br /&gt;
Users download &amp;quot;torrent&amp;quot; files that are created specifically for the file to be distributed.  Using a bittorrent client, the user opens the torrent file which contains the URL of the tracker that the torrent was published to, and attempts to connect to the tracker.  If the tracker is up and running, the user enters the ''swarm'' which is the collection of all the seeders and leechers.  The client makes many peer to peer TCP connections to trade the fragments of the file.  Essentially, having lots of users with the file of interest being downloaded, the transfer speeds are maximized by sharing bits and parts of the files that has already been downloaded [1].&lt;br /&gt;
&lt;br /&gt;
In general, most bittorrent clients have their own policies that determine how fast or slow a download achieves.  Some clients require that the ratio of downloads and uploads be fairly even in order to achieve the fastest downloads, a policy of fairness.  Other clients may attempt to exploit the generosity of the seeders and allow leechers to download at full speeds without having to contribute in uploading.&lt;br /&gt;
&lt;br /&gt;
==Creating a Torrent==&lt;br /&gt;
Most bittorrent clients support creating your own torrent files.  The setup wizards will ask for certain details such as the announcing tracker and the file you wish to distribute.&lt;br /&gt;
&lt;br /&gt;
The file being created gets fragmented into many small pieces of equally sized data from 64kB to 4MB.  A checksum is created for each of the fragmented pieces and stored in the torrent file with a hashing algorithm.  When a complete fragment is downloaded by a user, the checksum is compared with the checksum in the torrent file for integrity.  If the file is corrupt, the data will be re-downloaded [2].&lt;br /&gt;
&lt;br /&gt;
Upon completion of creating a torrent, it is normally then hosted on many torrent search engines that have trackers for each of the torrents.  Users would search for the file of interest, download the torrent and proceed in the process of downloading the file.&lt;br /&gt;
&lt;br /&gt;
==Drawbacks and Issues==&lt;br /&gt;
&lt;br /&gt;
BitTorrent relies heavily on the cooperativeness of the users involved in sharing the files.  It is highly necessary for users that finish downloading to stay connected to the tracker for as long as possible to allow better distribution of complete and rare pieces of the file.  However, greediness of users lead to dying trackers as they disconnect from the tracker as soon as they finish the downloading the file.  This in turn reduces the number of seeders and fewer complete files to be distributed.  In the worst case that there are no seeders left and all the leechers downloading are missing a rare part of the file, all the users remaining in the swarm will never complete the file.  Therefore it is essential that there is cooperation between the users to give as well as take.  &lt;br /&gt;
&lt;br /&gt;
BitTorrent is in no way anonymous as all past and present users connected to the tracker can have their IP addresses obtained [2].&lt;br /&gt;
[[Image:bittorrent.jpg|thumb|600px|In this image is an example of the Azureus client on a Windows machine.  It features the ability to have simultaneous downloads and uploads.  The image shows information about the file being downloaded including the total file size, current size downloaded, number of seeders and leechers ( connected to and part of the swarm) as well as the users upload/download speed]]&lt;br /&gt;
&lt;br /&gt;
==Industries Using BitTorrent==&lt;br /&gt;
Gaming industries such as the popular Massively Multiplayer Online Roleplaying Game, World of Warcraft by Blizzard Entertainment, has been using this technology since 2004 to provide game updates to the large user base.  &lt;br /&gt;
&lt;br /&gt;
Videos from Hollywood studios has licenses that have been allowed for redistribution using BitTorrent Inc. at their companies websites as well [2].&lt;br /&gt;
&lt;br /&gt;
Many Open Source Software distributors are avid supporters of the technology in sharing their software for download.&lt;br /&gt;
&lt;br /&gt;
==Popular Clients and Search Engines==&lt;br /&gt;
'''Clients'''&lt;br /&gt;
* [http://www.bittorrent.com/ BitTorrent Client] is the first original client &lt;br /&gt;
* [http://azureus.sourceforge.net/ Azureus BitTorrent Client] is a Java based client for cross-platform compatibility&lt;br /&gt;
* [http://utorrent.com/ µTorrent] is a light-weight, feature filled and easy to use client&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Search Engines'''&lt;br /&gt;
&lt;br /&gt;
Note: P2P is legal, however many of the torrents infringe on copyright laws and are infact illegal.  However in Canada, users are protected from P2P copyright lawsuits. [3]&lt;br /&gt;
&lt;br /&gt;
* [http://isohunt.com/ ISOhunt] The top most popular torrent database&lt;br /&gt;
* [http://mininova.org/ Mininova] Successor to Supernova, one of the top search engines &lt;br /&gt;
* [http://thepiratebay.org/ The Pirate Bay] Single largest torrent database&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
[[Peer To Peer Network Security]]&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
[1] Howstuffworks - [http://computer.howstuffworks.com/bittorrent.htm How Bittorrent Works] Carmack, C&lt;br /&gt;
&lt;br /&gt;
[2] Wikipedia - [http://en.wikipedia.org/wiki/BitTorrent_%28protocol%29 BitTorrent]&lt;br /&gt;
&lt;br /&gt;
[3] About.com - [http://netforbeginners.about.com/od/peersharing/f/torrentsearch.htm What are the Best Bit Torrent Search Engines?]&lt;br /&gt;
&lt;br /&gt;
--[[User:Leunga5|Leunga5]] 18:35, 13 April 2008 (EDT)&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/BitTorrent</id>
		<title>BitTorrent</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/BitTorrent"/>
				<updated>2008-04-14T03:23:24Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''BitTorrent''' is a peer to peer file sharing protocol.  The protocol works in a way such that there is not a single host distributing the file, instead, all users downloading the file also share in uploading as well.  This reduces the burden on resources by the distributer as all users wishing to download the content are taking part in uploading pieces and parts of the data file.  &lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
==How It Works==&lt;br /&gt;
The method allows essentially any kind of data to be distributed in a manor such that all users downloading the same file, referred as leechers, will upload bits and parts of the file that they have already downloaded.  Users that have the complete file and still connected to the tracker are referred as seeders.  The tracker is simply a list of all users that are currently connected to the torrent of interest, while categorizing the number of leechers and seeders to determine the healthiness of the torrent.  &lt;br /&gt;
&lt;br /&gt;
Users download &amp;quot;torrent&amp;quot; files that are created specifically for the file to be distributed.  Using a bittorrent client, the user opens the torrent file which contains the URL of the tracker that the torrent was published to, and attempts to connect to the tracker.  If the tracker is up and running, the user enters the ''swarm'' which is the collection of all the seeders and leechers.  The client makes many peer to peer TCP connections to trade the fragments of the file.  Essentially, having lots of users with the file of interest being downloaded, the transfer speeds are maximized by sharing bits and parts of the files that has already been downloaded [1].&lt;br /&gt;
&lt;br /&gt;
In general, most bittorrent clients have their own policies that determine how fast or slow a download achieves.  Some clients require that the ratio of downloads and uploads be fairly even in order to achieve the fastest downloads, a policy of fairness.  Other clients may attempt to exploit the generosity of the seeders and allow leechers to download at full speeds without having to contribute in uploading.&lt;br /&gt;
&lt;br /&gt;
==Creating a Torrent==&lt;br /&gt;
Most bittorrent clients support creating your own torrent files.  The setup wizards will ask for certain details such as the announcing tracker and the file you wish to distribute.&lt;br /&gt;
&lt;br /&gt;
The file being created gets fragmented into many small pieces of equally sized data from 64kB to 4MB.  A checksum is created for each of the fragmented pieces and stored in the torrent file with a hashing algorithm.  When a complete fragment is downloaded by a user, the checksum is compared with the checksum in the torrent file for integrity.  If the file is corrupt, the data will be re-downloaded [2].&lt;br /&gt;
&lt;br /&gt;
Upon completion of creating a torrent, it is normally then hosted on many torrent search engines that have trackers for each of the torrents.  Users would search for the file of interest, download the torrent and proceed in the process of downloading the file.&lt;br /&gt;
&lt;br /&gt;
==Drawbacks and Issues==&lt;br /&gt;
&lt;br /&gt;
BitTorrent relies heavily on the cooperativeness of the users involved in sharing the files.  It is highly necessary for users that finish downloading to stay connected to the tracker for as long as possible to allow better distribution of complete and rare pieces of the file.  However, greediness of users lead to dying trackers as they disconnect from the tracker as soon as they finish the downloading the file.  This in turn reduces the number of seeders and fewer complete files to be distributed.  In the worst case that there are no seeders left and all the leechers downloading are missing a rare part of the file, all the users remaining in the swarm will never complete the file.  Therefore it is essential that there is cooperation between the users to give as well as take.  &lt;br /&gt;
&lt;br /&gt;
BitTorrent is in no way anonymous as all past and present users connected to the tracker can have their IP addresses obtained [2].&lt;br /&gt;
[[Image:bittorrent.jpg|thumb|600px|In this image is an example of the Azureus client on a Windows machine.  It features the ability to have simultaneous downloads and uploads.  The image shows information about the file being downloaded including the total file size, current size downloaded, number of seeders and leechers ( connected to and part of the swarm) as well as the users upload/download speed]]&lt;br /&gt;
&lt;br /&gt;
==Popular Clients and Search Engines==&lt;br /&gt;
'''Clients'''&lt;br /&gt;
* [http://www.bittorrent.com/ BitTorrent Client] is the first original client &lt;br /&gt;
* [http://azureus.sourceforge.net/ Azureus BitTorrent Client] is a Java based client for cross-platform compatibility&lt;br /&gt;
* [http://utorrent.com/ µTorrent] is a light-weight, feature filled and easy to use client&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Search Engines'''&lt;br /&gt;
Note: P2P is legal, however many of the torrents infringe on copyright laws and are infact illegal.  However in Canada, users are protected from P2P copyright lawsuits. [3]&lt;br /&gt;
* [http://isohunt.com/ ISOhunt] The top most popular torrent database&lt;br /&gt;
* [http://mininova.org/ Mininova] Successor to Supernova, one of the top search engines &lt;br /&gt;
* [http://thepiratebay.org/ The Pirate Bay] Single largest torrent database&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
[[Peer To Peer Network Security]]&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
[1] Howstuffworks - [http://computer.howstuffworks.com/bittorrent.htm How Bittorrent Works] Carmack, C&lt;br /&gt;
&lt;br /&gt;
[2] Wikipedia - [http://en.wikipedia.org/wiki/BitTorrent_%28protocol%29 BitTorrent]&lt;br /&gt;
&lt;br /&gt;
[3] About.com - [http://netforbeginners.about.com/od/peersharing/f/torrentsearch.htm What are the Best Bit Torrent Search Engines?]&lt;br /&gt;
&lt;br /&gt;
--[[User:Leunga5|Leunga5]] 18:35, 13 April 2008 (EDT)&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/BitTorrent</id>
		<title>BitTorrent</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/BitTorrent"/>
				<updated>2008-04-14T01:56:24Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''BitTorrent''' is a peer to peer file sharing protocol.  The protocol works in a way such that there is not a single host distributing the file, instead, all users downloading the file also share in uploading as well.  This reduces the burden on resources by the distributer as all users wishing to download the content are taking part in uploading pieces and parts of the data file.  &lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
==How It Works==&lt;br /&gt;
The method allows essentially any kind of data to be distributed in a manor such that all users downloading the same file, referred as leechers, will upload bits and parts of the file that they have already downloaded.  Users that have the complete file and still connected to the tracker are referred as seeders.  The tracker is simply a list of all users that are currently connected to the torrent of interest, while categorizing the number of leechers and seeders to determine the healthiness of the torrent.  &lt;br /&gt;
&lt;br /&gt;
Users download &amp;quot;torrent&amp;quot; files that are created specifically for the file to be distributed.  Using a bittorrent client, the user opens the torrent file which contains the URL of the tracker that the torrent was published to, and attempts to connect to the tracker.  If the tracker is up and running, the user enters the ''swarm'' which is the collection of all the seeders and leechers.  The client makes many peer to peer TCP connections to trade the fragments of the file.  Essentially, having lots of users with the file of interest being downloaded, the transfer speeds are maximized by sharing bits and parts of the files that has already been downloaded [1].&lt;br /&gt;
&lt;br /&gt;
In general, most bittorrent clients have their own policies that determine how fast or slow a download achieves.  Some clients require that the ratio of downloads and uploads be fairly even in order to achieve the fastest downloads, a policy of fairness.  Other clients may attempt to exploit the generosity of the seeders and allow leechers to download at full speeds without having to contribute in uploading.&lt;br /&gt;
&lt;br /&gt;
==Creating a Torrent==&lt;br /&gt;
Most bittorrent clients support creating your own torrent files.  The setup wizards will ask for certain details such as the announcing tracker and the file you wish to distribute.&lt;br /&gt;
&lt;br /&gt;
The file being created gets fragmented into many small pieces of equally sized data from 64kB to 4MB.  A checksum is created for each of the fragmented pieces and stored in the torrent file with a hashing algorithm.  When a complete fragment is downloaded by a user, the checksum is compared with the checksum in the torrent file for integrity.  If the file is corrupt, the data will be re-downloaded [2].&lt;br /&gt;
&lt;br /&gt;
Upon completion of creating a torrent, it is normally then hosted on many torrent search engines that have trackers for each of the torrents.  Users would search for the file of interest, download the torrent and proceed in the process of downloading the file.&lt;br /&gt;
&lt;br /&gt;
==Drawbacks and Issues==&lt;br /&gt;
&lt;br /&gt;
BitTorrent relies heavily on the cooperativeness of the users involved in sharing the files.  It is highly necessary for users that finish downloading to stay connected to the tracker for as long as possible to allow better distribution of complete and rare pieces of the file.  However, greediness of users lead to dying trackers as they disconnect from the tracker as soon as they finish the downloading the file.  This in turn reduces the number of seeders and fewer complete files to be distributed.  In the worst case that there are no seeders left and all the leechers downloading are missing a rare part of the file, all the users remaining in the swarm will never complete the file.  Therefore it is essential that there is cooperation between the users to give as well as take.  &lt;br /&gt;
&lt;br /&gt;
BitTorrent is in no way anonymous as all past and present users connected to the tracker can have their IP addresses obtained [2].&lt;br /&gt;
[[Image:bittorrent.jpg|thumb|600px|In this image is an example of the Azureus client on a Windows machine.  It features the ability to have simultaneous downloads and uploads.  The image shows information about the file being downloaded including the total file size, current size downloaded, number of seeders and leechers ( connected to and part of the swarm) as well as the users upload/download speed]]&lt;br /&gt;
&lt;br /&gt;
==Popular Clients and Search Engines==&lt;br /&gt;
'''Clients'''&lt;br /&gt;
* [http://www.bittorrent.com/ BitTorrent Client] is the first original client &lt;br /&gt;
* [http://azureus.sourceforge.net/ Azureus BitTorrent Client] is a Java based client for cross-platform compatibility&lt;br /&gt;
* [http://utorrent.com/ µTorrent] is a light-weight, feature filled and easy to use client&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Search Engines'''&lt;br /&gt;
Most search engines &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
[[Peer To Peer Network Security]]&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
[1] Howstuffworks - [http://computer.howstuffworks.com/bittorrent.htm How Bittorrent Works] Carmack, C&lt;br /&gt;
&lt;br /&gt;
[2] Wikipedia - [http://en.wikipedia.org/wiki/BitTorrent_%28protocol%29 BitTorrent]&lt;br /&gt;
&lt;br /&gt;
--[[User:Leunga5|Leunga5]] 18:35, 13 April 2008 (EDT)&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/File:Bittorrent.jpg</id>
		<title>File:Bittorrent.jpg</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/File:Bittorrent.jpg"/>
				<updated>2008-04-14T01:44:46Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;Image of Azureus bittorrent client&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Image of Azureus bittorrent client&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/BitTorrent</id>
		<title>BitTorrent</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/BitTorrent"/>
				<updated>2008-04-13T22:44:12Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''BitTorrent''' is a peer to peer file sharing protocol.  The protocol works in a way such that there is not a single host distributing the file, instead, all users downloading the file also share in uploading as well.  This reduces the burden on resources by the distributer as all users wishing to download the content are taking part in uploading pieces and parts of the data file.  &lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
==How It Works==&lt;br /&gt;
The method allows essentially any kind of data to be distributed in a manor such that all users downloading the same file, referred as leechers, will upload bits and parts of the file that they have already downloaded.  Users that have the complete file and still connected to the tracker are referred as seeders.  The tracker is simply a list of all users that are currently connected to the torrent of interest, while categorizing the number of leechers and seeders to determine the healthiness of the torrent.  &lt;br /&gt;
&lt;br /&gt;
Users download &amp;quot;torrent&amp;quot; files that are created specifically for the file to be distributed.  Using a bittorrent client, the user opens the torrent file which contains the URL of the tracker that the torrent was published to, and attempts to connect to the tracker.  If the tracker is up and running, the user enters the ''swarm'' which is the collection of all the seeders and leechers.  The client makes many peer to peer TCP connections to trade the fragments of the file.  Essentially, having lots of users with the file of interest being downloaded, the transfer speeds are maximized by sharing bits and parts of the files that has already been downloaded [1].&lt;br /&gt;
&lt;br /&gt;
In general, most bittorrent clients have their own policies that determine how fast or slow a download achieves.  Some clients require that the ratio of downloads and uploads be fairly even in order to achieve the fastest downloads, a policy of fairness.  Other clients may attempt to exploit the generosity of the seeders and allow leechers to download at full speeds without having to contribute in uploading.&lt;br /&gt;
&lt;br /&gt;
==Creating a Torrent==&lt;br /&gt;
Most bittorrent clients support creating your own torrent files.  The setup wizards will ask for certain details such as the announcing tracker and the file you wish to distribute.&lt;br /&gt;
&lt;br /&gt;
The file being created gets fragmented into many small pieces of equally sized data from 64kB to 4MB.  A checksum is created for each of the fragmented pieces and stored in the torrent file with a hashing algorithm.  When a complete fragment is downloaded by a user, the checksum is compared with the checksum in the torrent file for integrity.  If the file is corrupt, the data will be re-downloaded [2].&lt;br /&gt;
&lt;br /&gt;
Upon completion of creating a torrent, it is normally then hosted on many torrent search engines that have trackers for each of the torrents.  Users would search for the file of interest, download the torrent and proceed in the process of downloading the file.&lt;br /&gt;
&lt;br /&gt;
==Drawbacks and Issues==&lt;br /&gt;
&lt;br /&gt;
BitTorrent relies heavily on the cooperativeness of the users involved in sharing the files.  It is highly necessary for users that finish downloading to stay connected to the tracker for as long as possible to allow better distribution of complete and rare pieces of the file.  However, greediness of users lead to dying trackers as they disconnect from the tracker as soon as they finish the downloading the file.  This in turn reduces the number of seeders and fewer complete files to be distributed.  In the worst case that there are no seeders left and all the leechers downloading are missing a rare part of the file, all the users remaining in the swarm will never complete the file.  Therefore it is essential that there is cooperation between the users to give as well as take.  &lt;br /&gt;
&lt;br /&gt;
BitTorrent is in no way anonymous as all past and present users connected to the tracker can have their IP addresses obtained [2].&lt;br /&gt;
&lt;br /&gt;
==Popular Clients and Search Engines==&lt;br /&gt;
'''Clients'''&lt;br /&gt;
* [http://www.bittorrent.com/ BitTorrent Client]&lt;br /&gt;
* [http://azureous.sourceforge.net/ Azureus Java BitTorrent Client]&lt;br /&gt;
* [http://utorrent.com/ µTorrent]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
[[Peer To Peer Network Security]]&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
[1] Howstuffworks - [http://computer.howstuffworks.com/bittorrent.htm How Bittorrent Works] Carmack, C&lt;br /&gt;
&lt;br /&gt;
[2] Wikipedia - [http://en.wikipedia.org/wiki/BitTorrent_%28protocol%29 BitTorrent]&lt;br /&gt;
&lt;br /&gt;
--[[User:Leunga5|Leunga5]] 18:35, 13 April 2008 (EDT)&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/BitTorrent</id>
		<title>BitTorrent</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/BitTorrent"/>
				<updated>2008-04-13T22:35:39Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''BitTorrent''' is a peer to peer file sharing protocol.  The protocol works in a way such that there is not a single host distributing the file, instead, all users downloading the file also share in uploading as well.  This reduces the burden on resources by the distributer as all users wishing to download the content are taking part in uploading pieces and parts of the data file.  &lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
==How It Works==&lt;br /&gt;
The method allows essentially any kind of data to be distributed in a manor such that all users downloading the same file, referred as leechers, will upload bits and parts of the file that they have already downloaded.  Users that have the complete file and still connected to the tracker are referred as seeders.  The tracker is simply a list of all users that are currently connected to the torrent of interest, while categorizing the number of leechers and seeders to determine the healthiness of the torrent.  &lt;br /&gt;
&lt;br /&gt;
Users download &amp;quot;torrent&amp;quot; files that are created specifically for the file to be distributed.  Using a bittorrent client, the user opens the torrent file which contains the URL of the tracker that the torrent was published to, and attempts to connect to the tracker.  If the tracker is up and running, the user enters the ''swarm'' which is the collection of all the seeders and leechers.  The client makes many peer to peer TCP connections to trade the fragments of the file.  Essentially, having lots of users with the file of interest being downloaded, the transfer speeds are maximized by sharing bits and parts of the files that has already been downloaded [1].&lt;br /&gt;
&lt;br /&gt;
In general, most bittorrent clients have their own policies that determine how fast or slow a download achieves.  Some clients require that the ratio of downloads and uploads be fairly even in order to achieve the fastest downloads, a policy of fairness.  Other clients may attempt to exploit the generosity of the seeders and allow leechers to download at full speeds without having to contribute in uploading.&lt;br /&gt;
&lt;br /&gt;
==Creating a Torrent==&lt;br /&gt;
Most bittorrent clients support creating your own torrent files.  The setup wizards will ask for certain details such as the announcing tracker and the file you wish to distribute.&lt;br /&gt;
&lt;br /&gt;
The file being created gets fragmented into many small pieces of equally sized data from 64kB to 4MB.  A checksum is created for each of the fragmented pieces and stored in the torrent file with a hashing algorithm.  When a complete fragment is downloaded by a user, the checksum is compared with the checksum in the torrent file for integrity.  If the file is corrupt, the data will be re-downloaded [2].&lt;br /&gt;
&lt;br /&gt;
Upon completion of creating a torrent, it is normally then hosted on many torrent search engines that have trackers for each of the torrents.  Users would search for the file of interest, download the torrent and proceed in the process of downloading the file.&lt;br /&gt;
&lt;br /&gt;
==Drawbacks and Issues==&lt;br /&gt;
&lt;br /&gt;
BitTorrent relies heavily on the cooperativeness of the users involved in sharing the files.  It is highly necessary for users that finish downloading to stay connected to the tracker for as long as possible to allow better distribution of complete and rare pieces of the file.  However, greediness of users lead to dying trackers as they disconnect from the tracker as soon as they finish the downloading the file.  This in turn reduces the number of seeders and fewer complete files to be distributed.  In the worst case that there are no seeders left and all the leechers downloading are missing a rare part of the file, all the users remaining in the swarm will never complete the file.  Therefore it is essential that there is cooperation between the users to give as well as take.  &lt;br /&gt;
&lt;br /&gt;
BitTorrent is in no way anonymous as all past and present users connected to the tracker can have their IP addresses obtained [2].&lt;br /&gt;
&lt;br /&gt;
==Popular Clients and Search Engines==&lt;br /&gt;
Clients&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
[[Peer To Peer Network Security]]&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
[1] Howstuffworks - [http://computer.howstuffworks.com/bittorrent.htm How Bittorrent Works] Carmack, C&lt;br /&gt;
&lt;br /&gt;
[2] Wikipedia - [http://en.wikipedia.org/wiki/BitTorrent_%28protocol%29 BitTorrent]&lt;br /&gt;
&lt;br /&gt;
--[[User:Leunga5|Leunga5]] 18:35, 13 April 2008 (EDT)&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/BitTorrent</id>
		<title>BitTorrent</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/BitTorrent"/>
				<updated>2008-04-13T22:09:42Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''BitTorrent''' is a peer to peer file sharing protocol.  The protocol works in a way such that there is not a single host distributing the file, instead, all users downloading the file also share in uploading as well.  This reduces the burden on resources by the distributer as all users wishing to download the content are taking part in uploading pieces and parts of the data file.  &lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
==How It Works==&lt;br /&gt;
The method allows essentially any kind of data to be distributed in a manor such that all users downloading the same file, referred as leechers, will upload bits and parts of the file that they have already downloaded.  Users that have the complete file and still connected to the tracker are referred as seeders.  The tracker is simply a list of all users that are currently connected to the torrent of interest, while categorizing the number of leechers and seeders to determine the healthiness of the torrent.  &lt;br /&gt;
&lt;br /&gt;
Users download &amp;quot;torrent&amp;quot; files that are created specifically for the file to be distributed.  Using a bittorrent client, the user opens the torrent file which contains the URL of the tracker that the torrent was published to, and attempts to connect to the tracker.  If the tracker is up and running, the user enters the ''swarm'' which is the collection of all the seeders and leechers.  The client makes many peer to peer TCP connections to trade the fragments of the file.  Essentially, having lots of users with the file of interest being downloaded, the transfer speeds are maximized by sharing bits and parts of the files that has already been downloaded [1].&lt;br /&gt;
&lt;br /&gt;
In general, most bittorrent clients have their own policies that determine how fast or slow a download achieves.  Some clients require that the ratio of downloads and uploads be fairly even in order to achieve the fastest downloads, a policy of fairness.  Other clients may attempt to exploit the generosity of the seeders and allow leechers to download at full speeds without having to contribute in uploading.&lt;br /&gt;
&lt;br /&gt;
==Creating a Torrent==&lt;br /&gt;
Most bittorrent clients support creating your own torrent files.  The setup wizards will ask for certain details such as the announcing tracker and the file you wish to distribute.&lt;br /&gt;
&lt;br /&gt;
The file being created gets fragmented into many small pieces of equally sized data from 64kB to 4MB.  A checksum is created for each of the fragmented pieces and stored in the torrent file with a hashing algorithm.  When a complete fragment is downloaded by a user, the checksum is compared with the checksum in the torrent file for integrity.  If the file is corrupt, the data will be re-downloaded [2].&lt;br /&gt;
&lt;br /&gt;
Upon completion of creating a torrent, it is normally then hosted on many torrent search engines that have trackers for each of the torrents.  Users would search for the file of interest, download the torrent and proceed in the process of downloading the file.&lt;br /&gt;
&lt;br /&gt;
==Drawbacks and Issues==&lt;br /&gt;
&lt;br /&gt;
BitTorrent relies heavily on the cooperativeness of the users involved in sharing the files.  It is highly necessary for users that finish downloading to stay connected to the tracker for as long as possible to allow better distribution of complete and rare pieces of the file.  However, greediness of users lead to dying trackers as they disconnect from the tracker as soon as they finish the downloading the file.  This in turn reduces the number of seeders and fewer complete files to be distributed.  In the worst case that there are no seeders left and all the leechers downloading are missing a rare part of the file, all the users remaining in the swarm will never complete the file.  Therefore it is essential that there is cooperation between the users to give as well as take.  &lt;br /&gt;
&lt;br /&gt;
BitTorrent is in no way anonymous as all past and present users connected to the tracker can have their IP addresses obtained [2].&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
[[Peer To Peer Network Security]]&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
[1] Howstuffworks - [http://computer.howstuffworks.com/bittorrent.htm How Bittorrent Works] Carmack, C&lt;br /&gt;
&lt;br /&gt;
[2] Wikipedia - [http://en.wikipedia.org/wiki/BitTorrent_%28protocol%29 BitTorrent]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--[[User:207.210.10.1|207.210.10.1]] 18:06, 13 April 2008 (EDT)&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/BitTorrent</id>
		<title>BitTorrent</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/BitTorrent"/>
				<updated>2008-04-13T22:09:01Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''BitTorrent''' is a peer to peer file sharing protocol.  The protocol works in a way such that there is not a single host distributing the file, instead, all users downloading the file also share in uploading as well.  This reduces the burden on resources by the distributer as all users wishing to download the content are taking part in uploading pieces and parts of the data file.  &lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
==How It Works==&lt;br /&gt;
The method allows essentially any kind of data to be distributed in a manor such that all users downloading the same file, referred as leechers, will upload bits and parts of the file that they have already downloaded.  Users that have the complete file and still connected to the tracker are referred as seeders.  The tracker is simply a list of all users that are currently connected to the torrent of interest, while categorizing the number of leechers and seeders to determine the healthiness of the torrent.  &lt;br /&gt;
&lt;br /&gt;
Users download &amp;quot;torrent&amp;quot; files that are created specifically for the file to be distributed.  Using a bittorrent client, the user opens the torrent file which contains the URL of the tracker that the torrent was published to, and attempts to connect to the tracker.  If the tracker is up and running, the user enters the ''swarm'' which is the collection of all the seeders and leechers.  The client makes many peer to peer TCP connections to trade the fragments of the file.  Essentially, having lots of users with the file of interest being downloaded, the transfer speeds are maximized by sharing bits and parts of the files that has already been downloaded [1].&lt;br /&gt;
&lt;br /&gt;
In general, most bittorrent clients have their own policies that determine how fast or slow a download achieves.  Some clients require that the ratio of downloads and uploads be fairly even in order to achieve the fastest downloads, a policy of fairness.  Other clients may attempt to exploit the generosity of the seeders and allow leechers to download at full speeds without having to contribute in uploading.&lt;br /&gt;
&lt;br /&gt;
==Creating a Torrent==&lt;br /&gt;
Most bittorrent clients support creating your own torrent files.  The setup wizards will ask for certain details such as the announcing tracker and the file you wish to distribute.&lt;br /&gt;
&lt;br /&gt;
The file being created gets fragmented into many small pieces of equally sized data from 64kB to 4MB.  A checksum is created for each of the fragmented pieces and stored in the torrent file with a hashing algorithm.  When a complete fragment is downloaded by a user, the checksum is compared with the checksum in the torrent file for integrity.  If the file is corrupt, the data will be re-downloaded [2].&lt;br /&gt;
&lt;br /&gt;
Upon completion of creating a torrent, it is normally then hosted on many torrent search engines that have trackers for each of the torrents.  Users would search for the file of interest, download the torrent and proceed in the process of downloading the file.&lt;br /&gt;
&lt;br /&gt;
==Drawbacks and Issues==&lt;br /&gt;
&lt;br /&gt;
BitTorrent relies heavily on the cooperativeness of the users involved in sharing the files.  It is highly necessary for users that finish downloading to stay connected to the tracker for as long as possible to allow better distribution of complete and rare pieces of the file.  However, greediness of users lead to dying trackers as they disconnect from the tracker as soon as they finish the downloading the file.  This in turn reduces the number of seeders and fewer complete files to be distributed.  In the worst case that there are no seeders left and all the leechers downloading are missing a rare part of the file, all the users remaining in the swarm will never complete the file.  Therefore it is essential that there is cooperation between the users to give as well as take.  &lt;br /&gt;
&lt;br /&gt;
BitTorrent is in no way anonymous as all past and present users connected to the tracker can have their IP addresses obtained [2].&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
[1] Howstuffworks - [http://computer.howstuffworks.com/bittorrent.htm How Bittorrent Works] Carmack, C&lt;br /&gt;
&lt;br /&gt;
[2] Wikipedia - [http://en.wikipedia.org/wiki/BitTorrent_%28protocol%29 BitTorrent]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--[[User:207.210.10.1|207.210.10.1]] 18:06, 13 April 2008 (EDT)&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/BitTorrent</id>
		<title>BitTorrent</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/BitTorrent"/>
				<updated>2008-04-09T02:17:40Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''BitTorrent''' is a peer to peer file sharing protocol.  The protocol works in a way such that there is not a single host distributing the file, instead, all users downloading the file also share in uploading as well.  This reduces the burden on resources by the distributer as all users wishing to download the content are taking part in uploading pieces and parts of the data file.  &lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==How It Works==&lt;br /&gt;
The method allows essentially any kind of data to be distributed in a manor such that all users downloading the same file, referred as leechers, will upload bits and parts of the file that they have already downloaded.  Users that have the complete file and still connected to the tracker are referred as seeders.  The tracker is simply a list of all users that are currently connected to the torrent of interest, while categorizing the number of leechers and seeders to determine the healthiness of the torrent.  &lt;br /&gt;
&lt;br /&gt;
Users download &amp;quot;torrent&amp;quot; files that are created specifically for the file to be distributed.  Using a bittorrent client, the user opens the torrent file which contains the URL of the tracker that the torrent was published to, and attempts to connect to the tracker.  If the tracker is up and running, the user enters the ''swarm'' which is the collection of all the seeders and leechers.  The client makes many peer to peer TCP connections to trade the fragments of the file.&lt;br /&gt;
&lt;br /&gt;
==Drawbacks and Issues==&lt;br /&gt;
&lt;br /&gt;
BitTorrent relies heavily on the cooperativeness of the users involved in sharing the files.  It is highly necessary for users that finish downloading to stay connected to the tracker for as long as possible to allow better distribution of complete and rare pieces of the file.  However, greediness of users lead to dying trackers as they disconnect from the tracker as soon as they finish the downloading the file.  This in turn reduces the number of seeders and fewer complete files to be distributed.  In the worst case that there are no seeders left and all the leechers downloading are missing a rare part of the file, all the users remaining in the swarm will never complete the file.  Therefore it is essential that there is cooperation between the users to give as well as take.  &lt;br /&gt;
&lt;br /&gt;
BitTorrent is in no way anonymous as all past and present users connected to the tracker can have their IP addresses obtained.&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/BitTorrent</id>
		<title>BitTorrent</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/BitTorrent"/>
				<updated>2008-04-09T02:01:48Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''BitTorrent''' is a peer to peer file sharing protocol.  The protocol works in a way such that there is not a single host distributing the file, instead, all users downloading the file also share in uploading as well.  This reduces the burden on resources by the distributer as all users wishing to download the content are taking part in uploading pieces and parts of the data file.  &lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==How It Works==&lt;br /&gt;
The method allows essentially any kind of data to be distributed in a manor such that all users downloading the same file, referred as leechers, will upload bits and parts of the file that they have already downloaded.  Users that have the complete file and still connected to the tracker are referred as seeders.  The tracker is simply a list of all users that are currently connected to the torrent of interest, while categorizing the number of leechers and seeders to determine the healthiness of the torrent.  &lt;br /&gt;
&lt;br /&gt;
Users download &amp;quot;torrent&amp;quot; files that are created specifically for the file to be distributed.  Using a bittorrent client, the user opens the torrent file which contains the URL of the tracker that the torrent was published to, and attempt to connect to the tracker.  If the tracker is up and running,&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/BitTorrent</id>
		<title>BitTorrent</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/BitTorrent"/>
				<updated>2008-04-09T01:54:57Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;New page: '''BitTorrent''' is a peer to peer file sharing protocol.  The protocol works in a way such that there is not a single host distributing the file, instead, all users downloading the file a...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''BitTorrent''' is a peer to peer file sharing protocol.  The protocol works in a way such that there is not a single host distributing the file, instead, all users downloading the file also share in uploading as well.  This reduces the burden on resources by the distributer as all users wishing to download the content are taking part in uploading pieces and parts of the data file.  &lt;br /&gt;
&lt;br /&gt;
___TOC___&lt;br /&gt;
&lt;br /&gt;
==How It Works==&lt;br /&gt;
The method allows essentially any kind of data to be distributed in a manor such that all users downloading the same file, referred as leechers, will upload bits and parts of the file that they have already downloaded.  Users that have the complete file and still connected to the tracker are referred as seeders.  The tracker is simply a list of all users that are currently connected to the torrent of interest.  Users download &amp;quot;torrent&amp;quot; files that are created specifically for the file to be distributed.  The &amp;quot;torrent&amp;quot; file contains an &amp;quot;announce&amp;quot; section that tells the bittorrent client the URL of the tracker.&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/Script_Editor_Introduction</id>
		<title>Script Editor Introduction</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/Script_Editor_Introduction"/>
				<updated>2008-03-19T19:01:53Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;New page: The '''Script Editor''' is a tool provided by the C4 engine.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The '''Script Editor''' is a tool provided by the C4 engine.&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/Basic_Usages</id>
		<title>Basic Usages</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/Basic_Usages"/>
				<updated>2008-03-19T18:59:18Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The script editor is a bundle of functionalities provided by the game engine as well as custom created ones for the psychologists disposal.  In effect, a script acts as a series of methods in a tree of nodes.  Each node is a method that has a functionality.  The C4Engine Wiki contains a very useful entry that explains the basic commands of the Script Editor.  As such, it has been copied and pasted here for quicker reference.&lt;br /&gt;
&lt;br /&gt;
==Using the Script Editor==&lt;br /&gt;
[[Image:scriptedit.gif|right]]The C4 Engine has the capability to execute scripted actions in response to some kind of trigger. A script in C4 does not require the use of any programming language, but is instead organized into a tree of actions called ''methods'' that can be edited with a tool that displays a graphical representation of the script.&lt;br /&gt;
&lt;br /&gt;
The image to the right shows the Script Editor. A script can be assigned to any node in a scene and edited by attaching the script controller to it as follows.&lt;br /&gt;
&lt;br /&gt;
# In the World Editor, select the node to which you would like to assign a script.&lt;br /&gt;
# Choose Get Info from the Node menu or just press Ctrl-I.&lt;br /&gt;
# Click on the Controller tab in the Get Info dialog.&lt;br /&gt;
# Select the Script controller from the list of available controllers.&lt;br /&gt;
# Click on the Edit Script button that appears to open the Script Editor.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Creating a New Script==&lt;br /&gt;
&lt;br /&gt;
The first time the Script Editor is opened for a particular node, it shows a single method in the script called &amp;amp;ldquo;Root&amp;amp;rdquo;. This method performs no action and only serves as the root of the script's method tree. A new method is added to a script by dragging it from the palette on the left side of the editor to the method that precedes it. Any number of methods can be dragged to the same parent method in the script tree. The first method added to a script will always be dragged to the root method.&lt;br /&gt;
&lt;br /&gt;
When a method is selected (which happens automatically to new methods as they are inserted into the tree), its settings are displayed on the right side of the editor. Each type of method has different settings that control how it is executed. Many methods perform some kind of operation on a ''target node'', and a popup menu labelled &amp;amp;ldquo;Target node&amp;amp;rdquo; appears when such a method is selected. The target node of the method may be any one of the following&lt;br /&gt;
&lt;br /&gt;
* The target node of the script controller itself. This is the same node that the script is attached to.&lt;br /&gt;
* The trigger node that was activated and caused the script to execute.&lt;br /&gt;
* The node that activated the trigger node (the ''activator'' node).&lt;br /&gt;
* Any node that is connected to the target node of the controller.&lt;br /&gt;
&lt;br /&gt;
(The trigger node or activator node may not exist. Any method that is executed for a nonexistant node behaves as a no-operation and completes immediately.)&lt;br /&gt;
&lt;br /&gt;
==Editing a Script==&lt;br /&gt;
&lt;br /&gt;
Once a method has been placed in the script tree, its settings can be changed by clicking on it. A method can be repositioned in the tree by selecting the Move tool at the bottom of the editor and using it to drag an existing method to a new parent method. When a method is moved, all of its descendants move with it. A method cannot be dragged to one of its descendants.&lt;br /&gt;
&lt;br /&gt;
A method can be removed from the tree by selecting it and clicking the Delete Method button at the bottom of the editor. Pressing the Delete or Backspace key will also delete a selected method. When a method is deleted, its descendants are moved up to the parent of the deleted method. All of a method's descendants can be deleted by selecting the method and clicking the Delete Subtree button.&lt;br /&gt;
&lt;br /&gt;
==Script Editor Tools==&lt;br /&gt;
&lt;br /&gt;
There are four tool buttons at the bottom of the Script Editor window, and they have the following uses. In addition to clicking on the tool button, each of these tools can also be selected by pressing the shortcut number key as shown in the table. (The shortcuts were chosen to be the same as the corresponding tools in the World Editor.)&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;3&amp;quot; width=&amp;quot;75%&amp;quot;&lt;br /&gt;
| bgcolor=#E0E0E0 | '''Icon'''&lt;br /&gt;
| bgcolor=#E0E0E0 | '''Shortcut'''&lt;br /&gt;
| bgcolor=#E0E0E0 | '''Function'''&lt;br /&gt;
|-&lt;br /&gt;
| [[Image:tool1.gif]]&lt;br /&gt;
| 1&lt;br /&gt;
| '''Select'''. Selects a method in a script.&lt;br /&gt;
|-&lt;br /&gt;
| [[Image:tool2.gif]]&lt;br /&gt;
| 2&lt;br /&gt;
| '''Move'''. Selects and moves methods around in a script.&lt;br /&gt;
|-&lt;br /&gt;
| [[Image:tool6.gif]]&lt;br /&gt;
| 6&lt;br /&gt;
| '''Pan'''. Pans the script tree viewport. Holding the Alt key (Option on the Mac) temporarily selects the pan tool.&lt;br /&gt;
|-&lt;br /&gt;
| [[Image:tool7.gif]]&lt;br /&gt;
| 7&lt;br /&gt;
| '''Zoom'''. Changes the scale of the script tree viewport. Using the mouse wheel with any other tool also zooms.&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Script Execution==&lt;br /&gt;
&lt;br /&gt;
When a script is executed, all of the immediate descendants of the root method are first executed, and these all run simultaneously. When a particular method completes its execution, which could be immediately or could be after some amount of time dependending on the operation being performed, all of its immediate descendants are then executed at the same time. This process continues until all of the methods in the script have executed, at which time the script goes back into a non-executing state.&lt;br /&gt;
&lt;br /&gt;
==Standard Script Methods==&lt;br /&gt;
&lt;br /&gt;
There are several types of script methods that are defined in the engine module. An application module can define any number of its own custom script methods as well, and they will show up in the palette on the left side of the script editor window.&lt;br /&gt;
&lt;br /&gt;
The following table describes the operation of the standard methods.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;3&amp;quot; width=&amp;quot;75%&amp;quot;&lt;br /&gt;
| bgcolor=#E0E0E0 | '''Method'''&lt;br /&gt;
| bgcolor=#E0E0E0 | '''Description'''&lt;br /&gt;
|-&lt;br /&gt;
| Call Function&lt;br /&gt;
| This method calls a function of the controller attached to the method's target node. The specific settings depend on the purpose of the function itself. This method completes when the function indicates that is has finished what it's doing.&lt;br /&gt;
|-&lt;br /&gt;
| Change Settings&lt;br /&gt;
| This method changes one or more settings for the object attached to the target node and completes immediately.&lt;br /&gt;
|-&lt;br /&gt;
| Activate Controller&lt;br /&gt;
| This method activates the controller attached to the method's target node. The effect depends on the controller being activated. In the case that the target node has a script controller attached to it, the script is executed. This method always completes immediately without waiting for the activated controller to signal completion.&lt;br /&gt;
|-&lt;br /&gt;
| Enable Node&lt;br /&gt;
| This method enables its target node and completes immediately.&lt;br /&gt;
|-&lt;br /&gt;
| Disable Node&lt;br /&gt;
| This method disables its target node and completes immediately.&lt;br /&gt;
|-&lt;br /&gt;
| Delete Node&lt;br /&gt;
| This method deletes its target node and completes immediately. The node to which the script is attached, or any of its ancestors, cannot be deleted with this method.&lt;br /&gt;
|-&lt;br /&gt;
| Show Geometry&lt;br /&gt;
| This method shows its target node (if it's a geometry node) and completes immediately.&lt;br /&gt;
|-&lt;br /&gt;
| Hide Geometry&lt;br /&gt;
| This method hides its target node (if it's a geometry node) and completes immediately.&lt;br /&gt;
|-&lt;br /&gt;
| Delay&lt;br /&gt;
| This method simply waits for a specified amount of time before completing.&lt;br /&gt;
|-&lt;br /&gt;
| Play Ambient Sound&lt;br /&gt;
| This method plays a sound resource without 3D spatialization. The method completes when the sound has finished playing.&lt;br /&gt;
|-&lt;br /&gt;
| Play Sound Source&lt;br /&gt;
| This method plays its target node (if it's a source node). If the source was already playing or the source is looping, then the method completes immediately. Otherwise, the method completes when the source finishes playing.&lt;br /&gt;
|-&lt;br /&gt;
| Stop Sound Source&lt;br /&gt;
| This method stops its target node (if it's a source node) and completes immediately.&lt;br /&gt;
|-&lt;br /&gt;
| Change Material Color&lt;br /&gt;
| This method changes the color of one of the material attributes assigned to its target node (if it's a geometry node) and completes immediately. Since materials are shared, all geometry nodes using the same material, not necessarily just the target, are affected. Thus, to change a material color for only one geometry node, it should use a unique material. This method can change any material attribute that includes a color, such as diffuse, specular, or emission.&lt;br /&gt;
|-&lt;br /&gt;
| Sleep&lt;br /&gt;
| This method puts a controller to sleep.&lt;br /&gt;
|-&lt;br /&gt;
| Wake&lt;br /&gt;
| This method awakens a controller.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Return to [[RCaragogo]]&lt;br /&gt;
&lt;br /&gt;
==Reference==&lt;br /&gt;
[http://www.terathon.com/wiki/index.php?title=Using_the_Script_Editor C4Engine Wiki Using the Script Editor]&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/Basic_Usages</id>
		<title>Basic Usages</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/Basic_Usages"/>
				<updated>2008-03-19T18:57:44Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The script editor is a bundle of functionalities provided by the game engine as well as custom created ones for the psychologists disposal.  In effect, a script acts as a series of methods in a tree of nodes.  Each node is a method that has a functionality.  The C4Engine Wiki contains a very useful entry that explains the basic commands of the Script Editor.  As such, it has been copied and pasted here for quicker reference.&lt;br /&gt;
&lt;br /&gt;
==Using the Script Editor==&lt;br /&gt;
[[Image:scriptedit.gif|right]]The C4 Engine has the capability to execute scripted actions in response to some kind of trigger. A script in C4 does not require the use of any programming language, but is instead organized into a tree of actions called ''methods'' that can be edited with a tool that displays a graphical representation of the script.&lt;br /&gt;
&lt;br /&gt;
The image to the right shows the Script Editor. A script can be assigned to any node in a scene and edited by attaching the script controller to it as follows.&lt;br /&gt;
&lt;br /&gt;
# In the World Editor, select the node to which you would like to assign a script.&lt;br /&gt;
# Choose Get Info from the Node menu or just press Ctrl-I.&lt;br /&gt;
# Click on the Controller tab in the Get Info dialog.&lt;br /&gt;
# Select the Script controller from the list of available controllers.&lt;br /&gt;
# Click on the Edit Script button that appears to open the Script Editor.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Creating a New Script==&lt;br /&gt;
&lt;br /&gt;
The first time the Script Editor is opened for a particular node, it shows a single method in the script called &amp;amp;ldquo;Root&amp;amp;rdquo;. This method performs no action and only serves as the root of the script's method tree. A new method is added to a script by dragging it from the palette on the left side of the editor to the method that precedes it. Any number of methods can be dragged to the same parent method in the script tree. The first method added to a script will always be dragged to the root method.&lt;br /&gt;
&lt;br /&gt;
When a method is selected (which happens automatically to new methods as they are inserted into the tree), its settings are displayed on the right side of the editor. Each type of method has different settings that control how it is executed. Many methods perform some kind of operation on a ''target node'', and a popup menu labelled &amp;amp;ldquo;Target node&amp;amp;rdquo; appears when such a method is selected. The target node of the method may be any one of the following&lt;br /&gt;
&lt;br /&gt;
* The target node of the script controller itself. This is the same node that the script is attached to.&lt;br /&gt;
* The trigger node that was activated and caused the script to execute.&lt;br /&gt;
* The node that activated the trigger node (the ''activator'' node).&lt;br /&gt;
* Any node that is connected to the target node of the controller.&lt;br /&gt;
&lt;br /&gt;
(The trigger node or activator node may not exist. Any method that is executed for a nonexistant node behaves as a no-operation and completes immediately.)&lt;br /&gt;
&lt;br /&gt;
==Editing a Script==&lt;br /&gt;
&lt;br /&gt;
Once a method has been placed in the script tree, its settings can be changed by clicking on it. A method can be repositioned in the tree by selecting the Move tool at the bottom of the editor and using it to drag an existing method to a new parent method. When a method is moved, all of its descendants move with it. A method cannot be dragged to one of its descendants.&lt;br /&gt;
&lt;br /&gt;
A method can be removed from the tree by selecting it and clicking the Delete Method button at the bottom of the editor. Pressing the Delete or Backspace key will also delete a selected method. When a method is deleted, its descendants are moved up to the parent of the deleted method. All of a method's descendants can be deleted by selecting the method and clicking the Delete Subtree button.&lt;br /&gt;
&lt;br /&gt;
==Script Editor Tools==&lt;br /&gt;
&lt;br /&gt;
There are four tool buttons at the bottom of the Script Editor window, and they have the following uses. In addition to clicking on the tool button, each of these tools can also be selected by pressing the shortcut number key as shown in the table. (The shortcuts were chosen to be the same as the corresponding tools in the World Editor.)&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;3&amp;quot; width=&amp;quot;75%&amp;quot;&lt;br /&gt;
| bgcolor=#E0E0E0 | '''Icon'''&lt;br /&gt;
| bgcolor=#E0E0E0 | '''Shortcut'''&lt;br /&gt;
| bgcolor=#E0E0E0 | '''Function'''&lt;br /&gt;
|-&lt;br /&gt;
| [[Image:tool1.gif]]&lt;br /&gt;
| 1&lt;br /&gt;
| '''Select'''. Selects a method in a script.&lt;br /&gt;
|-&lt;br /&gt;
| [[Image:tool2.gif]]&lt;br /&gt;
| 2&lt;br /&gt;
| '''Move'''. Selects and moves methods around in a script.&lt;br /&gt;
|-&lt;br /&gt;
| [[Image:tool6.gif]]&lt;br /&gt;
| 6&lt;br /&gt;
| '''Pan'''. Pans the script tree viewport. Holding the Alt key (Option on the Mac) temporarily selects the pan tool.&lt;br /&gt;
|-&lt;br /&gt;
| [[Image:tool7.gif]]&lt;br /&gt;
| 7&lt;br /&gt;
| '''Zoom'''. Changes the scale of the script tree viewport. Using the mouse wheel with any other tool also zooms.&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Script Execution==&lt;br /&gt;
&lt;br /&gt;
When a script is executed, all of the immediate descendants of the root method are first executed, and these all run simultaneously. When a particular method completes its execution, which could be immediately or could be after some amount of time dependending on the operation being performed, all of its immediate descendants are then executed at the same time. This process continues until all of the methods in the script have executed, at which time the script goes back into a non-executing state.&lt;br /&gt;
&lt;br /&gt;
==Standard Script Methods==&lt;br /&gt;
&lt;br /&gt;
There are several types of script methods that are defined in the engine module. An application module can define any number of its own custom script methods as well, and they will show up in the palette on the left side of the script editor window.&lt;br /&gt;
&lt;br /&gt;
The following table describes the operation of the standard methods.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;3&amp;quot; width=&amp;quot;75%&amp;quot;&lt;br /&gt;
| bgcolor=#E0E0E0 | '''Method'''&lt;br /&gt;
| bgcolor=#E0E0E0 | '''Description'''&lt;br /&gt;
|-&lt;br /&gt;
| Call Function&lt;br /&gt;
| This method calls a function of the controller attached to the method's target node. The specific settings depend on the purpose of the function itself. This method completes when the function indicates that is has finished what it's doing.&lt;br /&gt;
|-&lt;br /&gt;
| Change Settings&lt;br /&gt;
| This method changes one or more settings for the object attached to the target node and completes immediately.&lt;br /&gt;
|-&lt;br /&gt;
| Activate Controller&lt;br /&gt;
| This method activates the controller attached to the method's target node. The effect depends on the controller being activated. In the case that the target node has a script controller attached to it, the script is executed. This method always completes immediately without waiting for the activated controller to signal completion.&lt;br /&gt;
|-&lt;br /&gt;
| Enable Node&lt;br /&gt;
| This method enables its target node and completes immediately.&lt;br /&gt;
|-&lt;br /&gt;
| Disable Node&lt;br /&gt;
| This method disables its target node and completes immediately.&lt;br /&gt;
|-&lt;br /&gt;
| Delete Node&lt;br /&gt;
| This method deletes its target node and completes immediately. The node to which the script is attached, or any of its ancestors, cannot be deleted with this method.&lt;br /&gt;
|-&lt;br /&gt;
| Show Geometry&lt;br /&gt;
| This method shows its target node (if it's a geometry node) and completes immediately.&lt;br /&gt;
|-&lt;br /&gt;
| Hide Geometry&lt;br /&gt;
| This method hides its target node (if it's a geometry node) and completes immediately.&lt;br /&gt;
|-&lt;br /&gt;
| Delay&lt;br /&gt;
| This method simply waits for a specified amount of time before completing.&lt;br /&gt;
|-&lt;br /&gt;
| Play Ambient Sound&lt;br /&gt;
| This method plays a sound resource without 3D spatialization. The method completes when the sound has finished playing.&lt;br /&gt;
|-&lt;br /&gt;
| Play Sound Source&lt;br /&gt;
| This method plays its target node (if it's a source node). If the source was already playing or the source is looping, then the method completes immediately. Otherwise, the method completes when the source finishes playing.&lt;br /&gt;
|-&lt;br /&gt;
| Stop Sound Source&lt;br /&gt;
| This method stops its target node (if it's a source node) and completes immediately.&lt;br /&gt;
|-&lt;br /&gt;
| Change Material Color&lt;br /&gt;
| This method changes the color of one of the material attributes assigned to its target node (if it's a geometry node) and completes immediately. Since materials are shared, all geometry nodes using the same material, not necessarily just the target, are affected. Thus, to change a material color for only one geometry node, it should use a unique material. This method can change any material attribute that includes a color, such as diffuse, specular, or emission.&lt;br /&gt;
|-&lt;br /&gt;
| Sleep&lt;br /&gt;
| This method puts a controller to sleep.&lt;br /&gt;
|-&lt;br /&gt;
| Wake&lt;br /&gt;
| This method awakens a controller.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Reference==&lt;br /&gt;
[http://www.terathon.com/wiki/index.php?title=Using_the_Script_Editor C4Engine Wiki Using the Script Editor]&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/File:Tool7.gif</id>
		<title>File:Tool7.gif</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/File:Tool7.gif"/>
				<updated>2008-03-19T18:57:06Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/File:Tool6.gif</id>
		<title>File:Tool6.gif</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/File:Tool6.gif"/>
				<updated>2008-03-19T18:56:56Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/File:Tool2.gif</id>
		<title>File:Tool2.gif</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/File:Tool2.gif"/>
				<updated>2008-03-19T18:56:44Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/File:Tool1.gif</id>
		<title>File:Tool1.gif</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/File:Tool1.gif"/>
				<updated>2008-03-19T18:56:35Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/File:Scriptedit.gif</id>
		<title>File:Scriptedit.gif</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/File:Scriptedit.gif"/>
				<updated>2008-03-19T18:56:25Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/Choosing_a_Car</id>
		<title>Choosing a Car</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/Choosing_a_Car"/>
				<updated>2008-03-17T14:15:10Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;When the game is loaded, pressing the Start New Game button will reveal The Choose Car menu. To choose a car simply click on one of the models and hit the NEXT button to arrive at the [[Choosing a Map]] menu.  The car that is selected will be highlighted and that model will be loaded when the game loads.  Clicking the BACK button will return the user to the main menu.  &lt;br /&gt;
&lt;br /&gt;
[[Image:ChooseCar.JPG]]&lt;br /&gt;
&lt;br /&gt;
Return to [[RCaragogo]]&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/Choosing_a_Map</id>
		<title>Choosing a Map</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/Choosing_a_Map"/>
				<updated>2008-03-17T14:14:53Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;After choosing the proper car model the map menu will appear next. Here just click on the image that represents the desired map and hit the START button.  Hitting the START button will load the selected car model and the chosen map.  Hitting the BACK button will return the user to the [[Choosing a Car]] menu allowing the user to change the car model.&lt;br /&gt;
&lt;br /&gt;
[[Image:ChooseMap.JPG]]&lt;br /&gt;
&lt;br /&gt;
Return to [[RCaragogo]]&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/Choosing_a_Car</id>
		<title>Choosing a Car</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/Choosing_a_Car"/>
				<updated>2008-03-17T14:12:47Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;When the game is loaded, pressing the Start New Game button will reveal The Choose Car menu. To choose a car simply click on one of the models and hit the NEXT button to arrive at the [[Choosing a Map]] menu.  The car that is selected will be highlighted and that model will be loaded when the game loads.  Clicking the BACK button will return the user to the main menu.  &lt;br /&gt;
&lt;br /&gt;
[[Image:ChooseCar.JPG]]&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/Insert_Image</id>
		<title>Insert Image</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/Insert_Image"/>
				<updated>2008-03-17T14:09:02Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Insert Image''' is a script editing tool that allows the editor to basically &amp;quot;upload&amp;quot; a picture by importing it as a texture into the world editor (by following the tutorial found at [[Importing Textures]]).  By placing the texture in the appropriate folder as indicated in the importing tutorial, the editor can place this picture anywhere on the head up display (bounded by the resolution of the display).  Inserting an image has many options available to alter the positioning and sizing of the picture however he/she wants.  '''Important note:''' there is a constraint of ''20'' unique pictures that can be displayed on the head up display.  This should be a sufficient number to provide the editor to create the experiment that he/she desires.  The editor also has the option to just move an existing image instead of creating a new one by using the [[Move Image]] tool, thus allowing reuse of an image.&lt;br /&gt;
&lt;br /&gt;
The '''Insert Image''' has an interface that requires the following to initialize an image: A picture ID (0-19) that uniquely identifies the picture, the height and width of the picture (this can be adjusted to the liking of the editor and DOES NOT require it to be the same size as the imported texture, however, note that distortion of the original picture may occur when the sizes changes are not in the original ratios), and either an absolute position (x,y in pixels) referenced from the top left corner of the screen as (0,0) or choose a preset value (1-9) describing 1: Top Left, 2: Top Center, 3: Top Right, 4: Left Center, 5: Center, 6: Right Center, 7: Bottom Left, 8: Bottom Center, and 9: Bottom Right.  This allows the advanced user to either specify an exact location for enhanced accuracy, or for pictures that do not require precise positioning to use just the preset locations for easier location computation.&lt;br /&gt;
&lt;br /&gt;
For the advanced users, the calculation of the absolute position of the picture takes reference as the top left corner of the picture.  For instance, if the position was chosen to be at (200,200), then the top left corner of the picture will be placed at (200,200).  The maximum pixels that can viewed is determined by the resolution of the screen.  By default, the resolution of the game is set at (1024x768) resulting in only pixels of the picture within that range will appear.  The preset values will automatically center the picture at one of the preset locations and display the pictures with reasonable sizes.  Pictures that are too large may overlap with other pictures that have been placed on the screen too close.&lt;br /&gt;
&lt;br /&gt;
Return to [[RCaragogo]]&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/Display_Text</id>
		<title>Display Text</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/Display_Text"/>
				<updated>2008-03-17T14:08:48Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''DIsplay Text''' is a script editing tool used to allow the editor to display text feedback to the user.  The figure following displays the interface to the script.  It is simply a single setting that takes a string that will be displayed on the feedback textbox in the center of the screen.  This can be used in ways such as to provide feedback from a user's actions, or giving instructions for the user.&lt;br /&gt;
&lt;br /&gt;
Return to [[RCaragogo]]&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/Move_Image</id>
		<title>Move Image</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/Move_Image"/>
				<updated>2008-03-17T14:08:27Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Move Image''' is a script editing tool used to allow the editor to move a specified already created image to a different location.  The move function takes a picture ID (0-19) that identifies the picture, and either a new absolute position (x,y in pixels) referenced from the top left corner of the screen as (0,0) or choose a preset value (1-9) describing 1: Top Left, 2: Top Center, 3: Top Right, 4: Left Center, 5: Center, 6: Right Center, 7: Bottom Left, 8: Bottom Center, and 9: Bottom Right.  This allows the advanced user to either specify an exact location for enhanced accuracy, or for pictures that do not require precise positioning to use just the preset locations for easier location computation.&lt;br /&gt;
&lt;br /&gt;
For the advanced users, the calculation of the absolute position of the picture takes reference as the top left corner of the picture.  For instance, if the position was chosen to be at (200,200), then the top left corner of the picture will be placed at (200,200).  The maximum pixels that can viewed is determined by the resolution of the screen.  By default, the resolution of the game is set at (1024x768) resulting in only pixels of the picture within that range will appear.  The preset values will automatically center the picture at one of the preset locations and display the pictures with reasonable sizes.  Pictures that are too large may overlap with other pictures that have been placed on the screen too close.&lt;br /&gt;
&lt;br /&gt;
Note: At its current stage, it is not possible to edit the size of the image after its initialization in the [[Insert Image]] tool, however this option may be implemented at a later time.&lt;br /&gt;
&lt;br /&gt;
Return to [[RCaragogo]]&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/Move_Image</id>
		<title>Move Image</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/Move_Image"/>
				<updated>2008-03-17T14:07:50Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Move Image''' is a script editing tool used to allow the editor to move a specified already created image to a different location.  The move function takes a picture ID (0-19) that identifies the picture, and either a new absolute position (x,y in pixels) referenced from the top left corner of the screen as (0,0) or choose a preset value (1-9) describing 1: Top Left, 2: Top Center, 3: Top Right, 4: Left Center, 5: Center, 6: Right Center, 7: Bottom Left, 8: Bottom Center, and 9: Bottom Right.  This allows the advanced user to either specify an exact location for enhanced accuracy, or for pictures that do not require precise positioning to use just the preset locations for easier location computation.&lt;br /&gt;
&lt;br /&gt;
For the advanced users, the calculation of the absolute position of the picture takes reference as the top left corner of the picture.  For instance, if the position was chosen to be at (200,200), then the top left corner of the picture will be placed at (200,200).  The maximum pixels that can viewed is determined by the resolution of the screen.  By default, the resolution of the game is set at (1024x768) resulting in only pixels of the picture within that range will appear.  The preset values will automatically center the picture at one of the preset locations and display the pictures with reasonable sizes.  Pictures that are too large may overlap with other pictures that have been placed on the screen too close.&lt;br /&gt;
&lt;br /&gt;
Note: At its current stage, it is not possible to edit the size of the image after its initialization in the [[Insert Image]] tool, however this option may be implemented at a later time.&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/Insert_Image</id>
		<title>Insert Image</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/Insert_Image"/>
				<updated>2008-03-17T14:07:22Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Insert Image''' is a script editing tool that allows the editor to basically &amp;quot;upload&amp;quot; a picture by importing it as a texture into the world editor (by following the tutorial found at [[Importing Textures]]).  By placing the texture in the appropriate folder as indicated in the importing tutorial, the editor can place this picture anywhere on the head up display (bounded by the resolution of the display).  Inserting an image has many options available to alter the positioning and sizing of the picture however he/she wants.  '''Important note:''' there is a constraint of ''20'' unique pictures that can be displayed on the head up display.  This should be a sufficient number to provide the editor to create the experiment that he/she desires.  The editor also has the option to just move an existing image instead of creating a new one by using the [[Move Image]] tool, thus allowing reuse of an image.&lt;br /&gt;
&lt;br /&gt;
The '''Insert Image''' has an interface that requires the following to initialize an image: A picture ID (0-19) that uniquely identifies the picture, the height and width of the picture (this can be adjusted to the liking of the editor and DOES NOT require it to be the same size as the imported texture, however, note that distortion of the original picture may occur when the sizes changes are not in the original ratios), and either an absolute position (x,y in pixels) referenced from the top left corner of the screen as (0,0) or choose a preset value (1-9) describing 1: Top Left, 2: Top Center, 3: Top Right, 4: Left Center, 5: Center, 6: Right Center, 7: Bottom Left, 8: Bottom Center, and 9: Bottom Right.  This allows the advanced user to either specify an exact location for enhanced accuracy, or for pictures that do not require precise positioning to use just the preset locations for easier location computation.&lt;br /&gt;
&lt;br /&gt;
For the advanced users, the calculation of the absolute position of the picture takes reference as the top left corner of the picture.  For instance, if the position was chosen to be at (200,200), then the top left corner of the picture will be placed at (200,200).  The maximum pixels that can viewed is determined by the resolution of the screen.  By default, the resolution of the game is set at (1024x768) resulting in only pixels of the picture within that range will appear.  The preset values will automatically center the picture at one of the preset locations and display the pictures with reasonable sizes.  Pictures that are too large may overlap with other pictures that have been placed on the screen too close.&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/Move_Image</id>
		<title>Move Image</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/Move_Image"/>
				<updated>2008-03-17T14:04:09Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Move Image''' is a script editing tool used to allow the editor to move a specified already created image to a different location.  The move function takes a picture ID that identifies the picture, and either a new absolute position (x,y in pixels) referenced from the top left corner of the screen as (0,0) or choose a preset value (1-9) describing 1: Top Left, 2: Top Center, 3: Top Right, 4: Left Center, 5: Center, 6: Right Center, 7: Bottom Left, 8: Bottom Center, and 9: Bottom Right.  This allows the advanced user to either specify an exact location for enhanced accuracy, or for pictures that do not require precise positioning to use just the preset locations for easier location computation.&lt;br /&gt;
&lt;br /&gt;
For the advanced users, the calculation of the absolute position of the picture takes reference as the top left corner of the picture.  For instance, if the position was chosen to be at (200,200), then the top left corner of the picture will be placed at (200,200).  The maximum pixels that can viewed is determined by the resolution of the screen.  By default, the resolution of the game is set at (1024x768) resulting in only pixels of the picture within that range will appear.  The preset values will automatically center the picture at one of the preset locations and display the pictures with reasonable sizes.  Pictures that are too large may overlap with other pictures that have been placed on the screen too close.&lt;br /&gt;
&lt;br /&gt;
Note: At its current stage, it is not possible to edit the size of the image after its initialization in the [[Insert Image]] tool, however this option may be implemented at a later time.&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/Move_Image</id>
		<title>Move Image</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/Move_Image"/>
				<updated>2008-03-17T14:03:46Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Move Image''' is a script editing tool used to allow the editor to move a specified already created image to a different location.  The move function takes a picture ID that identifies the picture, and either a new absolute position (x,y in pixels) referenced from the top left corner of the screen as (0,0) or choose a preset value (1-9) describing 1: Top eft, 2: Top Center, 3: Top Right, 4: Left Center, 5: Center, 6: Right Center, 7: Bottom Left, 8: Bottom Center, and 9: Bottom Right.  This allows the advanced user to either specify an exact location for enhanced accuracy, or for pictures that do not require precise positioning to use just the preset locations for easier location computation.&lt;br /&gt;
&lt;br /&gt;
For the advanced users, the calculation of the absolute position of the picture takes reference as the top left corner of the picture.  For instance, if the position was chosen to be at (200,200), then the top left corner of the picture will be placed at (200,200).  The maximum pixels that can viewed is determined by the resolution of the screen.  By default, the resolution of the game is set at (1024x768) resulting in only pixels of the picture within that range will appear.  The preset values will automatically center the picture at one of the preset locations and display the pictures with reasonable sizes.  Pictures that are too large may overlap with other pictures that have been placed on the screen too close.&lt;br /&gt;
&lt;br /&gt;
Note: At its current stage, it is not possible to edit the size of the image after its initialization in the [[Insert Image]] tool, however this option may be implemented at a later time.&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/Insert_Image</id>
		<title>Insert Image</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/Insert_Image"/>
				<updated>2008-03-17T13:58:48Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Insert Image''' is a script editing tool that allows the editor to basically &amp;quot;upload&amp;quot; a picture by importing it as a texture into the world editor (by following the tutorial found at [[Importing Textures]]).  By placing the texture in the appropriate folder as indicated in the importing tutorial, the editor can place this picture any where on the head up display.  Inserting an image has many options available to alter the positioning and sizing of the picture however he/she wants.  '''Important note:''' there is a constraint of ''20'' unique pictures that can be displayed on the head up display.  This should be a sufficient number to provide the editor to create the experiment that he/she desires.  The editor also has the option to just move an existing image instead of creating a new one and that is explained in the [[Move Image]] tutorial, thus allowing reuse of an image.&lt;br /&gt;
&lt;br /&gt;
The '''Insert Image''' has an interface that requires the following to initialize an image: A picture ID that uniquely identifies the picture, the height and width of the picture (this can be adjusted to the liking of the editor and DOES NOT require it to be the same size as the imported texture, however, note that distortion of the original picture may occur when the sizes changes are not in the original ratios), and either an absolute position (x,y in pixels) referenced from the top left corner of the screen as (0,0) or choose a preset value (1-9) describing 1: Top eft, 2: Top Center, 3: Top Right, 4: Left Center, 5: Center, 6: Right Center, 7: Bottom Left, 8: Bottom Center, and 9: Bottom Right.  This allows the advanced user to either specify an exact location for enhanced accuracy, or for pictures that do not require precise positioning to use just the preset locations for easier location computation.&lt;br /&gt;
&lt;br /&gt;
For the advanced users, the calculation of the absolute position of the picture takes reference as the top left corner of the picture.  For instance, if the position was chosen to be at (200,200), then the top left corner of the picture will be placed at (200,200).  The preset values will automatically center the picture at one of the preset locations.&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/Move_Image</id>
		<title>Move Image</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/Move_Image"/>
				<updated>2008-03-17T13:51:17Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Move Image''' is a script editing tool used to allow the editor to move a specified already created image to a different location.  The move function takes a picture ID that identifies the picture, and either a new absolute position (x,y in pixels) referenced from the top left corner of the screen as (0,0) or choose a preset value (1-9) describing 1: Top eft, 2: Top Center, 3: Top Right, 4: Left Center, 5: Center, 6: Right Center, 7: Bottom Left, 8: Bottom Center, and 9: Bottom Right.  This allows the advanced user to either specify an exact location for enhanced accuracy, or for pictures that do not require precise positioning to use just the preset locations for easier location computation.   &lt;br /&gt;
&lt;br /&gt;
Note: At its current stage, it is not possible to edit the size of the image after its initialization in the [[Insert Image]] tool, however this option may be implemented at a later time.&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/Move_Image</id>
		<title>Move Image</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/Move_Image"/>
				<updated>2008-03-17T13:40:24Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;New page: '''Move Image''' is a script editing tool where the editor has the ability to move a specified image to a different location.  The move function takes a picture ID that identifies the pict...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Move Image''' is a script editing tool where the editor has the ability to move a specified image to a different location.  The move function takes a picture ID that identifies the picture&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	<entry>
		<id>http://wiki.cas.mcmaster.ca/index.php/RCaragogo</id>
		<title>RCaragogo</title>
		<link rel="alternate" type="text/html" href="http://wiki.cas.mcmaster.ca/index.php/RCaragogo"/>
				<updated>2008-03-14T15:42:52Z</updated>
		
		<summary type="html">&lt;p&gt;Leunga5:&amp;#32;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;RCar-A-Go-Go&lt;br /&gt;
SE 4GP6 Group 2 Capstone Project&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
How does this stuff work :S&lt;/div&gt;</summary>
		<author><name>Leunga5</name></author>	</entry>

	</feed>