<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title><![CDATA[Lurous Productions Forum - All Forums]]></title>
		<link>http://forums.lurous.com/</link>
		<description><![CDATA[Lurous Productions Forum - http://forums.lurous.com]]></description>
		<pubDate>Wed, 22 Feb 2012 19:33:54 +0000</pubDate>
		<generator>MyBB</generator>
		<item>
			<title><![CDATA[Galaxy Map Program]]></title>
			<link>http://forums.lurous.com/thread-91.html</link>
			<pubDate>Sun, 17 Apr 2011 21:07:52 +0000</pubDate>
			<guid isPermaLink="false">http://forums.lurous.com/thread-91.html</guid>
			<description><![CDATA[Hello All,<br />
<br />
I've started work on Xeno 4 again today. So far, it's just a concept program for a 3D map.<br />
<br />
Development Status:<ul>
<li><span style="font-weight: bold;"><del>Render Stars</del> (Done [4/17/2011])</span></li>
<li>Fancy Rendering of Stars (Shaders)</li>
<li>KD-Tree Implementation</li>
<li>3 Nearest Neighbor Connection Links</li>
<li>Mouse Picking</li>
<li>GUI<br />
</li></ul>
<br />
<br />
Here's a couple screenshots of what I have so far:<br />
<br />
<span style="font-weight: bold;">Screenshot 1: Early Development [4/17/2011]. Stars are rendered.</span><br />
<img src="http://www.lurous.com/data/xeno4-galaxy-001.png" border="0" alt="[Image: xeno4-galaxy-001.png]" /><br />
<br />
<span style="font-weight: bold;">Screenshot 2: Early Development [4/17/2011]. Stars are rendered.</span><br />
<img src="http://www.lurous.com/data/xeno4-galaxy-002.png" border="0" alt="[Image: xeno4-galaxy-002.png]" />]]></description>
			<content:encoded><![CDATA[Hello All,<br />
<br />
I've started work on Xeno 4 again today. So far, it's just a concept program for a 3D map.<br />
<br />
Development Status:<ul>
<li><span style="font-weight: bold;"><del>Render Stars</del> (Done [4/17/2011])</span></li>
<li>Fancy Rendering of Stars (Shaders)</li>
<li>KD-Tree Implementation</li>
<li>3 Nearest Neighbor Connection Links</li>
<li>Mouse Picking</li>
<li>GUI<br />
</li></ul>
<br />
<br />
Here's a couple screenshots of what I have so far:<br />
<br />
<span style="font-weight: bold;">Screenshot 1: Early Development [4/17/2011]. Stars are rendered.</span><br />
<img src="http://www.lurous.com/data/xeno4-galaxy-001.png" border="0" alt="[Image: xeno4-galaxy-001.png]" /><br />
<br />
<span style="font-weight: bold;">Screenshot 2: Early Development [4/17/2011]. Stars are rendered.</span><br />
<img src="http://www.lurous.com/data/xeno4-galaxy-002.png" border="0" alt="[Image: xeno4-galaxy-002.png]" />]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Massive User Prune]]></title>
			<link>http://forums.lurous.com/thread-82.html</link>
			<pubDate>Sat, 19 Mar 2011 09:15:51 +0000</pubDate>
			<guid isPermaLink="false">http://forums.lurous.com/thread-82.html</guid>
			<description><![CDATA[I've pruned every user that I don't think is real. If I deleted your user, I am sorry. I assumed you were a bot. I think this forum software is in dire need of better CAPTCHAs.]]></description>
			<content:encoded><![CDATA[I've pruned every user that I don't think is real. If I deleted your user, I am sorry. I assumed you were a bot. I think this forum software is in dire need of better CAPTCHAs.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Wanting User Input: Reorganizing]]></title>
			<link>http://forums.lurous.com/thread-80.html</link>
			<pubDate>Mon, 28 Feb 2011 17:29:05 +0000</pubDate>
			<guid isPermaLink="false">http://forums.lurous.com/thread-80.html</guid>
			<description><![CDATA[Well, it comes down to the fact that I am not sure if there's a point to the Flash game anymore. This is because Kyle has returned and I don't want to make it too hard on him to restore his community. In the light of this event, I will either be looking to reorganize Xeno 4 or I might just cancel the project.<br />
<br />
However, I want to see about any user input before I decide.]]></description>
			<content:encoded><![CDATA[Well, it comes down to the fact that I am not sure if there's a point to the Flash game anymore. This is because Kyle has returned and I don't want to make it too hard on him to restore his community. In the light of this event, I will either be looking to reorganize Xeno 4 or I might just cancel the project.<br />
<br />
However, I want to see about any user input before I decide.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Massive User Ban]]></title>
			<link>http://forums.lurous.com/thread-79.html</link>
			<pubDate>Wed, 22 Dec 2010 04:18:42 +0000</pubDate>
			<guid isPermaLink="false">http://forums.lurous.com/thread-79.html</guid>
			<description><![CDATA[I banned and removed 18 users I considered link farmers. If you weren't, next time don't make such a bot-ish username. Also: Post something.<br />
<br />
You don't need to register to view this forum, if you don't plan to post: don't worry, we don't care if you just lurk as a guest.]]></description>
			<content:encoded><![CDATA[I banned and removed 18 users I considered link farmers. If you weren't, next time don't make such a bot-ish username. Also: Post something.<br />
<br />
You don't need to register to view this forum, if you don't plan to post: don't worry, we don't care if you just lurk as a guest.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Hey guys]]></title>
			<link>http://forums.lurous.com/thread-77.html</link>
			<pubDate>Wed, 24 Nov 2010 18:17:25 +0000</pubDate>
			<guid isPermaLink="false">http://forums.lurous.com/thread-77.html</guid>
			<description><![CDATA[Never gonna give you up, never gonna let you down<br />
Never gonna run around and desert you<br />
Never gonna make you cry, never gonna say goodbye<br />
Never gonna tell a lie and hurt you.<br />
<br />
<br />
<br />
<br />
So yeah, you just got Rickrolled and hello <img src="images/smilies/smile.gif" style="vertical-align: middle;" border="0" alt="Smile" title="Smile" /> I am Alexander, I play a lot of games, about to start studying for pilot, develop some websites and moderate forums <img src="images/smilies/smile.gif" style="vertical-align: middle;" border="0" alt="Smile" title="Smile" /> Happy to be here haha <img src="images/smilies/biggrin.gif" style="vertical-align: middle;" border="0" alt="Big Grin" title="Big Grin" />]]></description>
			<content:encoded><![CDATA[Never gonna give you up, never gonna let you down<br />
Never gonna run around and desert you<br />
Never gonna make you cry, never gonna say goodbye<br />
Never gonna tell a lie and hurt you.<br />
<br />
<br />
<br />
<br />
So yeah, you just got Rickrolled and hello <img src="images/smilies/smile.gif" style="vertical-align: middle;" border="0" alt="Smile" title="Smile" /> I am Alexander, I play a lot of games, about to start studying for pilot, develop some websites and moderate forums <img src="images/smilies/smile.gif" style="vertical-align: middle;" border="0" alt="Smile" title="Smile" /> Happy to be here haha <img src="images/smilies/biggrin.gif" style="vertical-align: middle;" border="0" alt="Big Grin" title="Big Grin" />]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[UnNatural Space]]></title>
			<link>http://forums.lurous.com/thread-75.html</link>
			<pubDate>Thu, 18 Nov 2010 03:06:22 +0000</pubDate>
			<guid isPermaLink="false">http://forums.lurous.com/thread-75.html</guid>
			<description><![CDATA[Hey, I've been working something in Game Maker over the past couple months that I think is about ready to share.  [ Yes.  Game Maker.  The program most know for it's drag and drop functions and younger audience appeal.]<br />
However it's language GML is also fairly easy to learn, and I had a copy of this program from a few years ago, so I thought I'd see what I could do.<br />
<br />
Obviously I had to take my own shot at a sequel to Stellar Conflicts, so I present you with UnNatural Space.  <br />
<br />
Some primative screenshots of so far:<br />
<br />
<img src="http://i54.tinypic.com/103zdon.png" border="0" alt="[Image: 103zdon.png]" /><br />
<br />
<img src="http://i55.tinypic.com/15fyis.jpg" border="0" alt="[Image: 15fyis.jpg]" /><br />
<br />
<img src="http://i54.tinypic.com/35luiba.png" border="0" alt="[Image: 35luiba.png]" /><br />
<br />
Yes this is an online game I am making.  I will post more info, on one of my other computers w/ a better internet connection.]]></description>
			<content:encoded><![CDATA[Hey, I've been working something in Game Maker over the past couple months that I think is about ready to share.  [ Yes.  Game Maker.  The program most know for it's drag and drop functions and younger audience appeal.]<br />
However it's language GML is also fairly easy to learn, and I had a copy of this program from a few years ago, so I thought I'd see what I could do.<br />
<br />
Obviously I had to take my own shot at a sequel to Stellar Conflicts, so I present you with UnNatural Space.  <br />
<br />
Some primative screenshots of so far:<br />
<br />
<img src="http://i54.tinypic.com/103zdon.png" border="0" alt="[Image: 103zdon.png]" /><br />
<br />
<img src="http://i55.tinypic.com/15fyis.jpg" border="0" alt="[Image: 15fyis.jpg]" /><br />
<br />
<img src="http://i54.tinypic.com/35luiba.png" border="0" alt="[Image: 35luiba.png]" /><br />
<br />
Yes this is an online game I am making.  I will post more info, on one of my other computers w/ a better internet connection.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[[10/25/10] Bug &#x26; Feature Status Report]]></title>
			<link>http://forums.lurous.com/thread-73.html</link>
			<pubDate>Wed, 27 Oct 2010 03:19:54 +0000</pubDate>
			<guid isPermaLink="false">http://forums.lurous.com/thread-73.html</guid>
			<description><![CDATA[<div style="text-align: center;"><span style="font-size: 24pt;"><span style="font-weight: bold;"><span style="font-style: italic;">un</span>Timely Bug and Feature Status Report</span></span><br />
for the week of <span style="color: red;"><span style="font-weight: bold;">October 25th, 2010</span></span></div>
<hr />
<br />
<span style="color: orange;"><span style="font-size: 28pt;"><span style="font-weight: bold;">Current Version: 0.0.9a</span></span></span><br />
<br />
This week's <span style="color: red;"><span style="font-weight: bold;">Bug Fixes</span></span>:<ul>
<li>You will no longer see yourself twice.</li>
<li>Your acceleration will no longer jump your velocity to ungodly speeds.</li>
<li>Your velocity and position are correctly calculated.</li>
<li>The game will no longer make attempts to use up the entire core of your processor.</li>
<li>You can now see other people.<br />
</li></ul>
<br />
This week's <span style="color: orange;"><span style="font-weight: bold;">Known Bugs</span></span>:<ul>
<li>Players don't actually move, they just rotate around you.<br />
</li></ul>
<br />
This week's <span style="color: #00aa00;"><span style="font-weight: bold;">New Features</span></span>:<ul>
<li>There is now a speed cap on all ships.</li>
<li>Movement system is finished.</li>
<li>You may now brake with the down arrow.</li>
<li>Rotation is now sync'd!<br />
</li></ul>
<hr />
<br />
<span style="font-style: italic;">This list is continually changing all week. We will be editing it as we go.</span>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;"><span style="font-size: 24pt;"><span style="font-weight: bold;"><span style="font-style: italic;">un</span>Timely Bug and Feature Status Report</span></span><br />
for the week of <span style="color: red;"><span style="font-weight: bold;">October 25th, 2010</span></span></div>
<hr />
<br />
<span style="color: orange;"><span style="font-size: 28pt;"><span style="font-weight: bold;">Current Version: 0.0.9a</span></span></span><br />
<br />
This week's <span style="color: red;"><span style="font-weight: bold;">Bug Fixes</span></span>:<ul>
<li>You will no longer see yourself twice.</li>
<li>Your acceleration will no longer jump your velocity to ungodly speeds.</li>
<li>Your velocity and position are correctly calculated.</li>
<li>The game will no longer make attempts to use up the entire core of your processor.</li>
<li>You can now see other people.<br />
</li></ul>
<br />
This week's <span style="color: orange;"><span style="font-weight: bold;">Known Bugs</span></span>:<ul>
<li>Players don't actually move, they just rotate around you.<br />
</li></ul>
<br />
This week's <span style="color: #00aa00;"><span style="font-weight: bold;">New Features</span></span>:<ul>
<li>There is now a speed cap on all ships.</li>
<li>Movement system is finished.</li>
<li>You may now brake with the down arrow.</li>
<li>Rotation is now sync'd!<br />
</li></ul>
<hr />
<br />
<span style="font-style: italic;">This list is continually changing all week. We will be editing it as we go.</span>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[New Website Theme!]]></title>
			<link>http://forums.lurous.com/thread-72.html</link>
			<pubDate>Sun, 24 Oct 2010 06:57:01 +0000</pubDate>
			<guid isPermaLink="false">http://forums.lurous.com/thread-72.html</guid>
			<description><![CDATA[Hello!<br />
<br />
Today I finished the new template for Lurous Production's new website! Our new website now includes a good deal of CSS3 techniques that most modern browsers now can use. You can view it by pointing your browser to <a href="http://www.lurous.com/" target="_blank">http://www.lurous.com/</a> (Or just clicking that link.)<br />
<br />
I still have a bit of SEO work to do and I do need to actually write content for the pages, but other than that, it is done!<br />
<br />
What do you think?]]></description>
			<content:encoded><![CDATA[Hello!<br />
<br />
Today I finished the new template for Lurous Production's new website! Our new website now includes a good deal of CSS3 techniques that most modern browsers now can use. You can view it by pointing your browser to <a href="http://www.lurous.com/" target="_blank">http://www.lurous.com/</a> (Or just clicking that link.)<br />
<br />
I still have a bit of SEO work to do and I do need to actually write content for the pages, but other than that, it is done!<br />
<br />
What do you think?]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Server Transfer Completed]]></title>
			<link>http://forums.lurous.com/thread-71.html</link>
			<pubDate>Wed, 06 Oct 2010 17:46:20 +0000</pubDate>
			<guid isPermaLink="false">http://forums.lurous.com/thread-71.html</guid>
			<description><![CDATA[Well, the server transfer has been completed.<br />
<br />
Everything is transferred and it should be at least 10 times faster!]]></description>
			<content:encoded><![CDATA[Well, the server transfer has been completed.<br />
<br />
Everything is transferred and it should be at least 10 times faster!]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[New Forum]]></title>
			<link>http://forums.lurous.com/thread-70.html</link>
			<pubDate>Fri, 01 Oct 2010 17:43:52 +0000</pubDate>
			<guid isPermaLink="false">http://forums.lurous.com/thread-70.html</guid>
			<description><![CDATA[Well, as you can see, we have a new forum!<br />
<br />
I've retained all the posts. The only problem is I am going to have to fix a lot of BBCode errors.<br />
<br />
What do you think?]]></description>
			<content:encoded><![CDATA[Well, as you can see, we have a new forum!<br />
<br />
I've retained all the posts. The only problem is I am going to have to fix a lot of BBCode errors.<br />
<br />
What do you think?]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[[9/6/10] Bug &#x26; Feature Status Report]]></title>
			<link>http://forums.lurous.com/thread-69.html</link>
			<pubDate>Mon, 06 Sep 2010 18:25:39 +0000</pubDate>
			<guid isPermaLink="false">http://forums.lurous.com/thread-69.html</guid>
			<description><![CDATA[<div style="text-align: center;"><span style="font-size: 24pt;"><span style="font-weight: bold;">Timely Bug and Feature Status Report</span></span><br />
for the week of <span style="color: red;"><span style="font-weight: bold;">September 6th, 2010</span></span></div>
<hr />
<br />
<span style="color: orange;"><span style="font-size: 28pt;"><span style="font-weight: bold;">Current Version: 0.0.8f</span></span></span><br />
<br />
This week's <span style="color: red;"><span style="font-weight: bold;">Bug Fixes</span></span>:<ul>
<li>Players will no longer time out.</li>
<li>Halved the file size. The Login screen and the Error screen both scale correctly now.<br />
</li></ul>
<br />
This week's <span style="color: orange;"><span style="font-weight: bold;">Known Bugs</span></span>:<ul>
<li>Players aren't showing up in the right places on the viewport.</li>
<li>Players sometimes aren't showing up at all on the viewport.</li>
<li>The rotation is always wrong with other players.</li>
<li>Some users having trouble with the server timing out and not clearing their user.<br />
</li></ul>
<br />
This week's <span style="color: #00aa00;"><span style="font-weight: bold;">New Features</span></span>:<ul>
<li>Your latency is now on the bottom left of the game.<br />
</li></ul>
<hr />
<br />
<span style="font-style: italic;">This list is continually changing all week. We will be editing it as we go.</span>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;"><span style="font-size: 24pt;"><span style="font-weight: bold;">Timely Bug and Feature Status Report</span></span><br />
for the week of <span style="color: red;"><span style="font-weight: bold;">September 6th, 2010</span></span></div>
<hr />
<br />
<span style="color: orange;"><span style="font-size: 28pt;"><span style="font-weight: bold;">Current Version: 0.0.8f</span></span></span><br />
<br />
This week's <span style="color: red;"><span style="font-weight: bold;">Bug Fixes</span></span>:<ul>
<li>Players will no longer time out.</li>
<li>Halved the file size. The Login screen and the Error screen both scale correctly now.<br />
</li></ul>
<br />
This week's <span style="color: orange;"><span style="font-weight: bold;">Known Bugs</span></span>:<ul>
<li>Players aren't showing up in the right places on the viewport.</li>
<li>Players sometimes aren't showing up at all on the viewport.</li>
<li>The rotation is always wrong with other players.</li>
<li>Some users having trouble with the server timing out and not clearing their user.<br />
</li></ul>
<br />
This week's <span style="color: #00aa00;"><span style="font-weight: bold;">New Features</span></span>:<ul>
<li>Your latency is now on the bottom left of the game.<br />
</li></ul>
<hr />
<br />
<span style="font-style: italic;">This list is continually changing all week. We will be editing it as we go.</span>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[[8/30/10] Bug &#x26; Feature Status Report]]></title>
			<link>http://forums.lurous.com/thread-68.html</link>
			<pubDate>Mon, 06 Sep 2010 04:43:57 +0000</pubDate>
			<guid isPermaLink="false">http://forums.lurous.com/thread-68.html</guid>
			<description><![CDATA[<div style="text-align: center;"><span style="font-size: 24pt;"><span style="font-weight: bold;">Timely Bug and Feature Status Report</span></span><br />
for the week of <span style="color: red;"><span style="font-weight: bold;">August 30th, 2010</span></span></div>
<hr />
<br />
<span style="color: orange;"><span style="font-size: 28pt;"><span style="font-weight: bold;">Current Version: 0.0.8c</span></span></span><br />
<br />
This week's <span style="color: red;"><span style="font-weight: bold;">Bug Fixes</span></span>:<ul>
<li>None yet.<br />
</li></ul>
<br />
This week's <span style="color: orange;"><span style="font-weight: bold;">Known Bugs</span></span>:<ul>
<li>Players aren't showing up in the right places on the viewport.</li>
<li>Players sometimes aren't showing up at all on the viewport.</li>
<li>The rotation is always wrong with other players.</li>
<li>Some users having trouble with the server timing out and not clearing their user.<br />
</li></ul>
<br />
This week's <span style="color: #00aa00;"><span style="font-weight: bold;">New Features</span></span>:<ul>
<li>The client now adjusts its resolution automatically.<br />
</li></ul>
<hr />
<br />
<span style="font-style: italic;">This list is continually changing all week. We will be editing it as we go.</span>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;"><span style="font-size: 24pt;"><span style="font-weight: bold;">Timely Bug and Feature Status Report</span></span><br />
for the week of <span style="color: red;"><span style="font-weight: bold;">August 30th, 2010</span></span></div>
<hr />
<br />
<span style="color: orange;"><span style="font-size: 28pt;"><span style="font-weight: bold;">Current Version: 0.0.8c</span></span></span><br />
<br />
This week's <span style="color: red;"><span style="font-weight: bold;">Bug Fixes</span></span>:<ul>
<li>None yet.<br />
</li></ul>
<br />
This week's <span style="color: orange;"><span style="font-weight: bold;">Known Bugs</span></span>:<ul>
<li>Players aren't showing up in the right places on the viewport.</li>
<li>Players sometimes aren't showing up at all on the viewport.</li>
<li>The rotation is always wrong with other players.</li>
<li>Some users having trouble with the server timing out and not clearing their user.<br />
</li></ul>
<br />
This week's <span style="color: #00aa00;"><span style="font-weight: bold;">New Features</span></span>:<ul>
<li>The client now adjusts its resolution automatically.<br />
</li></ul>
<hr />
<br />
<span style="font-style: italic;">This list is continually changing all week. We will be editing it as we go.</span>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[What Is Going On? Xeno 4's Last Update Was Ages Ago!]]></title>
			<link>http://forums.lurous.com/thread-67.html</link>
			<pubDate>Fri, 03 Sep 2010 17:31:20 +0000</pubDate>
			<guid isPermaLink="false">http://forums.lurous.com/thread-67.html</guid>
			<description><![CDATA[The fact that Xeno 4 hasn't been updated lately is widely considered unhealthy for the project. I admit that it doesn't strike a good note with people who are anxiously waiting for the new updates. Over the summer, the updates were flowing in. That's because over the summer, I had only one really large responsibility taking up my time, my job. Now, I have both a part-time job and full-time studies at the University. As it turns out, my workload this semester will be quite arduous. Because of this, you will not see many updates per month. I'm not sure I've done any since school started.<br />
<br />
<span style="font-size: 28pt;"><span style="font-family: impact;">Don't Be Alarmed</span></span><br />
I just want to inform you not to be alarmed. I might put updates in, I might not. However, when I am not working on school and work, I am thinking of different methods of applying certain functions into the game. My school and work comes first, but Xeno 4 comes second. When I have time, I will add features into the game. There are no other projects Lurous Productions is working on right now. There are no other projects I am working on right now. It is only Xeno 4. If I am not putting updates into the game, it is because I am studying or I am at work.<br />
<br />
<span style="font-size: 28pt;"><span style="font-family: impact;">We'll Resume Heavy Work</span></span><br />
Don't worry, once I am not as busy at school (or it gets out) I will devote the extra time into Xeno 4. Xeno 4 has the best chance of success that I have seen in any of my projects I've worked on so far. I have the most of the resources, the tools, and the knowledge to complete it. The only resource I don't have at the moment is time. However, I will have more time later on and once that happens, Xeno 4 updates will come out much faster.<br />
<br />
I'm not saying that you won't see updates. I'm saying don't expect them to be fired out like they have been in the past.<br />
<br />
Stay tuned!<br />
<br />
See Blog Post: <a href="http://www.lurous.com/blog/2010/09/what-is-going-on/" target="_blank">http://www.lurous.com/blog/2010/09/what-is-going-on/</a>]]></description>
			<content:encoded><![CDATA[The fact that Xeno 4 hasn't been updated lately is widely considered unhealthy for the project. I admit that it doesn't strike a good note with people who are anxiously waiting for the new updates. Over the summer, the updates were flowing in. That's because over the summer, I had only one really large responsibility taking up my time, my job. Now, I have both a part-time job and full-time studies at the University. As it turns out, my workload this semester will be quite arduous. Because of this, you will not see many updates per month. I'm not sure I've done any since school started.<br />
<br />
<span style="font-size: 28pt;"><span style="font-family: impact;">Don't Be Alarmed</span></span><br />
I just want to inform you not to be alarmed. I might put updates in, I might not. However, when I am not working on school and work, I am thinking of different methods of applying certain functions into the game. My school and work comes first, but Xeno 4 comes second. When I have time, I will add features into the game. There are no other projects Lurous Productions is working on right now. There are no other projects I am working on right now. It is only Xeno 4. If I am not putting updates into the game, it is because I am studying or I am at work.<br />
<br />
<span style="font-size: 28pt;"><span style="font-family: impact;">We'll Resume Heavy Work</span></span><br />
Don't worry, once I am not as busy at school (or it gets out) I will devote the extra time into Xeno 4. Xeno 4 has the best chance of success that I have seen in any of my projects I've worked on so far. I have the most of the resources, the tools, and the knowledge to complete it. The only resource I don't have at the moment is time. However, I will have more time later on and once that happens, Xeno 4 updates will come out much faster.<br />
<br />
I'm not saying that you won't see updates. I'm saying don't expect them to be fired out like they have been in the past.<br />
<br />
Stay tuned!<br />
<br />
See Blog Post: <a href="http://www.lurous.com/blog/2010/09/what-is-going-on/" target="_blank">http://www.lurous.com/blog/2010/09/what-is-going-on/</a>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[[8/23/10] Bug &#x26; Feature Status Report]]></title>
			<link>http://forums.lurous.com/thread-66.html</link>
			<pubDate>Tue, 24 Aug 2010 00:51:08 +0000</pubDate>
			<guid isPermaLink="false">http://forums.lurous.com/thread-66.html</guid>
			<description><![CDATA[<div style="text-align: center;"><span style="font-size: 24pt;"><span style="font-weight: bold;">Timely Bug and Feature Status Report</span></span><br />
for the week of <span style="color: red;"><span style="font-weight: bold;">August 23rd, 2010</span></span></div>
<hr />
<br />
<span style="color: orange;"><span style="font-size: 28pt;"><span style="font-weight: bold;">Current Version: 0.0.8b</span></span></span><br />
<br />
This week's <span style="color: red;"><span style="font-weight: bold;">Bug Fixes</span></span>:<ul>
<li>None yet.<br />
</li></ul>
<br />
This week's <span style="color: orange;"><span style="font-weight: bold;">Known Bugs</span></span>:<ul>
<li>Players aren't showing up in the right places on the viewport.</li>
<li>Players sometimes aren't showing up at all on the viewport.</li>
<li>The rotation is always wrong with other players.</li>
<li>Some users having trouble with the server timing out and not clearing their user.<br />
</li></ul>
<br />
This week's <span style="color: #00aa00;"><span style="font-weight: bold;">New Features</span></span>:<ul>
<li>None yet.<br />
</li></ul>
<hr />
<br />
<span style="font-style: italic;">This list is continually changing all week. We will be editing it as we go.</span>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;"><span style="font-size: 24pt;"><span style="font-weight: bold;">Timely Bug and Feature Status Report</span></span><br />
for the week of <span style="color: red;"><span style="font-weight: bold;">August 23rd, 2010</span></span></div>
<hr />
<br />
<span style="color: orange;"><span style="font-size: 28pt;"><span style="font-weight: bold;">Current Version: 0.0.8b</span></span></span><br />
<br />
This week's <span style="color: red;"><span style="font-weight: bold;">Bug Fixes</span></span>:<ul>
<li>None yet.<br />
</li></ul>
<br />
This week's <span style="color: orange;"><span style="font-weight: bold;">Known Bugs</span></span>:<ul>
<li>Players aren't showing up in the right places on the viewport.</li>
<li>Players sometimes aren't showing up at all on the viewport.</li>
<li>The rotation is always wrong with other players.</li>
<li>Some users having trouble with the server timing out and not clearing their user.<br />
</li></ul>
<br />
This week's <span style="color: #00aa00;"><span style="font-weight: bold;">New Features</span></span>:<ul>
<li>None yet.<br />
</li></ul>
<hr />
<br />
<span style="font-style: italic;">This list is continually changing all week. We will be editing it as we go.</span>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Python + Pygame Project 2 (Zero)]]></title>
			<link>http://forums.lurous.com/thread-65.html</link>
			<pubDate>Mon, 23 Aug 2010 19:50:29 +0000</pubDate>
			<guid isPermaLink="false">http://forums.lurous.com/thread-65.html</guid>
			<description><![CDATA[I've been working on this for a few days now and so far so good!<br />
I've got a single module that contains "Graphics", "Mouse", "Keyboard", and "Sound".<br />
Given the names, you should understand what each does. <img src="images/smilies/tongue.gif" style="vertical-align: middle;" border="0" alt="Tongue" title="Tongue" /><br />
For surfaces/image, you can have an unlimited amount. Love python array "append" and "pop" functions xD.<br />
Also I have were you can draw text, you just specify the font name, bold, italic, anti, and size. ^.^<br />
*Tired...*<br />
Anyways, here is the code:<br />
run.py:<br />
<div class="codeblock">
<div class="title">Code:<br />
</div><div class="body" dir="ltr"><code>'''<br />
Created on Aug 18, 2010<br />
<br />
@author: Kyle<br />
'''<br />
<br />
import os, sys, main, map<br />
<br />
if __name__ == '__main__':<br />
    tiles = []<br />
    <br />
    #for x in range(0, 25):<br />
    #    tiles.append([])<br />
    #    for y in range(0, 15):<br />
    #        tiles[x].append([])<br />
    #        tiles[x][y].append([]) #Add layer array<br />
    #        tiles[x][y].append([]) #Add type array<br />
    #        for layers in range(0, 5):<br />
    #            tiles[x][y][0].append((x * 2) + (y + layers))<br />
    #        for types in range(0, 4):<br />
    #            tiles[x][y][1].append((x * 2) + (y + types))<br />
    #        <br />
    #tiles[0][0][0][1] = 4<br />
    #print(str(len(tiles)))<br />
    #sys.exit()<br />
    <br />
    mapsize = (800, 800)<br />
    curtile = 0<br />
    <br />
    g = main.Graphics("Zero", 640, 480, False)<br />
    m = main.Mouse()<br />
    k = main.Keyboard()<br />
    s = main.Sound()<br />
    mp = map.Main(mapsize[0], mapsize[1])<br />
    <br />
    g.addSurface(os.path.join('Data', 'GFX', 'Tiles', 'Set1.png'), -1)<br />
    <br />
    g.addFont('Arial', 18, True, True)<br />
    g.addFont('Comic Sans MS', 20, True, False)<br />
    <br />
    s.add(os.path.join('Data', 'Sounds', 'Boom.wav'))<br />
    s.setVolume(0, 100)<br />
    s.play(0)<br />
    <br />
    while 1:<br />
        g.begin()<br />
        <br />
        if k.getKey(27):<br />
            g.quit()<br />
        elif k.getKey(273): #Up arrow<br />
            print("Up arrow.")<br />
            curtile = curtile + 1<br />
        elif k.getKey(274):<br />
            print("Down arrow.")<br />
            if curtile &lt; 0:<br />
                curtile = 0<br />
            else:<br />
                curtile = curtile - 1<br />
        elif k.getKey(275):<br />
            print("Right arrow")<br />
        elif k.getKey(276):<br />
            print("Left arrow.")<br />
            <br />
        if m.buttonLeft():<br />
            mp.setTileLayer((int(m.getX() / 32)), (int(m.getY() / 32)), 0, 5)<br />
            g.setSurfaceAlpha(0, 50)<br />
        elif m.buttonRight():<br />
            mp.setTileLayer((int(m.getX() / 32)), (int(m.getY() / 32)), 0, 0)<br />
            g.setSurfaceAlpha(0)<br />
            <br />
        g.draw(0, (int(m.getX() / 32) * 32), (int(m.getY() / 32) * 32), 64, 32, 32, 32)<br />
        #g.draw(0, (m.getX() - 16), (m.getY() - 16), 32, 32, 32, 32)<br />
        g.drawText(0, ("X: " + str(m.getX()) + " | Y: " + str(m.getY())), 16, 16, True)<br />
        g.drawText(1, ("Current selected tile: " + str(curtile)), 16, 32, True)<br />
        g.drawText(1, ("X: " + str(m.getX()) + " | Y: " + str(m.getY())), 16, 64, True)<br />
        <br />
        for x in range(0, (int(mapsize[0] / 32)) - 1):<br />
            for y in range(0, (int(mapsize[1] / 32)) - 1):<br />
                for layer in range(0, mp.max_layers):<br />
                    if mp.getTileLayer(x, y, layer) &gt; 0:<br />
                        temp = (32, 0)<br />
                        #print(temp)<br />
                        g.draw(0, x * 32, y * 32, temp[0], temp[1], 32, 32)<br />
                <br />
        g.end()</code></div></div>
<br />
main.py:<br />
<div class="codeblock">
<div class="title">Code:<br />
</div><div class="body" dir="ltr"><code>'''<br />
Created on Aug 18, 2010<br />
<br />
@author: Kyle<br />
'''<br />
<br />
import os, sys, pygame #@UnusedImport<br />
from pygame.locals import * #@UnusedWildImport<br />
<br />
class Graphics:<br />
    window = None<br />
    screen = None<br />
    screen_color = (0, 125, 125)<br />
    <br />
    flags = None<br />
    <br />
    caption = ""<br />
    width = None<br />
    height = None<br />
    <br />
    clock = None<br />
    max_FPS = 60<br />
    <br />
    surfaces = []<br />
    fonts = []<br />
    <br />
    def __init__(self, caption, width, height, fullscreen):<br />
        (self.caption, self.width, self.height) = (caption, width, height)<br />
        <br />
        if fullscreen:<br />
            self.flags = HWSURFACE | DOUBLEBUF | FULLSCREEN<br />
        else:<br />
            self.flags = HWSURFACE | DOUBLEBUF<br />
            <br />
        print("Setting values...")<br />
        <br />
        if pygame.init() == -1:<br />
            raise Exception("Failed to initialize pygame.")<br />
        <br />
        print("Initialized pygame...")<br />
        <br />
        if pygame.display.mode_ok((width, height), self.flags):<br />
            self.window = pygame.display.set_mode((width, height), self.flags)<br />
            print("Set the main window...")<br />
        else:<br />
            raise Exception("Failed to set display mode.")<br />
        <br />
        pygame.display.set_caption(caption)<br />
        <br />
        self.screen = pygame.display.get_surface()<br />
        print("Set the screen surface...")<br />
        <br />
        self.clock = pygame.time.Clock()<br />
        print("Initialized the clock...")<br />
        <br />
    def addSurface(self, image, colorkey = None):<br />
        try:<br />
            if os.path.exists(image):<br />
                img = pygame.image.load(image)<br />
                if not img.get_alpha() is None:<br />
                    img = img.convert_alpha()<br />
                else:<br />
                    img = img.convert()<br />
                if not colorkey is None:<br />
                    if colorkey is -1:<br />
                        colorkey = img.get_at((0,0))<br />
                    img.set_colorkey(colorkey, RLEACCEL)<br />
                self.surfaces.append(img)<br />
                print("Surface " + str(image) + " successfully added.")<br />
            else:<br />
                print(image + " doesn't exists!")<br />
        except pygame.error:<br />
            print("Error trying to load image: " + str(image) + ".")<br />
            <br />
    def removeSurface(self, id):<br />
        if id &lt; len(self.surfaces) and id &gt; -1:<br />
            self.surfaces.pop(id)<br />
            print("Surface #" + str(id) + " was removed.")<br />
        else:<br />
            print("Invalid surface id, '" + str(id) + "'.")<br />
            <br />
    def getSurfaceAlpha(self, id):<br />
        if id &lt; len(self.surfaces) and id &gt; -1:<br />
            return self.surfaces[id].get_alpha()<br />
        else:<br />
            print("Invalid surface id, '" + str(id) + "'.")<br />
            <br />
    def setSurfaceAlpha(self, id, alpha = None):<br />
        if id &lt; len(self.surfaces) and id &gt; -1:<br />
            self.surfaces[id].set_alpha(alpha)<br />
        else:<br />
            print("Invalid surface id, '" + str(id) + "'.")<br />
            <br />
    def addFont(self, name = None, size = 12, bold = False, italic = False):<br />
        self.fonts.append(pygame.font.SysFont(name, size, bold, italic))<br />
        if not name is None:<br />
            print("Font successfully added as #" + str(len(self.fonts) - 1) + ".")<br />
            <br />
    def removeFont(self, id):<br />
        if id &lt; len(self.fonts) and id &gt; -1:<br />
            self.fonts.pop(id)<br />
            print("Font #" + str(id) + " was removed.")<br />
        else:<br />
            print("Invalid font id, '" + str(id) + "'.")<br />
        <br />
    def begin(self):<br />
        self.clock.tick(self.max_FPS)<br />
        for event in pygame.event.get():<br />
            if event.type == QUIT:<br />
                self.quit()<br />
                <br />
        self.screen.fill(self.screen_color)<br />
        <br />
    def draw(self, id, x1, y1, x2, y2, width, height):<br />
        if id &lt; len(self.surfaces) and id &gt; -1:<br />
            self.screen.blit(self.surfaces[id], (x1, y1), (x2, y2, width, height))<br />
        else:<br />
            print("Invalid surface id, '" + str(id) + "'.")<br />
            <br />
    def drawText(self, id, text, x, y, antialias, color = (255, 255, 255)):<br />
        if id &lt; len(self.fonts) and id &gt; -1:<br />
            self.screen.blit(self.fonts[id].render(text, antialias, color), (x, y))<br />
        else:<br />
            print("Invalid font id, '" + str(id) + "'.")<br />
            <br />
    #def flip(self, id, xflip, yflip):<br />
    #    if id &lt; len(self.surfaces) and id &gt; -1:<br />
    #        self.surfaces[id] = pygame.transform.flip(self.surfaces[id], xflip, yflip)<br />
    #    else:<br />
    #        print("Invalid surface id, '" + str(id) + "'.")<br />
    <br />
    def end(self):<br />
        pygame.display.set_caption(self.caption + " | FPS: " + str(int(self.clock.get_fps())))<br />
        pygame.display.flip()<br />
    <br />
    def quit(self):<br />
        pygame.quit()<br />
        sys.exit()<br />
        <br />
class Mouse:<br />
    def getX(self):<br />
        return pygame.mouse.get_pos()[0]<br />
    <br />
    def getMovementX(self):<br />
        return pygame.mouse.get_rel()[0]<br />
    <br />
    def getY(self):<br />
        return pygame.mouse.get_pos()[1]<br />
    <br />
    def getMovementY(self):<br />
        return pygame.mouse.get_rel()[1]<br />
    <br />
    def setPos(self, x, y):<br />
        pygame.mouse.set_pos([x, y])<br />
    <br />
    def visible(self, state):<br />
        pygame.mouse.set_visible(state)<br />
    <br />
    def buttonLeft(self):<br />
        return pygame.mouse.get_pressed()[0]<br />
    <br />
    def buttonMiddle(self):<br />
        return pygame.mouse.get_pressed()[1]<br />
    <br />
    def buttonRight(self):<br />
        return pygame.mouse.get_pressed()[2]<br />
    <br />
    def hasFocus(self):<br />
        return pygame.mouse.get_focused()<br />
    <br />
class Keyboard:<br />
    def getKey(self, key):<br />
        return pygame.key.get_pressed()[key]<br />
    <br />
    def getModKey(self, key):<br />
        return pygame.key.get_mods()[key]<br />
    <br />
    def getKeyName(self, key):<br />
        return pygame.key.name(key)<br />
    <br />
    def getRepeated(self):<br />
        return pygame.key.get_repeat()<br />
    <br />
    def setModKey(self, key):<br />
        pygame.key.set_mods(key)<br />
        <br />
    def setRepeated(self, delay, interval):<br />
        pygame.key.set_repeat(delay, interval)<br />
    <br />
    def hasFocus(self):<br />
        return pygame.key.get_focused()<br />
    <br />
class Sound:<br />
    sounds = []<br />
    <br />
    def __init__(self, frequency = 22050, size = -16, channels = 2, buffer = 4096):<br />
        pygame.mixer.init(frequency, size, channels, buffer)<br />
        <br />
    def add(self, file):<br />
        if os.path.exists(file):<br />
            self.sounds.append(pygame.mixer.Sound(file))<br />
            print(file + " successfully added.")<br />
        else:<br />
            print(file + " doesn't exists!")<br />
    <br />
    def remove(self, id):<br />
        if id &lt; len(self.sounds) and id &gt; -1:<br />
            self.sounds.pop(id)<br />
            print("Sound #" + str(id) + " was removed.")<br />
        else:<br />
            print("Invalid sound id, '" + str(id) + "'.")<br />
            <br />
    def play(self, id, loops = 0, maxtime = 0, fade = 0):<br />
        if id &lt; len(self.sounds) and id &gt; -1:<br />
            self.sounds[id].play(loops, maxtime, fade)<br />
            print("Playing sound #" + str(id) + ".")<br />
        else:<br />
            print("Invalid sound id, '" + str(id) + "'.")<br />
            <br />
    def stop(self, id):<br />
        if id &lt; len(self.sounds) and id &gt; -1:<br />
            self.sounds[id].stop()<br />
            print("Sound #" + str(id) + " was stopped.")<br />
        else:<br />
            print("Invalid sound id, '" + str(id) + "'.")<br />
    <br />
    def fadeout(self, id, time):<br />
        if id &lt; len(self.sounds) and id &gt; -1:<br />
            self.sounds[id].fadeout(time)<br />
        else:<br />
            print("Invalid sound id, '" + str(id) + "'.")<br />
            <br />
    def length(self, id):<br />
        if id &lt; len(self.sounds) and id &gt; -1:<br />
            return self.sounds[id].get_length()<br />
        else:<br />
            print("Invalid sound id, '" + str(id) + "'.")<br />
        <br />
    def setVolume(self, id, volume):<br />
        if id &lt; len(self.sounds) and id &gt; -1:<br />
            self.sounds[id].set_volume(volume / 100)<br />
            print("Sound #" + str(id) + " volume is now " + str(volume) + ".")<br />
        else:<br />
            print("Invalid sound id, '" + str(id) + "'.")<br />
            <br />
    def getVolume(self, id):<br />
        if id &lt; len(self.sounds) and id &gt; -1:<br />
            return (self.sounds[id].get_volume() * 100)<br />
        else:<br />
            print("Invalid sound id, '" + str(id) + "'.")<br />
        <br />
    def getChannels(self, id):<br />
        if id &lt; len(self.sounds) and id &gt; -1:<br />
            return self.sounds[id].get_num_channels()<br />
        else:<br />
            print("Invalid sound id, '" + str(id) + "'.")</code></div></div>
<br />
map.py:<br />
<div class="codeblock">
<div class="title">Code:<br />
</div><div class="body" dir="ltr"><code>'''<br />
Created on Aug 22, 2010<br />
<br />
@author: Kyle<br />
'''<br />
<br />
class Main:<br />
    width = None<br />
    height = None<br />
    <br />
    tile = [] #[x][y][layer or type, 0 or 1][layer or type value]<br />
    <br />
    max_layers = 4<br />
    max_types = 5<br />
    tilesinset = 7<br />
    tilesize = (224, 448)<br />
    <br />
    def __init__(self, width, height):<br />
        (self.width, self.height) = (width, height)<br />
        <br />
        for x in range(0, int((width / 32)) - 1):<br />
            self.tile.append([])<br />
            <br />
            for y in range(0, int((height / 32)) - 1):<br />
                self.tile[x].append([])<br />
                self.tile[x][y].append([])<br />
                self.tile[x][y].append([])<br />
                <br />
                for layers in range(0, self.max_layers): #Four layers: None, Blocked, Heal, Damage<br />
                    self.tile[x][y][0].append(0)<br />
                <br />
                for types in range(0, self.max_types): #Five types: Ground, Mask1, Mask2, Fringe1, Fringe2<br />
                    self.tile[x][y][1].append(0)<br />
<br />
    def setTileLayer(self, x, y, layer, value):<br />
        if x &lt; len(self.tile) and x &gt; -1 and y &lt; len(self.tile[0]) and y &gt; -1 and layer &lt; self.max_layers and layer &gt; -1:<br />
            self.tile[x][y][0][layer] = value<br />
    <br />
    def getTileLayer(self, x, y, layer):<br />
        if x &lt; len(self.tile) and x &gt; -1 and y &lt; len(self.tile[0]) and y &gt; -1 and layer &lt; self.max_layers and layer &gt; -1:<br />
            return self.tile[x][y][0][layer]</code></div></div>
<br />
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------<br />
I absolutely love the way I did the tiles xD.<br />
<div class="codeblock">
<div class="title">Code:<br />
</div><div class="body" dir="ltr"><code>[x][y][layer or type, 0 or 1][layer or type value]</code></div></div>
Unique and amazing harhar. ^.^]]></description>
			<content:encoded><![CDATA[I've been working on this for a few days now and so far so good!<br />
I've got a single module that contains "Graphics", "Mouse", "Keyboard", and "Sound".<br />
Given the names, you should understand what each does. <img src="images/smilies/tongue.gif" style="vertical-align: middle;" border="0" alt="Tongue" title="Tongue" /><br />
For surfaces/image, you can have an unlimited amount. Love python array "append" and "pop" functions xD.<br />
Also I have were you can draw text, you just specify the font name, bold, italic, anti, and size. ^.^<br />
*Tired...*<br />
Anyways, here is the code:<br />
run.py:<br />
<div class="codeblock">
<div class="title">Code:<br />
</div><div class="body" dir="ltr"><code>'''<br />
Created on Aug 18, 2010<br />
<br />
@author: Kyle<br />
'''<br />
<br />
import os, sys, main, map<br />
<br />
if __name__ == '__main__':<br />
    tiles = []<br />
    <br />
    #for x in range(0, 25):<br />
    #    tiles.append([])<br />
    #    for y in range(0, 15):<br />
    #        tiles[x].append([])<br />
    #        tiles[x][y].append([]) #Add layer array<br />
    #        tiles[x][y].append([]) #Add type array<br />
    #        for layers in range(0, 5):<br />
    #            tiles[x][y][0].append((x * 2) + (y + layers))<br />
    #        for types in range(0, 4):<br />
    #            tiles[x][y][1].append((x * 2) + (y + types))<br />
    #        <br />
    #tiles[0][0][0][1] = 4<br />
    #print(str(len(tiles)))<br />
    #sys.exit()<br />
    <br />
    mapsize = (800, 800)<br />
    curtile = 0<br />
    <br />
    g = main.Graphics("Zero", 640, 480, False)<br />
    m = main.Mouse()<br />
    k = main.Keyboard()<br />
    s = main.Sound()<br />
    mp = map.Main(mapsize[0], mapsize[1])<br />
    <br />
    g.addSurface(os.path.join('Data', 'GFX', 'Tiles', 'Set1.png'), -1)<br />
    <br />
    g.addFont('Arial', 18, True, True)<br />
    g.addFont('Comic Sans MS', 20, True, False)<br />
    <br />
    s.add(os.path.join('Data', 'Sounds', 'Boom.wav'))<br />
    s.setVolume(0, 100)<br />
    s.play(0)<br />
    <br />
    while 1:<br />
        g.begin()<br />
        <br />
        if k.getKey(27):<br />
            g.quit()<br />
        elif k.getKey(273): #Up arrow<br />
            print("Up arrow.")<br />
            curtile = curtile + 1<br />
        elif k.getKey(274):<br />
            print("Down arrow.")<br />
            if curtile &lt; 0:<br />
                curtile = 0<br />
            else:<br />
                curtile = curtile - 1<br />
        elif k.getKey(275):<br />
            print("Right arrow")<br />
        elif k.getKey(276):<br />
            print("Left arrow.")<br />
            <br />
        if m.buttonLeft():<br />
            mp.setTileLayer((int(m.getX() / 32)), (int(m.getY() / 32)), 0, 5)<br />
            g.setSurfaceAlpha(0, 50)<br />
        elif m.buttonRight():<br />
            mp.setTileLayer((int(m.getX() / 32)), (int(m.getY() / 32)), 0, 0)<br />
            g.setSurfaceAlpha(0)<br />
            <br />
        g.draw(0, (int(m.getX() / 32) * 32), (int(m.getY() / 32) * 32), 64, 32, 32, 32)<br />
        #g.draw(0, (m.getX() - 16), (m.getY() - 16), 32, 32, 32, 32)<br />
        g.drawText(0, ("X: " + str(m.getX()) + " | Y: " + str(m.getY())), 16, 16, True)<br />
        g.drawText(1, ("Current selected tile: " + str(curtile)), 16, 32, True)<br />
        g.drawText(1, ("X: " + str(m.getX()) + " | Y: " + str(m.getY())), 16, 64, True)<br />
        <br />
        for x in range(0, (int(mapsize[0] / 32)) - 1):<br />
            for y in range(0, (int(mapsize[1] / 32)) - 1):<br />
                for layer in range(0, mp.max_layers):<br />
                    if mp.getTileLayer(x, y, layer) &gt; 0:<br />
                        temp = (32, 0)<br />
                        #print(temp)<br />
                        g.draw(0, x * 32, y * 32, temp[0], temp[1], 32, 32)<br />
                <br />
        g.end()</code></div></div>
<br />
main.py:<br />
<div class="codeblock">
<div class="title">Code:<br />
</div><div class="body" dir="ltr"><code>'''<br />
Created on Aug 18, 2010<br />
<br />
@author: Kyle<br />
'''<br />
<br />
import os, sys, pygame #@UnusedImport<br />
from pygame.locals import * #@UnusedWildImport<br />
<br />
class Graphics:<br />
    window = None<br />
    screen = None<br />
    screen_color = (0, 125, 125)<br />
    <br />
    flags = None<br />
    <br />
    caption = ""<br />
    width = None<br />
    height = None<br />
    <br />
    clock = None<br />
    max_FPS = 60<br />
    <br />
    surfaces = []<br />
    fonts = []<br />
    <br />
    def __init__(self, caption, width, height, fullscreen):<br />
        (self.caption, self.width, self.height) = (caption, width, height)<br />
        <br />
        if fullscreen:<br />
            self.flags = HWSURFACE | DOUBLEBUF | FULLSCREEN<br />
        else:<br />
            self.flags = HWSURFACE | DOUBLEBUF<br />
            <br />
        print("Setting values...")<br />
        <br />
        if pygame.init() == -1:<br />
            raise Exception("Failed to initialize pygame.")<br />
        <br />
        print("Initialized pygame...")<br />
        <br />
        if pygame.display.mode_ok((width, height), self.flags):<br />
            self.window = pygame.display.set_mode((width, height), self.flags)<br />
            print("Set the main window...")<br />
        else:<br />
            raise Exception("Failed to set display mode.")<br />
        <br />
        pygame.display.set_caption(caption)<br />
        <br />
        self.screen = pygame.display.get_surface()<br />
        print("Set the screen surface...")<br />
        <br />
        self.clock = pygame.time.Clock()<br />
        print("Initialized the clock...")<br />
        <br />
    def addSurface(self, image, colorkey = None):<br />
        try:<br />
            if os.path.exists(image):<br />
                img = pygame.image.load(image)<br />
                if not img.get_alpha() is None:<br />
                    img = img.convert_alpha()<br />
                else:<br />
                    img = img.convert()<br />
                if not colorkey is None:<br />
                    if colorkey is -1:<br />
                        colorkey = img.get_at((0,0))<br />
                    img.set_colorkey(colorkey, RLEACCEL)<br />
                self.surfaces.append(img)<br />
                print("Surface " + str(image) + " successfully added.")<br />
            else:<br />
                print(image + " doesn't exists!")<br />
        except pygame.error:<br />
            print("Error trying to load image: " + str(image) + ".")<br />
            <br />
    def removeSurface(self, id):<br />
        if id &lt; len(self.surfaces) and id &gt; -1:<br />
            self.surfaces.pop(id)<br />
            print("Surface #" + str(id) + " was removed.")<br />
        else:<br />
            print("Invalid surface id, '" + str(id) + "'.")<br />
            <br />
    def getSurfaceAlpha(self, id):<br />
        if id &lt; len(self.surfaces) and id &gt; -1:<br />
            return self.surfaces[id].get_alpha()<br />
        else:<br />
            print("Invalid surface id, '" + str(id) + "'.")<br />
            <br />
    def setSurfaceAlpha(self, id, alpha = None):<br />
        if id &lt; len(self.surfaces) and id &gt; -1:<br />
            self.surfaces[id].set_alpha(alpha)<br />
        else:<br />
            print("Invalid surface id, '" + str(id) + "'.")<br />
            <br />
    def addFont(self, name = None, size = 12, bold = False, italic = False):<br />
        self.fonts.append(pygame.font.SysFont(name, size, bold, italic))<br />
        if not name is None:<br />
            print("Font successfully added as #" + str(len(self.fonts) - 1) + ".")<br />
            <br />
    def removeFont(self, id):<br />
        if id &lt; len(self.fonts) and id &gt; -1:<br />
            self.fonts.pop(id)<br />
            print("Font #" + str(id) + " was removed.")<br />
        else:<br />
            print("Invalid font id, '" + str(id) + "'.")<br />
        <br />
    def begin(self):<br />
        self.clock.tick(self.max_FPS)<br />
        for event in pygame.event.get():<br />
            if event.type == QUIT:<br />
                self.quit()<br />
                <br />
        self.screen.fill(self.screen_color)<br />
        <br />
    def draw(self, id, x1, y1, x2, y2, width, height):<br />
        if id &lt; len(self.surfaces) and id &gt; -1:<br />
            self.screen.blit(self.surfaces[id], (x1, y1), (x2, y2, width, height))<br />
        else:<br />
            print("Invalid surface id, '" + str(id) + "'.")<br />
            <br />
    def drawText(self, id, text, x, y, antialias, color = (255, 255, 255)):<br />
        if id &lt; len(self.fonts) and id &gt; -1:<br />
            self.screen.blit(self.fonts[id].render(text, antialias, color), (x, y))<br />
        else:<br />
            print("Invalid font id, '" + str(id) + "'.")<br />
            <br />
    #def flip(self, id, xflip, yflip):<br />
    #    if id &lt; len(self.surfaces) and id &gt; -1:<br />
    #        self.surfaces[id] = pygame.transform.flip(self.surfaces[id], xflip, yflip)<br />
    #    else:<br />
    #        print("Invalid surface id, '" + str(id) + "'.")<br />
    <br />
    def end(self):<br />
        pygame.display.set_caption(self.caption + " | FPS: " + str(int(self.clock.get_fps())))<br />
        pygame.display.flip()<br />
    <br />
    def quit(self):<br />
        pygame.quit()<br />
        sys.exit()<br />
        <br />
class Mouse:<br />
    def getX(self):<br />
        return pygame.mouse.get_pos()[0]<br />
    <br />
    def getMovementX(self):<br />
        return pygame.mouse.get_rel()[0]<br />
    <br />
    def getY(self):<br />
        return pygame.mouse.get_pos()[1]<br />
    <br />
    def getMovementY(self):<br />
        return pygame.mouse.get_rel()[1]<br />
    <br />
    def setPos(self, x, y):<br />
        pygame.mouse.set_pos([x, y])<br />
    <br />
    def visible(self, state):<br />
        pygame.mouse.set_visible(state)<br />
    <br />
    def buttonLeft(self):<br />
        return pygame.mouse.get_pressed()[0]<br />
    <br />
    def buttonMiddle(self):<br />
        return pygame.mouse.get_pressed()[1]<br />
    <br />
    def buttonRight(self):<br />
        return pygame.mouse.get_pressed()[2]<br />
    <br />
    def hasFocus(self):<br />
        return pygame.mouse.get_focused()<br />
    <br />
class Keyboard:<br />
    def getKey(self, key):<br />
        return pygame.key.get_pressed()[key]<br />
    <br />
    def getModKey(self, key):<br />
        return pygame.key.get_mods()[key]<br />
    <br />
    def getKeyName(self, key):<br />
        return pygame.key.name(key)<br />
    <br />
    def getRepeated(self):<br />
        return pygame.key.get_repeat()<br />
    <br />
    def setModKey(self, key):<br />
        pygame.key.set_mods(key)<br />
        <br />
    def setRepeated(self, delay, interval):<br />
        pygame.key.set_repeat(delay, interval)<br />
    <br />
    def hasFocus(self):<br />
        return pygame.key.get_focused()<br />
    <br />
class Sound:<br />
    sounds = []<br />
    <br />
    def __init__(self, frequency = 22050, size = -16, channels = 2, buffer = 4096):<br />
        pygame.mixer.init(frequency, size, channels, buffer)<br />
        <br />
    def add(self, file):<br />
        if os.path.exists(file):<br />
            self.sounds.append(pygame.mixer.Sound(file))<br />
            print(file + " successfully added.")<br />
        else:<br />
            print(file + " doesn't exists!")<br />
    <br />
    def remove(self, id):<br />
        if id &lt; len(self.sounds) and id &gt; -1:<br />
            self.sounds.pop(id)<br />
            print("Sound #" + str(id) + " was removed.")<br />
        else:<br />
            print("Invalid sound id, '" + str(id) + "'.")<br />
            <br />
    def play(self, id, loops = 0, maxtime = 0, fade = 0):<br />
        if id &lt; len(self.sounds) and id &gt; -1:<br />
            self.sounds[id].play(loops, maxtime, fade)<br />
            print("Playing sound #" + str(id) + ".")<br />
        else:<br />
            print("Invalid sound id, '" + str(id) + "'.")<br />
            <br />
    def stop(self, id):<br />
        if id &lt; len(self.sounds) and id &gt; -1:<br />
            self.sounds[id].stop()<br />
            print("Sound #" + str(id) + " was stopped.")<br />
        else:<br />
            print("Invalid sound id, '" + str(id) + "'.")<br />
    <br />
    def fadeout(self, id, time):<br />
        if id &lt; len(self.sounds) and id &gt; -1:<br />
            self.sounds[id].fadeout(time)<br />
        else:<br />
            print("Invalid sound id, '" + str(id) + "'.")<br />
            <br />
    def length(self, id):<br />
        if id &lt; len(self.sounds) and id &gt; -1:<br />
            return self.sounds[id].get_length()<br />
        else:<br />
            print("Invalid sound id, '" + str(id) + "'.")<br />
        <br />
    def setVolume(self, id, volume):<br />
        if id &lt; len(self.sounds) and id &gt; -1:<br />
            self.sounds[id].set_volume(volume / 100)<br />
            print("Sound #" + str(id) + " volume is now " + str(volume) + ".")<br />
        else:<br />
            print("Invalid sound id, '" + str(id) + "'.")<br />
            <br />
    def getVolume(self, id):<br />
        if id &lt; len(self.sounds) and id &gt; -1:<br />
            return (self.sounds[id].get_volume() * 100)<br />
        else:<br />
            print("Invalid sound id, '" + str(id) + "'.")<br />
        <br />
    def getChannels(self, id):<br />
        if id &lt; len(self.sounds) and id &gt; -1:<br />
            return self.sounds[id].get_num_channels()<br />
        else:<br />
            print("Invalid sound id, '" + str(id) + "'.")</code></div></div>
<br />
map.py:<br />
<div class="codeblock">
<div class="title">Code:<br />
</div><div class="body" dir="ltr"><code>'''<br />
Created on Aug 22, 2010<br />
<br />
@author: Kyle<br />
'''<br />
<br />
class Main:<br />
    width = None<br />
    height = None<br />
    <br />
    tile = [] #[x][y][layer or type, 0 or 1][layer or type value]<br />
    <br />
    max_layers = 4<br />
    max_types = 5<br />
    tilesinset = 7<br />
    tilesize = (224, 448)<br />
    <br />
    def __init__(self, width, height):<br />
        (self.width, self.height) = (width, height)<br />
        <br />
        for x in range(0, int((width / 32)) - 1):<br />
            self.tile.append([])<br />
            <br />
            for y in range(0, int((height / 32)) - 1):<br />
                self.tile[x].append([])<br />
                self.tile[x][y].append([])<br />
                self.tile[x][y].append([])<br />
                <br />
                for layers in range(0, self.max_layers): #Four layers: None, Blocked, Heal, Damage<br />
                    self.tile[x][y][0].append(0)<br />
                <br />
                for types in range(0, self.max_types): #Five types: Ground, Mask1, Mask2, Fringe1, Fringe2<br />
                    self.tile[x][y][1].append(0)<br />
<br />
    def setTileLayer(self, x, y, layer, value):<br />
        if x &lt; len(self.tile) and x &gt; -1 and y &lt; len(self.tile[0]) and y &gt; -1 and layer &lt; self.max_layers and layer &gt; -1:<br />
            self.tile[x][y][0][layer] = value<br />
    <br />
    def getTileLayer(self, x, y, layer):<br />
        if x &lt; len(self.tile) and x &gt; -1 and y &lt; len(self.tile[0]) and y &gt; -1 and layer &lt; self.max_layers and layer &gt; -1:<br />
            return self.tile[x][y][0][layer]</code></div></div>
<br />
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------<br />
I absolutely love the way I did the tiles xD.<br />
<div class="codeblock">
<div class="title">Code:<br />
</div><div class="body" dir="ltr"><code>[x][y][layer or type, 0 or 1][layer or type value]</code></div></div>
Unique and amazing harhar. ^.^]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[[8/16/10] Bug &#x26; Feature Status Report]]></title>
			<link>http://forums.lurous.com/thread-64.html</link>
			<pubDate>Mon, 16 Aug 2010 15:26:19 +0000</pubDate>
			<guid isPermaLink="false">http://forums.lurous.com/thread-64.html</guid>
			<description><![CDATA[<div style="text-align: center;"><span style="font-size: 24pt;"><span style="font-weight: bold;">Timely Bug and Feature Status Report</span></span><br />
for the week of <span style="color: red;"><span style="font-weight: bold;">August 16th, 2010</span></span></div>
<hr />
<br />
<span style="color: orange;"><span style="font-size: 28pt;"><span style="font-weight: bold;">Current Version: 0.0.8b</span></span></span><br />
<br />
This week's <span style="color: red;"><span style="font-weight: bold;">Bug Fixes</span></span>:<ul>
<li>The ship now reacts immediately instead of after the first keypress in that direction.<br />
</li></ul>
<br />
This week's <span style="color: orange;"><span style="font-weight: bold;">Known Bugs</span></span>:<ul>
<li>Players aren't showing up in the right places on the viewport.</li>
<li>Players sometimes aren't showing up at all on the viewport.</li>
<li>The rotation is always wrong with other players.</li>
<li>Some users having trouble with the server timing out and not clearing their user.<br />
</li></ul>
<br />
This week's <span style="color: #00aa00;"><span style="font-weight: bold;">New Features</span></span>:<ul>
<li>None yet.<br />
</li></ul>
<hr />
<br />
<span style="font-style: italic;">This list is continually changing all week. We will be editing it as we go.</span>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;"><span style="font-size: 24pt;"><span style="font-weight: bold;">Timely Bug and Feature Status Report</span></span><br />
for the week of <span style="color: red;"><span style="font-weight: bold;">August 16th, 2010</span></span></div>
<hr />
<br />
<span style="color: orange;"><span style="font-size: 28pt;"><span style="font-weight: bold;">Current Version: 0.0.8b</span></span></span><br />
<br />
This week's <span style="color: red;"><span style="font-weight: bold;">Bug Fixes</span></span>:<ul>
<li>The ship now reacts immediately instead of after the first keypress in that direction.<br />
</li></ul>
<br />
This week's <span style="color: orange;"><span style="font-weight: bold;">Known Bugs</span></span>:<ul>
<li>Players aren't showing up in the right places on the viewport.</li>
<li>Players sometimes aren't showing up at all on the viewport.</li>
<li>The rotation is always wrong with other players.</li>
<li>Some users having trouble with the server timing out and not clearing their user.<br />
</li></ul>
<br />
This week's <span style="color: #00aa00;"><span style="font-weight: bold;">New Features</span></span>:<ul>
<li>None yet.<br />
</li></ul>
<hr />
<br />
<span style="font-style: italic;">This list is continually changing all week. We will be editing it as we go.</span>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Staff Positions Chosen]]></title>
			<link>http://forums.lurous.com/thread-63.html</link>
			<pubDate>Tue, 10 Aug 2010 23:52:56 +0000</pubDate>
			<guid isPermaLink="false">http://forums.lurous.com/thread-63.html</guid>
			<description><![CDATA[Okay, since the game will be out of beta before too long I have chosen some staff members.<br />
Firstly, note that any Stellar Conflicts staff member will be able to retain their position if we need staff.<br />
However, when it comes down to it, the Super Administrators have the final say when it comes to staff appointments.<br />
<br />
The specific abilities of each staff level are not available yet.<br />
<br />
Super Administrators<br />
<span style="color: red;"><span style="font-style: italic;">Ability to elect any level of staff members.<br />
Has the final say on staff appointments.</span></span><br />
<br />
<ol type="1">
<li>Eric Christian (Raygoe) -- <span style="font-weight: bold;">Head Developer</span></li>
<li>Brandon Gochenour (Erisior) -- <span style="font-weight: bold;">Co-owner</span></li>
<li>Drakeor -- <span style="font-weight: bold;">Game Leader</span><br />
</li></ol>
<br />
<br />
Administrators<br />
<span style="color: red;"><span style="font-style: italic;">Have the ability to elect Global Moderators and Moderators</span></span><br />
<ol type="1">
<li>Kingrat (Stellar Conflicts Staff Member)<br />
</li></ol>
<br />
<br />
Global Moderators<br />
<ol type="1">
<li>Orbityguy (Stellar Conflicts Staff Member)<br />
</li></ol>
<br />
<br />
Moderators<br />
<ol type="1">
<li>Ennui (Stellar Conflicts Staff Member)</li>
<li>Salvenger<br />
</li></ol>
]]></description>
			<content:encoded><![CDATA[Okay, since the game will be out of beta before too long I have chosen some staff members.<br />
Firstly, note that any Stellar Conflicts staff member will be able to retain their position if we need staff.<br />
However, when it comes down to it, the Super Administrators have the final say when it comes to staff appointments.<br />
<br />
The specific abilities of each staff level are not available yet.<br />
<br />
Super Administrators<br />
<span style="color: red;"><span style="font-style: italic;">Ability to elect any level of staff members.<br />
Has the final say on staff appointments.</span></span><br />
<br />
<ol type="1">
<li>Eric Christian (Raygoe) -- <span style="font-weight: bold;">Head Developer</span></li>
<li>Brandon Gochenour (Erisior) -- <span style="font-weight: bold;">Co-owner</span></li>
<li>Drakeor -- <span style="font-weight: bold;">Game Leader</span><br />
</li></ol>
<br />
<br />
Administrators<br />
<span style="color: red;"><span style="font-style: italic;">Have the ability to elect Global Moderators and Moderators</span></span><br />
<ol type="1">
<li>Kingrat (Stellar Conflicts Staff Member)<br />
</li></ol>
<br />
<br />
Global Moderators<br />
<ol type="1">
<li>Orbityguy (Stellar Conflicts Staff Member)<br />
</li></ol>
<br />
<br />
Moderators<br />
<ol type="1">
<li>Ennui (Stellar Conflicts Staff Member)</li>
<li>Salvenger<br />
</li></ol>
]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[[8/9/10] Bug &#x26; Feature Status Report]]></title>
			<link>http://forums.lurous.com/thread-62.html</link>
			<pubDate>Mon, 09 Aug 2010 23:13:29 +0000</pubDate>
			<guid isPermaLink="false">http://forums.lurous.com/thread-62.html</guid>
			<description><![CDATA[<div style="text-align: center;"><span style="font-size: 24pt;"><span style="font-weight: bold;">Timely Bug and Feature Status Report</span></span><br />
for the week of <span style="color: red;"><span style="font-weight: bold;">August 9th, 2010</span></span></div>
<hr />
<br />
<span style="color: orange;"><span style="font-size: 28pt;"><span style="font-weight: bold;">Current Version: 0.0.8a</span></span></span><br />
<br />
This week's <span style="color: red;"><span style="font-weight: bold;">Bug Fixes</span></span>:<ul>
<li>The game loop now works correctly.</li>
<li>The server no longer allows you to login under your name twice.</li>
<li>The whispering will now correctly tell you the person's name instead of yours.</li>
<li>We have lectured the server about ignoring version packets and it will now actually care about your version packet and will no longer ignore it.</li>
<li>Since the server was still being lazy and ignoring version information, I have forced it to ask the client for the client's version instead of the client giving him its version. Lazy server.<br />
</li></ul>
<br />
This week's <span style="color: orange;"><span style="font-weight: bold;">Known Bugs</span></span>:<ul>
<li>Players aren't showing up in the right places on the viewport.</li>
<li>Players sometimes aren't showing up at all on the viewport.</li>
<li>The rotation is always wrong with other players.<br />
</li></ul>
<br />
This week's <span style="color: #00aa00;"><span style="font-weight: bold;">New Features</span></span>:<ul>
<li>New star background.</li>
<li>New ship.</li>
<li>Ship rotation up.<br />
       </li>
<li>Ships can move.<br />
       </li>
<li>Players can whisper each other like: "/w Raygoe Hi, raygoe!"<br />
       </li>
<li>Staff can now mute players.<br />
       </li>
<li>Staff have an exclusive "chat room."</li>
<li>The server will now be able to tell you if your version is not correct.</li>
<li>The client now uses a modified font of "Aurulent Sans." It won on a list of 13 other candidates for Xeno 4's official font.</li>
<li>In the wake of Italics support, whispers are now in italics.</li>
<li>Because of the incoming update to add players to the viewport, you will now see your name under your ship.</li>
<li>In 0.0.7c, the code behind ship creation changed dramatically. It is now almost ready to be 100% expandable.</li>
<li>In 0.0.8a, players are now visible on the viewport. However it is heavily buggy and most of it will need to be fixed. <span style="font-style: italic;">See the new "Known Bugs" section.<br />
</li></ul>
<hr />
<br />
[i]This list is continually changing all week. We will be editing it as we go.</span>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;"><span style="font-size: 24pt;"><span style="font-weight: bold;">Timely Bug and Feature Status Report</span></span><br />
for the week of <span style="color: red;"><span style="font-weight: bold;">August 9th, 2010</span></span></div>
<hr />
<br />
<span style="color: orange;"><span style="font-size: 28pt;"><span style="font-weight: bold;">Current Version: 0.0.8a</span></span></span><br />
<br />
This week's <span style="color: red;"><span style="font-weight: bold;">Bug Fixes</span></span>:<ul>
<li>The game loop now works correctly.</li>
<li>The server no longer allows you to login under your name twice.</li>
<li>The whispering will now correctly tell you the person's name instead of yours.</li>
<li>We have lectured the server about ignoring version packets and it will now actually care about your version packet and will no longer ignore it.</li>
<li>Since the server was still being lazy and ignoring version information, I have forced it to ask the client for the client's version instead of the client giving him its version. Lazy server.<br />
</li></ul>
<br />
This week's <span style="color: orange;"><span style="font-weight: bold;">Known Bugs</span></span>:<ul>
<li>Players aren't showing up in the right places on the viewport.</li>
<li>Players sometimes aren't showing up at all on the viewport.</li>
<li>The rotation is always wrong with other players.<br />
</li></ul>
<br />
This week's <span style="color: #00aa00;"><span style="font-weight: bold;">New Features</span></span>:<ul>
<li>New star background.</li>
<li>New ship.</li>
<li>Ship rotation up.<br />
       </li>
<li>Ships can move.<br />
       </li>
<li>Players can whisper each other like: "/w Raygoe Hi, raygoe!"<br />
       </li>
<li>Staff can now mute players.<br />
       </li>
<li>Staff have an exclusive "chat room."</li>
<li>The server will now be able to tell you if your version is not correct.</li>
<li>The client now uses a modified font of "Aurulent Sans." It won on a list of 13 other candidates for Xeno 4's official font.</li>
<li>In the wake of Italics support, whispers are now in italics.</li>
<li>Because of the incoming update to add players to the viewport, you will now see your name under your ship.</li>
<li>In 0.0.7c, the code behind ship creation changed dramatically. It is now almost ready to be 100% expandable.</li>
<li>In 0.0.8a, players are now visible on the viewport. However it is heavily buggy and most of it will need to be fixed. <span style="font-style: italic;">See the new "Known Bugs" section.<br />
</li></ul>
<hr />
<br />
[i]This list is continually changing all week. We will be editing it as we go.</span>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[New Wiki!]]></title>
			<link>http://forums.lurous.com/thread-61.html</link>
			<pubDate>Tue, 03 Aug 2010 06:19:38 +0000</pubDate>
			<guid isPermaLink="false">http://forums.lurous.com/thread-61.html</guid>
			<description><![CDATA[<span style="font-weight: bold;"><span style="font-family: verdana;"><span style="color: red;"><span style="font-size: 34pt;">We Have a Wiki!</span></span></span></span><br />
<br />
You can see all the new lore here:<br />
<a href="http://wiki.xeno4.com/wiki/" target="_blank">http://wiki.xeno4.com/wiki/</a>]]></description>
			<content:encoded><![CDATA[<span style="font-weight: bold;"><span style="font-family: verdana;"><span style="color: red;"><span style="font-size: 34pt;">We Have a Wiki!</span></span></span></span><br />
<br />
You can see all the new lore here:<br />
<a href="http://wiki.xeno4.com/wiki/" target="_blank">http://wiki.xeno4.com/wiki/</a>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[[8/2/10] Bug &#x26; Feature Status Report]]></title>
			<link>http://forums.lurous.com/thread-60.html</link>
			<pubDate>Tue, 03 Aug 2010 04:14:30 +0000</pubDate>
			<guid isPermaLink="false">http://forums.lurous.com/thread-60.html</guid>
			<description><![CDATA[<div style="text-align: center;"><span style="font-size: 24pt;"><span style="font-weight: bold;">Timely Bug and Feature Status Report</span></span><br />
for the week of <span style="color: red;"><span style="font-weight: bold;">August 2nd, 2010</span></span></div>
<hr />
<br />
This week's <span style="color: red;"><span style="font-weight: bold;">Bug Fixes</span></span>:<br />
[list type=decimal]<br />
[*]Fixed the CTRL+Enter bug on the chat.<br />
[*]You will no longer be able to use HTML tags in chat.<br />
[*]Users will now be able to register and reset their passwords without timing out.<br />
[/list]<br />
<br />
This week's <span style="color: #00aa00;"><span style="font-weight: bold;">New Features</span></span>:<br />
[list type=decimal]<br />
[*]Continued work on storyline.<br />
[*]New login screen! (See a ss down the page.)<br />
[*]Login system working.<br />
[*]Xeno 4's chat is released. <a href="http://www.xeno4.com/media/viewGame.php" target="_blank">http://www.xeno4.com/media/viewGame.php</a><br />
[*]New /*arena command for moderators. You will use this to warn users who break the rules.<br />
[*]The chat window is more condensed.<br />
[*]Colors are introduced into chat.<br />
[*]HOST: no longer precedes any join or leave announcements.<br />
[/list]<br />
<br />
<hr />
<br />
<span style="font-style: italic;">This list is continually changing all week. We will be editing it as we go.</span>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;"><span style="font-size: 24pt;"><span style="font-weight: bold;">Timely Bug and Feature Status Report</span></span><br />
for the week of <span style="color: red;"><span style="font-weight: bold;">August 2nd, 2010</span></span></div>
<hr />
<br />
This week's <span style="color: red;"><span style="font-weight: bold;">Bug Fixes</span></span>:<br />
[list type=decimal]<br />
[*]Fixed the CTRL+Enter bug on the chat.<br />
[*]You will no longer be able to use HTML tags in chat.<br />
[*]Users will now be able to register and reset their passwords without timing out.<br />
[/list]<br />
<br />
This week's <span style="color: #00aa00;"><span style="font-weight: bold;">New Features</span></span>:<br />
[list type=decimal]<br />
[*]Continued work on storyline.<br />
[*]New login screen! (See a ss down the page.)<br />
[*]Login system working.<br />
[*]Xeno 4's chat is released. <a href="http://www.xeno4.com/media/viewGame.php" target="_blank">http://www.xeno4.com/media/viewGame.php</a><br />
[*]New /*arena command for moderators. You will use this to warn users who break the rules.<br />
[*]The chat window is more condensed.<br />
[*]Colors are introduced into chat.<br />
[*]HOST: no longer precedes any join or leave announcements.<br />
[/list]<br />
<br />
<hr />
<br />
<span style="font-style: italic;">This list is continually changing all week. We will be editing it as we go.</span>]]></content:encoded>
		</item>
	</channel>
</rss>
