<?xml version="1.0" encoding="ISO-8859-1"?>
<rdf:RDF
	xmlns="http://purl.org/rss/1.0/"
	xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
	xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel rdf:about="http://feeds.garagegames.com/rss/blogs/developer/100628/">
		<title>Blog for Johnathon at GarageGames.com</title>
		<description>Blog feeds for Gamers and Developers in the GarageGames community.</description>
		<link>http://www.garagegames.com/</link>
		<image rdf:resource="http://www.garagegames.com/images/GarageGames_logo_small_w.gif" />
		<dc:date>2008-10-12T14:13:39+00:00</dc:date>
		<items>
			<rdf:Seq>
				<rdf:li rdf:resource="http://www.garagegames.com/blogs/100628/14114"/>
				<rdf:li rdf:resource="http://www.garagegames.com/blogs/100628/13977"/>
				<rdf:li rdf:resource="http://www.garagegames.com/blogs/100628/13921"/>
				<rdf:li rdf:resource="http://www.garagegames.com/blogs/100628/13870"/>
				<rdf:li rdf:resource="http://www.garagegames.com/blogs/100628/13859"/>
				<rdf:li rdf:resource="http://www.garagegames.com/blogs/100628/13843"/>
				<rdf:li rdf:resource="http://www.garagegames.com/blogs/100628/13835"/>
				<rdf:li rdf:resource="http://www.garagegames.com/blogs/100628/13831"/>
				<rdf:li rdf:resource="http://www.garagegames.com/blogs/100628/13819"/>
				<rdf:li rdf:resource="http://www.garagegames.com/blogs/100628/13816"/>
			</rdf:Seq>
		</items>
	</channel>
	<item rdf:about="http://www.garagegames.com/blogs/100628/14114">
		<dc:format>text/html</dc:format>
		<dc:date>2008-01-07T04:12:09+00:00</dc:date>
		<dc:creator>Johnathon</dc:creator>
		<title>Airhead Gaming goes live</title>
		<link>http://www.garagegames.com/blogs/100628/14114</link>
		<description>I have spent the last couple of weeks re-working the &lt;a href='http://airheadgaming.com' target=_blank&gt;website&lt;/a&gt;, having dropped my previous content management systems for a different setup. I am still working on setting up the forums for the site, but the rest of it is pretty much up and running.&lt;br&gt;&lt;br&gt;I am planning on adding on freeware or indie friendly game engine's to the site's forums, and to the sites links section. I'm hoping the GG community could help me out with this. I have a few engine's and informative sites added already to the sites navigation bar, but I am wanting to add additional content to it.&lt;br&gt;&lt;br&gt;If you know of any websites, engine's, sdk's or informative sites please feel free to share them with me so I can add them! The goal of the site is to create a central place for indie game developers. Someplace where they can go, find information on the engine they are using and help from other community members.&lt;br&gt;&lt;br&gt;Obviously, the sites not going to take off and have a 1,000 members in the next month. I am working on a 3 year plan to get the site where I want it in terms of the size of the community.&lt;br&gt;&lt;br&gt;The GG community is great, and your input on things has always been honest and constructive. I'm hoping some of you can help out!&lt;br&gt;&lt;br&gt;Thanks&lt;br&gt;Johnathon&lt;br&gt;&lt;a href='http://www.airheadgaming.com' target=_blank&gt;Airhead Gaming&lt;/a&gt;</description>
	</item>
	<item rdf:about="http://www.garagegames.com/blogs/100628/13977">
		<dc:format>text/html</dc:format>
		<dc:date>2007-12-08T20:34:24+00:00</dc:date>
		<dc:creator>Johnathon</dc:creator>
		<title>Airhead Gaming</title>
		<link>http://www.garagegames.com/blogs/100628/13977</link>
		<description>I spent the last week purchasing a domain and hosting server from godaddy, and getting my companies website setup. It's still needs some work done to it, but at the moment it is at least a functioning website that I can use to blog about my progress with my current projects (MMORPG &amp;amp; a MUD Engine), provide downloads and also get a wiki &amp;amp; forum setup for game design.&lt;br&gt;&lt;br&gt;The goal of Airhead Gaming is to create a website dedicated to developing games. I want to create a resource for game developers, someplace they can go and get answers to things related to their game, regardless of the sdk, engine or language they are using to create it in.&lt;br&gt;&lt;br&gt;I would like to invite you to check it out and &lt;b&gt;please&lt;/b&gt; offer feedback on it. Web design is not my strong point, so I would like some input on it.&lt;br&gt;&lt;br&gt;On another note, I have managed to get the MMOWorkshop up and running and have begun working on custom interiors using the Constructor. I am looking at purchasing Freeworld3D, but I'm not sure how to go about getting the environments created in freeworld into the torque editor. I'm going to spend some time messing with it. Once I get a little more done to the project, I'll post up some screens.&lt;br&gt;&lt;br&gt;Johnathon&lt;br&gt;&lt;a href='http://airheadgaming.com' target=_blank&gt;Airhead Gaming&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;i&gt;Edit: I will be removing the godaddy adds shortly, no sense in paying extra until the site is completely finished&lt;/i&gt;</description>
	</item>
	<item rdf:about="http://www.garagegames.com/blogs/100628/13921">
		<dc:format>text/html</dc:format>
		<dc:date>2007-11-29T02:12:12+00:00</dc:date>
		<dc:creator>Johnathon</dc:creator>
		<title>Solitaire *Work in progress*</title>
		<link>http://www.garagegames.com/blogs/100628/13921</link>
		<description>I downloaded and messed with the &lt;a href='http://www.garagegames.com/products/torque/tgb/'&gt;Torque Game Builder&lt;/a&gt; demo and found that it was surprisingly easy to use. So I decided to see if I could get a simple game created during the 30 day trial. If I could accomplish that, then the engine would be worth purchasing it. I would even settle with an almost finished game, provided I felt I could get the game completed in a couple more weeks. Granted, I could not make something along the lines marble blast or bejewelled in 30 days with my current knowledge of TorqueScript, but I felt I could get a simple card\puzzle put together in that short amount of time. &lt;br&gt;&lt;br&gt;So I set out to start work on GoFish, which quickly turned into Solitaire, and here I am now crunching away on Solitaire with 20 days left in my demo. I found a royalty free tileset of a deck of cards, cut them up and imported each image into TGB so I can position them on the screen and see where each card is going to end up at some point (as shown below).&lt;br&gt;&lt;br&gt;&lt;img src='http://i85.photobucket.com/albums/k71/Scionwest/solitaire.jpg'  alt=&quot;&quot;&gt;&lt;br&gt;&lt;br&gt;I did this so I can layout the card table how I want it done, now that this is finished I can go about coding the game. The cards will be removed from the table when the game is ready to be tested and released, as the cards will be created during runtime(at least that's the plan at the moment).&lt;br&gt;&lt;br&gt;The table is broke up into 'slots', and each slot will have an offset. Allowing me to do a %this.Move(%slotNumber, %offset) and have the card moved to where ever it needs to go (as illustrated below).&lt;br&gt;&lt;br&gt;&lt;img src='http://i85.photobucket.com/albums/k71/Scionwest/solitaire-1.jpg'  alt=&quot;&quot;&gt;&lt;br&gt;&lt;br&gt;Slot 1 is where the 'winning' cards go. The Ace of Hearts is located at xx.xxx, and the remaining suites are placed at -12.000 offsets, which will be handled automatically through code.&lt;br&gt;&lt;br&gt;To aquire the world position of each slot I simply cal my getSlot(%slot) method and pass to it the slot that I want coordinates for. It then returns them to me.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;div class='codeblock'&gt;&lt;pre&gt;//0 = Pile&lt;br&gt;//1 = Winning Slot (Very top)&lt;br&gt;//2 = Player Hand slot 0&lt;br&gt;//3 = player hand slot 1&lt;br&gt;//4 = player hand slot 2&lt;br&gt;//5 = player hand slot 3&lt;br&gt;//6 = player hand slot 4&lt;br&gt;//7 = player hand slot 5&lt;br&gt;function getSlot(%slot)&lt;br&gt;{&lt;br&gt;	switch$ (%slot)&lt;br&gt;	{&lt;br&gt;		case &amp;quot;0&amp;quot;:&lt;br&gt;			%position = &amp;quot;-30.000 -19.000&amp;quot;;&lt;br&gt;		case &amp;quot;1&amp;quot;:&lt;br&gt;			%position = &amp;quot;4.000 -20.000&amp;quot;;&lt;br&gt;		case &amp;quot;2&amp;quot;:&lt;br&gt;			%position = &amp;quot;-26.000 -6.000&amp;quot;;&lt;br&gt;		case &amp;quot;3&amp;quot;:&lt;br&gt;			%position = &amp;quot;-14.000 -6.000&amp;quot;;&lt;br&gt;		case &amp;quot;4&amp;quot;:&lt;br&gt;			%position = &amp;quot;-2.000 -6.000&amp;quot;;&lt;br&gt;		case &amp;quot;5&amp;quot;:&lt;br&gt;			%position = &amp;quot;10.000 -6.000&amp;quot;;&lt;br&gt;		case &amp;quot;6&amp;quot;:&lt;br&gt;			%position = &amp;quot;22.000 -6.000&amp;quot;;&lt;br&gt;		case &amp;quot;7&amp;quot;:&lt;br&gt;			%position = &amp;quot;34.000 -6.000&amp;quot;;&lt;br&gt;	}&lt;br&gt;	&lt;br&gt;	return %position;&lt;br&gt;}&lt;/pre&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;The offset code I am still working on and when it is finished I will post it up. The above code is pretty simple, but I wanted to show how I did it, incase anyone had any better idea's.&lt;br&gt;&lt;br&gt;for now the game will be super simple, match the cards up in a traditional Solitaire game, but I was looking online and found rule sets for about 20 differant styles of Solitaire, so if I can get a basic game up and running, I will purchase the engine and incorporate differant rule sets that the player can choose from, along with differant back grounds and card styles.&lt;br&gt;&lt;br&gt;The only thing that I'm concerned about is figuring out the following issue.&lt;br&gt;&lt;br&gt;&lt;div class='codeblock'&gt;&lt;pre&gt;Click on 6 of Hearts, it gets selected.&lt;br&gt;Click on 7 of clubs, move 6 of Hearts on top&lt;/pre&gt;&lt;/div&gt;&lt;br&gt;How do I make sure that the two cards are of differant colored suite. This will take some messing with.</description>
	</item>
	<item rdf:about="http://www.garagegames.com/blogs/100628/13870">
		<dc:format>text/html</dc:format>
		<dc:date>2007-11-18T21:27:24+00:00</dc:date>
		<dc:creator>Johnathon</dc:creator>
		<title>New direction</title>
		<link>http://www.garagegames.com/blogs/100628/13870</link>
		<description>My current project is still currently in the design phase, as I don't have a story line started, don't really have any idea on what kind of environments I want the game to take place in and the style of game play. I do know that the genre will be a Role Playing game, but the question is, do I want an MMO or just a single player game? I'm leaning more towards a single player game with possible some basic online death-match\co-op game play.&lt;br&gt;&lt;br&gt;So with the game going to be RPG in genre, I decided to look at the &lt;a href='http://www.mmoworkshop.com/trac/mom' target=_blank&gt;MMOWorkshop&lt;/a&gt;, and it looked pretty solid. You can't beat the price and it will take alot of the 'startup' work out of the project for me. The only thing that I need to purchase was the Arcane FX package which was cheap, and I had planned on purchasing it anyway, as I wanted to use the effects in my RPG.&lt;br&gt;&lt;br&gt;Well, now I've got the &lt;a href='http://www.mmoworkshop.com/trac/mom' target=_blank&gt;MMOWorkshop&lt;/a&gt; installed and it seems simple enough to get a basic game going. The workshop is deep, and will take some time to learn all the in's &amp;amp; out's but I think spending some time to learn it will be good. In the long run it will save me alot of development time, which as I already spoke about in my &lt;a href='http://www.garagegames.com/blogs/100628/13859'&gt;previous blog&lt;/a&gt; is a huge factor when developing your first game.&lt;br&gt;&lt;br&gt;If you spend all your time trying to build your own framework, you're going to burn out and get frustrated and the game will never get finished. For starting out it's good to use some of the pre-built content packs to help you along your way. Once your game matures some you can go back and replace some of the pre-fab'ed items with your own.&lt;br&gt;&lt;br&gt;Once you have a few games under your built and some good experiance, &lt;b&gt;then&lt;/b&gt; you should work on your own frameworks, as you can spend more time customizing the way your game works, as you already have the knowledge and experiance needed to create the game, and won't haft to spend so much time learning the in's &amp;amp; out's.</description>
	</item>
	<item rdf:about="http://www.garagegames.com/blogs/100628/13859">
		<dc:format>text/html</dc:format>
		<dc:date>2007-11-16T02:25:19+00:00</dc:date>
		<dc:creator>Johnathon</dc:creator>
		<title>Mission Load Stage 2 endless loop</title>
		<link>http://www.garagegames.com/blogs/100628/13859</link>
		<description>I started on a new project today, one that will use the common scripts that are shipped with Torque, and the creator scripts. I will continue working on my 'common-less' script project when I have time, but I purchased Torque to work on a game and I've spent a month just messing with trying to get a simple set of scripts working that allows me to load a mission and display gui's. It's taking to much time at the moment (as I don't have much free time to begin with) and so I will go ahead and start work on a new project that will use the common scripts.&lt;br&gt;&lt;br&gt;I copied and pasted the code from the starter.fps play mission gui that loaded a selected mission (SM_StartMission() method), however when I use that same method my mission get's stuck in an endless loop when it hits Phase 2 on loading. I haft to go to work for the night and so I have run out of time to try and fix it. I will spend more time tomorrow dealing with this issue.</description>
	</item>
	<item rdf:about="http://www.garagegames.com/blogs/100628/13843">
		<dc:format>text/html</dc:format>
		<dc:date>2007-11-11T22:26:41+00:00</dc:date>
		<dc:creator>Johnathon</dc:creator>
		<title>Simple backup script</title>
		<link>http://www.garagegames.com/blogs/100628/13843</link>
		<description>I wrote a simple little windows batch file that would backup my project to my server, however you can use it to copy it to your local hard-drive as well.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;div class='codeblock'&gt;&lt;pre&gt;net use b: \\domainName\UserName &lt;i&gt;passwordHere&lt;/i&gt; /PERSISTENT:no&lt;br&gt;del /s *.dso&lt;br&gt;&lt;br&gt;IF EXIST B:\Backups\Torque\MyGame\%date:~0,3% RD B:\Backups\Torque\MyGame\%date:~0,3% /S /Q&lt;br&gt;&lt;br&gt;xcopy C:\Torque\MyGame\* &amp;quot;B:\Backups\Torque\MyGame\%date:~0,3%\*&amp;quot; /y /s&lt;br&gt;&lt;br&gt;net use b: /DELETE&lt;/pre&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;and if you want it to backup on your local hardrive&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;div class='codeblock'&gt;&lt;pre&gt;del /s *.dso&lt;br&gt;&lt;br&gt;IF EXIST C:\Backups\Torque\MyGame\%date:~0,3% RD C:\Backups\Torque\MyGame\%date:~0,3% /S /Q&lt;br&gt;&lt;br&gt;xcopy C:\Torque\MyGame\* &amp;quot;C:\Backups\Torque\MyGame\%date:~0,3%\*&amp;quot; /y /s&lt;/pre&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;I then use my Windows Scheduler to schedule a backup everynight.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;div class='codeblock'&gt;&lt;pre&gt;net use b: \\domainname\username &lt;i&gt;passwordhere&lt;/i&gt; /PERSISTANT:no&lt;/pre&gt;&lt;/div&gt;&lt;br&gt;This is where you connect to your server that you want to backup your data to. If you are backing up to your local hard drive you won't need to use this command. /PERSISTANT means that the network connection will not re-connect when you reboot your computer. It connects this one time only.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;div class='codeblock'&gt;&lt;pre&gt;del /s *.dso&lt;/pre&gt;&lt;/div&gt;&lt;br&gt;This deletes all of the compiled .dso files in your project prior to backing up your project. You can remove this if you want to back those up as well, but it will decrease the backup time by deleting the dso's first. Less files to copy.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;div class='codeblock'&gt;&lt;pre&gt;IF EXIST B:\Backups\Torque\MyGame\%date:~0,3% RD B:\Backups\Torque\MyGame\%date:~0,3% /S /Q&lt;/pre&gt;&lt;/div&gt;&lt;br&gt;next we check if the backup directory already exists. The %date:~0,3% returns the date, trimmed down to just three characters. if you execute this on Sunday, then your directory would be named MyGame\Sun.&lt;br&gt;if Backups\Torque\myGame\Sun exists, it deletes the directory. /S deletes all the sub folders and files, /Q puts it in quiet mode. If you don't use the /Q then you will be required to enter Y at the command promt to give the RD command permission to delete all files.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;div class='codeblock'&gt;&lt;pre&gt;xcopy C:\Torque\MyGame\* &amp;quot;C:\Backups\Torque\MyGame\%date:~0,3%\*&amp;quot; /y /s&lt;/pre&gt;&lt;/div&gt;&lt;br&gt;xcopy copies all the files and folders in your MyGame into your backup folder with the name of the date. the /y suppresses the promt to overwrite files, which we really shouldn't have that problem anyway because we are deleting the directory if it exists. /S copies all the subfolders and files.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;div class='codeblock'&gt;&lt;pre&gt;net use b: /DELETE&lt;/pre&gt;&lt;/div&gt;&lt;br&gt;If you are copying to your local harddrive you won't need this command. This will disconnect you from your server once the script has completed.</description>
	</item>
	<item rdf:about="http://www.garagegames.com/blogs/100628/13835">
		<dc:format>text/html</dc:format>
		<dc:date>2007-11-08T21:48:05+00:00</dc:date>
		<dc:creator>Johnathon</dc:creator>
		<title>Creating a canvas</title>
		<link>http://www.garagegames.com/blogs/100628/13835</link>
		<description>Wow, I've done quiet a few things since my post on creating a  &lt;a href='http://www.garagegames.com/blogs/100628/13831'&gt;Basic Console&lt;/a&gt; , so this post will be a little lengthy. I'm going to try and keep it small, as very large post tend to be difficult to read and stay focused on (of course this could just be my problem :)&lt;br&gt;&lt;br&gt;I downloaded and used &lt;a href='http://www.garagegames.com/products/106/'&gt;Torsion &lt;/a&gt;for my primary script editor, I wasn't sure how I was going to like it so I just downloaded the demo to give it a shot prior to purchasing it. I must say that I really like the editor and with it only costing $40, it seemed like a really good deal. It has a few things that are a little quirky, but for the most part it works really good. I really like how it handles debugging. I still have 17 days available on my demo license, but i ran across a post in the forums where someone had posted a link to the newest &lt;a href='http://www.torquedev.com/' target=_blank&gt;netMercs CodeWeaver&lt;/a&gt;. I decided to give it a shot and found that I liked it better than &lt;a href='http://www.garagegames.com/products/106'&gt;Torsion &lt;/a&gt;, and it's free! I haven't managed to figure out how to get debugging to work with it quiet yet. If I can't get that feature figured out I might go ahead and purchase &lt;a href='http://www.garagegames.com/products/106/'&gt;Torsion &lt;/a&gt;, as debugging is an important aspect of developing a quality product.&lt;br&gt;&lt;br&gt;So after messing around with &lt;a href='http://www.torquedev.com' target=_blank&gt;CodeWeaver&lt;/a&gt; I imported my &lt;a href='http://www.garagegames.com/blogs/100628/13831'&gt;Basic Console&lt;/a&gt; and continued working on my little project. I wanted to create a blank canvas, but I was having difficulties trying to get it to run. I used the following code to try and create the canvas but &lt;a href='http://www.GarageGames.com'&gt;TGE&lt;/a&gt; would always crash &amp;amp; burn.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;div class='codeblock'&gt;&lt;pre&gt;package Base&lt;br&gt;{&lt;br&gt;	function OnStart()&lt;br&gt;	{&lt;br&gt;		Parent::OnStart();&lt;br&gt;		echo(&amp;quot;------ Initializing Base ------&amp;quot;);&lt;br&gt;		echo(&amp;quot;Display Devices: &amp;quot; @ getDisplayDeviceList());&lt;br&gt;		echo(&amp;quot;Video Driver Information: &amp;quot; @ getVideoDriverInfo());&lt;br&gt;		setDisplayDevice(getDisplayDeviceList(), 640, 480, 16, false);&lt;br&gt;		createCanvas($gameName);&lt;br&gt;	}&lt;br&gt;	&lt;br&gt;	function OnExit()&lt;br&gt;	{&lt;br&gt;		Parent::OnExit();&lt;br&gt;	}&lt;br&gt;};&lt;br&gt;activatePackage(Base);&lt;/pre&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;I couldn't figure out why the engine was crashing, and so I dug around a little bit in my 'Game Programming All-In-One' book and found that they used 'InitCanvas'. I couldn't find that method anywhere and assumed that it had been replaced with createCanvas(), but I also noticed that they where setting the videodriver prior to creating the canvas. So I attempted the same thing.&lt;br&gt;&lt;br&gt;[root]/Base/Init.cs&lt;br&gt;&lt;br&gt;&lt;div class='codeblock'&gt;&lt;pre&gt;package Base&lt;br&gt;{&lt;br&gt;	function OnStart()&lt;br&gt;	{&lt;br&gt;		Parent::OnStart();&lt;br&gt;		echo(&amp;quot;------ Initializing Base ------&amp;quot;);&lt;br&gt;		&lt;br&gt;		echo(&amp;quot;Assigning defualt video settings.&amp;quot;);&lt;br&gt;		//Assign default video settings&lt;br&gt;		$pref::Video::allowOpenGL = true;&lt;br&gt;		$pref::Video::displayDevice = &amp;quot;OpenGL&amp;quot;;&lt;br&gt;		&lt;br&gt;		//location where mission files are stored.&lt;br&gt;		$server::MissionFiles = &amp;quot;*/missions/*.mis&amp;quot;;&lt;br&gt;		&lt;br&gt;		echo(&amp;quot;Creating viewport canvas.&amp;quot;);&lt;br&gt;		//create the viewport and assign a resolution&lt;br&gt;		createCanvas($gameName);&lt;br&gt;		setScreenMode(800,600,16,false);&lt;br&gt;		&lt;br&gt;		//Get this game rolling&lt;br&gt;		exec(&amp;quot;./base.cs&amp;quot;);&lt;br&gt;		&lt;br&gt;		InitializeClient();&lt;br&gt;	}&lt;br&gt;	&lt;br&gt;	function OnExit()&lt;br&gt;	{&lt;br&gt;		Parent::OnExit();&lt;br&gt;	}&lt;br&gt;	&lt;br&gt;	function resetCanvas()&lt;br&gt;	{&lt;br&gt;	}&lt;br&gt;};&lt;br&gt;activatePackage(Base);&lt;/pre&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;The engine still crashed! Well, then I started looking in the torque examples included with the SDK and doh! I noticed the OpenGL libraries in the root directory of the examples. Duh! I needed those .dll's! I copied them into my projects root directory and hallelujah it worked! I added the SetScreenMethod after the canvas was created and had my canvas up and running.&lt;br&gt;&lt;br&gt;Finally I created a player control and keymap and assigned some basic key bindings so that once I get an avatar into a 3D environment I will be able to move around a little bit.&lt;br&gt;&lt;br&gt;Since I posted my main.cs code in my &lt;a href='http://www.garagegames.com/blogs/100628/13831'&gt;Basic Console&lt;/a&gt; post, and the above code is the updated Init.cs file that I had originally posted in &lt;a href='http://www.garagegames.com/blogs/100628/13831'&gt;Basic Console&lt;/a&gt; post as well. The remaining code is what I wrote last night.&lt;br&gt;&lt;br&gt;[root]/Base/Base.cs&lt;br&gt;&lt;br&gt;&lt;div class='codeblock'&gt;&lt;pre&gt;function InitializeServer()&lt;br&gt;{&lt;br&gt;	echo (&amp;quot;------ Initializing &amp;quot; @ $gameName @ &amp;quot; server ------&amp;quot;);&lt;br&gt;	$server::MissionFiles = &amp;quot;*/missions/*.mis&amp;quot;;&lt;br&gt;	&lt;br&gt;	exec(&amp;quot;./server/server.cs&amp;quot;);	&lt;br&gt;}&lt;br&gt;&lt;br&gt;function InitializeClient()&lt;br&gt;{&lt;br&gt;	echo (&amp;quot;------ Initializing &amp;quot; @ $gameName @ &amp;quot; client ------&amp;quot;);&lt;br&gt;	exec(&amp;quot;./client/client.cs&amp;quot;);&lt;br&gt;	exec(&amp;quot;./Client/movement.cs&amp;quot;);&lt;br&gt;	exec(&amp;quot;./gui/mainMenu.gui&amp;quot;);&lt;br&gt;	&lt;br&gt;	%conn = new GameConnection(ServerConnection);&lt;br&gt;	%conn.ConnectLocal();&lt;br&gt;}&lt;/pre&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;[root]/Base/Client.cs&lt;br&gt;&lt;br&gt;&lt;div class='codeblock'&gt;&lt;pre&gt;if (isObject( playerKeymap ))&lt;br&gt;	playerKeymap.delete();&lt;br&gt;	&lt;br&gt;new ActionMap(playerKeymap);&lt;br&gt;&lt;br&gt;$movementSpeed = 1; //m/s&lt;br&gt;&lt;br&gt;//The player sees the game via this control&lt;br&gt;new GameTSCtrl(PlayerInterface)&lt;br&gt;	{&lt;br&gt;	profile = &amp;quot;GuiContentProfile&amp;quot;;&lt;br&gt;	noCursor = &amp;quot;1&amp;quot;;&lt;br&gt;};&lt;br&gt;&lt;br&gt;function PlayerInterface::onWake(%this)&lt;br&gt;{&lt;br&gt;	//enableDirectInput = 1;&lt;br&gt;	//activateDirectInput();&lt;br&gt;	&lt;br&gt;	//restore keymapping&lt;br&gt;	playerKeymap.push();&lt;br&gt;}&lt;br&gt;&lt;br&gt;//This gets called directly within the engine during server intialization&lt;br&gt;function GameConnection::InitialControlSet(%this)&lt;br&gt;{&lt;br&gt;	echo(&amp;quot;Setting initial control object&amp;quot;);&lt;br&gt;	//first  control object has been set by the server so we are ready to go.&lt;br&gt;	canvas.SetContent(PlayerInterface);&lt;br&gt;}&lt;/pre&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;[root]/Base/Movement.cs&lt;br&gt;&lt;br&gt;&lt;div class='codeblock'&gt;&lt;pre&gt;//Strafing&lt;br&gt;function GoLeft(%val)&lt;br&gt;{&lt;br&gt;	$mvLeftAction = %val;&lt;br&gt;}&lt;br&gt;&lt;br&gt;function GoRight(%val)&lt;br&gt;{&lt;br&gt;	$mvRightAction = %val;&lt;br&gt;}&lt;br&gt;&lt;br&gt;//forwards&lt;br&gt;function GoAhead(%val)&lt;br&gt;{&lt;br&gt;	$mvForwardAction = %val;&lt;br&gt;}&lt;br&gt;&lt;br&gt;//backwards&lt;br&gt;function Backup(%val)&lt;br&gt;{&lt;br&gt;	$mvBackwardAction = %val;&lt;br&gt;}&lt;br&gt;&lt;br&gt;//Looking, spinning or aiming horizontally via mouse&lt;br&gt;function DoYaw(%val)&lt;br&gt;{&lt;br&gt;	$mvYaw += %val * (%cameraFov / 90) * 0.02;&lt;br&gt;}&lt;br&gt;&lt;br&gt;//Looking vertically via mouse&lt;br&gt;function DoPitch(%val)&lt;br&gt;{&lt;br&gt;	$mvpitch += %val * (%cameraFov / 90) * 0.02;&lt;br&gt;}&lt;br&gt;&lt;br&gt;//Jumping&lt;br&gt;function DoJump(%val)&lt;br&gt;{&lt;br&gt;	$mvTriggerCount2++;&lt;br&gt;}&lt;br&gt;&lt;br&gt;//Keyboard control mapping&lt;br&gt;playerKeymap.bind(keyboard, up, GoAhead);&lt;br&gt;playerKeymap.bind(keyboard, down, Backup);&lt;br&gt;PlayerKeymap.bind(keyboard, left, GoLeft);&lt;br&gt;playerKeymap.bind(keyboard, right, GoRight);&lt;br&gt;playerKeymap.bind(keyboard, space, DoJump);&lt;br&gt;playerKeymap.bind(mouse, yaxis, DoPitch);&lt;br&gt;playerKeymap.bind(mouse, xaxis, DoYaw);&lt;br&gt;GlobalActionMap.BindCmd(keyboard, escape, &amp;quot;&amp;quot;, &amp;quot;quit();&amp;quot;);&lt;br&gt;GlobalActionMap.BindCmd(keyboard, tilde, &amp;quot;&amp;quot;, ToggleConsole);&lt;/pre&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;The code for player.cs and mainMenu.gui have yet to be wrote. That's next on the list!&lt;br&gt;&lt;br&gt;The only downfall of creating a project without the use of the Torque Common scripts, is that I loose the World Editor and GUI Editor. This will make it a little more difficult working on my environments. I am going to dig around and see if I can't get the code needed for the editors added into my project. I'm not sure really where to look and what all I'm going to need. If I can't get something figured out I will just create my worlds and gui's using the starter.fps example, and then just copy my saved files and materials used into my project.&lt;br&gt;&lt;br&gt;I also worked on how I want my game's directory structure to be setup. I wanted something other than the standard Torque&lt;br&gt;[root]&lt;br&gt;+Starter.fps&lt;br&gt;+common&lt;br&gt;+creator&lt;br&gt;&lt;br&gt;I got tired of searching through 3 different main.cs, server.cs and client.cs files for what I was looking for. I created the following structure.&lt;br&gt;[root]&lt;br&gt;+base&lt;br&gt;+--client&lt;br&gt;+--gui&lt;br&gt;+--missions&lt;br&gt;+--objects&lt;br&gt;+--server&lt;br&gt;+--textures&lt;br&gt;&lt;br&gt;So my game might not have a gui or world editor, but that's alright as I have already decided to not support 3rd party additions with my first game. I want to make things simple for myself and creating a game that will not be changed will help reduce my headaches. While I would love to have 3rd party support, and I know that the TorqueScript makes this super easy, I don't want to bother with it at this point. Maybe a little later down the road. That is why I have created the structure that I have, as there will be no need for me to have a common script base for people to base mods off of.&lt;br&gt;&lt;br&gt;That brings up my final question, I noticed that I can have the engine (and I forget where I found this at) execute the actual .cs scripts rather than executing the compiled .dso files. Is there a performance penalty for using one or the other? I am going to do some research on this. I am planning on just distributing my compiled .dso scripts, but it is an interesting little piece of information that I ran into and would like to learn more about.&lt;br&gt;&lt;br&gt;&lt;i&gt;Edit 1: Fixed broken links&lt;/i&gt;&lt;br&gt;&lt;i&gt;Edit 2: Forgot to discuss missing editors&lt;/i&gt;</description>
	</item>
	<item rdf:about="http://www.garagegames.com/blogs/100628/13831">
		<dc:format>text/html</dc:format>
		<dc:date>2007-11-08T00:36:34+00:00</dc:date>
		<dc:creator>Johnathon</dc:creator>
		<title>A Basic console</title>
		<link>http://www.garagegames.com/blogs/100628/13831</link>
		<description>Well I was actually pretty surprised at how quick I was able to get a blank slate ready with the Torque Script. I thought I would share what code I had wrote to get it up and running.&lt;br&gt;&lt;br&gt;root main.cs file&lt;br&gt;&lt;br&gt;&lt;div class='codeblock'&gt;&lt;pre&gt;//Enable detailed logging&lt;br&gt;trace(true);&lt;br&gt;&lt;br&gt;//Force the console to be displayed since we don't have a canvas yet.&lt;br&gt;enableWinConsole(true);&lt;br&gt;&lt;br&gt;$gameName = &amp;quot;MyGame&amp;quot;;&lt;br&gt;&lt;br&gt;// Help won't be displayed unless the command line&lt;br&gt;// switch (-h) is used.&lt;br&gt;$showHelp = false;&lt;br&gt;&lt;br&gt;$logModeEnabled = true; //Track the logging state we set in the lext line.&lt;br&gt;SetLogMode(2); //Create a new log file&lt;br&gt;&lt;br&gt;//Any last gasp exit code we want executed can be performed here.&lt;br&gt;function OnExit()&lt;br&gt;{&lt;br&gt;}&lt;br&gt;&lt;br&gt;function OnStart()&lt;br&gt;{&lt;br&gt;}&lt;br&gt;&lt;br&gt;function ParseArgs()&lt;br&gt;{&lt;br&gt;	//Loop through all the command line arguments.&lt;br&gt;	for ($i = 1; $i &amp;lt; $Game::argc; $i++)&lt;br&gt;	{&lt;br&gt;		$currentarg = $Game::argv[$i];&lt;br&gt;		$nextArgument = $Game::argc[$i+1];&lt;br&gt;		$nextArgExists = $Game::argc-$i &amp;gt; 1; //returns true if there is another argument in the list.&lt;br&gt;		&lt;br&gt;		switch$($currentarg)&lt;br&gt;		{&lt;br&gt;			case &amp;quot;-?&amp;quot;:&lt;br&gt;				$showHelp = true;&lt;br&gt;				$argumentFlag[$i] = true;&lt;br&gt;			case &amp;quot;-h&amp;quot;:&lt;br&gt;				$showHelp = true;&lt;br&gt;				$argumentFlag[$i] = true;&lt;br&gt;		}&lt;br&gt;	}&lt;br&gt;}&lt;br&gt;&lt;br&gt;function ShowHelp()&lt;br&gt;{&lt;br&gt;	echo(&amp;quot;\n\n&amp;quot;@ $gameName @ &amp;quot; command line options:\n\n  -h, -?\ndisplay this message.\n&amp;quot;);&lt;br&gt;}&lt;br&gt;&lt;br&gt;ParseArgs();&lt;br&gt;&lt;br&gt;// If we are wanting to show the help, enable the console&lt;br&gt;// display the help message, disable the console and exit.&lt;br&gt;if ($showHelp)&lt;br&gt;{&lt;br&gt;	enableWinConsole(true); //Send logging output to a Windows console window&lt;br&gt;	ShowHelp();&lt;br&gt;	enableWinConsole(false);&lt;br&gt;	quit();&lt;br&gt;}&lt;br&gt;else&lt;br&gt;{&lt;br&gt;	for ($i = 1; $i &amp;lt; $gameName::argc; $i++)&lt;br&gt;	{&lt;br&gt;		if (!$argumentFlag[$i])&lt;br&gt;			error(&amp;quot;ERROR: Unknown command line argument: &amp;quot; @ $gameName::argv[$i]);&lt;br&gt;	}&lt;br&gt;	&lt;br&gt;	if (!$logModeEnabled)&lt;br&gt;		setLogMode(2);&lt;br&gt;	&lt;br&gt;	echo(&amp;quot;Engine Initialization completed.&amp;quot;);&lt;br&gt;	&lt;br&gt;	exec(&amp;quot;Base/Init.cs&amp;quot;);&lt;br&gt;	OnStart();&lt;br&gt;}&lt;/pre&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;Base/Init.cs file&lt;br&gt;&lt;br&gt;&lt;div class='codeblock'&gt;&lt;pre&gt;package Base&lt;br&gt;{&lt;br&gt;	function OnStart()&lt;br&gt;	{&lt;br&gt;		Parent::OnStart();&lt;br&gt;		echo(&amp;quot;------ Initializing Base ------&amp;quot;);&lt;br&gt;	}&lt;br&gt;	&lt;br&gt;	function OnExit()&lt;br&gt;	{&lt;br&gt;		Parent::OnExit();&lt;br&gt;	}&lt;br&gt;};&lt;br&gt;activatePackage(Base);&lt;/pre&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;now I can start coding away, learning the ins and outs of TorqueScript by writing little functions and testing them with the console. Once I get to the point where I will need 3D, I will start work on a canvas.</description>
	</item>
	<item rdf:about="http://www.garagegames.com/blogs/100628/13819">
		<dc:format>text/html</dc:format>
		<dc:date>2007-11-04T21:41:13+00:00</dc:date>
		<dc:creator>Johnathon</dc:creator>
		<title>Creating a blank sheet</title>
		<link>http://www.garagegames.com/blogs/100628/13819</link>
		<description>I started reading through my Game programming All-In-One book last night and found that it would be nice to have a complete blank slate to work with. So I'm going to start working on getting the torque engine running without the use of the 'common' &amp;amp; 'starter' folders. &lt;br&gt;I want to create a simple main.cs that will open a blank canvas, with no other dialogs loaded, and no other scripts running. At this point I can start writing my 'example' scripts and executing them either through the main.cs or via the console. For new datablocks and things I can create a basic terrain environment and load them through the console.&lt;br&gt;I want to startout without using any pre-coded scripts, otherwise I won't really learn anything. I can refer to the starter scripts for examples, but I want to make sure my examples are 100% my code.</description>
	</item>
	<item rdf:about="http://www.garagegames.com/blogs/100628/13816">
		<dc:format>text/html</dc:format>
		<dc:date>2007-11-04T00:11:04+00:00</dc:date>
		<dc:creator>Johnathon</dc:creator>
		<title>Soakin in existing knowledge</title>
		<link>http://www.garagegames.com/blogs/100628/13816</link>
		<description>I just purchased the TGE last night and have spent a little bit of time messing around with it. I have known about TGE since it was first released, but just never had the time or the finances to spend on it. I spent my time instead working on mods for Tribes 1 &amp;amp; 2. Well, now those games are pretty extint, so I had to move on to the Unreal series. I modded that for awhile and then discovered that my laptop was not powerfull enough to allow me to start modding the next gen game titles.&lt;br&gt;I tried several options that would allow me to create my own games, one of them was Microsofts XNA framework. I messed with this for about 6 months before I dropped it due to it's lack of winForms support, and my lack of skill in game design in general. Sure I can mod a game, but starting from scratch is a little bit different.&lt;br&gt;I also tried out Irrlicht 3D, but was dissapointed when they dropped support for Irrlicht.Net. The documentation on the current Irrlicht3D.Net CE wrapper is very limited so I dropped that as well. Yes I'm lazy and don't have a whole lot of time to spend on trying to trouble shoot things on my own :P&lt;br&gt;So I checked out Torque again, and went ahead and purchased it. It already has the World Editor, Gui Editor and a CSG editor built and ready to use, so I'm pretty much back into my old days with Tribes 1 &amp;amp; 2. Now I just gotta get back into a rythm, and learn what's new with the engine from the old days.&lt;br&gt;&lt;br&gt;I purchased about a year ago 'Game Programing All-In-One' and read through it a little bit, but didn't spend much time with it due to me not owning Torque and not wanting to mess with the demo. So it looks like I'll be spending the next couple of weeks reading it.&lt;br&gt;&lt;br&gt;I want to spend the next 6 months just reading every little piece of information on Torque Scripting that i can. I need to learn how to properly write Turque scripts and get my objects into the game world. I'm not planning on making the next big Halo, but rather spend alot of time working on little 'examples'  that I can mess with showcasing various features of the engine. This will help me better understand how things work.&lt;br&gt;&lt;br&gt;Once my 6 month learning adventure is over, it'll be time to start my first game! More to come on that at a later point.</description>
	</item>
</rdf:RDF>
