Friday, January 25, 2013

1 Hitpoint Game: More Details!

8x8 play space. The bottom squiggles show the latest things that have happened ("Picked up 10 coins; defeated a skeleton and lost 40 courage; found the seal!). Right side displays HP (ALWAYS -1), Courage/Max Courage, XP (leveling up adds to your max courage, and XP comes from beating enemies) and Money. The squiggled-out section will be there after all - they're your usable items, click to use them. Equip won't be there, you'll automatically equip the most powerful flashlight), Shop allows you to open the shop screen and buy new goodies any time!

Okay, so to keep true to not liking the idea of people actually getting hurt, battle works like this: enemies are scared of light, since they've lived in the dark for so long. You, as the ghost, are easily scared (people live in harmony in this crazy realm, after all, and so you aren't a fan of being scared).

Enemies have HP and Frightfulness, the player has Courage and Light (from their flashlight and any possible artifacts they might have).

Let's say that enemy skeleton has 200 HP and 10 Frightfulness, and the player has an Everlasting Glowstick (50 light). The amount the player gets scared is simple --> (Enemy HP/Player Light) [rounded up] * Enemy Frightfulness. In this case, the player would lose 40 courage.

This is NOT turn based, it happens in a snap whenever the enemy is found.

And HERE is a list of all the goodies in the game!

Flashlights
(Start With) Everlasting Glowstick --> 50 light
(Buy Only) Mini Flashlight --> 100 light
(Buy Only) Standard Flashlight --> 150 light
(Buy Only) LED Flashlight --> 200 light
(Buy Only) Lantern --> 250 light
(Find Only) Portable Sun --> 350 light

Items
(Find Only) Light Bomb: Clears a 4x4 area, scaring off all enemies in that space
(Find/Buy) Confidence from Concentrate: Grants up to 100 courage
(Find/Buy) Serenity Now, In a Can: Grants up to 250 courage
(Find/Buy) Insta-Courage: Grants up to 500 courage

Artifacts
(Find Only) Disco Ball: Colored lights clear 8 random squares at the start of each floor
(Find Only) Bravery Badge: +15% courage
(Find Only) Metal Detector: All money is displayed immediately on each floor
(Find Only) Attachable Laser Pointer: +75 light
(Find Only) Headlamp: +175 light
(Find Only) Attachable Magnifying Lens: Adds 50% of the flashlight's light score
(Find Only) Seal Seeker, Alpha Version: Picks four locations that MIGHT be the seal. puts question marks on the squares
(Buy Only) Seal Seeker, Newest Version: Reduces the possible locations to two, MUST HAVE Seal Seeker, Alpha Version first

Enemies still need to be added, and I'm sure some of that will change, but there it is!

#1GAMCRUNCH - The REAL Theme & My Concept

So apparently "Loose" wasn't the theme, the lead was simply saying that the theme was being let loose and being posted. I didn't get to it til after 6 (over an hour after the competition began), but I've got my idea down now (about 35 mins later)

Theme: "1 Hit Point"

The competition actually has two themes "1 Hit Point" and "Golden Gun". Technically the two are very similar; the golden gun is infamous from James Bond, and in Goldeneye, the Golden Gun would kill any (bosses even? Dunno) with one hit, thus technically acting as if they had 1 Hit Point.

I am skipping the gun because I don't really like the idea of shooting one another, particularly with the violence in video games issue heating up so badly!

You play as a ghost, making your way back to the realm of the living. Between you and the exit, though, are 50 floors of terror. You must make your way through each, finding treasure, collecting money and treasure, finding bonuses and the seal on each floor that will allow you to ascend one floor higher.

Why 1 Hit Point? Because, as a dead being, a ghost has negative hit points, and is "passed out" at zero. If you can get through all 50 floors, you'll become a living being once more, with 1 Hit Point (barely alive, but ALIVE!).

Game Play

Each floor is an 8x8 grid , with every square shrouded in shadow except for the one you start in. As you take a step, you find out what's in the new space... If it's a treasure, money or a story page (note: story pages probably won't make their way into the game in 48 hours), you simply collect it. Seals allow you to travel to the next floor, bonuses let you play a little bonus game of some sort, and enemies begin a battle.

Bonuses: Bonuses are little bonus games (note: maybe just one in such a short amount of time). You get extra treasure or money from them!

Treasures: Equipment can be bought at stores at any moment in the game (ghosts can travel anywhere, since they're ghosts and all, it's just the seals that keep them away from living again), but they can also be found! Equipment includes sheets (armor), weapons and artifacts that do special things (reveal x random squares, automatically jump to the next floor, etc)

Story Pages: Who, or what, are you? Why do you want to go back to the land of the living so badly? How did you die? What is this place? You'll find out!

Battle: Ghosts are fine and dandy, happy with one another, as long as they don't try to escape... But these 50 floors are guarded by all sorts of enemies. They'll be as much of a surprise to you as they are to me at this stage, but they'll be there! I'm not quite sure how battles will be handled yet, it's the one thing I haven't really figured out... But it's not even an hour in for me yet, I'll come up with something :)

#1GAMCRUNCH Theme is "Loose"

So, every time I do a game jam that involves a theme that isn't given til the last minute, there's always this shred of confidence that the theme will be something awesome that will speak to me and give me a super genius idea. The second I see the theme, that hope is typically crushed, and replaced by "Well, I can always do 'whatever'..."

Loose? Really? Gangstas with loose pants? A puzzle game where you knock down loose objects on threads?

Dictionary.com defines "loose" as...

adjective
1.
free or released from fastening or attachment: a loose end.
2.
free from anything that binds or restrains; unfettered: loose cats prowling around in alleyways at night.
3.
uncombined, as a chemical element.
4.
not bound together: to wear one's hair loose.
5.
not put up in a package or other container: loose mushrooms.


But then it also defines it as...

verb (used with object)
20.
to let loose; free from bonds or restraint.
21.
to release, as from constraint, obligation, or penalty.
22.
Chiefly Nautical to set free from fastening or attachment: to loose a boat from its moorings.
23.
to unfasten, undo, or untie, as a bond, fetter, or knot.
24.
to shoot; discharge; let fly: to loose missiles at the invaders.


So maybe that's where it'll work... Loosen ships to let them shoot enemies? Or, more likely, to fire arrows or missiles or throwing stars or who knows what?

And THEN there's even...

verb (used without object)
27.
to let go a hold.
28.
to hoist anchor; get under way.
29.
to shoot or let fly an arrow, bullet, etc. (often followed by off  ): to loose off at a flock of ducks.


To be even more specific about shooting! And also about hoisting anchor!

So now I'm brainstorming ideas about shooting something at something. 24 minutes down, here goes nothin'!

Thursday, January 24, 2013

How to Kick Game Jam Buttocks!

Someone partaking in the #1GAMCrunch that I just followed on Twitter (@dreamwinterlab) wrote this article on Surviving a Game Jam. It gave me the idea to write up the lessons I've learned partaking in several as well!

Note that the jams I refer to in this post are all 48-72 hour competitions where a theme is given when the counter begins, and are done "alone" from home. I say "alone" because Angel still helps with coming up with ideas and stuff, but the development is completely done by me. Also note that I'm in the Eastern time zone in the US for times

Pre-Jam

Every jam I've ever taken part in began late at night. The #1GAMCrunch begins at 5pm, and Ludum Dares begin at 9pm (I think? Maybe 10, I forget). Because they begin so late at night, it's easy to think about waking up as late as possible in the day to get lots of work done right away, and I did try that in the past... But DON'T DO IT! Seriously! In most cases, the competition begins at the same time as it ends, so if it begins at 9pm on Friday, it ends at 9pm Sunday or Monday. If you wake up at 2pm and you normally don't, you're going to screw up your sleep pattern AND on the last day, you'll only have from about 2-9pm. In my experience, the last day is the most vital; it's when you wrap things up and fix the last few things that you can. I've never sat there in the last couple hours or so and said 'hey, I'm done, sweet!' It's always 'DOH! I still need to balance these levels out a bit, test some more, fix up some graphics...'

Finally, within the 24 hours or so before the jam, take some time off! Relax, watch some movies, play some video games... In fact, check out other game jam games that did well, play those! They're usually very short so you can play lots and see what they did, and they're usually very diverse in genre/graphics/gameplay, so it'll give your brain lots of ideas as well!

The Announcing of the Theme

So, the time has officially begin, the theme is announced. Wait, what's the theme again?? How the heck am I gonna make a game out of that? Oh I know, I'll make [whatever] with it, that'll be easy!

STOP! Before you run with that idea, how cliche is it? If you Google the basic concept, how many thousands of versions of that game will there be?

For me, pretty much EVERY theme announcement goes like this (seriously, like 75% of the time!):
  1. Wait, what? I'm never going to come up with something for that!
  2. Got it! I'll just make a 'catch the falling [whatever] as a [whatever]', that fits perfectly!
  3. No wait, I've already half-made three of those... How about I take this one awesome idea I've had for years and make a short demo of part of it, that'd fit!
  4. Nah, I don't want to half-make another game, I want a full game, and that game would take at least a few weeks to make!
  5. [after about an hour and a half of staring at a blank notebook] (said out loud so Angel hears it) "Geez, coming up with an idea for [theme] is tough!"
  6. Angel: Why not make a game like [whatever]. Me: [part] would take too long and I've never done it.
  7. About half an hour later, with discussion, a great concept is found!
What's the point? Talk to someone! Discussion with someone you can trust, who won't make you feel stupid and who likes games is the most important thing you can do to come up with an idea! I've never done it with someone online, but I'd imagine that would work just as well, perhaps a little slower since you can't sketch things out and just show it to them without scanning, and typing is usually slightly slower than verbal speech.

Making Your Game

Work work work! No breaks, no sleep, no TV, no cooking, no going anywhere; live on energy drinks, sugar cubes and whatever you can shove down your throat while still working with your other hand.

Sounds slightly extreme, but we've all been there... "Geez, there are only 36 hours left after sleeping and getting my idea, I have to make every second count". You're right, but not the way you think. Read the article I linked to at the beginning for much more detail on this, but my way is:

FOOD AND DRINK: Energy drink in the morning. I'm addicted to caffeine; soda will keep the headaches away, but energy drinks help me wake up a bit more (like coffee!). I ONLY drink the one, though... After that, it's alternating soda and water. Snacks are fine, but I don't eat any differently than a normal day. I still spend time eating dinner, I still get away from the laptop for a while to help make lunch and breakfast.

BREAKS: Take em! Some people say every hour, some say every couple hours, or every half hour... I take breaks when it makes sense to me: after finishing the menu, after completing something tricky, etc. Nothing throws me off more than working on the first 10 functions that make the basics of the game work, juggling variable names and all in a notepad file, then having to take a break in the middle of it.

SLEEP: DO IT! Seriously! I need lots of sleep to function properly myself... I can work all 48 hours of the competition if I really want to, but the last 28 hours or so are going to be garbage. When I'm awake and can focus, I do work about 10 times faster than when I'm sleepy, and it's much easier to create needless bugs when you're sleepy by misspelling something. MAKE SURE TO KEEP A NOTEBOOK, PEN AND LIGHT SOURCE NEAR YOU WHILE YOU SLEEP! Especially during a time like this, all sorts of awesomeness will come to you while you try to sleep, while you sleep and the minute you wake up. You really need to be able to write these down or you'll lose clarity of the idea, or the idea altogether! I suggest doing this every night, but particularly during a jam.

MAJOR BUGS: During every single jam, at one point I've run across some kind of major bug. It makes absolutely no sense that it exists and no matter what I do, it won't work properly. Just like any other bug, give it some time to try to fix it, but if you can't within, say, half an hour... Turn off the computer and walk away for a while. Take a shower, go for a walk, play a game, watch a TV show, whatever. I seriously had a bug during one game jam that I spent HOURS trying to fix late at night; I gave up, shut the laptop off and went to sleep. In the morning, when I woke up, the game worked fine. Computers can be really weird sometimes, and Flash is no exception :)

VERSION CONTROL: Regardless of what you use to make your game, once you have it functioning, save it as something different and leave it alone ("AwesomeGame-WORKS"). Once you add a feature and it works for sure, do it again ("AwesomeGame2-AddedLevel2"). Do this EVERY time, especially as time is running out; you never know when you'll add something that randomly breaks the whole game that can be fixed with a half hour of bug hunting, but you only have 20 mins left. Also, you never know when some sort of personal emergency will come up. Sure, you have plenty of time, but maybe some sort of emergency happens where you're gone for a while and now you're not sure if you can fix everything up to where the game is playable again.

Summary

There it is! That's how I kick some rear end, and I hope that it helps you do the same! Here's a quick summary:
  • Keep your current, consistent sleep pattern going; don't throw it way off just to have more hours awake at the beginning.
  • Take time off before the jam if you can, you're going to need it!
  • Talk to your equally-significant other, a friend or loved one about the theme. Bounce ideas back and forth, and don't go for something too cliche or too complex.
  • Eat and sleep like you normally would; a reward of some kind of special snack, drink, etc is fine, but don't live on sugar or caffeine the whole time!
  • Take breaks when they make sense to you, your body, mind and fingers will thank you!
  • Sleep! Keep a notebook and pen within easy reach for any thoughts.
  • Step away for a while if you get stuck, it's better than randomly messing with things til something works.
  • Save different versions of the game as you go, so that you don't accidentally break everything and have nothing to go back to late in the competition, or if some sort of emergency comes up.
And, above all, just have fun and be proud of yourself! Even if you end up in last place, even if your game isn't terribly fun, or is partially broken, or anything else... You made it through and you learned a LOT in a short period of time! Be proud of yourself for your accomplishments!

Monday, January 14, 2013

Hangman: Memorable Media Development

Because I'm still sick and having focus issues, as well as because I know I won't get Rubberkid completely done before the end of January, I've decided to work on a hangman game for now. It should be done, at the very latest, by the end of this week. It takes a couple days to have the ads added and such, so you can expect to play it by the 21st (barring any major issues!) I'm editing my hangman game into a more enjoyable experience by adding unlockable topics, ensuring that the same phrase is never played twice by the same player and changing the fonts up.

Today wasn't too bad... I managed to edit the framework to remove the ability to choose a topic (the game will always do the "mix em all up"), added saving (so that the player can come back any time and keep their topics unlocked), added the "don't play the same phrase more than once ever" and managed to do all of that without ruining all of the code due to my focus issues!

What's left? I need to add the topics screen, add the little popups that show what topics were unlocked per round (I really want to make it so that the player never goes more than 2 or 3 rounds without unlocking something) and then the actual topics/phrases/hints/facts for each.

Goals:

  1. Get a list of all of the topics to unlock. Some of these will fall under the same "topic"; example: "video game characters" might be the topic, but different sub-topics may be unlocked, such as "Final Fantasy Characters", "Legend of Zelda Characters", etc. This way, when playing the game, it isn't super obvious what the topic is, but it gives the player lots of fun stuff to look forward to unlocking. 
  2. Figure out what order they'll be unlocked in.
  3. Set up the "Topics" screen. This includes the little icons for each and the descriptions of how to unlock each.
  4. Create the phrase lists. Phrase/hint/fact required for each. At LEAST 15 per topic, many more in some.
  5. Create the code to display when a round ends to check for new unlocked topics and letting the player see they've unlocked it. Also need to add the Save Game function to this code.
  6. TEST TOPIC UNLOCKING!!!!
Steps 1-3 I should be able to do tomorrow, leaving Wednesday and Thursday for step 4. Steps 5&6 should be Friday goals, and then I'm all set!!! And, in case you think I'm missing a step... No, the game won't have audio :)

Wednesday, January 9, 2013

Kickstarter Postmortem: The Adventures of Rubberkid

The image that graced the top of the KS.
The "Get Extra Bonuses the SAME DAY!"
was added later on in the project, but I
didn't save the image separately. Oops!
For those not familiar, The Adventures of Rubberkid ran on Kickstarter from November 30th-December 30th, 2013 and had a goal of $750, primarily to raise funds for promotion and getting discs to libraries and schools, but also to pay for music and sound effects.

It's a video game, of course; more specifically, it's a video game for elementary-school kids that aims to fight bullying. The entire time the campaign ran, there was a playable version of the game available that had five of the nine total levels, although music/SFX/pausing were not in the game, and additional graphical touches still needed to be added.

I actually started off writing this like a standard postmortem (what went right/what went wrong), but really it makes much more sense to explain a Kickstarter in the two main pieces that make up a campaign.

Planning and Formation

With The Adventures of Rubberkid, I decided to use Kickstarter. I tried an IndieGogo campaign in the past that failed pretty hard, but I blame that on a bunch of different things and it would take just as long to go into all of that. The point is, I probably would have used IndieGogo instead if I hadn't tried it before since they accept Paypal as well, and you can set it to take whatever money is collected whether the campaign succeeds or not. I went with Kickstarter because I hadn't tried it yet, because it's the most popular (especially with the people I know!) and because a part of me was sure that a game about bullying would end up in the Staff Pick section at one point or another.

With my platform chosen, I did research about it. As of the time of writing, you can estimate roughly 10% of your total pledge amount will be sucked up by Kickstarter and Amazon Payments (which handles the credit card processing, and most importantly, paying YOU!), and another 20% will go toward fulfilling backer rewards.

As much of my spreadsheet as I could screenshot. The higher
amounts really aren't vital to show anyway.

I spent two solid days coming up with the spreadsheet to the left with the goal of ensuring the all-important 80% earning per reward tier. As you can see, it dips down quite a bit in the $40-$90 level, and my rewards were rather tame by most standards! Above all else, I'd say to keep this in mind.


Let's say that you need $7,500 for your project. If you don't pad your goals and set your goal at $7,500, even if you end up majorly succeeding and hitting $10,000, it's very possible you'll STILL end up below your original goal when all is said and done due to fees and reward fulfillment!

ONE OF THE BIGGEST THINGS I FACED WITH THIS CAMPAIGN WAS THAT THE GAME ITSELF COULDN'T BE A REWARD! The Adventures of Rubberkid is a free game. Seriously, let that sink in for a minute... Go check out 10 random video game projects. Heck, go check out ANY 10 random projects! Odds are, at least 9 of them include a reward level that gives you whatever they're making.
With a free game, that's not possible!

Promotion

Like I said before, when I started my campaign, I felt that it would become a staff pick for sure at one point or another. I also figured that it would get lots and lots of pledges since it's a free, noble game, despite how simple it is, just because of the topic it covers and how unique it is in that manner. I thought that, if I started it up and gave it a good push start (a week of promotion, maybe two, tops!) then I'd have time to work on the game, update it for everyone with new levels, and that'd bring even more attention to it! Plus, then the game would be mostly done by the time the campaign ended!

Ha ha ha... I'm funny sometimes!

Funding Referrers! One of many awesome pieces of data Kickstarter gives you to use the entire campaign
It never got above the tip of page three of the most popular in the video games category (which means that, even if someone clicked "games", then "video games", it was #30 at its peak, putting it in the 10th column from the top). Oh, and if that isn't enough to convince you that Kickstarter itself really didn't help it out, why not just look at that image above? The green-shaded lines are through Kickstarter... Of the $821 raised, not even 10% came from Kickstarter sources. Also, according to most everything I had read, the "48 hour email" is typically a pretty huge factor, but you'll see how untrue that was in this case. I'm thinking that's because I did post about it so frequently, but I can't be sure.

The ENTIRE 31 days of the campaign were spent promoting. Not just on Facebook but everywhere... I used various sources to find "mom blogs", as families are my target audience; I hit up all of the gaming news media I could find (thanks PixelProspector!); I spent a day pitching to libraries when Technorati (blog database) was down; I wrote to local media; hit up facebook groups, some celebrities (why not, right?), and when it got really close to time I wrote to individuals on Facebook (friends and family). Those last minute messages did NOT focus on asking for pledges, especially since it had already crossed the line into "successful"... These messages were to simply let people know what I was up to and ask them to pass the message on, since the game will need help getting to as many families as possible.

Also, and I cannot express this enough: DO. NOT. SPAM! When I posted in groups, I made sure to focus only on groups that made sense (game developer forums, but ONLY ones that had a "tell us what you're up to" area; groups focused on bullying, and I always expressed my thanks for letting me post, and letting them know I'm sorry if they considered it spammy and to delete it if so with my sincerest apologies).

The top portion of my OpenOffice Calc spreadsheet. You didn't think I'd screenshot actual websites and info, did you?

It is VITAL that you keep a database, in whatever way works best for you, so that you can update throughout as well. I updated twice throughout, and having a database made it easy to do so; plus, each time I updated, a couple more people wrote articles! I began each email with something like "I'm updating you on The Adventures of Rubberkid, a project I wrote to you about a few weeks ago that deals with fighting bullying" etc. I would also add the most relevant info at the bottom, whether I'd sent it before or not. Spam filters, people being busy with the holidays or simply not being interested at the time can lead to people not reading emails, and I'm certainly not going to force them to search for old emails!

While I won't show you any examples of my database beyond the header of it there, it should give you a good idea. I type the website in, without the www (so, for example, "TheCritterverse.com"), the contact method can be either their email address or their contact form URL, and then the contact name is pretty straightforward. In the blue, I keep each game as I pitch in a separate column, and when I write to someone, I put that in the column. So if I emailed someone about Rubberkid today, I'd put "Emailed 1/9/13 5:35pm". If, say, that person contacted back, I'd put "Contacted back 1/9/13 [said whatever]", and then if they wrote an article I'd put the URL to the article and highlight the square green. If they write and say they're not interested, I put that and change it red. This way, with future updates, I can sort that column and easily update.

Additional Info/Advice

  • If you're running a low-goal campaign like I did, keep in mind that any campaign with a goal under $750 that runs 30 days or less ends up in an additional area - "Small Projects". I would have been a part of that and could have told you what happened with it, but I didn't realize it had to be 30 days or less... Mine was 31... *sigh*
  • Most every crowdsourcing advice page states that you should promote ahead of time. It's difficult to do that, though, since you don't have a URL until it begins. My suggestion would be to do a lot of almost-promoting before starting. Get your press release written, plan out some days with some special promotional stuff to get extra eyeballs, prepare your email and contact form text, create your database, get it running well, save LOTS of email drafts so you can just hit "send" when it begins... And let friends and family know ahead of time, so that when the day hits, you'll hopefully have some good pledges on day 1. Nothing hurts more than having $0 after a day, or two, or five...
  • Don't be afraid to change things as you go! Update, update, update!
  • Since my goal was lower, my total number of pledges was lower. I took advantage of every pledge to thank the person on Facebook, which then made for an excuse to promote the campaign again. I'd share the link, and then in the text I'd say something like, "Thanks so much for pledging to Rubberkid, [whoever]! Now we're up to [however much/% number]". With a lower goal, too, it was more often I could easily say "Only $20 away from 40%" or "Only $5 away from $200!" People LOVE to be the one to get you to hit that round number!
I realize this is a LOT of information, and that I'm really not the best at expressing data, especially with being sick this last week or so and the data being a bit cold in my mind again... But if you have any questions, please don't hesitate to write to me, comment below or reach me any other way!

Tuesday, January 8, 2013

Happy New Year!

Hello again everybody! I swear, every time I type "hello everybody", all I can think is...


Anyway, it's been a while since I blogged! In fact, I went back and checked and I haven't even posted anything about successfully finishing the Kickstarter! I'll keep all of this as short and entertaining as possible, I promise.

The Adventures of Rubberkid - Success!

The Adventures of Rubberkid ended up at $896 including Paypal contributions! Backers will receive all of their goodies by February (some of the digital things will come sooner, as they're completed, please be patient!). I will also be writing up a postmortem on it, and planned on doing it early in the year, but we've been fighting sickness since the year rolled over...

Also, you can still contribute any time between now and when the game is complete with Paypal and the stretch goals are still on the table!


New Year Goals

I've created a spreadsheet that covers all of my goals for the year, and this year I'll really be going over them thoroughly. Some of those things are a "To be list", and while it's short thus far, here are my "to be"s:

  • To be more efficient and successful with newsletters.
  • To use social media more, while remaining entertaining and on topic.
  • To become less reliant on caffeine!
  • To reflect upon myself more throughout the year through blogging and journaling.
  • To be more transparent in my development where possible.
I think the last couple are the most important to mention, because that's what the whole point of this blog is. I really want to give as much information as possible to anyone who would be interested in it, or is looking to become a game developer. 

There's also the One Game a Month challenge that McFunkypants is running! I very much plan on succeeding at making at least one game every month this year! 

Other goals include weight loss (I gained pretty much everything I lost, and I'm aiming at getting it back off!), becoming profitable with game development enough to self-sustain, growing my social media strength (Facebook likes, Twitter followers, Klout score), gain newsletter subscribers, get additional visitors, etc. Probably very similar to anyone who's overweight and runs an online business of any sort :)

When Asteroids Attack! - New Low Price

I've reduced the "original", not-on-sale price of When Asteroids Attack to $4.99 (from $9.99). Part of that transparency bit - the game isn't moving very well at all, so perhaps lowering the price will help. On CD, the game is now $11.99 (from $19.99), and that includes shipping, although it's available only in the continental U.S.

Happy New Year!!!!

See, that wasn't too painful, was it? You survived! Congrats! Here's to a super awesome year for everyone!