<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>/dev/null productions</title>
	<atom:link href="http://dev-null-productions.com/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://dev-null-productions.com</link>
	<description>A Programmers Collection of How Things Break</description>
	<lastBuildDate>Tue, 27 Jul 2010 12:41:34 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>JPA Oopsies (Lingering Open Connections)</title>
		<link>http://dev-null-productions.com/?p=418</link>
		<comments>http://dev-null-productions.com/?p=418#comments</comments>
		<pubDate>Tue, 27 Jul 2010 12:38:36 +0000</pubDate>
		<dc:creator>Rhaythe</dc:creator>
				<category><![CDATA[Developer Diaries]]></category>
		<category><![CDATA[JPA]]></category>
		<category><![CDATA[Oops]]></category>

		<guid isPermaLink="false">http://dev-null-productions.com/?p=418</guid>
		<description><![CDATA[Say you&#8217;re happily coding along and getting ready to call a PL/SQL package. You fire up your trusty EntityManager and slap a new query together… em = EmFactory.getEntityManager(authentication); em.getTransaction().begin(); StoredProcedureCall call = new StoredProcedureCall(); ValueReadQuery query = new ValueReadQuery(); All pretty standard stuff so far. Anyway, you slap a call together and execute it: Integer [...]]]></description>
			<content:encoded><![CDATA[<p>Say you&#8217;re happily coding along and getting ready to call a PL/SQL package. You fire up your trusty EntityManager and slap a new query together…</p>
<p><code><br />
      em = EmFactory.getEntityManager(authentication);<br />
      em.getTransaction().begin();<br />
      StoredProcedureCall call = new StoredProcedureCall();<br />
      ValueReadQuery query = new ValueReadQuery();<br />
</code></p>
<p>All pretty standard stuff so far. Anyway, you slap a call together and execute it:</p>
<p><code><br />
      Integer i = (Integer) ((JpaEntityManager)em.getDelegate()).getActiveSession().executeQuery(query,args);<br />
</code> </p>
<p>The query executes. You’re pretty happy, and move on. But then it gets into TEST and your SA starts pounding his chest and threatening bodily harm because there’s a slew of connections lingering open, and that just ain’t gonna work.</p>
<p>Anyway, the problem is right here: </p>
<p><code>em.getTransaction().begin();</code></p>
<p>You can call em.close() all you’d like, but Oracle seems to keep the connection open even after the work has been performed; and for good reason, since there’s a lingering transaction just floating out there.</p>
<p>So if your project is out in an environment and you start getting flooded with this error…</p>
<p><code><br />
Caused by: java.sql.SQLException: ORA-02391: exceeded simultaneous SESSIONS_PER_USER limit<br />
</code></p>
<p>…then check all of your logic methods and make sure that all of your transactions are closed. All you need is one line at the end of the stored procedure call:</p>
<p><code><br />
      em.getTransaction().commit();<br />
</code> </p>
<p>Now you know. Or know even more so. Or are reminded. Or something. Enjoy.</p>
]]></content:encoded>
			<wfw:commentRss>http://dev-null-productions.com/?feed=rss2&amp;p=418</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JSF Quirks that Annoy Me</title>
		<link>http://dev-null-productions.com/?p=403</link>
		<comments>http://dev-null-productions.com/?p=403#comments</comments>
		<pubDate>Mon, 12 Jul 2010 14:19:51 +0000</pubDate>
		<dc:creator>Rhaythe</dc:creator>
				<category><![CDATA[Developer Diaries]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[JSF]]></category>

		<guid isPermaLink="false">http://dev-null-productions.com/?p=403</guid>
		<description><![CDATA[DISCLAIMER: I&#8217;m using JSF 1.1, Sun Implementation here. I can&#8217;t use JSF 1.2 yet because OC4J is retarded and doesn&#8217;t support those TLD&#8217;s. So take all of this griping with a grain of salt. Quirk One &#8211; Let&#8217;s do that again! Backing method execution works very well in the JSF version I&#8217;m used to. The [...]]]></description>
			<content:encoded><![CDATA[<p>DISCLAIMER: I&#8217;m using JSF 1.1, Sun Implementation here. I can&#8217;t use JSF 1.2 yet because OC4J is retarded and doesn&#8217;t support those TLD&#8217;s. So take all of this griping with a grain of salt.</p>
<p><strong>Quirk One</strong> &#8211; <i>Let&#8217;s do that again!</i><br />
Backing method execution works very well in the JSF version I&#8217;m used to. The binding beans work about as expected, and data transfers between layers is pretty much seamless. About that I have no complaint.</p>
<p>What I do have a complaint about is that it works so well that JSF seems to want to do it again and again and again. And again. I slapped a method counter on one backing bean method&#8230; an ActionEvent listener, now&#8230; and it executed six times in one page load. Farkin&#8217; rediculous. I ended up having to set variable checks to see if the values have already been loaded, and if so just exit out. It was the only way I could get it to stop trying to do the same thing a thousand times (Though it&#8217;s still happening; the method just stops at the check).</p>
<p><strong>Quirk Two</strong> &#8211; <i>Say What?</i><br />
Backing bean value is an int base data type. You&#8217;re telling me that a JSF SelectItem value can&#8217;t be binded to that? I have to bind it to a string and do a data translation? Really? We can&#8217;t support our base data types here?</p>
<p>I mean, it&#8217;s not hard to conquer&#8230; just a little <code>Integer.valueOf( String )</code> action to go around. But reeeeeally?</p>
<p><strong>Quirk Three</strong> &#8211; <i>What&#8217;s this thingie here?</i><br />
Hey, Sun? How about some strong typing. Really. It&#8217;s been a standard since Java 5 to have our collections strong-typed. Can we try and keep up here? It is so hard to declare a session object of <code>HashMap<String,Object></code> instead of a base <code>HashMap</code>? Maybe I&#8217;m missing something and this is to preserve exchangability, but <code>@SuppressWarnings("unchecked")</code> tags get old when you need to have them <i>everywhere</i>.</p>
]]></content:encoded>
			<wfw:commentRss>http://dev-null-productions.com/?feed=rss2&amp;p=403</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Keeping the blog alive. . .</title>
		<link>http://dev-null-productions.com/?p=350</link>
		<comments>http://dev-null-productions.com/?p=350#comments</comments>
		<pubDate>Wed, 03 Mar 2010 03:55:21 +0000</pubDate>
		<dc:creator>cubic1271</dc:creator>
				<category><![CDATA[Miscellaneous]]></category>

		<guid isPermaLink="false">http://dev-null-productions.com/?p=350</guid>
		<description><![CDATA[. . . because it hasn&#8217;t seen a post since the new year. That is all.]]></description>
			<content:encoded><![CDATA[<p>. . . because it hasn&#8217;t seen a post since the new year.</p>
<p>That is all.</p>
]]></content:encoded>
			<wfw:commentRss>http://dev-null-productions.com/?feed=rss2&amp;p=350</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Happy New Year</title>
		<link>http://dev-null-productions.com/?p=348</link>
		<comments>http://dev-null-productions.com/?p=348#comments</comments>
		<pubDate>Fri, 01 Jan 2010 20:02:12 +0000</pubDate>
		<dc:creator>cubic1271</dc:creator>
				<category><![CDATA[Miscellaneous]]></category>

		<guid isPermaLink="false">http://dev-null-productions.com/?p=348</guid>
		<description><![CDATA[Happy new year. Here&#8217;s to hoping this year will be better than the last!]]></description>
			<content:encoded><![CDATA[<p>Happy new year.  Here&#8217;s to hoping this year will be better than the last!</p>
]]></content:encoded>
			<wfw:commentRss>http://dev-null-productions.com/?feed=rss2&amp;p=348</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Spacetime Distortions Are Possible</title>
		<link>http://dev-null-productions.com/?p=345</link>
		<comments>http://dev-null-productions.com/?p=345#comments</comments>
		<pubDate>Tue, 24 Nov 2009 17:40:22 +0000</pubDate>
		<dc:creator>Rhaythe</dc:creator>
		
		<guid isPermaLink="false">http://dev-null-productions.com/?p=345</guid>
		<description><![CDATA[They are. And it&#8217;s amazing how often they happen at work. Time flows normally while the work comes in and is feathered nicely over the course of the day. Then at some point, the work breaks. Either it gets accomplished much too quickly and a day&#8217;s tasking becomes an hour&#8217;s blitz, or something is said [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://dev-null-productions.com/wp-content/uploads/2009/11/spacetime.jpeg" align="right" alt="Space-Time Distortions!"/>They are. And it&#8217;s amazing how often they happen at work. Time flows normally while the work comes in and is feathered nicely over the course of the day. Then at some point, the work breaks. Either it gets accomplished much too quickly and a day&#8217;s tasking becomes an hour&#8217;s blitz, or something is said and any motivation quickly dwindles.</p>
<p>In either case, these relativistic space-time distortions are far-fetching and disastrous. They suck co-workers in like black holes, absolutely refusing to let go no matter what comes its way. This is <B>especially</B> true during holiday weeks and early dismissals, as space-time collapses to a relativistic crawl.</p>
<p>These are the accounts of nightmares.</p>
<p><CENTER>♣</CENTER></p>
<p>I&#8217;ve fulfilled the requirements of the Nanowrimo competition as of this past Sunday. Fifty-thousand words lie in wait for final verification, to prove themselves to the lords of the Nanowrimo that I have successfully joined their ranks.</p>
<p>But the story continues.</p>
<p>As I&#8217;ve enjoyed telling those that ask, I&#8217;m almost out of Mexico. There are really only two more acts that need fleshing, and after that comes whatever resolution the characters deem necessary. Elizabeth Wilde has seen more rapid development than I intended. My original purpose through the total arch of 52 assassinations was a slow degradation of her moral fabric. Now, post-arrest, she has grown far more ruthless than I originally intended.</p>
<p>I&#8217;m trying to avoid references to the <a href="http://en.wikipedia.org/wiki/Cameron_%28Terminator%29" target="new">Rivernator</a>, but a couple scenes have definitely played out as such.</p>
<p>My goal is still to finish by November 30th, but I don&#8217;t see that happening. There&#8217;s just simply too much left to tell. Not that I won&#8217;t try, but I&#8217;m expecting at least another twenty thousand words before I can finally slap the almighty &#8220;The End&#8221;.</p>
<p>This has been a spectacular month of storytelling, though, and it&#8217;s affected more people around me than I originally thought. My wife is showing an honest interest in the story. My folks constantly ask if I&#8217;ve finished. So coworkers got involved and participated on their own (You guys rock). Jim even dived in, and I can&#8217;t wait to see what he&#8217;s come up with. I&#8217;m eager to see the fruits of this past month.</p>
]]></content:encoded>
			<wfw:commentRss>http://dev-null-productions.com/?feed=rss2&amp;p=345</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Kubuntu 9.10 Review</title>
		<link>http://dev-null-productions.com/?p=340</link>
		<comments>http://dev-null-productions.com/?p=340#comments</comments>
		<pubDate>Thu, 05 Nov 2009 13:25:10 +0000</pubDate>
		<dc:creator>Rhaythe</dc:creator>
				<category><![CDATA[Developer Diaries]]></category>

		<guid isPermaLink="false">http://dev-null-productions.com/?p=340</guid>
		<description><![CDATA[Around the time of Kubuntu 9.04, I was pretty annoyed. I&#8217;ve read plenty about how Kubuntu is pretty much the bastard child of KDE and Ubuntu and received very little love insofar as development time, effort, energy, etc. 9.04, I believed, showed this to an extreme. It was buggy, and a lot of these bugs [...]]]></description>
			<content:encoded><![CDATA[<p>Around the time of Kubuntu 9.04, I was pretty annoyed. I&#8217;ve read plenty about how Kubuntu is pretty much the bastard child of KDE and Ubuntu and received very little love insofar as development time, effort, energy, etc. 9.04, I believed, showed this to an extreme. It was buggy, and a lot of these bugs showed up just in the process of ordinary use. These are just my own personal examples:</p>
<p>* Unstable OpenGL Desktop acceleration (I typically ran without effects 24/7)<br />
* Poor Suspend-to-RAM recovery. 1 in 3 wake-ups would hard-lock the system<br />
* Power Management daemon hardlocks system if plugged in during Suspend-to-RAM<br />
* Crash-happy OpenOffice Writer<br />
* KDM crashes</p>
<p>This is in addition to other minor bugs, such as libpam-mount being flaky and KNetworkManager being unreliable (I ended up using WICD, which was a godsend).</p>
<p>Thankfully, 9.10 redeemed Kubuntu for the year.</p>
<p>I switched over around Release Candidate 2, and even <i>that</i> proved more reliable than 9.04. Power management seems much tighter. I&#8217;ve had only 1 hardlock in many, many Suspend-to-RAM instances. I can plug the laptop in when it&#8217;s in sleep mode. The OpenOffice integration with KDE is nice, though it did decide to take a nosedive a few days ago; that has yet to repeat, however (**knocks on wood**).</p>
<p>KNetworkManager still pisses me off. The application seems to be married to KWallet, an app that I absolutely hate. If I turn off the wallet system, KNetworkManager is neutered. In addition, it did not auto-detect my wireless network&#8217;s encryption method&#8230; something I&#8217;ve come to expect these days. Easy to fix once I realized the problem, but still surprising.</p>
<p>I do believe they gimped WICD with this release&#8230; though I can&#8217;t prove it. That service does not seem to recover from Suspend-to-RAM. It loses all ability to scan for wireless networks and refuses to reconnect when the laptop comes back up. Maybe this is just my own personal experience, but I&#8217;ve put up with the KWallet pestering up until now (It only insists on the password once per login and doesn&#8217;t ask again coming out of sleep).</p>
<p>The option to automagically encrypt home directories was a beautiful addition, and pretty much nullified any need for that <a href="http://dev-null-productions.com/?p=276">other article</a> I posted a while back. Given this OS is on my writing laptop, I jumped all over this option. It may cause problems at reinstall time if I ever need to just upgrade the OS. I keep my /home root on a separate disk partition, so I can upgrade the OS without worrying about my preferences and files. This option stores everything in a /home/.usernamePrivate file and mounts the file at log-in time. I&#8217;m sure this will cause problems later on, but I can worry about that later.</p>
<p>I discovered the Globe <a href="http://dev-null-productions.com/stuff/desktopKde9.10.png">desktop integration</a> as part of this release. Maybe I&#8217;m just behind in the times, but this is a nice feature. Pretty eye candy, doesn&#8217;t require OpenGL acceleration, and any kind of dynamic desktop is a boost when showing off the operating system to the Windows babies at my office.</p>
<p>Overall, not a bad release thus far. I believe I&#8217;m pleased, and may not have to jump on the upgrade bandwagon come next April.</p>
]]></content:encoded>
			<wfw:commentRss>http://dev-null-productions.com/?feed=rss2&amp;p=340</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ode to a Bad Idea. . .</title>
		<link>http://dev-null-productions.com/?p=328</link>
		<comments>http://dev-null-productions.com/?p=328#comments</comments>
		<pubDate>Mon, 26 Oct 2009 08:12:34 +0000</pubDate>
		<dc:creator>cubic1271</dc:creator>
				<category><![CDATA[Rants]]></category>

		<guid isPermaLink="false">http://dev-null-productions.com/?p=328</guid>
		<description><![CDATA[All right, I need to vent, and this web site is closest. This is a rant; you have been warned. My PS3 has joined the thousands of others that have perished under mysterious circumstances. What circumstances? Well, the system hardlocked to the point where no amount of holding the power button would shut the thing [...]]]></description>
			<content:encoded><![CDATA[<p>All right, I need to vent, and this web site is closest.  This is a rant; you have been warned.</p>
<p>My PS3 has joined the thousands of others that have perished under mysterious circumstances. What circumstances? Well, the system hardlocked to the point where no amount of holding the power button would shut the thing down. Turned the thing off, then back on. . . and lo and behold, it suddenly won&#8217;t read a disc. I don&#8217;t even get an error message; it&#8217;s like the drive isn&#8217;t even there. Supposedly a bug in the firmware is the culprit; there&#8217;s a lawsuit out in California that I&#8217;ll be watching pretty carefully for the next few months, I think.</p>
<p>So, anyway, I was going through and backing up my data this evening in preparation of parting with the PS3 (and $150) to send it to the service facility for repair. Naturally, the PS3 backup utility failed, so I had to resort to copying my save game data over to an external hard drive by hand. I reached my file for Demon&#8217;s Souls (a game I&#8217;ve put a ridiculous number of hours into, considering the short time I&#8217;ve had it), went to copy it. . . and discovered that the save game file was copy protected. No way to back it up.</p>
<p>I can understand (but strongly disagree with) putting DRM on music, movies, and games. My question, though, is <em>why the <strong>hell</strong></em> would <em>anybody</em> feel some kind of burning desire to copy protect a save file? &#8220;Hey, you can use those bytes to reconstruct part of our intellectual property! We can&#8217;t let you do that!&#8221;</p>
<p>Yeah, this entire situation is pathetic.</p>
<p>Jim.Opinion.FROM_SOFTWARE = Jim.Opinion.SONY = INT_MIN;</p>
<p></rant></p>
]]></content:encoded>
			<wfw:commentRss>http://dev-null-productions.com/?feed=rss2&amp;p=328</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Discovering Linux Encryption</title>
		<link>http://dev-null-productions.com/?p=276</link>
		<comments>http://dev-null-productions.com/?p=276#comments</comments>
		<pubDate>Sun, 11 Oct 2009 03:34:33 +0000</pubDate>
		<dc:creator>Rhaythe</dc:creator>
				<category><![CDATA[Developer Diaries]]></category>

		<guid isPermaLink="false">http://dev-null-productions.com/?p=276</guid>
		<description><![CDATA[Ever since picking up my laptop, I have had a concern about having my stories on such a portable machine. I bought myself a Bauer-like man-purse, so this laptop basically goes everywhere I do. It&#8217;s convenient with the lappy being so light, but it IS a laptop. It&#8217;s not hard to take, mount the drive [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://dev-null-productions.com/wp-content/uploads/2009/10/enc.jpg" align="right" />Ever since picking up my laptop, I have had a concern about having my stories on such a portable machine. I bought myself a Bauer-like man-purse, so this laptop basically goes everywhere I do. It&#8217;s convenient with the lappy being so light, but it IS a laptop. It&#8217;s not hard to take, mount the drive on an external system, and voila&#8230; all my stuff is in the open.</p>
<p>I&#8217;ve been keeping an eye out for a solution, and I think I found one after some Googlin&#8217;.</p>
<ul>Some details:</p>
<li>OS: Debian-based distribution</li>
<li>Kernel:2.6.28-15-generic
<li>
<li>Encryption used: AES</li>
<li>
<ul>Prerequisite Packages:</p>
<li>loop-aes-utils</li>
</ul>
<p><B>Create an Encrypted Filesystem</B><br />
The first thing to do is create a loopable filesystem that can be mounted by the kernel. Find some place on your filesystem that&#8217;s nice and out of the way&#8230; or that&#8217;s plainly obvious, since we are using encryption. I threw mine in my Documents folder. Nice and hidden where absolutely everyone will find it. But meh.</p>
<p>Create the filesystem image with the following command:<br />
<code>dd if=/dev/urandom of=imageName.img bs=1M count=100<br />
</code></p>
<p>According to the article, using /dev/urandom makes the file a bit more indistinguishable from other used filesystem sectors, but /dev/zero works fine as well.</p>
<p>Next, assign the filesystem image to a loopback device:</p>
<p><code>sudo losetup -e aes /dev/loop0 /path/to/imageName.img</code></p>
<p>If the kernel complains about invalid arguments, make sure that your encryption libraries are installed (IE: AES, Twofish, etc) and that the modules are loaded. If not, run the following command:</p>
<p><code>sudo modprobe aes</code></p>
<p>Keep in mind that for AES, you&#8217;ll need a password of 20 characters.</p>
<p>Now that the image is associated with a loopback device, create the filesystem:</p>
<p><code>sudo mkfs -t ext4 /dev/loop0</code></p>
<p><B>Mount the Filesystem</B><br />
Now that you&#8217;ve created your filesystem image, it needs to be properly mounted in order to be used. You can do this by passing the encryption argument to the mount command:</p>
<p><code>mount -o loop,encryption=aes /path/to/imageName.img /path/to/mount</code></p>
<p><B>Using this Filesystem</B><br />
My filesystem will hold some rather sensitive data&#8230; my work. Mostly I&#8217;ll toss my stories in there. We&#8217;ll see what else I plug in. A nice feature will be to tie the mounting process in with the system log-in. We&#8217;ll see if that works out.</p>
<p>I did throw a nice li&#8217;l launcher on my taskbar with a lock icon. Makes it feel all nice and special.</p>
<p>RESOURCE: http://www.linuxjournal.com/article/6481</p>
]]></content:encoded>
			<wfw:commentRss>http://dev-null-productions.com/?feed=rss2&amp;p=276</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Good for the Lions</title>
		<link>http://dev-null-productions.com/?p=261</link>
		<comments>http://dev-null-productions.com/?p=261#comments</comments>
		<pubDate>Sun, 27 Sep 2009 20:55:15 +0000</pubDate>
		<dc:creator>Rhaythe</dc:creator>
				<category><![CDATA[Miscellaneous]]></category>

		<guid isPermaLink="false">http://dev-null-productions.com/?p=261</guid>
		<description><![CDATA[Anyone that knows me knows I&#8217;m a pretty big &#8216;Skins fan these days. I got back into the sport when Coach Gibbs came back, and have stayed on-board through some pretty lackluster seasons. Well, I foresee a nasty week in the tri-state area, especially for anyone that listens or sees any kind of broadcast that [...]]]></description>
			<content:encoded><![CDATA[<p>Anyone that knows me knows I&#8217;m a pretty big &#8216;Skins fan these days. I got back into the sport when Coach Gibbs came back, and have stayed on-board through some pretty lackluster seasons. </p>
<p>Well, I foresee a nasty week in the tri-state area, especially for anyone that listens or sees any kind of broadcast that originates from within the beltway.  Honestly, though, maybe they deserve it. There&#8217;s too much talent, too much skill, for this team to be squandering the year like this.</p>
<p>Now, granted, it&#8217;s only week three. And I seriously doubt we&#8217;ll see a major change this week. But Snyder has deep pockets. He&#8217;s watching. And he is not patient.</p>
<p>At this point, something needs to change. Something in that &#8216;Skins locker room is broken. Be it Campbell (which I don&#8217;t think is the problem) or Zorn (maybe it is him), something has to change. Maybe it is time. Who knows&#8230;</p>
<p>Gonna be a long week in DC. Maybe I should phone in sick Monday.</p>
]]></content:encoded>
			<wfw:commentRss>http://dev-null-productions.com/?feed=rss2&amp;p=261</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mechwarriored Catanish Triple-A Risk</title>
		<link>http://dev-null-productions.com/?p=219</link>
		<comments>http://dev-null-productions.com/?p=219#comments</comments>
		<pubDate>Fri, 25 Sep 2009 19:07:58 +0000</pubDate>
		<dc:creator>Rhaythe</dc:creator>
				<category><![CDATA[Gaming]]></category>

		<guid isPermaLink="false">http://dev-null-productions.com/?p=219</guid>
		<description><![CDATA[Anyone remember these things? A couple of us gathered in Straith&#8217;s basement and yanked out our collection of WizKids Mechwarrior miniatures for the extended weekend. Someone had the inspiration to try and mix board games, so we set up the Settlers of Catan board, threw out some of the numeric tags and made sure the [...]]]></description>
			<content:encoded><![CDATA[<p><center><img src="http://dev-null-productions.com/wp-content/uploads/2009/09/mw_assault.jpg"/></center><br />
Anyone remember these things? A couple of us gathered in Straith&#8217;s basement and yanked out our collection of WizKids Mechwarrior miniatures for the extended weekend. Someone had the inspiration to try and mix board games, so we set up the <a href="http://en.wikipedia.org/wiki/Settlers_of_Catan" target="new">Settlers of Catan</a> board, threw out some of the numeric tags and made sure the resource &#8220;commonalities&#8221; were evenly distributed, and then set up our &#8220;capitals&#8221;. </p>
<p>Anyway, I think we managed to playtest a new kind of nerdiness into being. The following section is just how we played the first game. We&#8217;ve gotten a lot of lessons from this game, and later on I&#8217;ll expand upon some of those. For right now, though, I&#8217;ll just relate how we played.</p>
<p><big><B>Game Setup &#8211; Initial Test Run</B></big></p>
<ul><B>REQUIRED FOR PLAY</B></p>
<li>WizKids <i>Mechwarrior &#8211; the Dark Age</i> miniatures</li>
<li>A Territorial Game Board (Such as the one from <i>Settlers of Catan</i>)</li>
<li>Counters (chips, pennies, something)</li>
<li>Terrain (such as minature trees, rocks, paper buildings, whatever)</li>
<li>2 or more nerds to play</ul>
<p><u><B>Preparing the Game</B></u><br />
The first thing to do is to set up the world. I prefer to think of this game as a videogame in boardgame form. Think of the two views of the world: the MiniMap and the Battlefield. </p>
<p><B>The MiniMap</B><br />
For the first game, the default configuration for Catan works fine. Even if you do not have a <i>Settlers of Catan</i> boardgame, do not fret. It&#8217;s essentially a patchwork of six-sided tiles. Open some kind of vector-editing software, or find a hexagon on Google Images and start copy/pasting until you have something that looks like this:</p>
<p><center><img src="http://dev-null-productions.com/wp-content/uploads/2009/09/grid.base.jpg" /><br />
<small><B>Figure 1.1 &#8211; The Game Board</b></small></center><BR/></p>
<p>Don&#8217;t print it off yet. We&#8217;re not quite done.</p>
<p>The first thing to do is specify capitals. Capitals are&#8230; as they sound&#8230; bases for each player. It signifies where they start and from where they must <i><b>EXPAND</b></i>. For this first game, given that the entire board is symmetric, player capitals should be placed as evenly away from one another as possible.</p>
<p><center><img src="http://dev-null-productions.com/wp-content/uploads/2009/09/grid.capitals.jpg" /><br />
<small><B>Figure 1.2 &#8211; Player Capitals</b></small></center><BR/></p>
<p>Wait, there. We&#8217;re not finished yet.</p>
<p>This game will deal in no small point with resource management. Every territory should offer a finite amount of resources for a player to control. Within Catan, this is easy. Catan ships with alphabetical chips, each with a number of dots ranging from one to five. The dots in Catan represent statistically how often a territory will generate resources. Well, for our purposes in this game, the dots ARE our resources.</p>
<p>If you&#8217;re generating your own board, you&#8217;ll need to create a resource counter system. For our game, we had each capital generate 5 resources, while the 3 surrounding territories generated a cumulative 8 (two threes and a two). That&#8217;s thirteen resources in each &#8220;corner&#8221;, ensuring each player started evenly. The center territory was given a full five; we intended this territory to be the &#8220;contested&#8221; hot-zone that people would fight over to secure resources. The rest of the territories were given randomly-arranged chips, though we made sure each &#8220;spoke&#8221; from the center had an even overall number of resources.</p>
<p>The end result will give you a board that looks theoretically something like this:</p>
<p><center><img src="http://dev-null-productions.com/wp-content/uploads/2009/09/grid.points.jpg"/><br />
<small><B>Figure 1.3 &#8211; World of Resources</b></small></center><BR/></p>
<p><B><U>A Normal Turn</U></B><br />
Randomly decide who gets to go first. We discovered that this person typically will be ganged up on later on. The rationale behind this is that the board will be clear for player one when it&#8217;s his turn to move out. It&#8217;s easy to succumb to the temptation to move out light forces to simply hold massive territorial positions, so don&#8217;t be surprised if you&#8217;re constantly drawn to battle if you do this.</p>
<p><I>GAIN RESOURCES</I><br />
At the beginning of the players turn, count up all of the bits on all territories. Capitals will give 5. The surrounding territories, if controlled, will give another 8. That&#8217;s 13 bits potentially by turn two. One bit buys you one resource token, which is placed immediately at the player&#8217;s capital.</p>
<p><I>MOVING RESOURCES</I><br />
Resources move at the beginning of the turn in a similar fashion to units in Axis and Allies. Resources may move from one space to another one space a turn. You may move any amount of resources per turn, so long as a particular resource only moves that one space a turn. For example, you may move four resources into a territory already containing six resources. Those six may move to a different territory.</p>
<p>When moving into an empty territory, your resources claim the territory for you. Place a token marking the territory as yours (For example, a powers token from Axis and Allies).</p>
<p><center><img src="http://dev-null-productions.com/wp-content/uploads/2009/09/grid.chits.jpg"/><br />
<small><B>Figure 1.4 &#8211; Example First Turn &#8211; Expanding Out</b></small></center><BR/></p>
<p><I>ATTACKING</I></p>
<p>Moving any resource amount into a territory with an opponent&#8217;s resources is called an attack. No shocker there.</p>
<p>Attacks are resolved one at a time, though are thought to all occur near-simultaneously. Attacks occur in several phases:</p>
<ul>
<li>Purchase Units</li>
<li>Create the Battlefield</li>
<li>Deploy Units</li>
<li>Engage</li>
<li>Resolve Damage and Remove Resources</li>
</ul>
<p><B>Battle Phase &#8211; Purchasing Units</B><br />
To begin preparing for battle, count up the number of resources available on the territory being contested. One resource is equal to ten purchasing points. So if a player has six resources available on any given territory, that is the equivalent of sixty purchasing points insofar as buying units.</p>
<p>Units are purchased normally according to the rules of <i>Mechwarrior: The Dark Age</i>. Any extra purchasing points not used by the player are ignored for this battle. For example, a player that has the aforementioned sixty purchasing points that only spends 56 is not credited in any way for the remaining 4 points.</p>
<p>Command points are determined per hundred purchasing points by either player. The minimum number of command points at any time is one. Both players will have the same number of command points in any battle. For example, if the attacker is committing two hundred points to a battle to earn two command points, yet the defender only has eighty points available, both players still enter battle with two command points.</p>
<p><B>Battle Phase &#8211; Create the Battlefield</B><br />
In a two-player game, the attacker creates the battlefield and the defender chooses which spawn point he will use. In a three-player game, the third player is responsible for creating the battlefield (and is encouraged to be creative. He does not need to ensure the battlefield is equal for both players. Not all battles are fought on equal ground). In a three-player game, the defender still selects his spawning point first.</p>
<p><B>Battle Phase &#8211; Deploy Units</B><br />
Defender selects which spawn point he will use and the attacker places his units first. The defender then places his units at his spawn point. All units deployed must be touching the spawn point. The exception is if any unit has the INFILTRATE ability. Units with this ability may deploy away from the spawn location as normally allowed.</p>
<p><B>Battle Phase &#8211; Engage</B><br />
Enter into and resolve battle as normal.</p>
<p><B>Battle Phase &#8211; Resolve Damage and Remove Resources</B><br />
Battle concludes when all of one player&#8217;s units are either destroyed or &#8220;neutered&#8221;, meaning they can do no damage. Units such as mechs may still be mobile, but if they can cause no damage, they are still considered &#8220;neutered&#8221; for the purpose of battle resolution.</p>
<p>Each player should calculate the value of any destroyed or rendered-useless units. This value is subtracted from the total number of resource points on the given territory, rounded up to the nearest 10. If no units remain on a given territory after a conflict is resolved (whether the units were destroyed or neutered) then the territory is again neutral.</p>
<p><B><U>Continuing Play</U></B><br />
Play will continue until all opposing capitals are eliminated. Players without a capital may not generate new resources; however, they may continue to move existing resources in an attempt to recapture their capital. Or they can be a general annoyance to other players&#8230; whichever is preferable.</p>
<p>These rules should be enough to get a version of this game up and running. I will post additional details as we come up with them, including some expanded rules for quicker play that I have in mind. Stay tuned and watch the comments section for more information.</p>
]]></content:encoded>
			<wfw:commentRss>http://dev-null-productions.com/?feed=rss2&amp;p=219</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
