Thursday, December 11, 2008

The State of the Industry, in Three Images

Dunno if I like Kotaku's new look yet, but they certainly haven't lost their gift for perfect imagery alongside their news:

Have a look.

Monday, November 24, 2008

YouTube Vids of Older Stuff

Took me long enough, but I've finally gotten around to uploading some video of Melody's Musette and Rabbit-Proof Fencing, two projects that comprised the majority of my work back at ETC-Adelaide.

Melody's Musette is a game whose core concept is synchronicity, tying the music and gameplay events together. Rabbit-Proof Fencing is a humorous look at introduced species in Australia. Puns abound.

Both of these games were made with Panda3D.

I've embedded them below, or you can simply head to my YouTube channel to check them out.

Melody's Musette Stage Two Gameplay


Melody's Musette Stage Three Gameplay


Rabbit-Proof Fencing, Full Game

Sunday, November 02, 2008

Panda3D Macintosh Install Script

Nutshell: Click here to download a Python script to install Panda3D from scratch. Read on for more deets.

Panda3D is a great game engine, especially for rapid-prototyping, but for Mac users it can be a bit frustrating being a second-class citizen. While independent developers are creating very useful distributions (like Hypnos's awesome p3dapp) there are no official builds, and installing from source is no easy task.

Edalytical's very helpful guide, Building Panda3D in OS X Leopard, has fallen out of date. Using it as a base, I've created a Python script that will install Panda3D from source, and can even download and install Panda3D's two major dependencies, MacPorts and the Cg Toolkit. Its only dependency is Leopard Developer Tools (you know, Xcode and the like).

Simply download the script from the Game Sketching project's downloads page. By default, it will download/compile/install Panda3D. You can add the options +macports and +cg to download/install those dependencies. See the source or read below for the usage info:

pandaAutoInstall.py [noex] [(+|-)option]
option is one of 'uninstall', 'download', 'compile', 'remove', 'test', 'macports', 'cg', 'announce'
To install everything: pandaAutoInstall.py +all
To just install Panda3D: pandaAutoInstall.py
To uninstall: pandaAutoInstall.py +uninstall


Bug reports, positive/negative feedback and success/failure stories are welcome!

Sunday, October 19, 2008

Yahoo Nukes Everyone's Profile

Oh now this is cool, Yahoo! has seen fit to reformat everyone's profiles, but in the transition has reset every last one of them to totally, unabashedly blank.

What really impresses me is that Yahoo's statement about the botched transition acknowledges that they could retrieve your data, but politely decline to do so unless you force it by going through their general tech support gauntlet.

Not much else to say here. Basically, if you want an example of how not to transition your user base to a new version of your platform, check out the new Yahoo.

Sunday, October 12, 2008

The Order of the Day

Spinaci e Formaggio Cheddar in Carrozza
  • 3 Eggs
  • Four large slices of bread
  • Four slices of horseradish cheddar
  • Baby spinach, washed
  • Spicy, dry sausage (sopressata works well)
  • Extras: butter, salt, turbinado, garlic powder
Beat three eggs, combining with a dash of salt and teaspoon of both turbinado and garlic powder. Pour into a wide, shallow dish. Heat a large skillet to medium heat, and add butter.

Soak both sides of the bread slices in the egg wash, then place in the skillet. Flip the bread only once the underside is golden brown; don't regularly flip them.

As the other side cooks, lay horseradish cheddar onto the cooked bread. Once the other side of the bread is cooked, remove from skillet, and add sopressata and spinach to taste. Place one slice of bread onto the other, in what is commonly known as a "sandwich" formation.

Makes two sandwiches.

Tuesday, September 16, 2008

iPhone SDK 2.1 Doesn't Include iPod touch 2.1 Firmware

If you, like me, have gotten an iPod touch and anxiously installed the new iPhone SDK to scratch your iPhone development itch, you may be disappointed when you start up Xcode and get the unhelpful message:

Unable to locate a suitable developer disk image. Reinstall the iPhone SDK.


And, maybe you do reinstall it, but the message persists. Aaand, when you compile your software, you get a CodeSign error:

No certificate found in keychain for code signing identity 'iPhone Developer'


The problem is that the huuuuuge iPhone SDK 2.1 installer doesn't come with the iPod touch 2.1 firmware image. Suck. Fear not, though: All you have to do is force iTunes to do a firmware restore, which will download the appropriate image. On next launch, Xcode will find it and everything will work great.

Thursday, September 11, 2008

Swype's Cool Touchscreen Typing System

Check out this video of startup Swype demoing their new touchscreen typing system. Point at the first letter, and "connect the dots" to each subsequent letter.

The glorious moment in this video is when the guy effortlessly spells "Mississippi" in the space of one second.

Apparently this guy is the/a developer of T9 input as well. The guy knows his stuff, I'd say. The sooner this is present on touchscreen devices, the better.

Friday, July 25, 2008

In Memory of Randy Pausch

Not having met the man, there's not a lot I can say. But Carnegie Mellon ETC co-founder Randy Pausch passed away today. He's had a long, spirited fight with pancreatic cancer, and gave a rather rousing "last lecture" at CMU last year.

You'll find nary a soul that didn't view Randy as a charismatic, intelligent, cheerful guy. Rest in peace, Randy. As Brian Transeau says, see you on the other side.

Here are some good related links.
Randy's Wikipedia page
The Last Lecture

Sunday, July 06, 2008

Using Flip Ultra Video Without Bundled Software

Macworld has a review of what seems to be a pretty cool little digital camcorder, the Flip Ultra. Small, point-and-shoot, USB. Very easy to grok. One caveat is that it encodes its videos with the 3ivx encoder, so you "need" to install the software that comes with it.

If you'd rather just use your QuickTime-enabled software (like, say, iMovie) to edit your Flip Ultra software without ever installing some OEM piece of software, check out Perian. As you can see here at their supported formats page, it rolls an open-source 3ivx encoder into Quicktime. No fuss at all.

Of course, Macworld didn't seem to have any problems with the built-in software, but why install yet another transient video program when you can just keep Perian up-to-date and support all of those formats at once?

Friday, July 04, 2008

Great Design Alongside Batman Hopes

Oh hai. Happy Independence Day, fellow Yanks.

I just got done reading Scenes from a Franchise, a piece on the upcoming Batman sequel, The Dark Knight. Includes fun excerpts from NY Times reviews of old Batman movies, as well as a hopeful wish that Batman Begins won't be the only good Batman movie.

More striking than the writing itself, however, is the design of the site. It looks like a tax form, or a technical manual, but I just can't stop exploring it. This site is a dream to navigate, with nothing more than succinct, monochrome precision. Very cool.

Wednesday, June 25, 2008

Projects I'm Working On

Well, now that I'm off of school for the summer, I should be updating more. Even so, the projects I'm working on aren't showing a lot of progress, so there's not much to report on that front. And since I don't want to write one of "those blogs" that just regurgitates the latest from Engadget/Ars/Slashdot, posts just aren't going to be coming as regularly as I want them to.

I will, however, talk a bit right now about what I'm working on. Currently, I've got three projects in the works, all of which I hope to release before starting my new job in late July. First on the agenda is a redesign of Khakionion.com, my long-outdated website. I'll be getting rid of all that nasty table-based layout and creating a nice, clean, sensible website that will make getting my productions much easier.

Next is MTPCopy, an Automator action that will make copying music files to your non-iPod device in OS X a snap. I'm not one for those jukebox-style solutions like XNJB. I hope my approach will be much simpler.

Last, I'm hoping to allocate my Panda3D experience towards a 2D platformer, which I'm working on with my quite-talented sister, who's responsible for the art and character design.

That's what's up, hopefully you'll be seeing some fresh productivity out of me soon!

Friday, May 30, 2008

HTTP Codes for More Efficient Whining

Someone on Facebook posted an article by The Beijinger about a rock festival being cancelled by the Chinese government. I was entertained when I got a unique 403 by following the Facebook link:
We have identified that you have been refered here by a known or supposed spammer.

Yeah, something tells me they didn't work very hard on the supposing part. It also shows up when following it from my site.
If you are actually doing referer spam, please note that this website/b2evolution no longer records and publishes referers. Not even legitimate ones! While we understand it was fun for you guys while it lasted, please understand our servers cannot take the load of all this cumulated spam any longer... Thank you.

Seems like quite the over-emotional IT staff. Anyway, like the plea for attention said, publishing your referers enables link spam. So...don't. or use rel="nofollow" on your referral links. But don't abuse the 403 error codes to complain about how you had to disable spam.

Wednesday, May 28, 2008

Google/Address Book Syncing--Just iPhone Advertisement

So, over at the Google Mac blog, they've announced the ability to sync Google contacts. With what? Well with Address Book, of course. Yes, Address Book, that system-wide service/application with iCal, Safari and Mail.app integration. It's an important piece of software to many Mac users, so you can see why it'd be useful to sync with your Google contacts.

Oh, did I mention it only works if you have an iPhone?

This is what a slap in the face looks like.

See that bottom checkbox? "Synchronize with Google?" The feature works like a charm, or so I'm told. I wouldn't know, because that simple little checkbox (which surely doesn't require any sort of iPhone software to work properly) just flat out does not appear unless that Mac has been synced in the past with an iPhone.

Quoth the Google Mac blog entry: "We hope this helps you keep a little more of your information organized and easy to find, at any place and time you need it." Sorry, guys, you fail it.

Update: Looks like you need an iPod of some sort, not just an iPod. See this Lifehacker post for details and info on how to get around this mind-numbingly stupid restriction.

Saturday, May 10, 2008

Nihongo Benkyou: Kanji Invaders

Over the past few weeks I've been throwing together some JavaScript to make myself a Japanese language study-game. If you've ever played Letter Invaders-type games, you'll catch onto this one pretty fast.

It's (unimaginatively) called Kanji Invaders, and is a JavaScript application which runs on IE 6.0+, Firefox and Safari. The objective is to type the readings for randomly-selected falling Japanese words before they reach the bottom of the screen. If you can't read Kanji, all words convert themselves to Hiragana as they fall. When you successfully type a word, the definition is given down at the bottom. You can even specify which particular words you want to see; for now, the only types I have are JLPT (Japanese Language Proficiency Test) classifications.

To play, simply type the romaji for each falling word! I initially chose this method because I had problems with Firefox recognizing Japanese input methods. Since then, though, I've come to the realization that most keyboards (even in Japan) are being used Romaji style, so I've stuck with it. By supporting romaji exclusively, Kanji Invaders works on virtually all Japanese and English computers.

Current feature ideas: An online scoreboard. Better intensity rise/fall. Automagically-downloadable version without an advert (though it's already pretty easy to download). More graphical special effects. Music/SFX.

Currently known issues: sometimes typing a word that has appeared twice will cause both instances to go away. I've fixed it and will upload a new version soon.

Since Kanji Invaders' Japanese input processing is home-brewed, let me know if a particular romaji-ism that you use doesn't work on Kanji Invaders. Other bug reports/feature ideas are very welcome. The code is free for you to take and do what you like with, but I'd appreciate attribution if you simply make a Kanji Invaders fork. I'm regularly improving this app, and will keep the latest version available at http://kanji.khakionion.com for your perusal.

Have fun studying, and ganbatte!

Thursday, April 24, 2008

Command-Line Panda3D

Here's a neat tip worth pointing out: because Panda3D works in Python, and Python has a relatively robust command-line mode, you have a powerful realtime debugging tool in the form of command-line Panda. It's not really hard, you just may not realize it's possible. Open up a Python prompt, then run these lines:

from pandac.PandaModules import *
from direct.showbase.DirectObject import DirectObject
import direct.directbase.DirectStart

That should be enough to get a window up and running. As you test more and more things out, remember you'll probably have to call the run() function every now and then to get tasks to run, do some extended interaction or that sort of thing. While Panda3D is actually "running," you won't have the command-line available.

When you want to pause the system and do more debugging, simply raise a KeyboardInterrupt exception, and Panda3D will freeze and return control to the command-line. You may want to write a module that does all of this for you, like, say:

from pandac.PandaModules import *
from direct.showbase.DirectObject import DirectObject
import direct.directbase.DirectStart
class debugObj(DirectObject):
 def __init__(self):
  self.accept("space",self.interruptPanda) #any unused event, really
 def interruptPanda(self):
  raise KeyboardInterrupt()


Woohoo, now you can load modules and run Panda3D stuff to your heart's content, with the ability to freeze execution and evaluate variables at any moment.

Saturday, March 08, 2008

Nihongo Benkyou: The Nintendo DS

Being a more-than-full-time student here in Japan, it's hard to find regular, dedicated time for studying Japanese. Nonetheless, it's a very important part of my time here, so any tools that make the process easier are quite welcome.

Enter the Genius Kanji Sonomama Rakubiki Jiten, a Nintendo-developed electronic dictionary for the Nintendo DS. Since it takes advantage of the DS stylus for written kanji recognition, the student of Japanese can look up words whose readings they don't yet know.

This has been my primary method of deciphering Japanese text "in the field" while living in Osaka. There are some drawbacks, but if you already own a DS the roughly 4000 yen price tag makes it an obvious choice. I've linked to The Japan Times' review, but if you want to buy it, here's a direct link to Play Asia's product page.

Thursday, January 10, 2008

AppleScripts to Toggle the Microphone

I'm nice and busy here in Osaka, but not too busy to see this infuriating "answer" on Yahoo, about how to mute a MacBook microphone:
Unfortunately that's quite impossible to do on a Mac. I've tried looking for a solution, but there was never an answer. I got tired of my Mac, and bought a Sony Vaio instead. They actually work, and are actually quality computers.
What the hell is wrong with people? And it was an accepted answer? Well, for some reason I can't post a new answer, so let me just say; a simple AppleScript (which I've written, and have available right here) can toggle the MacBook's onboard microphone. If you need it bound to a key, free programs like GlobalHotkey have you covered.

Don't like the way the AppleScript works? Just open it in Script Editor.

Stupid Yahoo Answers. I should be studying Kanji. :)