tag:blogger.com,1999:blog-154347652024-03-07T02:55:08.839-06:00Jeux Sans FrontieresGame development and other sundry.Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.comBlogger44125tag:blogger.com,1999:blog-15434765.post-50971389022589820242012-05-22T02:01:00.003-06:002012-05-22T02:06:39.018-06:00Web RevisitedIt's been a while since I've done any serious web programming. There are many career programmers in other industries who view web programmers with a jaundiced eye. It is as though the reputation of web programming is forever tarnished by the proliferation of idiots who called themselves "web programmers," back during the .com boom, but who could barely muddle their way through basic HTML. I wont lie to you: There was some <i>schadenfreude</i> in some circles, when the bust hit, and some programmers found themselves chronically unemployable.<br />
<br />
However, the pendulum keeps swinging. We are back in a big growth phase for web technologies, and there are a lot of good programmers who have taken up residence here. There are interesting challenges, in this space. There are things worth exploring and learning -- yes, even for game developers -- <i>especially</i> for game developers.<br />
<br />
Having gone swimming in web technology after a hiatus of almost a decade, I have the following observations to make:<br />
<br />
<h3>
1.) JQuery is awesome.</h3>
If you type "jquery is awesome" into Google, you get 5,480,000 hits. If you type "jquery sucks" into Google, you get 436,000 hits. How many things get that kind of love from programmers?<br />
<br />
In the days before Ajax, we did insane things. I created magic with DHTML and hidden frames, but it was black magic. It was hard and it was ugly. Ajax got rid of the hidden frames, but it was really JQuery that made the DHTML part of it considerably less painful, and for that, I am pleased.<br />
<br />
<h3>
2.) You can't possibly know everything.</h3>
There are so many frameworks and methodologies now that you just can't master them all. There's just too much. It may be an embarrassment of riches, but it is also very hard to choose what technologies to use for anything.<br />
<br />
<h3>
3.) Clients are growing fatter.</h3>
There was a time when we thought we were moving towards thin-clients. Everything was going to be on the internet, and our computers were just windows into that space. The counter-intuitive thing is that our clients are actually growing fatter by the day. Many modern web applications have most of their logic on the client-side, with only a small data service on the back-end. I am still trying to get my head around exactly what this means, in the long-term.<br />
<br />
<h3>
4.) CSS is great, except when it's not.</h3>
I have used a lot of layout engines, over the years. For something that was intended to get people to abandon their abuse of tables, CSS continues to be somewhat disappointing. And don't you dare try to tell me that I am saying that because I don't know how to use it, either. I have done some pretty serious gymnastics with it, and I am annoyed at how much time I always spend fighting to get what I want (especially cross-browser -- GAH).<br />
<br />
<h3>
5.) Here there be dragons.</h3>
I see bad web code way too often, and a lot of the code examples out there for new programmers don't demonstrate best practices. Things get big. Things don't get cleaned up. Remember: Just because you're not coding in C++ doesn't mean you can just stop thinking about your memory usage, and other Responsible Programmer Stuff. Be a professional.Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com0tag:blogger.com,1999:blog-15434765.post-87908978710991887852012-05-15T00:29:00.000-06:002012-05-15T00:29:03.703-06:00Create Repository HereI love <a href="http://mercurial.selenic.com/">Mercurial</a>.<br />
<br />
Well, really, it's Mercurial + <a href="http://tortoisehg.bitbucket.org/">TortoiseHg</a>, on Windows. As a career-programmer and tinkerer, these things give me great delight. Oh yes, certainly there are many different source code repositories out there, at this point, and there are compelling reasons to choose other ones. But, the thing that Mercurial and TortoiseHg give me is this:<br />
<br />
When I am tinkering on a casual personal programming project, and I know I'm about to <b>really</b> mess something up good, I just right-click in the directory where I'm working. I select TortoiseHg > Create Repository Here. (Or, from the command line, "<span style="background-color: white; font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Courier New', monospace, serif; font-size: 16px; line-height: 22px;"><span style="color: blue;">hg init (project-directory)</span></span><span style="background-color: white; color: #111111; font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Courier New', monospace, serif; font-size: 16px; line-height: 22px;">") </span>My directory where I'm working is now both working directory <i>and</i> repository -- just like that! I have no need for messing around with servers, or other directories, or launching special clients. I just add my files, commit them, and then I can iterate to my heart's content, and roll back if I mess it up.<br />
<br />
I lament that I had no such thing when I was a student. I wonder how much time and heartbreak I would have saved, if I could have done such casual version control with my class projects.Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com0tag:blogger.com,1999:blog-15434765.post-87076794235345911012011-01-04T17:02:00.000-06:002011-01-04T17:02:18.118-06:00The Importance of Being SantaI don't remember when I found out that there was no Santa Claus. It's one of those horrible truths that creeps up on you in the playground, or on the doorstep of a neighbor's house. One child uncovers the conspiracy, and she can't keep the knowledge to herself. Once you know the truth, it nestles in your heart, and troubles you. Do you tell other children? Do you tell your siblings? Do you let your parents know that the jig is up, or do you milk it for as long as you can? Or, do you struggle with denial? Maybe this other child was simply on the dreaded Naughty List. Spreading horrible lies about Santa would certainly qualify her.<div><br />
</div><div>Many years later, early in the pre-dawn hours of Christmas, my parents woke me and asked me to come help them wrap presents. I was the oldest of the kids -- probably a teenager by then -- and I had intellectually understood for many years, at that point, that there was no Santa Claus. Yet, for some reason, taking part in the whole ritual of placing presents under the tree, the night before Christmas, was a huge disappointment for me. It was as though I had somehow chosen to suspend some small part of my disbelief all of those years, and I was finally forced to let go of that last little vestige of it.</div><div><br />
</div><div>When I was at University, I played on a few text MUDs (Multi-User-Dungeons for the young'uns out there), and was particularly fond of a particular TinyMUSH (a species of MUD). After a few years playing there, I was made a "Wizard." Essentially, a MUD Wizard is an online game administrator, but the job also requires a strange blend of programming, game design, and customer service. When I took the position, and first started trying out the administrative features, and looking at the code for the "globals" (system-wide game commands), I felt the same creeping feeling of disappointment, from that Christmas morning, all over again.</div><div><br />
</div><div>There seems to be a very real psychological difference between knowing that there is a man behind the curtain, and <i>being</i> the man behind the curtain. Even when we intellectually understand that he is there, our brains still cling to wisps of magic, here and there. And yet, we need that man behind the curtain to be there. Indeed, even with our earliest forms of entertainment -- our myths, legends, and tall tales -- someone, somewhere, took liberties, and was fully aware of the artifice involved.</div><div><br />
</div><div>Magic is made by people. But why would we ever choose to be the ones who had to live with the disappointment of making it? Why do parents play Santa? It brings joy to others. There may be other reasons to pull levers, fabricate stories, apply makeup, and composite space ships into the sky, but the most important reason is that it brings joy to our audience.</div><div><br />
</div><div>I suppose that it is also true that some of us will always take the red pill, when given the chance. I once hacked a game save file just to fix up the eyeshadow color of my character. When her entire existence is reduced to so much data in a hexadecimal editor, it's hard to take her very seriously. Maybe I'll find magic again when I'm senile. For now, I'm still tinkering with the gears way too much.</div>Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com0tag:blogger.com,1999:blog-15434765.post-15405794538316170242010-05-24T17:40:00.000-06:002010-05-24T17:40:52.107-06:00Tools I LoveToday, I'm going to talk a little about some of the secondary software tools that I use, that might be useful to other people. These are mostly Windows tools, since that's where I do most of my programming, visual effects, art, writing, etc., but a few of them have Mac and/or Linux ports, as well.<br />
<br />
<a href="http://www.expandrive.com/">ExpanDrive</a> - Mounts your unix shell account as a Windows or Mac drive, via SSH. I wish I'd had this ages ago.<br />
<br />
<a href="http://www.codesector.com/teracopy.php">TeraCopy</a> - Have you ever asked Windows to copy 129 files, only to come back and find out that the copy died at SOME point, and you're not sure which files copied, and which ones didn't? Or Windows decided to prompt you at 3AM, after you went to bed, to ask if one of the 129 files should be overwritten? TeraCopy is a drop-in replacement for Windows' built-in copy tool that will make you less likely to throw your computer down the stairs, in a fit of rage. It also works well with ExpanDrive, for providing reliable uploads and downloads of large files or batches of files.<br />
<br />
<a href="http://frhed.sourceforge.net/">Frhed</a> - This is my favorite hex editor, at the moment. Yes, there are still ethical, law-abiding citizens who find reasons to edit hex, sometimes.<br />
<br />
<a href="http://www.scootersoftware.com/">Beyond Compare</a> - Like bug-tracking software, I hate all the diff/merge tools I have ever used, but this is probably the best that I have used, to date. Also, OMG BINARY DIFF!<br />
<br />
<a href="http://celtx.com/">Celtx</a> - Yes, your favorite word processor may have a screenplay template, but using it will never be as fun as Celtx.<br />
<br />
<a href="http://www.7-zip.org/">7-Zip</a> - Handle all those annoying compression formats that Windows doesn't normally understand.<br />
<br />
<a href="http://www.stardock.com/products/fences/">Fences</a> - This nice little utility from indie game developer Stardock is great for folks like me, who normally have really messy computer desktops. It lets you organize your desktop icons into little transparent rectangular docks, with labels. This is particularly nice if you're using a computer that switches display sizes a lot, because it doesn't lose all your icon placement settings when you switch back and forth.<br />
<br />
<a href="http://www.xyplorer.com/">XYPlorer</a> - An artist I worked with first showed me this tool, when I was complaining about the extraordinarily poor default filesystem search capabilities in Windows XP. The searching in Vista and Windows 7 is much improved, but XYPlorer has turned out to still be useful. It is essentially a file manager for Windows, with tabbed browsing, and a lot of great power-user features that the basic Windows file manager lacks. I particularly like its catalog feature, that lets me make a set of shortcuts on the left side for things I need to run or access frequently. Because it is lightweight, and not a system-wide install, you can install multiple copies of it, in different parts of your file system, customized for the work you are doing in that area. For example, if you are working in multiple branches of the same project, you can use parallel installs, each customized to do the same things in their respective branches, so that you can quickly do things in familiar ways, without accidentally fumbling over into the wrong branch.Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com0tag:blogger.com,1999:blog-15434765.post-79174892038020863522010-04-20T13:26:00.003-06:002010-04-22T20:12:10.031-06:00Data or Code?There has been much ado about Apple's <a href="http://scratch.mit.edu/forums/viewtopic.php?pid=367528">decision</a> to yank <a href="http://scratch.mit.edu/">Scratch</a> from the app store. The timing has led many to believe that this was precipitated by the much-maligned iPhone OS 4.0 SDK developer agreement <a href="http://daringfireball.net/2010/04/iphone_agreement_bans_flash_compiler">change</a> that forbids alternative development languages/environments. However, things like interpreters, executable plugins, and virtual machines have been explicitly forbidden by the developer agreement at least as far back as March 2008.<br />
<br />
I am forced to wonder: Were the guys that developed the iPhone port of Scratch unaware of these rules, or were they simply hoping that -- given that Apple was founded on the ingenuity of two young guys in their garage -- maybe, just <i>maybe</i> someone there would think making creative software development tools for kids was worth making some kind of exception for. One of the guys behind the project posited that "Basically, Apple hates us." No, man, what you experienced was not hate. It was the blind scythe of consistency. It was -- in ye olde D&D parlance -- <i>Lawful Evil</i>.<br />
<br />
But, the noise about this has reminded me of a bit of a conundrum I have over this whole rule. What the hell is "code," anyway? That may sound like a silly question for a programmer to be asking, but it is an important question. Most technical definitions I can find suggest that it is some kind of symbolic set of instructions or rules intended to tell a computer what the heck to do. In other words, the only thing that makes a recipe for chocolate chip cookies <i>not</i> code is that it is intended to be interpreted and executed by a human, rather than a computer.<br />
<br />
We do use a considerable amount of data that contains instructions intended for computers, however. Most document formats (aside from raw text) include some kind of markup that informs a viewer or editor application of the intended presentation logic for that document. Isn't that code? What about the formulas in a spreadsheet? That's code, isn't it? Isn't MIDI a set of instructions for playing music?<br />
<br />
Where <i>is</i> the line, here? If I make a game with monster AI that is driven by a state machine whose nodes and state changes are specified in an XML document, am I not running a program on a virtual machine?<br />
<br />
Data influences how many non-trivial programs function. A great deal of data <i>is</i> code. Code is everywhere.Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com0tag:blogger.com,1999:blog-15434765.post-37627686133230985642010-04-19T17:20:00.003-06:002010-04-19T17:50:48.131-06:00Ebert and Games, Again?Roger Ebert has once again attempted to tackle the whole <a href="http://blogs.suntimes.com/ebert/2010/04/video_games_can_never_be_art.html">question</a> of videogames-as-art. I have a huge amount of respect for Ebert as a human being, and as a film critic. He is a giant of a man. However, let's be honest: He doesn't play enough videogames to judge whether they are or can be art. His analysis of games based on Kellee Santiago's talk is comparable to a non-classical-music-listener critiquing Dvorak's New World symphony, simply based on someone else's description of it.<div><br /></div><div>Certainly, it is a critic's job to describe things in such a way that a reader (or listener) knows whether something is worth experiencing, first-hand. However, the audience needs an appropriate frame-of-reference to get any value from the critic's review. I don't expect people who don't play videogames to have the frame-of-reference they need to appreciate, from a critic's review, the artistic merit of a given game.</div>Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com0tag:blogger.com,1999:blog-15434765.post-78418248781385397152010-04-19T14:10:00.003-06:002010-04-19T15:35:56.869-06:00Why I Don't GPL<div>What I am about to write may be controversial with some of my friends in the open source community, but it needs to be said.</div><div><br /></div><div>For the most part, I won't make substantial contributions to any GPL projects anymore, as a matter of principle. I think that the license is, in many cases, self-defeating, and only delivers the highest-quality code for certain types of projects, under certain ideal circumstances.</div><div><br /></div><div>Why is this?</div><div><br /></div><div>To put it simply, the people you probably most want contributing to your project are developers who really understand the domain, and are going to give you professional-quality code contributions.</div><div><br /></div><div>Many companies do not use GPL code, because they do not feel that they have the luxury of GPLing their own code. This is a practical truth, whether you agree with their reasons or not. Many of your would-be expert contributors work for such companies, and are bound by non-compete agreements that would prohibit them from contributing to your project in their spare time. If their employers aren't using your code, then they can't contribute to it.</div><div><br /></div><div>In short, if you GPL your code, you may be missing out on some of your best contributors.</div><div><br /></div><div>If I wanted to work on a piece of game-related code, and it was under the GPL -- in practical terms -- almost nobody will use it and no professional game developers will contribute to it, <i>no matter how good or useful it is</i>. I mean, really, it sounds like a horrendous waste of time to me.</div><div><br /></div><div>One great success story of open source game development technology is the Ogre3D engine. This is an open source 3D graphics engine which is arguably as good as some of the expensive commercial ones I have used. It was originally released under the GPL, many years ago, and has gradually become more permissive over time (GPL -> LGPL -> MIT). Upon the transition to the MIT license, the project maintainer, Steve Streeting, notably <a href="http://www.ogre3d.org/2009/09/15/ogre-will-switch-to-the-mit-license-from-1-7">observed</a> the following:</div><div><blockquote>While not requiring modified source to be released might initially seem like giving up an important motivator to contribute code back to the community, we’ve noticed something in recent years: 99% of useful code contributions come from people who are motivated to participate in the project regardless of what the license tells them they have to do. It’s our experience that a certain percentage of the user community will always participate and contribute back, and therefore encouraging adoption via simpler licensing is likely to result in more contributions overall than coersion via complex and restrictive licensing does. In addition, people who are internally motivated to participate tend to provide much higher quality and more usable contributions than those who only do it because they are forced to.</blockquote>This is very consistent with my own observations of open source projects. I am curious whether others have seen the same.</div><div><br /></div><div>Now, mind you, everything I just said can depend a lot on the domain of a given project, and also whether something is an API or standalone, and a number of other factors. Linux, for example, seems to be a perfect-storm of GPL-working-as-intended. However, there aren't a lot of professional operating systems developers in the world, and many of them work for companies that sell competing products, so one can make a fair argument that Linux probably gets the best contributors they are going to get, regardless of how permissive their license is.</div>Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com2tag:blogger.com,1999:blog-15434765.post-23259740199412057722010-04-08T16:01:00.004-06:002010-04-08T16:52:28.269-06:00The Tech Book RevisitedI used to spend a lot of money on tech books.<div><br /></div><div>As a programmer who is always expanding my horizons and trying out various technologies (and generally trying to keep my skills fresh), I spent exorbitant amounts of money buying fat tomes full of wisdom that would be obsolete, oh, about 15 minutes after I brought them home. Sometimes, they would <i>already</i> be obsolete, by the time the publisher managed to shove them out the door.</div><div><br /></div><div>The web changed things... up to a point. I no longer need hefty API references, since most API references are published online, and it is considerably faster to search them electronically. If I have some obscure question about how to accomplish something or solve a problem, there is usually a forum or article somewhere that will address my concern. Still, there is usually at least one good "bible" on any given topic that was worth having. What C programmer doesn't have a yellowing copy of K&R on her shelf? What Perl programmer doesn't have the camel book? What webpage will replace our Stroustrup? Our Knuth?</div><div><br /></div><div>When I was living in Australia, I couldn't take all my books with me from the States. That was when I discovered O'Reilly's <a href="http://safaribooksonline.com/">Safari</a>. In the beginning, it was most of the O'Reilly library, online, and you could keep a bookshelf, with a few books on it at a time that you could read on the web. Today, the library has expanded to many publishers, and you can buy a yearly subscription that gives you access to <i>the entire library</i>. The subscription is a bit pricey, but if I truly admit to myself how much I was spending on technical books per year before, the price is not unreasonable. It is access to a giant library of the most recent version of nearly every computer book you could ever want. How do you even put a price on that?</div><div><br /></div><div>However, like all websites containing technical information, Safari presented an interesting usage-pattern problem for me. I can use a physical technical book without taking up any of my precious screen real estate. An electronic technical book, however, uses your computer screen. If I have a second screen up, I am usually already using it for some kind of work. There is a decent mobile version of the Safari site, but I usually only use it when I'm curious about something on-the-go, because my phone screen is just too small to be a practical display for a tech book. So, if I need to refer to something, I often end up with a laptop to my left or right, displaying a book. This is ultimately a waste of space and energy.</div><div><br /></div><div>A few weeks ago, I won an iPad in a drawing (Thank you, PayPal!). It arrived yesterday. I thought it was pretty cool, but I wasn't sure yet what on earth I was going to use it for. Before the day was out, I was already browsing a tech book on my iPad, while I coded on the desktop. Well, now, there's a perfectly good practical use for my new gadget -- technical book viewer. I wonder what else it will turn out to be good for?</div>Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com0tag:blogger.com,1999:blog-15434765.post-63998149130463763732009-12-20T03:14:00.005-06:002009-12-20T03:36:53.467-06:00Save FrequentlyI always find reformatting drives to be terrifying.<div><br /></div><div>It's not that it's difficult. I know how to burn an iso, set up my BIOS to boot off of CD, and run the manufacturer's drive re-initialization utility. It's kind of a no-brainer. The thing that truly frightens me is that when I was copying all of my own personal data off of that machine, it's entirely possible I missed a batch of photos, a program, a story, a piece of artwork, or a song. My fear is that I may have created something that will be lost forever. Some little piece of me will be irreparably overwritten by zeros.</div><div><br /></div><div>I double and triple-check my backups, and then make extra backups. I make sure my stories are all there. I fish around for iTunes songs I won't be able to download again. I marvel about some of the things that were on that drive that I didn't realize were there. There are the photos from Portugal. This wasn't even the same laptop I had in Portugal. How did they end up here?</div><div><br /></div><div>I make one last check before pulling the trigger. I skim a few lines of one of my stories, just to be sure that this was the copy that had ALL of the text in it, and not an earlier revision. The software warns me several times that I will lose everything -- as though I could possibly need to suffer <i>more</i> anxiety about this maneuver.</div><div><br /></div><div>Finally, I do it. Gone, gone, gone.</div><div><br /></div><div>At times like these, I sometimes think I should just start keeping everything in my Subversion repository. Why is my code the only intellectual endeavor worthy of this sort of care? Documents have revisions, too. Music notation is rarely perfect, the first time.</div><div><br /></div><div>Life is dangerous: Save frequently.</div>Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com0tag:blogger.com,1999:blog-15434765.post-92000750502983141652009-12-15T19:43:00.008-06:002009-12-15T19:53:57.238-06:00Independence DayI know, I haven't been posting here much. It's hard to post about things when you're, well, busy <i>doing</i> them. But, it's time I spilled the beans in a more public way: I am, at long last, going indie.<div><div><br /></div><div>I have put up my shingle here: <a href="http://pixelsea.biz/">http://pixelsea.biz/</a></div><div><br /></div><div>Let me be clear: This does <i>not</i> mean that I am looking for a job. I have a full-time job, working for me. I keep myself very busy, and I would be very cross with myself, if I were off interviewing for other jobs, when I have so much work to do. However, if you have any short contracting gigs, I may be willing to consider having a stab at them, as I am a bit of a scrooge, and don't pay myself very well, yet.</div></div>Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com1tag:blogger.com,1999:blog-15434765.post-23921322726569278282008-05-20T20:09:00.006-06:002008-05-20T20:14:44.015-06:00Nerd NationEvery time I hear "<A HREF="http://www.flobots.com/">Handlebars</A>" on the radio, when I hear the line...<br /><BLOCKQUOTE><I>I can make computers survive aquatic conditions.</I></BLOCKQUOTE>...I just feel like saying, "Oh yeah? Well so can I. <I>BRING IT!</I>"Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com5tag:blogger.com,1999:blog-15434765.post-57190886039635524412008-05-17T16:38:00.004-06:002008-05-17T16:58:56.830-06:00Crime and PunishmentThe hypothesis: When we make it more convenient to be a pirate than it is to be a legitimate customer, otherwise legitimate customers will turn to piracy.<br /><br />We should not be punishing our customers for the actions of those who are not our customers. This makes absolutely no sense. When a legitimate customer has to suffer more inconvenience, frustration, or worse -- degraded content quality -- because of our anti-piracy mechanisms, they will turn to circumvention and non-legitimate sources for our content. The more they have to do this, the more familiar and comfortable they will be with doing so in the future.<br /><br />We must always strive for a quality user experience at all levels -- including access to our content, installation of our content, and day-to-day use of our content. Remember: Our customers are the ones who <I>paid</I> for our content. We need to take good care of them, and let them know that we appreciate their business.Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com3tag:blogger.com,1999:blog-15434765.post-55083661091266637612007-12-12T15:53:00.000-06:002007-12-12T16:09:50.383-06:00Merriam-Webster 2007 Word of the Year: w00tIn a nod to the power of gaming in modern culture, Merriam-Webster has chosen "w00t" as their <A HREF="http://www.m-w.com/info/07words.htm">2007 Word of the Year</A>. While I'm not especially fond of l33t (and, in fact, tend to use the number-free spelling of the word), I am thrilled that "w00t" beat out the alleged verb, "facebook." Personally, I feel embarassed for all eight people who submitted (largely differing) definitions for "facebook," and I think that they should be damned to a special hell where they must spend the rest of eternity listening to conference lectures by Web 2.0 evangelists.Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com0tag:blogger.com,1999:blog-15434765.post-5572481723410935002007-09-21T15:01:00.000-06:002007-09-21T16:58:33.522-06:00Dear Open Source Projects...If you run the main webpage for a piece of open source software, there should be a very clear, concsise explanation of what that software is on the front page, prominently displayed, where anyone can find it. I appreciate that a lot of open source developers like to maintain a development blog on the front page. That's fine. But, there should be <span style="font-style:italic;">something</span> on that page that immediately indicates to a newcomer what on earth she has found. Release notes aren't of much use to someone who has never touched your software before.<br /><br /><H2>Some Good</H2><br /><br />The first text on the <A HREF="http://www.mozilla.org/firefox">Firefox webpage</A> is:<br /><BLOCKQUOTE>"The award-winning Web browser is now faster, more secure, and fully customizable to your online life. With Firefox 2, we’ve added powerful new features that make your online experience even better"</BLOCKQUOTE><br />That's not great, because it assumes previous exposure to the product, but at least I can figure out what Firefox is, from that sentence. <B>B</B><br /><br />The first text on the <A HREF="http://www.gimp.org/">GIMP</A> website is:<br /><BLOCKQUOTE>"GIMP is the GNU Image Manipulation Program. It is a freely distributed piece of software for such tasks as photo retouching, image composition and image authoring. It works on many operating systems, in many languages."</BLOCKQUOTE><br />That's excellent, except it should probably include a link for "GNU," since that assumes knowledge that a naive reader may not have. <B>B+</B><br /><br />How about <A HREF="http://www.blender.org/">Blender</A>:<br /><BLOCKQUOTE>"Blender is the free open source 3D content creation suite, available for all major operating systems under the <A HREF="http://www.blender.org/tutorials-help/faq/gpl-for-artists/">GNU General Public License</A>."</BLOCKQUOTE><br />That's great. It concisely explains what the product is, and also links to a FAQ about the GPL specifically tailored to their would-be-users. <B>A</B>.<br /><br />As for <A HREF="http://audacity.sourceforge.net/">Audacity</A>:<br /><BLOCKQUOTE><B>The Free, Cross-Platform Sound Editor</B><BR>Audacity is free, open source software for recording and editing sounds. It is available for Mac OS X, Microsoft Windows, GNU/Linux, and other operating systems. <A HREF="http://audacity.sourceforge.net/about/">Learn more about Audacity...</A></BLOCKQUOTE><br />Flawless victory! <B>A+</B><br /><br /><H2>Some Bad</H2><br /><br /><A HREF="http://www.bugzilla.org/">Bugzilla</A>:<br /><BLOCKQUOTE>"Bugzilla is server software designed to help you manage software development."</BLOCKQUOTE><br />That's pretty damn vague. Luckily, they follow this up with a "More about..." link. <B>C+</B><br /><br />What about <A HREF="http://www.jmonkeyengine.com/">jMonkeyEngine</A>:<br /><BLOCKQUOTE>"jMonkeyEngine 1.0 release candidate 1 has been released."</BLOCKQUOTE><br />This means absolutely nothing to a new would-be user. I have to hunt around for a "What is jME?" link to figure out what this software is. <B>D</B><br /><br /><A HREF="http://www.yafray.org/">Yafray</A>:<br />There is nothing but news, here. There are many links to other areas, but none of them link to an "About," or a "What is..." section. If you look up on the title bar, you will see "Free Raytracing for the masses - Y A F R A Y . O R G." Okay, so it's a raytracer. And it's free. But, is that "<A HREF="http://www.gnu.org/copyleft/gpl.html">free</A>" as in <A HREF="http://en.wikipedia.org/wiki/Stallman">Stallman</A>, "<A HREF="http://www.opensource.org/licenses/bsd-license.php">free</A>" as in <A HREF="http://www.freebsd.org/">FreeBSD</A>, "<A HREF="http://www.legendsofamerica.com/photos-RMGS-product/Free%20Beer%20Sign.jpg">free</A>" as in <A HREF="http://beerrecipes.org/">beer</A>, "free" as in <A HREF="http://www.cdc.gov/">free love</A>, or "free" as in <A HREF="http://www.youtube.com/watch?v=QVImeWXWck0">Aretha Franklin</A>? (Freedom is so very complicated, these days.) <B>D-</B><br /><br /><br />Let's look at <A HREF="http://gforge.org/">GForge</A>:<br /><BLOCKQUOTE><B>"GForge helps you manage the entire development life cycle</B><BR>GForge has tools to help your team collaborate, like message forums and mailing lists; tools to create and control access to Source Code Management repositories like CVS and Subversion. GForge automatically creates a repository and controls access to it depending on the role settings of the project."</BLOCKQUOTE><br />It slices, it dices, it even purees! But, what IS it? Maybe you can figure out what it is from the feature soup (It's a, uh, development lifecycle, uh, manager, uh, thingee, with, um, meta-revision-control management stuff. Or something.). Ah-hah, the title bar says that it's a "Collaborative Development Environment (CDE)." If only that were on the page! But, still, that doesn't quite express what it is very well. It's a software project-focused collaborative development environment, like SourceForge. (In fact, it was built upon a branch of the SourceForge codebase.) <B>C+</B><br /><br /><A HREF="http://www.xfig.org/">Xfig</A>:<br /><BLOCKQUOTE>"The purpose of this site is to provide a central Xfig repository for the diverse documentation and programs available on the web. All the components and libraries will be available at this site, in addition to Xfig drawings."</BLOCKQUOTE><br />So, that's what the website is for. But what about the program? <B>D-</B>Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com2tag:blogger.com,1999:blog-15434765.post-51576645947350585882007-09-12T16:13:00.000-06:002007-09-12T16:15:38.361-06:00The Care and Feeding of Game DesignersWe programmers like to think of most game design information as just data. Game design tools are just glorified data entry tools, when it comes down to it. Most of this stuff could be done in a good spreadsheet program. We like to think that as long as you provide all the means they need to put the data in the appropriate places <I>somehow</I>, it hardly matters what the path was like. This is a mistake.<br /><br />I discovered a few years ago that my writing -- regardless of whether it's fiction or nonfiction -- is drastically better when I type my words than it is when I write them on paper. The reason for this is because I type faster than I write, I can change my words with greater ease, and I am afforded a greater latitude for writing in a non-linear fashion, as it suits me. Ultimately, a text editor in a computer provides a better <I>flow</I> for me than pen-and-paper does. Because of that flow, I am able to produce better work.<br /><br />Game design is not just data entry. It's a creative process. It's like composing music. If the game designer has to spend a lot of time fighting with a clunky interface, it's going to disrupt her flow. She will produce less work, and it will be of lower quality. This lowers the quality of the resulting game, and reflects poorly on the entire team. We programmers should be providing opportunities for our team-mates to do the best work they possibly can. The tools we provide them should be a delight to use.<br /><br />Now, if only someone cared that much about the tools <I>I</I> have to use...Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com0tag:blogger.com,1999:blog-15434765.post-37816384162330382092007-04-19T18:20:00.000-06:002007-04-19T18:31:01.990-06:00Have two, they're small.Well, I must admit, I wasn't quite fair to Mr. Matthews, in this case. He not only got a clue, but he promptly turned around and tried to <A HREF="http://gamepolitics.com/2007/04/19/hardballs-chris-matthews-isnt-buying-what-thompson-is-selling-about-vtu-killer/">share it with Jack Thompson</A>.Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com4tag:blogger.com,1999:blog-15434765.post-8199300005632695182007-04-18T21:44:00.000-06:002007-04-18T22:31:08.022-06:00Digging in the DirtEarlier today, I listened to an <A HREF="http://video.msn.com/v/us/msnbc.htm?g=4f4e05e1-a9ea-4245-9c3d-704a438719a2&f=00&fg=copy">interview</A> between NBC's Chris Matthews and Karan Grewal, one of Cho Seung-Hui's apartment-mates. I was genuinely interested in what light Grewal could shed on the matters at hand, but unsurprisingly, Matthews was more interested in interrupting him, and pursuing his own agendas. Among other things, Matthews asked utterly irrelevant leading questions, in some kind of bizarre attempt to establish some kind of video game connection. I've provided a partial transcript, so you can see just how ridiculous this truly became:<br /><BLOCKQUOTE><br />Chris Matthews: Let me get into this video game thing. Do you know anything about Counter-Strike, as a video game?<br /><br />Karan Grewal: Yes.<br /><br />Chris Matthews: Was he into it?<br /><br />Karan Grewal: But I, I never saw him play any videogames on his computer. Most of the time, like I said, he just WROTE on his computer. He had a word document open, and he just kept on typing away for... sometimes, you know, I'd see him typing at ten o'clock in the morning, and I'd come back at twelve, and he would still be there.<br /></BLOCKQUOTE><br />They go on to talk about some other things, but Matthews inexplicably feels that it's necessary to bring up Counter-Strike again, for no apparent reason:<br /><BLOCKQUOTE><br />Chris Matthews: Let me ask you about... You have... Is there any culture at Virginia Tech about video games? Anything that guys talk about like video games like this Counter-Strike game?<br /><br />Karan Grewal: Well, there's a lot of, uh, tournaments that, that, uh, people do by themselves, but... uh, there's no formal club, uh...<br /><br />Chris Matthews: [interrupting] But what about the informal? The sub... Is there a SUBCULTURE around video games?<br /><br />Karan Grewal: Not really. Uh, people are... some people are interested in it, some are not. There's no big culture about any kind of violent games or anything, no.<br /><br />Chris Matthews: [interrupting] Let me ask you about...<br /><br />Karan Grewal: [finishing] Mostly sports, I would think.<br /><br />Chris Matthews: Mostly sports. So, mostly, if you talked about stuff, you'd talk about basketball, and stuff like that.<br /><br />Karan Grewal: Exactly.<br /></BLOCKQUOTE><br />What a pathetic fishing expedition, Mr. Matthews. When confronted with the ever-so-disappointing news that Cho was not a rabid video game addict, you were <I>determined</I> to beat that dead horse some more. As a card-carrying member of the dreaded <I>video game subculture</I> on the internet, I'd like to say, "Get a grip." Charles Joseph Whitman never played a single video game before picking up his gun. Sometimes, a psychotic is just a psychotic.Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com2tag:blogger.com,1999:blog-15434765.post-10355262500738622972007-04-16T20:42:00.000-06:002007-04-16T20:44:39.721-06:00Old CommentsNow that Blogger has improved their comment system somewhat, I've gone back to using their comment system. Rather than lose all the comments on my old posts, I've added an "Old Comments" link at the end of all posts that had comments on them. Happy posting!Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com0tag:blogger.com,1999:blog-15434765.post-15885344727389978762007-04-11T10:24:00.000-06:002007-04-16T20:41:31.297-06:00Bad CapchasOkay, I understand why we have capchas. I have come to accept that they're a reality of a web that has been destroyed by the unethical. But, I would really appreciate it if in our effort to keep up with the 'bots, we didn't make capchas so difficult to read that even large numbers of humans are failing the tests. I have, on multiple occasions, failed, when I thought I had the right answer. I have above average spatial skills, so I know I can't be the only one having problems with these things. <br /><br />Today, I finally had to say something about it, because I ran into this one:<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkhI7X2BPWZqONofsnIY8EskLGZ-WmJ7lhTKoaU_ZY1nEXkBG0CVW1WsO1VhzfYFf3r9xjvMKhPF8K_xDFRVn2D6vlA9e521-lfBMqgrQwqhdJTOex0-aZ7k-f7CdWyoh3oFIUuw/s1600-h/bad_capcha.jpg"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkhI7X2BPWZqONofsnIY8EskLGZ-WmJ7lhTKoaU_ZY1nEXkBG0CVW1WsO1VhzfYFf3r9xjvMKhPF8K_xDFRVn2D6vlA9e521-lfBMqgrQwqhdJTOex0-aZ7k-f7CdWyoh3oFIUuw/s200/bad_capcha.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5052208224250603346" /></a><br /><br />So, what, exactly <span style="font-weight:bold;">is</span> that second letter? An upside-down L?<br /><br /><A HREF="http://www.haloscan.com/comments/malkyne/1588534472738997876">Old Comments(2)</A>Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com4tag:blogger.com,1999:blog-15434765.post-30169646692043892732007-03-17T10:37:00.000-06:002007-04-16T20:38:34.377-06:00EULAs are BrokenWe need better end user license agreements.<br /><br />We, the users of software, understand the consequences of not reading EULAs. We all know we could be agreeing to some damn thing we find unpalatable, at best. Yet, who has budgeted time in her busy day to read 2953 words of dense legalese? (That's not even an exaggeration. That's the actual word count on the last EULA I saw.)<br /><br />This is legalese! Even when it is trying to convey a relatively simple idea, it's obnoxiously palaverous. Consider:<br /><BLOCKQUOTE>"If you do any of the foregoing on behalf of a company or organization, you represent and warrant that you have the requisite authority to bind such company or organization to the terms and conditions of this Agreement."</BLOCKQUOTE><br />That sounds pretty scary, but it's just another way of saying, "If you accept this EULA, you are claiming to have the authority to accept EULAs on behalf of your company." By the time you're done reading it, though, you're feeling like you need to call the company lawyer. Lawyers are good at keeping each other employed.<br /><br />I'm going to go out on a limb here, and say: I think the average English speaker lacks the literacy level to slog through one of these things and understand every minute bit of it. How can we reasonably expect her to legally consent to it? Moreover, what is the responsible thing for her to do, under these circumstances? Realistically speaking, she can't call a lawyer up to come over to her desk every time she's installing a piece of software.<br /><br />Worse, if we somehow miraculously manage to wade through and fully absorb a EULA once, for a given piece of software, some software forces us to agree to the EULA again, with every patch. We are neither told whether the EULA has changed since the last time we read it, nor given any way to do a diff, and see exactly what changes were made. Does Blizzard, for example, actually expect anyone to read the entire EULA from top to bottom (not to mention the Terms of Service), every single time we install a patch? I'd bet that not a single one of their 8 million subscribers has read the entirety of the EULA every time she agreed to it. This is not because the entire human race is irresponsible. It's because we have unreasonable expectations of them.<br /><br />I understand the value of legalese. That which is vague is open to interpretation. So, it is best to spell everything out in excruciating detail, so there is no room for doubt. Legalese is, in this way, like a programming language that just happens to use a vocabulary and grammar similar to natural language. Lawyers even reuse sections of legalese, like programmers reuse code, just passing in different values to the variables -- company name, date, etc. Over time, they tune, and tweak, and make contracts increasingly difficult to challenge. However, as this boilerplate text becomes more impervious to challenges, it also becomes increasingly impenetrable to the average reader. Honestly, I don't expect the general public to be able to wade through legalese any more than I expect them to be able to wade through my source code.<br /><br />We need to be more reasonable about what users can realistically consent to, while they are installing software. At the bare minimum, I think software publishers should provide a clear, concise "translation" of the EULA into plain language, for the convenience of those of us without law degrees.<br /><br />Some companies are starting to see the light. Microsoft has recently started adopting plain English EULAs. They're still too damn long, but it's better than legalese, at least. Have a gander at the new <A HREF="http://download.microsoft.com/documents/useterms/Windows Vista_Ultimate_English_36d0fe99-75e4-4875-8153-889cf5105718.pdf">Vista license</A>, for an example. (I hate PDFs, incidentally.)<br /><br />Here's a passage from the <A HREF="http://proprietary.clendons.co.nz/licenses/eula/windows98se-eula.htm">Windows 98 EULA</A>:<br /><BLOCKQUOTE><br />"NO OTHER WARRANTIES. To the maximum extent permitted by applicable law, Manufacturer and its suppliers disclaim all other representations, warranties, conditions or other terms, either express or implied, including, but not limited to implied warranties amd/or conditions of merchantability and fitness for a particular purpose, with regard to the SOFTWARE, the accompanying written materials, and any accompanying hardware. This limited warranty gives you specific legal rights. You may have others which vary from state/jurisdiction to state/jurisdiction."<br /></BLOCKQUOTE><br />Woah nelly. Check out that run-on sentence near the top (and middle, and halfway through the bottom). I'd hate to have to diagram it. It's the kind of sentence that just makes you want to put hot sauce in the underwear of the guy who wrote it.<br /><br />Compare that to the equivalent passage from the Vista EULA:<br /><BLOCKQUOTE><br />"NO OTHER WARRANTIES. The limited warranty is the only direct warranty from Microsoft. Microsoft gives no other express warranties, guarantees or conditions. Where allowed by your local laws, Microsoft excludes implied warranties of merchantability, fitness for a particular purpose and non-infringement. If your local laws give you any implied warranties, guarantees or conditions, despite this exclusion, your remedies are described in the Remedy for Breach of Warranty clause above, to the extent permitted by your local laws."<br /></BLOCKQUOTE><br /><br />Well, it's not great, but it's a breath of fresh air, compared to the other one.<br /><br /><A HREF="http://www.haloscan.com/comments/malkyne/3016964669204389273">Old Comments</A>Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com0tag:blogger.com,1999:blog-15434765.post-2967655338563721952007-03-17T10:04:00.000-06:002007-03-17T10:34:57.733-06:00Signal to NoiseIt would be fair to say that I've been to a lot of conferences. My first game industry related conference was CGDC 1998 (back before GDC took the "Computer" off the front of their name). So, I guess that makes it 9 years now I've been attending (and sometimes even speaking at) industry conferences, on two continents. I reckon I'm entitled to an opinion or three.<br /><br />I have a big beef, but it is, in most cases, not with the conferences, themselves. No, my beef is with the myriad parties that inevitably pop up at these events. Don't get me wrong -- I'm grateful for the parties. I'm an extrovert, and I love a good party, honestly. I've had some fun times.<br /><br />Now, I'm going to make a radical statement, which would seem to defy the expectations of every party organizer who has ever organized a single party attached to any of these conferences: Most people come to these parties to <I>talk</I>. Yeah, I know, geeks aren't supposed to be social, but it's true. You look around at any of these parties, and people are <I>talking</I>. Or, at least, they're trying to.<br /><br />You see, the trouble is that it feels like most of these parties have been organized for 21-year-old club kids from Amsterdam, only with less drugs.<br /><br />Now, dear party organizers, you should understand: I love dancing. I was dancing at industrial clubs when DJ WhoeverTheHellYouHired was learning his ABCs. I was at illegal raves under bridges, back before the US club scene discovered techno. I have even been known to dance at some of these conference parties -- but I must tell you, it's because it was too goddamn loud to talk to anyone, and I was honestly getting rather bored.<br /><br />I have seen parties where every single person at the party was trying to shout over the music, and inexplicably, someone <I>turned up the volume</I>. Why? This makes no sense! I have seen friends and colleagues lose their voices from these events. I have heard people complain of their ears ringing after leaving a conference party. Ears ringing! That's <I>hearing damage</I>, people. I'm sorry, but your party is not worth anyone permanently damaging their hearing.<br /><br />So, I'm making a plea: Turn the music the hell down. Stop making us miserable. Pay attention to your party-goers, and what their needs are. If we want to talk, then by all means, let us talk.Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com0tag:blogger.com,1999:blog-15434765.post-71789114736346702492007-01-31T23:10:00.000-06:002007-04-16T20:37:18.475-06:00Geek LoveFor those of you who still use vi/vim on the Windows platform, hang on to your hats. I know you're used to nothing ever changing, but there is, in fact, news. There's a <A HREF="http://cream.sourceforge.net/index.html">new, less ugly user interface</A> available for your old favorite text editor.<br /><br />Yes, I know, user interfaces are superfluous. Yes, I know, you don't even know what those silly icons at the top of your vim window are for, and you can't even remember the last time you actually used one of the menus. Yet, I do have to recommend the upgrade. Check out the <A HREF="http://cream.sourceforge.net/featurelist.html">feature list</A>. Macro recording! My God, we are marching boldly into the 1980s here, my friends. If you love vim, you should have a looksee. I'm taking it for a spin, myself.<br /><br /><A HREF="http://www.haloscan.com/comments/malkyne/7178911473634670249">Old Comments</A>Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com0tag:blogger.com,1999:blog-15434765.post-60423708092708276452007-01-04T11:27:00.000-06:002007-01-04T11:32:49.888-06:00Screenplay WorkshopThis may be of interest to designers and other writers in the Austin area:<br /><br />An film-maker acquaintance of mine runs a <A HREF="http://www.thescreenplayworkshop.org/free.html">free screenplay workshop</A>. Game developers are welcome. I'll be at the one on January 13th.Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com0tag:blogger.com,1999:blog-15434765.post-30857062087933205102007-01-03T15:01:00.000-06:002007-04-16T20:35:54.360-06:00I Hate MemesSara at <a href="http://www.lietcam.com/blog/">We Can Fix That with Data</a> has tagged me for the ubiquitous 5-things-you-don't-know-about-me meme, probably as some sort of sinister plot to try to get me to stop ignoring this blog. (As some of you have noticed, I keep another one elsewhere, which is updated more frequently, but it's more personal, lifey stuff.)<br /><br />I admit, it's hard to think of things that people don't know about me. I tend to talk about bloody everything, if you get me started. But I'll try my best:<br /><br />1.) <span style="font-weight: bold;">I find it almost impossible to listen to lectures</span> -- I zone out after about five minutes, tops. I once took an astronomy course with no textbook. Instead of going to class, I went to the library, and studied every book I could find related to the items on the syllabus. It was honestly easier for me to absorb the information that way than it would have been for me to sit through the lectures.<br /><br />2.) <span style="font-weight: bold;">I hate learning new games</span> -- This is one of those things that becomes gradually apparent to anyone who hangs out with me long enough. This holds true of board games, card games, and video games. No matter how fun something looks, I find it frustrating learning the new button combos, or the obscure rules, or the meanings of all the various pieces and symbols. My well-meaning friends will try to explain everything, but #1 comes into play, and I miss half of what they're saying.<br /><br />3.) <span style="font-weight: bold;">I once won a talent contest</span> -- When I was 10, I won a talent contest at my elementary school. I sang the theme song to "Flashdance." Is that embarrassing enough for you?<br /><br />4.) <span style="font-weight: bold;">I was originally an Electrical Engineering major</span> -- I thought they'd let me tinker. Instead, I spent two years solving circuit equations, and doing dull math. Boring!<br /><br />5.) <span style="font-weight: bold;">I've helped out with the Special Olympics before</span> -- Pin the Tail on the Donkey has never been this riveting.<br /><br />I don't tag anyone. I hate memes.<br /><br /><A HREF="http://www.haloscan.com/comments/malkyne/3085706208793320510">Old Comments</A>Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com0tag:blogger.com,1999:blog-15434765.post-1151632368478175502006-06-29T19:22:00.000-06:002007-04-16T20:30:46.096-06:00No Rest for the WickedI don't post anywhere NEAR often enough to be putting plugs for anything in, but I have some good friends who have started up a <A HREF="http://www.evilhat.com/">small pen-and-paper game biz</A>, and I couldn't resist putting in a word or two. I'm really looking forward to their <A HREF="http://www.dresdenfilesrpg.com/">Dresden Files RPG</A> (based on <A HREF="http://www.jim-butcher.com/">Jim Butcher</A>'s <A HREF="http://www.jim-butcher.com/books/dresden/">Dresden Files</A> novels), but in the meantime, they have just released a new product, and have yet <A HREF="http://www.evilhat.com/spirit/">another one</A> on the way.<br /><br />Their new offering, <A HREF="http://www.evilhat.com/?dryh">Dont Rest Your Head</A> is a game for those of you who complain that generic systems are what killed pen-and-paper gaming. This is an all-custom system, heavily integrated into the game's theme. The concept behind the game is that the player characters are all insomniacs, and that their sleep deprivation has allowed them to see things that other people can't -- while also making them vulnerable to sinister elements that couldn't reach them before. This is a good game for folks who appreciate <A HREF="http://www.grant-morrison.com/">Grant Morrison</A>, or <A HREF="http://www.neilgaiman.com/">Neil Gaiman</A>'s <I>Neverwhere</I>, or heck -- anyone who just likes unusual original game systems.<br /><br /><A HREF="http://www.haloscan.com/comments/malkyne/115163236847817550">Old Comments</A>Anonymoushttp://www.blogger.com/profile/18163213862433540221noreply@blogger.com0