<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="http://www.codeplex.com/rss.xsl"?><rss version="2.0"><channel><title>XnaConsole Wiki &amp; Documentation Rss Feed</title><link>http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=Home</link><description>XnaConsole Wiki Rss Description</description><item><title>Updated Wiki: How to Use the Demo</title><link>http://xnaconsole.codeplex.com/Wiki/View.aspx?title=How to Use the Demo&amp;version=2</link><description>&lt;div class="wikidoc"&gt;&lt;h3&gt;How to use the demo&lt;/h3&gt;
First, build the project. The demo is based off of Going Beyond tutorials 1 and 2 in the xna help file. The controls are the same. Basically, use an Xna compatible gamepad to control the ship. The left stick rotates the ship, and the right trigger accelerates it. The more you press the trigger, the faster it goes, and the more the gamepad rumbles. If you get lost, press a to reset the ship. The start button resets everything.&lt;br /&gt;&lt;br /&gt;However, this is a demo of the console, not a demo on how to draw a model, or how to control it with a gamepad. To open the console, press the ~ (tilde) key. You will be given a prompt that looks like this:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;
###
### Xna Console V.1.0.1
###
&amp;gt;&amp;gt;&amp;gt;_
&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;That blinking underscore is your cursor. Hopefully, it will act the way you expect it to. You can type letters in the normal fashion, and it even repeats characters when you hold them. You can move your cursor left and right with the left and right arrow keys, but only as far as the end of the line. You can also use the home and end keys to quickly reach the beginning and end of the line. Backspace and delete both work, and delete the previous and next characters respectively. The tab key currently adds four spaces.&lt;br /&gt;&lt;br /&gt;Ok, now that you understand the basic features of the text input system, let's use the console to do something interesting!&lt;br /&gt;&lt;br /&gt;First of all, the game adds itself to the interpreter as a global variable, so that we can access its members directly from the console. If you want to see what they are, type in:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;
&amp;gt;&amp;gt;&amp;gt; print dir(game)
&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;This will print the members of game. Now that we know what they are, we can change some of them. Try changing the Acceleration, RotRate, and CameraPosition variables, and see how they effect the game. For example:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;
&amp;gt;&amp;gt;&amp;gt; game.Acceleration = 2.0
&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;will make the ship move twice as fast when you pull the trigger the same distance.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;
&amp;gt;&amp;gt;&amp;gt; game.CameraPosition = Vector3(0, 5000, 1)
&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;will put the camera directly on top of the ship.&lt;br /&gt;&lt;br /&gt;The python interpreter included can handle multi line input, so the following will  work:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;
&amp;gt;&amp;gt;&amp;gt; for i in range(10):
...     print i
... 
0
1
2
3
4
5
6
7
8
9
&amp;gt;&amp;gt;&amp;gt;
&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;It will start a multiline section when you end a line with &amp;quot;:&amp;quot;, and will terminate the block when you enter a blank line. Note, the console does not as yet auto indent, or handle tabs. If you type in a tab, it will just output four spaces.&lt;br /&gt;&lt;br /&gt;Finally, to close the console, just press the ~ key again. It will preserve your ouput and command history for you, so that it will still be there when you open it again. Of course, if you want to clear the output, just type in&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;
&amp;gt;&amp;gt;&amp;gt; Console.Clear()
&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;If you want to exit the game, you can type in:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;
&amp;gt;&amp;gt;&amp;gt; game.Exit()
&lt;/pre&gt;&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>Shader</author><pubDate>Wed, 30 Sep 2009 22:41:22 GMT</pubDate><guid isPermaLink="false">Updated Wiki: How to Use the Demo 20090930104122P</guid></item><item><title>Updated Wiki: Home</title><link>http://xnaconsole.codeplex.com/Wiki/View.aspx?title=Home&amp;version=14</link><description>&lt;div class="wikidoc"&gt;&lt;b&gt;Project Description&lt;/b&gt;&lt;br /&gt;Xna Console allows you to debug and tweak your game on the fly by providing a simple text interface to an interpreter, such as IronPython. You can change variables, test code, or even play your game itself indirectly from the relative safety of a console, all while your game is still running.&lt;br /&gt;&lt;br /&gt;Since Xna Console is designed to work somewhat like other consoles, it&amp;#39;s easy to write your own text based games, or implement an interpreter other than IronPython. &lt;br /&gt;
&lt;h3&gt;Features&lt;/h3&gt;
&lt;ul&gt;&lt;li&gt;IronPython as interpreter&lt;/li&gt;
&lt;li&gt;Some standard console features, such as cursor positioning, command history, etc.&lt;/li&gt;
&lt;li&gt;Easy to implement an alternative interpreter, or even a text based adventure game.&lt;/li&gt;&lt;/ul&gt;

&lt;h3&gt;Getting Started&lt;/h3&gt;
You can download the project here: &lt;a href="http://xnaconsole.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=19208"&gt;XnaConsole v.1.01&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;If you need a place to get started, or want some help, check out the following links:
&lt;ul&gt;&lt;li&gt;&lt;a href="http://xnaconsole.codeplex.com/Wiki/View.aspx?title=How%20to%20use%20the%20demo"&gt;How to use the demo&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://xnaconsole.codeplex.com/Wiki/View.aspx?title=How%20to%20use%20Xna%20Console%20with%20your%20game"&gt;How to use Xna Console with your game&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://xnaconsole.codeplex.com/Wiki/View.aspx?title=How%20to%20use%20Xna%20Console%20with%20something%20other%20than%20IronPython"&gt;How to use Xna Console with something other than IronPython&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://xnaconsole.codeplex.com/Wiki/View.aspx?title=Credits"&gt;Credits&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;

&lt;h3&gt;License&lt;/h3&gt;
Basically, you're allowed to do whatever you want with this code. However, I request that you publish back to this website any improvements made to the console, and that any compatible interpreters you may write for public languages also be made available. If you make an interpreter for your own secret language, you don't have to give it away. Also, it would be nice if you let me know what you've used it in, especially if it becomes a successful game ;)&lt;br /&gt;
&lt;h3&gt;Get Involved&lt;/h3&gt;
I'm not really working all that hard on this project, so if anyone out there wants to help out and keep it alive, send me a message!&lt;br /&gt;
&lt;h3&gt;Tentative Future Plans&lt;/h3&gt;
Ideas I've had for future features:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Have the console render to a texture, so that it can be displayed anywhere in 3d space, such as on a highway billboard, a computer screen, or heads-up-display.&lt;/li&gt;
&lt;li&gt;Add colored text handling, so that games like rogue are more interesting. Also, syntax highlighting becomes a possibility.&lt;/li&gt;
&lt;li&gt;Text selection, copying, pasting, etc. Maybe even use the windows clipboard if the game is running on a pc.&lt;/li&gt;
&lt;li&gt;Somehow add intellisense/word completion. Examples are the tab completion features of IronPython's console, and the source engine console in Portal and HL2.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>Shader</author><pubDate>Wed, 30 Sep 2009 22:40:37 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Home 20090930104037P</guid></item><item><title>UPDATED WIKI: Home</title><link>http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=Home&amp;version=13</link><description>&lt;div class="wikidoc"&gt;
&lt;b&gt;Project Description&lt;/b&gt;&lt;br /&gt;Xna Console allows you to debug and tweak your game on the fly by providing a simple text interface to an interpreter, such as IronPython. You can change variables, test code, or even play your game itself indirectly from the relative safety of a console, all while your game is still running.&lt;br /&gt;&lt;br /&gt;Since Xna Console is designed to work somewhat like other consoles, it&amp;#39;s easy to write your own text based games, or implement an interpreter other than IronPython. 
&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
Features
&lt;/h3&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;IronPython as interpreter&lt;/li&gt;&lt;li&gt;Some standard console features, such as cursor positioning, command history, etc.&lt;/li&gt;&lt;li&gt;Easy to implement an alternative interpreter, or even a text based adventure game.&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h3&gt;
Getting Started
&lt;/h3&gt; &lt;br /&gt;You can download the project here: &lt;a href="http://www.codeplex.com/XnaConsole/Release/ProjectReleases.aspx?ReleaseId=11727"&gt;Xna Console v.1.0&lt;/a&gt; &lt;br /&gt; &lt;br /&gt;If you need a place to get started, or want some help, check out the following links:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20the%20demo&amp;amp;referringTitle=Home"&gt;How to use the demo&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20Xna%20Console%20with%20your%20game&amp;amp;referringTitle=Home"&gt;How to use Xna Console with your game&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20Xna%20Console%20with%20something%20other%20than%20IronPython&amp;amp;referringTitle=Home"&gt;How to use Xna Console with something other than IronPython&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=Credits&amp;amp;referringTitle=Home"&gt;Credits&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h3&gt;
License
&lt;/h3&gt; &lt;br /&gt;Basically, you're allowed to do whatever you want with this code. However, I request that you publish back to this website any improvements made to the console, and that any compatible interpreters you may write for public languages also be made available. If you make an interpreter for your own secret language, you don't have to give it away. Also, it would be nice if you let me know what you've used it in, especially if it becomes a successful game ;)&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
Get Involved
&lt;/h3&gt; &lt;br /&gt;I'm not really working all that hard on this project, so if anyone out there wants to help out and keep it alive, send me a message!&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
Tentative Future Plans
&lt;/h3&gt; &lt;br /&gt;Ideas I've had for future features:&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Have the console render to a texture, so that it can be displayed anywhere in 3d space, such as on a highway billboard, a computer screen, or heads-up-display.&lt;/li&gt;&lt;li&gt;Add colored text handling, so that games like rogue are more interesting. Also, syntax highlighting becomes a possibility.&lt;/li&gt;&lt;li&gt;Text selection, copying, pasting, etc. Maybe even use the windows clipboard if the game is running on a pc.&lt;/li&gt;&lt;li&gt;Somehow add intellisense/word completion. Examples are the tab completion features of IronPython's console, and the source engine console in Portal and HL2.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;</description><author>Shader</author><pubDate>Sat, 05 Apr 2008 20:58:12 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20080405085812P</guid></item><item><title>UPDATED WIKI: How to use Xna Console with something other than IronPython</title><link>http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How to use Xna Console with something other than IronPython&amp;version=3</link><description>&lt;div class="wikidoc"&gt;
&lt;h3&gt;
How to use Xna Console with something other than IronPython
&lt;/h3&gt; &lt;br /&gt;If you want to use something other than IronPython for your console, such as IronScheme, Lua, or some other script language you've designed yourself, just follow the example of the PythonInterpreter class. All that's required is that you know 2 methods of the XnaConsole class, Prompt(), and WriteLine().&lt;br /&gt; &lt;br /&gt;First, make a class responsible for interpreting the input. Give it a instance of XnaConsole for handling text.&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
public XnaConsoleComponent Console;
&lt;/pre&gt; &lt;br /&gt;Then, in the constructor, initialize the console with a SpriteFont:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
Console = new XnaConsoleComponent(game, font);
&lt;/pre&gt; &lt;br /&gt;Where font is your SpriteFont of choice. Next, you'll need to prompt for some input:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
Console.Prompt(Prompt, Callback);
&lt;/pre&gt; &lt;br /&gt;Where Prompt is the text you want to show the user, and Callback is a method you want called with the user's input. This callback needs to be a public void method that takes one string as input, such as:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
public void HandleInput(string str);
&lt;/pre&gt; &lt;br /&gt;Then, when you've handled the input, you may want to give a response, via Console.WriteLine():&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
Console.WriteLine(&amp;quot;Response to input&amp;quot;);
&lt;/pre&gt; &lt;br /&gt;And then continue prompting for more input. That's all there is to it! If you need any more help, look at the code in PythonInterpreter.cs&lt;br /&gt;
&lt;/div&gt;</description><author>Shader</author><pubDate>Sat, 05 Apr 2008 20:52:11 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: How to use Xna Console with something other than IronPython 20080405085211P</guid></item><item><title>UPDATED WIKI: How to use Xna Console with your game</title><link>http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How to use Xna Console with your game&amp;version=2</link><description>&lt;div class="wikidoc"&gt;
&lt;h3&gt;
How to use Xna Console with your game
&lt;/h3&gt; &lt;br /&gt;This is pretty simple.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Include the files XnaConsole.cs, and PythonInterpreter.cs in your project. PythonInterpreter.cs is only necessary if you want to use IronPython as your interpreter. Also, if you do use IronPython, you will need to reference IronPython.dll and IronMath.dll.&lt;/li&gt;&lt;li&gt;Add &amp;quot;using XnaConsole;&amp;quot; to the using statements where your game class is defined.&lt;/li&gt;&lt;li&gt;Add these lines to your game in the variable declaration section:&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;pre&gt;
PythonInterpreter interp;
&lt;/pre&gt; &lt;br /&gt;and in the constructor or initialize method say:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
interp = new PythonInterpreter(this, Content.Load&amp;lt;SpriteFont&amp;gt;(&amp;quot;ConsoleFont&amp;quot;));
interp.AddGlobal(&amp;quot;game&amp;quot;, this);
&lt;/pre&gt; &lt;br /&gt;where &amp;quot;ConsoleFont&amp;quot; is a spritefont of your choice. I usually use Consolas, as can be seen in the example project.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Run your game! That was easy.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;</description><author>Shader</author><pubDate>Sat, 05 Apr 2008 20:49:25 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: How to use Xna Console with your game 20080405084925P</guid></item><item><title>UPDATED WIKI: Home</title><link>http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=Home&amp;version=12</link><description>&lt;div class="wikidoc"&gt;
&lt;b&gt;Project Description&lt;/b&gt;&lt;br /&gt;Xna Console allows you to debug and tweak your game on the fly by providing a simple text interface to an interpreter, such as IronPython. You can change variables, test code, or even play your game itself indirectly, all from the relative safety of a console, even though your game is still running.&lt;br /&gt;&lt;br /&gt;Since Xna Console is designed to work somewhat like other consoles, it&amp;#39;s easy to write your own text based games, or implement an interpreter other than IronPython. 
&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
Features
&lt;/h3&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;IronPython as interpreter&lt;/li&gt;&lt;li&gt;Some standard console features, such as cursor positioning, command history, etc.&lt;/li&gt;&lt;li&gt;Easy to implement an alternative interpreter, or even a text based adventure game.&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h3&gt;
Getting Started
&lt;/h3&gt; &lt;br /&gt;You can download the project here: &lt;a href="http://www.codeplex.com/XnaConsole/Release/ProjectReleases.aspx?ReleaseId=11727"&gt;Xna Console v.1.0&lt;/a&gt; &lt;br /&gt; &lt;br /&gt;If you need a place to get started, or want some help, check out the following links:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20the%20demo&amp;amp;referringTitle=Home"&gt;How to use the demo&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20Xna%20Console%20with%20your%20game&amp;amp;referringTitle=Home"&gt;How to use Xna Console with your game&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20Xna%20Console%20with%20something%20other%20than%20IronPython&amp;amp;referringTitle=Home"&gt;How to use Xna Console with something other than IronPython&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=Credits&amp;amp;referringTitle=Home"&gt;Credits&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h3&gt;
License
&lt;/h3&gt; &lt;br /&gt;Basically, you're allowed to do whatever you want with this code. However, I request that you publish back to this website any improvements made to the console, and that any compatible interpreters you may write for public languages also be made available. If you make an interpreter for your own secret language, you don't have to give it away. Also, it would be nice if you let me know what you've used it in, especially if it becomes a successful game ;)&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
Get Involved
&lt;/h3&gt; &lt;br /&gt;I'm not really working all that hard on this project, so if anyone out there wants to help out and keep it alive, send me a message!&lt;br /&gt;
&lt;/div&gt;</description><author>Shader</author><pubDate>Sat, 05 Apr 2008 20:45:52 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20080405084552P</guid></item><item><title>UPDATED WIKI: How to use Xna Console with something other than IronPython</title><link>http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How to use Xna Console with something other than IronPython&amp;version=2</link><description>&lt;div class="wikidoc"&gt;
&lt;h3&gt;
How to use Xna Console with something other than IronPython
&lt;/h3&gt; &lt;br /&gt;If you want to use something other than IronPython for your console, such as IronScheme, Lua, or some other script language you've designed yourself, just follow the example of the PythonInterpreter class. All that's required is that you know 2 methods of the XnaConsole class, Prompt(), and WriteLine().&lt;br /&gt; &lt;br /&gt;First, make a class responsible for interpreting the input. Give it a instance of XnaConsole for handling text.&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
public XnaConsoleComponent Console;
&lt;/pre&gt; &lt;br /&gt;Then, in the constructor, initialize the console with a SpriteFont:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
Console = new XnaConsoleComponent(game, font);
&lt;/pre&gt; &lt;br /&gt;Where font is your SpriteFont of choice. Next, you'll need to prompt for some input:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
Console.Prompt(Prompt, Callback);
&lt;/pre&gt; &lt;br /&gt;Where Prompt is the text you want to show the user, and Callback is a method you want called with the user's input. This callback needs to be declared like this:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
public void HandleInput(string str);
&lt;/pre&gt; &lt;br /&gt;Then, when you've handled the input, you may want to give a response, via Console.WriteLine():&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
Console.WriteLine(&amp;quot;Response to input&amp;quot;);
&lt;/pre&gt; &lt;br /&gt;And then continue prompting for more input. That's all there is to it! If you need any more help, look at the code in PythonInterpreter.cs&lt;br /&gt;
&lt;/div&gt;</description><author>Shader</author><pubDate>Fri, 28 Mar 2008 00:50:11 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: How to use Xna Console with something other than IronPython 20080328125011A</guid></item><item><title>UPDATED WIKI: How to use Xna Console with something other than IronPython</title><link>http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How to use Xna Console with something other than IronPython&amp;version=1</link><description>&lt;div class="wikidoc"&gt;
&lt;h3&gt;
How to write your own interpreter
&lt;/h3&gt; &lt;br /&gt;If you want to use something other than IronPython for your console, such as IronScheme, Lua, or some other script language you've designed yourself, just follow the example of the PythonInterpreter class. All that's required is that you know 2 methods of the XnaConsole class, Prompt(), and WriteLine().&lt;br /&gt; &lt;br /&gt;First, make a class responsible for interpreting the input. Give it a instance of XnaConsole for handling text.&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
public XnaConsoleComponent Console;
&lt;/pre&gt; &lt;br /&gt;Then, in the constructor, initialize the console with a SpriteFont:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
Console = new XnaConsoleComponent(game, font);
&lt;/pre&gt; &lt;br /&gt;Where font is your SpriteFont of choice. Next, you'll need to prompt for some input:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
Console.Prompt(Prompt, Callback);
&lt;/pre&gt; &lt;br /&gt;Where Prompt is the text you want to show the user, and Callback is a method you want called with the user's input. This callback needs to be declared like this:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
public void HandleInput(string str);
&lt;/pre&gt; &lt;br /&gt;Then, when you've handled the input, you may want to give a response, via Console.WriteLine():&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
Console.WriteLine(&amp;quot;Response to input&amp;quot;);
&lt;/pre&gt; &lt;br /&gt;And then continue prompting for more input. That's all there is to it! If you need any more help, look at the code in PythonInterpreter.cs&lt;br /&gt;
&lt;/div&gt;</description><author>Shader</author><pubDate>Fri, 28 Mar 2008 00:49:33 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: How to use Xna Console with something other than IronPython 20080328124933A</guid></item><item><title>UPDATED WIKI: Home</title><link>http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=Home&amp;version=11</link><description>&lt;div class="wikidoc"&gt;
&lt;b&gt;Project Description&lt;/b&gt;&lt;br /&gt;Xna Console allows you to debug and tweak your game on the fly by providing a simple text interface to an interpreter, such as IronPython. You can change variables, test code, or even play your game itself indirectly, all from the relative safety of a console, even though your game is still running.&lt;br /&gt;&lt;br /&gt;Since Xna Console is designed to work somewhat like other consoles, it&amp;#39;s easy to write your own text based games, or implement an interpreter other than IronPython. 
&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
Features
&lt;/h3&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;IronPython as interpreter&lt;/li&gt;&lt;li&gt;Some standard console features, such as cursor positioning, command history, etc.&lt;/li&gt;&lt;li&gt;Easy to implement an alternative interpreter, or even a text based adventure game. Unfortunately, it won't work very well for ascii games like Rogue yet.&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h3&gt;
Getting Started
&lt;/h3&gt; &lt;br /&gt;You can download the project here: &lt;a href="http://www.codeplex.com/XnaConsole/Release/ProjectReleases.aspx?ReleaseId=11727"&gt;Xna Console v.1.0&lt;/a&gt; &lt;br /&gt; &lt;br /&gt;If you need a place to get started, or want some help, check out the following links:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20the%20demo&amp;amp;referringTitle=Home"&gt;How to use the demo&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20Xna%20Console%20with%20your%20game&amp;amp;referringTitle=Home"&gt;How to use Xna Console with your game&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20Xna%20Console%20with%20something%20other%20than%20IronPython&amp;amp;referringTitle=Home"&gt;How to use Xna Console with something other than IronPython&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=Credits&amp;amp;referringTitle=Home"&gt;Credits&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h3&gt;
License
&lt;/h3&gt; &lt;br /&gt;Basically, you're allowed to do whatever you want with this code. However, I request that you publish back to this website any improvements made to the console, and that any compatible interpreters you may write for public languages also be made available. If you make an interpreter for your own secret language, you don't have to give it away. Also, it would be nice if you let me know what you've used it in, especially if it becomes a successful game ;)&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
Get Involved
&lt;/h3&gt; &lt;br /&gt;I'm not really working all that hard on this project, so if anyone out there wants to help out and keep it alive, send me a message!&lt;br /&gt;
&lt;/div&gt;</description><author>Shader</author><pubDate>Fri, 28 Mar 2008 00:43:53 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20080328124353A</guid></item><item><title>UPDATED WIKI: Home</title><link>http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=Home&amp;version=10</link><description>&lt;div class="wikidoc"&gt;
&lt;b&gt;Project Description&lt;/b&gt;&lt;br /&gt;Xna Console allows you to debug and tweak your game on the fly by providing a simple text interface to an interpreter, such as IronPython. You can change variables, test code, or program a text based adventure game, all from the relative safety of a sprite based console.&lt;br /&gt;&lt;br /&gt;Currently Xna Console uses IronPython as its scripting language, but it&amp;#39;s designed to be easy to implement an interface to your own favorite .Net compatible interpreter. You can even write your own scripting language based on Colossal Cave.
&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
Features
&lt;/h3&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;IronPython as interpreter&lt;/li&gt;&lt;li&gt;Some standard console features, such as cursor positioning, command history, etc.&lt;/li&gt;&lt;li&gt;Easy to implement an alternative interpreter, or even a text based adventure game. Unfortunately, it won't work very well for ascii games like Rogue yet.&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h3&gt;
Getting Started
&lt;/h3&gt; &lt;br /&gt;You can download the project here: &lt;a href="http://www.codeplex.com/XnaConsole/Release/ProjectReleases.aspx?ReleaseId=11727"&gt;Xna Console v.1.0&lt;/a&gt; &lt;br /&gt; &lt;br /&gt;If you need a place to get started, or want some help, check out the following links:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20the%20demo&amp;amp;referringTitle=Home"&gt;How to use the demo&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20Xna%20Console%20with%20your%20game&amp;amp;referringTitle=Home"&gt;How to use Xna Console with your game&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20write%20your%20own%20interpreter&amp;amp;referringTitle=Home"&gt;How to write your own interpreter&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=Credits&amp;amp;referringTitle=Home"&gt;Credits&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h3&gt;
License
&lt;/h3&gt; &lt;br /&gt;Basically, you're allowed to do whatever you want with this code. However, I request that you publish back to this website any improvements made to the console, and that any compatible interpreters you may write for public languages also be made available. If you make an interpreter for your own secret language, you don't have to give it away. Also, it would be nice if you let me know what you've used it in, especially if it becomes a successful game ;)&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
Get Involved
&lt;/h3&gt; &lt;br /&gt;I'm not really working all that hard on this project, so if anyone out there wants to help out and keep it alive, send me a message!&lt;br /&gt;
&lt;/div&gt;</description><author>Shader</author><pubDate>Fri, 28 Mar 2008 00:37:51 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20080328123751A</guid></item><item><title>UPDATED WIKI: Home</title><link>http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=Home&amp;version=9</link><description>&lt;div class="wikidoc"&gt;
&lt;b&gt;Project Description&lt;/b&gt;&lt;br /&gt;Xna Console allows you to debug and tweak your game on the fly by providing a simple text interface to an interpreter, such as IronPython. You can change variables, test code, or program a text based adventure game, all from the relative safety of a sprite based console.&lt;br /&gt;&lt;br /&gt;Currently Xna Console uses IronPython as its scripting language, but it&amp;#39;s designed to be easy to implement an interface to your own favorite .Net compatible interpreter. You can even write your own scripting language based on Colossal Cave.
&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
Features
&lt;/h3&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Characters repeat when keys are held&lt;/li&gt;&lt;li&gt;IronPython as interpreter&lt;/li&gt;&lt;li&gt;Multiline properly handled by IronPython&lt;/li&gt;&lt;li&gt;Cursor can be positioned with the arrow keys to edit anywhere in the string&lt;/li&gt;&lt;li&gt;Command history only includes commands, and not entire output&lt;/li&gt;&lt;li&gt;Easy to implement an alternative interpreter&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h3&gt;
Getting Started
&lt;/h3&gt; &lt;br /&gt;You can download the project here: &lt;a href="http://www.codeplex.com/XnaConsole/Release/ProjectReleases.aspx?ReleaseId=11727"&gt;Xna Console v.1.0&lt;/a&gt; &lt;br /&gt; &lt;br /&gt;If you need a place to get started, or want some help, check out the following links:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20the%20demo&amp;amp;referringTitle=Home"&gt;How to use the demo&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20Xna%20Console%20with%20your%20game&amp;amp;referringTitle=Home"&gt;How to use Xna Console with your game&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20write%20your%20own%20interpreter&amp;amp;referringTitle=Home"&gt;How to write your own interpreter&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=Credits&amp;amp;referringTitle=Home"&gt;Credits&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h3&gt;
License
&lt;/h3&gt; &lt;br /&gt;Basically, you're allowed to do whatever you want with this code. However, I request that you publish back to this website any improvements made to the console, and that any compatible interpreters you may write for public languages also be made available. If you make an interpreter for your own secret language, you don't have to give it away. Also, it would be nice if you let me know what you've used it in, especially if it becomes a successful game ;)&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
Get Involved
&lt;/h3&gt; &lt;br /&gt;I'm not really working all that hard on this project, so if anyone out there wants to help out and keep it alive, send me a message!&lt;br /&gt;
&lt;/div&gt;</description><author>Shader</author><pubDate>Sun, 16 Mar 2008 20:18:43 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20080316081843P</guid></item><item><title>UPDATED WIKI: Home</title><link>http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=Home&amp;version=8</link><description>&lt;div class="wikidoc"&gt;
&lt;b&gt;Project Description&lt;/b&gt;&lt;br /&gt;Xna Console allows you to debug and tweak your game on the fly by providing a simple text interface to an interpreter, such as IronPython. You can change variables, test code, or program a text based adventure game, all from the relative safety of a sprite based console.&lt;br /&gt;&lt;br /&gt;Currently Xna Console uses IronPython as its scripting language, but it&amp;#39;s designed to be easy to implement an interface to your own favorite .Net compatible interpreter. You can even write your own scripting language based on Colossal Cave.
&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
Features
&lt;/h3&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Characters repeat when keys are held&lt;/li&gt;&lt;li&gt;IronPython as interpreter&lt;/li&gt;&lt;li&gt;Multiline properly handled by IronPython&lt;/li&gt;&lt;li&gt;Cursor can be positioned with the arrow keys to edit anywhere in the string&lt;/li&gt;&lt;li&gt;Command history only includes commands, and not entire output&lt;/li&gt;&lt;li&gt;Easy to implement an alternative interpreter&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h3&gt;
Getting Started
&lt;/h3&gt; &lt;br /&gt;You can download the project here: &lt;a href="http://www.codeplex.com/XnaConsole/Release/ProjectReleases.aspx?ReleaseId=11727"&gt;Xna Console v.1.0&lt;/a&gt; &lt;br /&gt; &lt;br /&gt;If you need a place to get started, or want some help, check out the following links:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20the%20demo&amp;amp;referringTitle=Home"&gt;How to use the demo&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20Xna%20Console%20with%20your%20game&amp;amp;referringTitle=Home"&gt;How to use Xna Console with your game&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20write%20your%20own%20interpreter&amp;amp;referringTitle=Home"&gt;How to write your own interpreter&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=Credits&amp;amp;referringTitle=Home"&gt;Credits&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h3&gt;
License
&lt;/h3&gt; &lt;br /&gt;Basically, you're allowed to do whatever you want with this code. In addition, I request that you publish back to this website any improvements made to the console, and that any compatible interpreters you may write for public languages also be made available. If you make an interpreter for your own secret language, you don't have to give it away. Also, it would be nice if you let me know what you've used it in, especially if it becomes a successful game ;)&lt;br /&gt;
&lt;/div&gt;</description><author>Shader</author><pubDate>Sun, 16 Mar 2008 19:54:53 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20080316075453P</guid></item><item><title>UPDATED WIKI: Home</title><link>http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=Home&amp;version=7</link><description>&lt;div class="wikidoc"&gt;
&lt;b&gt;Project Description&lt;/b&gt;&lt;br /&gt;Xna Console allows you to debug and tweak your game on the fly by providing a simple text interface to an interpreter, such as IronPython. You can change variables, test code, or program a text based adventure game, all from the relative safety of a sprite based console.&lt;br /&gt;&lt;br /&gt;Currently Xna Console uses IronPython as its scripting language, but it&amp;#39;s designed to be easy to implement an interface to your own favorite .Net compatible interpreter. You can even write your own scripting language based on Colossal Cave.
&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
Features
&lt;/h3&gt; &lt;br /&gt;    * Characters repeat when keys are held&lt;br /&gt;    * IronPython as interpreter&lt;br /&gt;    * Multiline properly handled by IronPython&lt;br /&gt;    * Cursor can be positioned with the arrow keys to edit anywhere in the string&lt;br /&gt;    * Command history only includes commands, and not entire output&lt;br /&gt;    * Easy to implement an alternative interpreter&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
Getting Started
&lt;/h3&gt; &lt;br /&gt;First, you'll need to download the project &lt;span class="unresolved"&gt;Cannot resolve link: &lt;/span&gt;[release:here|1]&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
Help
&lt;/h3&gt; &lt;br /&gt;If you need a place to get started, or want some help, check out the following links:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20the%20demo&amp;amp;referringTitle=Home"&gt;How to use the demo&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20Xna%20Console%20with%20your%20game&amp;amp;referringTitle=Home"&gt;How to use Xna Console with your game&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20write%20your%20own%20interpreter&amp;amp;referringTitle=Home"&gt;How to write your own interpreter&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=Credits&amp;amp;referringTitle=Home"&gt;Credits&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h3&gt;
License
&lt;/h3&gt; &lt;br /&gt;Basically, you're allowed to do whatever you want with this code. In addition, I request that you publish back to this website any improvements made to the console, and that any compatible interpreters you may write for public languages also be made available. If you make an interpreter for your own secret language, you don't have to give it away. Also, it would be nice if you let me know what you've used it in, especially if it becomes a successful game ;)&lt;br /&gt;
&lt;/div&gt;</description><author>Shader</author><pubDate>Sun, 16 Mar 2008 19:53:04 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20080316075304P</guid></item><item><title>UPDATED WIKI: Home</title><link>http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=Home&amp;version=6</link><description>&lt;div class="wikidoc"&gt;
&lt;b&gt;Project Description&lt;/b&gt;&lt;br /&gt;Xna Console allows you to debug and tweak your game on the fly by providing a simple text interface to an interpreter, such as IronPython. You can change variables, test code, or program a text based adventure game, all from the relative safety of a sprite based console.&lt;br /&gt;&lt;br /&gt;Currently Xna Console uses IronPython as its scripting language, but it&amp;#39;s designed to be easy to implement an interface to your own favorite .Net compatible interpreter. You can even write your own scripting language based on Colossal Cave.
&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
Getting Started
&lt;/h3&gt; &lt;br /&gt;First, you'll need to download the project &lt;span class="unresolved"&gt;Cannot resolve link: &lt;/span&gt;[release:here|1]&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
Help
&lt;/h3&gt; &lt;br /&gt;If you need a place to get started, or want some help, check out the following links:&lt;br /&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20the%20demo&amp;amp;referringTitle=Home"&gt;How to use the demo&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20Xna%20Console%20with%20your%20game&amp;amp;referringTitle=Home"&gt;How to use Xna Console with your game&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20write%20your%20own%20interpreter&amp;amp;referringTitle=Home"&gt;How to write your own interpreter&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=Credits&amp;amp;referringTitle=Home"&gt;Credits&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h3&gt;
License
&lt;/h3&gt; &lt;br /&gt;Basically, you're allowed to do whatever you want with this code. In addition, I request that you publish back to this website any improvements made to the console, and that any compatible interpreters you may write for public languages also be made available. If you make an interpreter for your own secret language, you don't have to give it away. Also, it would be nice if you let me know what you've used it in, especially if it becomes a successful game ;)&lt;br /&gt;
&lt;/div&gt;</description><author>Shader</author><pubDate>Sun, 16 Mar 2008 19:36:08 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20080316073608P</guid></item><item><title>UPDATED WIKI: Credits</title><link>http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=Credits&amp;version=1</link><description>&lt;div class="wikidoc"&gt;
&lt;h3&gt;
Credits
&lt;/h3&gt;				&lt;br /&gt;The folks at &lt;a href="http://xnalearners.spaces.live.com" class="externalLink"&gt;http://xnalearners.spaces.live.com&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;, who wrote the original python console on which this console is based.&lt;br /&gt; &lt;br /&gt;The IronPython team, who provided the python back end, and some ideas from their source code.&lt;br /&gt; &lt;br /&gt;The Microsoft XNA team, who provided both Xna itself, and the tutorial on which the demo is based.&lt;br /&gt;
&lt;/div&gt;</description><author>Shader</author><pubDate>Sun, 16 Mar 2008 19:32:03 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Credits 20080316073203P</guid></item><item><title>UPDATED WIKI: How to write your own interpreter</title><link>http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How to write your own interpreter&amp;version=1</link><description>&lt;div class="wikidoc"&gt;
&lt;h3&gt;
How to write your own interpreter
&lt;/h3&gt; &lt;br /&gt;If you want to use something other than IronPython for your console, such as IronScheme, Lua, or some other script language you've designed yourself, all you have to do is make a class that implements the IInterpreter interface. The interface defines three methods:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
public string GetPrompt();
&lt;/pre&gt; &lt;br /&gt;This returns the current prompt. This exists to allow multiple prompts, for things like multiline input, etc.&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
public string Execute(string str);
&lt;/pre&gt; &lt;br /&gt;The main method. This takes a command and returns the results, to be printed by the console.&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
public void AddGlobal(string str, object obj);
&lt;/pre&gt; &lt;br /&gt;This adds a global variable, to make it easier to get things done, as opposed to typing in the fully qualified variable name.&lt;br /&gt; &lt;br /&gt;Note: this is a method, so it copies the object. Thus, it's only useful for reference types, such as object, and not value types such as int. In theory, you could change it to use the ref modifier, to make it pass by reference, but IronPython doesn't support that, so I didn't bother.&lt;br /&gt; &lt;br /&gt;When you're ready to use your interpreter, you can either pass it to the constructor of a new XnaConsole object, or pass it as an argument to the XnaConsole.SetInterpreter() method.&lt;br /&gt; &lt;br /&gt;If you need any more help than you got here, you can look in PythonInterpreter.cs for an example.&lt;br /&gt;
&lt;/div&gt;</description><author>Shader</author><pubDate>Sun, 16 Mar 2008 19:31:29 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: How to write your own interpreter 20080316073129P</guid></item><item><title>UPDATED WIKI: Home</title><link>http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=Home&amp;version=5</link><description>&lt;div class="wikidoc"&gt;
&lt;b&gt;Project Description&lt;/b&gt;&lt;br /&gt;Xna Console allows you to debug and tweak your game on the fly by providing a simple text interface to an interpreter, such as IronPython. You can change variables, test code, or program a text based adventure game, all from the relative safety of a sprite based console.&lt;br /&gt;&lt;br /&gt;Currently Xna Console uses IronPython as its scripting language, but it&amp;#39;s designed to be easy to implement an interface to your own favorite .Net compatible interpreter. You can even write your own scripting language based on Colossal Cave.
&lt;br /&gt; &lt;br /&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20the%20demo&amp;amp;referringTitle=Home"&gt;How to use the demo&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20Xna%20Console%20with%20your%20game&amp;amp;referringTitle=Home"&gt;How to use Xna Console with your game&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20write%20your%20own%20interpreter&amp;amp;referringTitle=Home"&gt;How to write your own interpreter&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=Credits&amp;amp;referringTitle=Home"&gt;Credits&lt;/a&gt;&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
How to use the demo
&lt;/h3&gt; &lt;br /&gt;First, build the project. The demo is based off of Going Beyond tutorials 1 and 2 in the xna help file. The controls are the same. Basically, use an Xna compatible gamepad to control the ship. The left stick rotates the ship, and the right trigger accelerates it. The more you press the trigger, the faster it goes, and the more the gamepad rumbles. If you get lost, press a to reset the ship. The start button resets everything.&lt;br /&gt; &lt;br /&gt;However, this is a demo of the console, not a demo on how to draw a model, or how to control it with a gamepad. To open the console, press the ~ (tilde) key. You will be given a prompt that looks like this:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
###
### Xna Console V.1.0
###
&amp;gt;&amp;gt;&amp;gt;_
&lt;/pre&gt; &lt;br /&gt;That blinking underscore is your cursor. Hopefully, it will act the way you expect it to. You can type letters in the normal fashion, and it even repeats characters when you hold them. You can move your cursor left and right with the left and right arrow keys, but only as far as the end of the line. You can also use the home and end keys to quickly reach the beginning and end of the line. Backspace and delete both work, and delete the previous and next characters respectively. The tab key currently adds four spaces.&lt;br /&gt; &lt;br /&gt;Ok, now that you understand the basic features of the text input system, let's use the console to do something interesting!&lt;br /&gt; &lt;br /&gt;First of all, the game adds itself to the interpreter as a global variable, so that we can access its members directly from the console. If you want to see what they are, type in:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
&amp;gt;&amp;gt;&amp;gt; print dir(game)
&lt;/pre&gt; &lt;br /&gt;This will print the members of game. Now that we know what they are, we can change some of them. Try changing the Acceleration, RotRate, and CameraPosition variables, and see how they effect the game. For example:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
&amp;gt;&amp;gt;&amp;gt; game.Acceleration = 2.0
&lt;/pre&gt; &lt;br /&gt;will make the ship move twice as fast when you pull the trigger the same distance.&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
&amp;gt;&amp;gt;&amp;gt; game.CameraPosition = Vector3(0, 5000, 1)
&lt;/pre&gt; &lt;br /&gt;will put the camera directly on top of the ship.&lt;br /&gt; &lt;br /&gt;The python interpreter included can handle multi line input, so the following will  work:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
&amp;gt;&amp;gt;&amp;gt; for i in range(10):
...     print i
... 
0
1
2
3
4
5
6
7
8
9
&amp;gt;&amp;gt;&amp;gt;
&lt;/pre&gt; &lt;br /&gt;It will start a multiline section when you end a line with &amp;quot;:&amp;quot;, and will terminate the block when you enter a blank line. Note, the console does not as yet auto indent, or handle tabs. If you type in a tab, it will just output four spaces.&lt;br /&gt; &lt;br /&gt;Finally, to close the console, just press the ~ key again. It will preserve your ouput and command history for you, so that it will still be there when you open it again. Of course, if you want to clear the output, just type in&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
&amp;gt;&amp;gt;&amp;gt; Console.Clear()
&lt;/pre&gt; &lt;br /&gt;&lt;h3&gt;
How to use Xna Console with your game
&lt;/h3&gt; &lt;br /&gt;This is pretty simple.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Include the files XnaConsole.cs, IInterpreter.cs, and PythonInterpreter.cs in your project. The last is only necessary if you want to use python as your interpreter. Also, if you do use IronPython, you will need to reference IronPython.dll and IronMath.dll.&lt;/li&gt;&lt;li&gt;Add &amp;quot;using XnaConsole;&amp;quot; to the using statements where your game class is defined.&lt;/li&gt;&lt;li&gt;Add these lines to your game in the variable declaration section:&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;pre&gt;
PythonInterpreter interp;
XnaConsoleComponent console;
&lt;/pre&gt; &lt;br /&gt;and in the constructor or initialize method say:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
interp = new PythonInterpreter;
XnaConsoleComponent console = new XnaConsoleComponent(this, interp, Content.Load&amp;lt;SpriteFont&amp;gt;(&amp;quot;ConsoleFont&amp;quot;)); //ConsoleFont is a spritefont
interp.AddGlobal(&amp;quot;game&amp;quot;, this);
interp.AddGlobal(&amp;quot;Console&amp;quot;, console);
Components.Add(console);
&lt;/pre&gt; &lt;br /&gt;where &amp;quot;ConsoleFont&amp;quot; is a spritefont of your choice. I usually use Consolas, as can be seen in the example project.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Run your game! That was easy.&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h3&gt;
How to write your own interpreter
&lt;/h3&gt; &lt;br /&gt;If you want to use something other than IronPython for your console, such as IronScheme, Lua, or some other script language you've designed yourself, all you have to do is make a class that implements the IInterpreter interface. The interface defines three methods:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
public string GetPrompt();
&lt;/pre&gt; &lt;br /&gt;This returns the current prompt. This exists to allow multiple prompts, for things like multiline input, etc.&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
public string Execute(string str);
&lt;/pre&gt; &lt;br /&gt;The main method. This takes a command and returns the results, to be printed by the console.&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
public void AddGlobal(string str, object obj);
&lt;/pre&gt; &lt;br /&gt;This adds a global variable, to make it easier to get things done, as opposed to typing in the fully qualified variable name.&lt;br /&gt; &lt;br /&gt;Note: this is a method, so it copies the object. Thus, it's only useful for reference types, such as object, and not value types such as int. In theory, you could change it to use the ref modifier, to make it pass by reference, but IronPython doesn't support that, so I didn't bother.&lt;br /&gt; &lt;br /&gt;When you're ready to use your interpreter, you can either pass it to the constructor of a new XnaConsole object, or pass it as an argument to the XnaConsole.SetInterpreter() method.&lt;br /&gt; &lt;br /&gt;If you need any more help than you got here, you can look in PythonInterpreter.cs for an example.&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
Credits
&lt;/h3&gt;				&lt;br /&gt;The folks at &lt;a href="http://xnalearners.spaces.live.com" class="externalLink"&gt;http://xnalearners.spaces.live.com&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;, who wrote the original python console on which this console is based.&lt;br /&gt; &lt;br /&gt;The IronPython team, who provided the python back end, and some ideas from their source code.&lt;br /&gt; &lt;br /&gt;The Microsoft XNA team, who provided both Xna itself, and the tutorial on which the demo is based.&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
License
&lt;/h3&gt; &lt;br /&gt;Basically, you're allowed to do whatever you want with this code. In addition, I request that you publish back to this website any improvements made to the console, and that any compatible interpreters you may write for public languages also be made available. If you make an interpreter for your own secret language, you don't have to give it away. Also, it would be nice if you let me know what you've used it in, especially if it becomes a successful game ;)&lt;br /&gt;
&lt;/div&gt;</description><author>Shader</author><pubDate>Sun, 16 Mar 2008 19:31:05 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20080316073105P</guid></item><item><title>UPDATED WIKI: How to use Xna Console with your game</title><link>http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How to use Xna Console with your game&amp;version=1</link><description>&lt;div class="wikidoc"&gt;
&lt;h3&gt;
How to use Xna Console with your game
&lt;/h3&gt; &lt;br /&gt;This is pretty simple.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Include the files XnaConsole.cs, IInterpreter.cs, and PythonInterpreter.cs in your project. The last is only necessary if you want to use python as your interpreter. Also, if you do use IronPython, you will need to reference IronPython.dll and IronMath.dll.&lt;/li&gt;&lt;li&gt;Add &amp;quot;using XnaConsole;&amp;quot; to the using statements where your game class is defined.&lt;/li&gt;&lt;li&gt;Add these lines to your game in the variable declaration section:&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;pre&gt;
PythonInterpreter interp;
XnaConsoleComponent console;
&lt;/pre&gt; &lt;br /&gt;and in the constructor or initialize method say:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
interp = new PythonInterpreter;
XnaConsoleComponent console = new XnaConsoleComponent(this, interp, Content.Load&amp;lt;SpriteFont&amp;gt;(&amp;quot;ConsoleFont&amp;quot;)); //ConsoleFont is a spritefont
interp.AddGlobal(&amp;quot;game&amp;quot;, this);
interp.AddGlobal(&amp;quot;Console&amp;quot;, console);
Components.Add(console);
&lt;/pre&gt; &lt;br /&gt;where &amp;quot;ConsoleFont&amp;quot; is a spritefont of your choice. I usually use Consolas, as can be seen in the example project.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Run your game! That was easy.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;</description><author>Shader</author><pubDate>Sun, 16 Mar 2008 19:29:48 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: How to use Xna Console with your game 20080316072948P</guid></item><item><title>UPDATED WIKI: Home</title><link>http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=Home&amp;version=4</link><description>&lt;div class="wikidoc"&gt;
&lt;b&gt;Project Description&lt;/b&gt;&lt;br /&gt;Xna Console allows you to debug and tweak your game on the fly by providing a simple text interface to an interpreter, such as IronPython. You can change variables, test code, or program a text based adventure game, all from the relative safety of a sprite based console.&lt;br /&gt;&lt;br /&gt;Currently Xna Console uses IronPython as its scripting language, but it&amp;#39;s designed to be easy to implement an interface to your own favorite .Net compatible interpreter. You can even write your own scripting language based on Colossal Cave.
&lt;br /&gt; &lt;br /&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20the%20demo&amp;amp;referringTitle=Home"&gt;How to use the demo&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How%20to%20use%20Xna%20Console%20with%20your%20game&amp;amp;referringTitle=Home"&gt;How to use Xna Console with your game&lt;/a&gt;&lt;br /&gt;&lt;h3&gt;
How to use the demo
&lt;/h3&gt; &lt;br /&gt;First, build the project. The demo is based off of Going Beyond tutorials 1 and 2 in the xna help file. The controls are the same. Basically, use an Xna compatible gamepad to control the ship. The left stick rotates the ship, and the right trigger accelerates it. The more you press the trigger, the faster it goes, and the more the gamepad rumbles. If you get lost, press a to reset the ship. The start button resets everything.&lt;br /&gt; &lt;br /&gt;However, this is a demo of the console, not a demo on how to draw a model, or how to control it with a gamepad. To open the console, press the ~ (tilde) key. You will be given a prompt that looks like this:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
###
### Xna Console V.1.0
###
&amp;gt;&amp;gt;&amp;gt;_
&lt;/pre&gt; &lt;br /&gt;That blinking underscore is your cursor. Hopefully, it will act the way you expect it to. You can type letters in the normal fashion, and it even repeats characters when you hold them. You can move your cursor left and right with the left and right arrow keys, but only as far as the end of the line. You can also use the home and end keys to quickly reach the beginning and end of the line. Backspace and delete both work, and delete the previous and next characters respectively. The tab key currently adds four spaces.&lt;br /&gt; &lt;br /&gt;Ok, now that you understand the basic features of the text input system, let's use the console to do something interesting!&lt;br /&gt; &lt;br /&gt;First of all, the game adds itself to the interpreter as a global variable, so that we can access its members directly from the console. If you want to see what they are, type in:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
&amp;gt;&amp;gt;&amp;gt; print dir(game)
&lt;/pre&gt; &lt;br /&gt;This will print the members of game. Now that we know what they are, we can change some of them. Try changing the Acceleration, RotRate, and CameraPosition variables, and see how they effect the game. For example:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
&amp;gt;&amp;gt;&amp;gt; game.Acceleration = 2.0
&lt;/pre&gt; &lt;br /&gt;will make the ship move twice as fast when you pull the trigger the same distance.&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
&amp;gt;&amp;gt;&amp;gt; game.CameraPosition = Vector3(0, 5000, 1)
&lt;/pre&gt; &lt;br /&gt;will put the camera directly on top of the ship.&lt;br /&gt; &lt;br /&gt;The python interpreter included can handle multi line input, so the following will  work:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
&amp;gt;&amp;gt;&amp;gt; for i in range(10):
...     print i
... 
0
1
2
3
4
5
6
7
8
9
&amp;gt;&amp;gt;&amp;gt;
&lt;/pre&gt; &lt;br /&gt;It will start a multiline section when you end a line with &amp;quot;:&amp;quot;, and will terminate the block when you enter a blank line. Note, the console does not as yet auto indent, or handle tabs. If you type in a tab, it will just output four spaces.&lt;br /&gt; &lt;br /&gt;Finally, to close the console, just press the ~ key again. It will preserve your ouput and command history for you, so that it will still be there when you open it again. Of course, if you want to clear the output, just type in&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
&amp;gt;&amp;gt;&amp;gt; Console.Clear()
&lt;/pre&gt; &lt;br /&gt;&lt;h3&gt;
How to use Xna Console with your game
&lt;/h3&gt; &lt;br /&gt;This is pretty simple.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Include the files XnaConsole.cs, IInterpreter.cs, and PythonInterpreter.cs in your project. The last is only necessary if you want to use python as your interpreter. Also, if you do use IronPython, you will need to reference IronPython.dll and IronMath.dll.&lt;/li&gt;&lt;li&gt;Add &amp;quot;using XnaConsole;&amp;quot; to the using statements where your game class is defined.&lt;/li&gt;&lt;li&gt;Add these lines to your game in the variable declaration section:&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;pre&gt;
PythonInterpreter interp;
XnaConsoleComponent console;
&lt;/pre&gt; &lt;br /&gt;and in the constructor or initialize method say:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
interp = new PythonInterpreter;
XnaConsoleComponent console = new XnaConsoleComponent(this, interp, Content.Load&amp;lt;SpriteFont&amp;gt;(&amp;quot;ConsoleFont&amp;quot;)); //ConsoleFont is a spritefont
interp.AddGlobal(&amp;quot;game&amp;quot;, this);
interp.AddGlobal(&amp;quot;Console&amp;quot;, console);
Components.Add(console);
&lt;/pre&gt; &lt;br /&gt;where &amp;quot;ConsoleFont&amp;quot; is a spritefont of your choice. I usually use Consolas, as can be seen in the example project.&lt;br /&gt; &lt;br /&gt;&lt;ul&gt;
&lt;li&gt;Run your game! That was easy.&lt;/li&gt;
&lt;/ul&gt; &lt;br /&gt;&lt;h3&gt;
How to write your own interpreter
&lt;/h3&gt; &lt;br /&gt;If you want to use something other than IronPython for your console, such as IronScheme, Lua, or some other script language you've designed yourself, all you have to do is make a class that implements the IInterpreter interface. The interface defines three methods:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
public string GetPrompt();
&lt;/pre&gt; &lt;br /&gt;This returns the current prompt. This exists to allow multiple prompts, for things like multiline input, etc.&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
public string Execute(string str);
&lt;/pre&gt; &lt;br /&gt;The main method. This takes a command and returns the results, to be printed by the console.&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
public void AddGlobal(string str, object obj);
&lt;/pre&gt; &lt;br /&gt;This adds a global variable, to make it easier to get things done, as opposed to typing in the fully qualified variable name.&lt;br /&gt; &lt;br /&gt;Note: this is a method, so it copies the object. Thus, it's only useful for reference types, such as object, and not value types such as int. In theory, you could change it to use the ref modifier, to make it pass by reference, but IronPython doesn't support that, so I didn't bother.&lt;br /&gt; &lt;br /&gt;When you're ready to use your interpreter, you can either pass it to the constructor of a new XnaConsole object, or pass it as an argument to the XnaConsole.SetInterpreter() method.&lt;br /&gt; &lt;br /&gt;If you need any more help than you got here, you can look in PythonInterpreter.cs for an example.&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
Credits
&lt;/h3&gt;				&lt;br /&gt;The folks at &lt;a href="http://xnalearners.spaces.live.com" class="externalLink"&gt;http://xnalearners.spaces.live.com&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;, who wrote the original python console on which this console is based.&lt;br /&gt; &lt;br /&gt;The IronPython team, who provided the python back end, and some ideas from their source code.&lt;br /&gt; &lt;br /&gt;The Microsoft XNA team, who provided both Xna itself, and the tutorial on which the demo is based.&lt;br /&gt; &lt;br /&gt;&lt;h3&gt;
License
&lt;/h3&gt; &lt;br /&gt;Basically, you're allowed to do whatever you want with this code. In addition, I request that you publish back to this website any improvements made to the console, and that any compatible interpreters you may write for public languages also be made available. If you make an interpreter for your own secret language, you don't have to give it away. Also, it would be nice if you let me know what you've used it in, especially if it becomes a successful game ;)&lt;br /&gt;
&lt;/div&gt;</description><author>Shader</author><pubDate>Sun, 16 Mar 2008 19:28:51 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20080316072851P</guid></item><item><title>UPDATED WIKI: How to Use the Demo</title><link>http://www.codeplex.com/XnaConsole/Wiki/View.aspx?title=How to Use the Demo&amp;version=1</link><description>&lt;div class="wikidoc"&gt;
&lt;h3&gt;
How to use the demo
&lt;/h3&gt; &lt;br /&gt;First, build the project. The demo is based off of Going Beyond tutorials 1 and 2 in the xna help file. The controls are the same. Basically, use an Xna compatible gamepad to control the ship. The left stick rotates the ship, and the right trigger accelerates it. The more you press the trigger, the faster it goes, and the more the gamepad rumbles. If you get lost, press a to reset the ship. The start button resets everything.&lt;br /&gt; &lt;br /&gt;However, this is a demo of the console, not a demo on how to draw a model, or how to control it with a gamepad. To open the console, press the ~ (tilde) key. You will be given a prompt that looks like this:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
###
### Xna Console V.1.0
###
&amp;gt;&amp;gt;&amp;gt;_
&lt;/pre&gt; &lt;br /&gt;That blinking underscore is your cursor. Hopefully, it will act the way you expect it to. You can type letters in the normal fashion, and it even repeats characters when you hold them. You can move your cursor left and right with the left and right arrow keys, but only as far as the end of the line. You can also use the home and end keys to quickly reach the beginning and end of the line. Backspace and delete both work, and delete the previous and next characters respectively. The tab key currently adds four spaces.&lt;br /&gt; &lt;br /&gt;Ok, now that you understand the basic features of the text input system, let's use the console to do something interesting!&lt;br /&gt; &lt;br /&gt;First of all, the game adds itself to the interpreter as a global variable, so that we can access its members directly from the console. If you want to see what they are, type in:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
&amp;gt;&amp;gt;&amp;gt; print dir(game)
&lt;/pre&gt; &lt;br /&gt;This will print the members of game. Now that we know what they are, we can change some of them. Try changing the Acceleration, RotRate, and CameraPosition variables, and see how they effect the game. For example:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
&amp;gt;&amp;gt;&amp;gt; game.Acceleration = 2.0
&lt;/pre&gt; &lt;br /&gt;will make the ship move twice as fast when you pull the trigger the same distance.&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
&amp;gt;&amp;gt;&amp;gt; game.CameraPosition = Vector3(0, 5000, 1)
&lt;/pre&gt; &lt;br /&gt;will put the camera directly on top of the ship.&lt;br /&gt; &lt;br /&gt;The python interpreter included can handle multi line input, so the following will  work:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
&amp;gt;&amp;gt;&amp;gt; for i in range(10):
...     print i
... 
0
1
2
3
4
5
6
7
8
9
&amp;gt;&amp;gt;&amp;gt;
&lt;/pre&gt; &lt;br /&gt;It will start a multiline section when you end a line with &amp;quot;:&amp;quot;, and will terminate the block when you enter a blank line. Note, the console does not as yet auto indent, or handle tabs. If you type in a tab, it will just output four spaces.&lt;br /&gt; &lt;br /&gt;Finally, to close the console, just press the ~ key again. It will preserve your ouput and command history for you, so that it will still be there when you open it again. Of course, if you want to clear the output, just type in&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
&amp;gt;&amp;gt;&amp;gt; Console.Clear()
&lt;/pre&gt; &lt;br /&gt;If you want to exit the game, you can type in:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
&amp;gt;&amp;gt;&amp;gt; game.Exit()
&lt;/pre&gt;
&lt;/div&gt;</description><author>Shader</author><pubDate>Sun, 16 Mar 2008 19:28:00 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: How to Use the Demo 20080316072800P</guid></item></channel></rss>