2007/11/21

Full of Fail

They say you shouldn't blog angry. You can add that to the long list of seemingly good advice that I don't heed.

So I've been in crunch for the last couple months which in general makes me crankier than normal. At some point in the last week or so I picked up the Supreme Commander expansion. You also might recall that I like Supreme Commander. It is, after all, being the spiritual succesor of one of my all-time favoritest games.

I verily took said expansion, installed it, ran it, patched it (multiple times) and for my $39.99 at that hive of scum and villainy otherwise known as Best Buy, I got this:

FULL OF FAIL

That's it. No indication of what's wrong in any kind of end-user-meaningful way. No clear recourse as to how to fix the issue whatsoever. Smashing. I'm going to guess that this has something to do with SecureROM. Ya know what? If my reward for buying the game is not being able to play it then maybe I shouldn't be buying your games! There's probably a workaround but the days of me having to fiddle around with that kind of shit should be way over. It isn't 1997 anymore.

Guys, I know software is hard, but would it be too much to let me play the game I just bought?

2007/11/20

Oh man...

Crap. Double crap.

So sad; I just bought one of these so I can't justify it (even to myself). But they're soooo coooool!

Stupid technology addiction.

2007/11/10

What You Should Know About Load Times

(cleverly abbreviated as WYSKALT)

If I have time to get pissed off and say "I can't help but notice that I'm not playing your game RIGHT NOW," then it means your load times suck and I'm probably wondering why I bought your game in the first place.

This seems bad!

Loading your game off media isn't rocket science. I'm going to assume that we're loading off some kind of disc with a 'c' media like in a console game rather than your hard drive like on your PC of choice. However, anything applied to optimize load times on disc-with-a-c will also optimize disk-as-in-hard-drive as well. I'm not going to cover everything with load times in this post, but this is the absolute bare minimum of stuff you need to know but I couldn't fit it in quite as catchy an acronym. There's lots more stuff that will make load times even better which I might rant about at a later date.

So at any rate, here we go.

Opening Files Sucks
Most times we don't notice this. Occasionally you run into something where you need to load N files which are kinda small but where N is something gigantic (like 1000). Then you notice--even if you have an uber fast machine. On this generation of console, N is usually on the order of thousands for a given level load for those who might be curious.

Fixing this is uber-easy: pack all your files into one giant uber-file so you only ever need to have one or at most a small number of file handles open. We often know of these as zips, wads, paks, pigs, etc. (The one I use for BEER is "keg". Clever, no?)

This makes load times suck less which is the goal. Sadly, they still suck.

Loading Non-Sequential Data Sucks
So now you've got your data all archived and it's time to load it. Surprise! It still takes a long time because you're constantly seeking around in your uber file. I can hear you smug Win32 people scoffing--but remember that your file mapping eats virtual address space and I know that since you're still using WinXP that you only get two gigs of VM. Ha!

This is pretty easy conceptually: stick all the data in your archive in order. The bad news is that depending on your particular data set and load time trickery, this might be really hard in practice. Chances are good that it leans toward the really hard side because you might only load some subset of your data and probably don't have a fixed order for it. If you can make your loading respect a fixed order then the problem moves pretty quickly to the easy side again.

I've found that in most cases the best we can hope for is that some subset can be made to lean toward "most" for fixed sequentiality. Sometimes you can change the loading code to do nicer things; sometimes you can't for <fill in the blank> reason that fits your situation. In either case you need to generate a sequence list for some set of your data then stick all the data in your archive in that order as best you can. Neither of these are particularly difficult assuming you have source code and enough time to do stuff and an archive builder that doesn't totally blow chunks.

Why does this work? Once file open issues are dealt with, seek time tends to be the dominant factor in unruly data sets. On discs-with-a-c, each seek is going to weigh in at roughly between 50 and 150 milliseconds depending on your particular hardware. So, if you're loading 10MB of data but seeking 100 times, your load bandwidth for that data can be no better than 1MB/s in the best case (assuming a flat 100ms/seek which is normal). If you try to load a gig of data with that bandwidth, then, well, I'll not be alone in returning your game.

So: if you can significantly reduce the number of seeks your game needs to do, you can significantly reduce the load time of your game. I've seen particularly poorly loading data sets extend the load time of a 100MB data set more than five minutes. For those in the audience reaching for calculators, that's a bandwidth of less than 1MB/3seconds. Glacial.

But Our Game Is On the Hard Drive!
Don't care. These will still make your loads better. Your seeks are still on the order of 8ms and your bandwidth isn't free. Wait till your users start fragmenting the crap out out their drives. Galactic Civilizations is a reasonably fun game but its load times are absolutely brutal. Why? Tons of tiny files none of which seem to be in easy-to-load formats just sittin' there on the disk. Lots of games are like this for the PC and it's a damned shame.

Oh! You did that for your modders, did you? Guess what; you can still put most of your stuff in order in archive. You can even give modders your packing tools so their stuff loads fast too! Sure, you have to design for it but you're already designing extra stuff in for modders, right?

Odds, Ends, and Disclaimers
As mentioned atop, this is the bare minimum you need to know about load times. There are lots of other things you can optimize to make your loads suck less but I'll save that for another rant.

This has been a public service announcement paid for in part by the "Your Game Loads Too Slowly" foundation of Maryland and made possible by viewers like you!

2007/11/03

Script-fu

Not terribly long ago, I was a self-proclaimed scripting hater. "Oh sure," I said, "You can do some neat stuff in script-land with your not-real languages and your dynamic types. But wow, my C++ can do all of that and uber-more!" Yeah. So it's time to fess up and admit that I might have, ever so slightly, been somewhat mistaken on some 'a that.

I've had this completely irrational thing for Ruby for, oh, about a year now which mostly manifested itself as not doing Ruby. This (irrational thing for Ruby) is mostly the fault of the blogosphere, notably one Steve Yegge who, despite often being somewhat long winded with a propensity for ten cent words and compilers, is also quite often terribly amusing and a lot of the time spot on. He's got loads of stuff trumpeting the awesome that is Ruby. So I bought a book and read some online tutorials and then got a new job and moved cross country and got tied up in godawful amounts of stuff that's not ruby and wow is that a pretty laptop I should totally get one of those while not doing Ruby.

I used to know perl in much the same way that most people who knew (past tense) perl once did. That is to say, I have absolutely no ability to do perl now because a) it's very obtuse, b) it looks like line noise, and c) it's so unbelievably obtuse that sane human beings flee in terror when confronted with it. Have I mentioned its obtusitude?* Some have described Ruby as "perl with the suck removed" and as I mentioned before, I have a thing for Ruby.

<yet another entry for the worst segue ever category>

I'm now in charge of making load times not suck on my current project. I'd built a couple tools to build giant archive files and to parse in-game spew to do various things that are reasonable and useful toward that goal. I'd built them in C++. This in and of itself is not odd since by and large, I'm a C++ programmer. What I did notice is how godawful difficult seemingly simple things are in C++. This also is not odd since by and large, I'd been noticing that on and off for the last, say, decade. So moving from "hey, I think I can fix our load times" to "holy sweet moby jebus, I have to fix our load times!" I decided that I needed better tools.

Enter Ruby, stage left.

So I used it in a real "have to get this crap working right now kind of situation...and it was good.

So now I gotta take back some of the mean things I said about scripting languages and the people who promote them. Uncle already. I may have been a bit hasty with all of that. Ruby has made the otherwise unbelievably daunting data mangling tasks I've got slightly less unbelievably daunting because now at my very fingertips I have the power to mangle data like never before! Data the world around, tremble before my gemstone inspired might!

I'll save some gory details and horribly contrived examples from Teh Real World(TM) for a later date. So, if you're like me and only really ever looked at your primary statically-typed language for solving all manner of problems, you might go and pick up a scripting language just cause. It might save you some unbelievably daunting.

*obtusitude is not a real word. I made that up, honest.

2007/11/01

HL2

One of the (many) things I missed out on during my two year long stint in WoW is Half Life 2. Despite being told how uber-awesome it is, I never got it since at the time I didn't have enough machine to really play it. So beta for the Orange Box rolls around and my co-workers are playing TF2 and I hop on the bandwagon...just in time for them to lose interest (bastards). TF2 is plenty of fun on its own but it also gave me a chance to catch up on otherwise missed gaming (brilliant move by the Valve guys).

I wasn't prepared. Half Life 2 rocked my socks. There are definitely things about it that I didn't like but overall I thought it was an excellent game. Add to that the two free-to-me episodes 1 and 2 and it ended up being even more excellent. I missed the whole "better than sliced bread" launch so I had to judge it on its own merits and I still think it's by far the best single player game I've played in the better part of two years.

If you missed this one, aren't totally put off by jumping puzzles, and enjoy a good action FPS, I highly recommend it. Can't wait for Ep3.

2007/10/04

Random or Not?

Here's a not-quite-hypothetical problem: you have a fixed size graph and want to arrange N points on that graph in a random manner. You could use such a thing for lots of different stuff not limited to distributing player positions on a map, etc.

So how do you do it? Feel free to code along at home.

Totally random.
First try: completely random. We'll just use our good friend rand() with some "proper" seed to choose X and Y values and mod them into the map space. Smashing. If you do that, it looks something like those on the left.

I saw the results and wondered where my bug was cause that sure as crap doesn't look random. Hint: there was no bug.

Small influence circles.
Hokay. Welp, I don't want those points to be within N distance of one another where N is something I can calculate easily because, er, I want it to run fast (not because I'm lazy--no not that at all).

Closer...

If you were looking for a point, you may have just found it: when I say random in this particular context, really mean evenly distributed rather than really random. In fact, truly random is not what I want at all.

Final results.
On the left here are my final results after a mess of hacky heuristics. It's not the prettiest code but it seems to give good results on every map I've generated and it has a calculable upper bound on computation time. As a final step not shown here, I jitter each position inside the grid line so even points that are on the same row or column on the grid appear a little less regular (left as an exercise for the reader).

Now, I freely admit that I'm one to run off and code something because a) I figure I might learn something, b) I need the practice, and c) I reall like coding. Try as I might I was unable to find a better solution than the hackery I came up with. Apparently my google-fu is not as righteous as I thought. I'm pretty convinced that there's some crazy technique to do this in like 3.47 instructions on a 68020 or whatever but I sure as crap can't find it. If anyone knows of one, let me know.

(If anyone wants the code, just ask.)

2007/10/01

A Year of BEER

Programming is pretty cool. It's one of the only disciplines where the tools are made of the same stuff the products are. In fact, the only other one I can name is blacksmithing and really, it's best that I don't try that one.

BEER
As of a couple weeks ago, the BEER engine is officially a year old. Sadly, I didn't notice until I went to update numbers for September. A good 35,000 lines and more than 200 hours later, I have to say that it's everything I wanted it to be and more. It's hard to say in objective terms how much I've learned in this endeavor and the (so far) three projects it's enabled, but I can say without hesitation that it's been a substantial amount.

2007/09/17

I Like Oats

If you take the oat, the whole oat, and take off the hull but leave the bran on and don't process it any further, you have a groat. When I eat groats I usually toast them in a little butter then simmer for at least 30 minutes. These are good but chewy and take a while to cook. They're good but take a lot of effort, sort of like brown rice. I hear they're good in haggis too, but I'm far too chicken to try one.

Scotch oats, Irish oats, or pinhead oats are what you get when you take a groat, remove the bran, then send it through steel cutters. These are also called steel cut oats. I love these: toast in butter until they smell nutty, then simmer for a while adding salt and cream at the end. What you get if you do this is a pretty awesome hot porridge which I think is pretty magical--tasty, kinda chewy, with a nice creamy texture even if you don't add dairy.

Take the same groats, remove the bran (usually), then mash 'em flat and you have rolled oats or "old fashioned" oats which is typically what we think of when someone says "oats". You can cook them in the microwave but they've lost the awesome; convenient but iffy. If I have to, this is what I buy when I want oats and can't find any steel cut oats or don't have the time to cook them (say, at work). These are great for things like oatmeal cookies and granola which I almost always make myself because it's a) dirt cheap, b) kinda fun, and c)I have a nut allergy.

"Can you process them more? Well, sure!"--Alton Brown

"Quick oats" are those that are cut, par-cooked, then mashed even flatter. They blow away in a stiff wind. They cook in a tiny fraction of the time, like a couple minutes of nukeage. They don't get nutty. They don't get creamy. They don't, in fact, taste all that good at all, these "instant oats". I'm not sure they're terribly good for much of anything beyond being convenient. I hate these and almost never buy them.

I almost never buy them. In an attempt to eat healthier, I bought a big carton of Quaker Oats. Guess which kind I got.

2007/09/11

Free Software

I'm always on the lookout for stuff that will make my computing experience better. And Lo! I have found not one, but two such things in times recent.

The first, is paint.net which is a wonderfully full featured image editor. It reminds me a lot of an ancient program I used to use called PhotoFinish crossed with an equally ancient version of Photoshop (3.0). It does layers and has an unlimited command history. Want the source code? BAM. How bout a blog with details of the development and business side? Got that too.

If only I'd known about this before I'd shelled big cashmoney for CSR2. MS Paint quakes in its boots in mortal terror.

The other one is ToDoList which is exactly what you might expect from a program of that name. As it turns out, this kind of thing is pretty rare in the software wild for whatever reason. This one has all manner of sorting and searching and you can set recurring tasks and priorities and all 'a that. It's swank. The only downside is that you'll need codeproject.com logins. Goodness lives here.

I'm using this to track features, bugs, and development of my home projects as well as tasks at work. And for those of you playing buzzword bingo: it stores its files as XML.

2007/09/04

Beyond the Big Bang

Spacetime. Nuts, isn't it? One thing, not two. You've probably heard of the guy who came up with this.

The History Channel seems to be at the end of it's series
The Universe, which is both fascinating and well written. If you have more than a passing interest in this kind of stuff, I highly recommend this series (yes, I just bought it).

2007/08/31

Technology Gone Horribly, Horribly Wrong

From my inbox:
As someone who has purchased or rated books by OpenGL Architecture Review Board, you might like to know that Red Letters: Living a Faith That Bleeds will be released on September 1, 2007. You can pre-order yours at a savings of $2.80 by following the link below.

I could be missing something here. I'm not properly caffeinated yet (yeah, it's Friday, give me a break already), but I gotta say: W. T. F.

I got this from Amazon. Amazon?!

Book DescriptionIn many Bibles, Christ's words are set apart with a red font. It should be obvious, but this distinction helps remind us that when God becomes Man and that Man speaks it's probably something we cannot afford to miss.

I can't make this shit up.

2007/08/09

Elements of Computing Style

Usual disclaimers apply here: I'm not an authority on, well, anything, so take away what you will from any of my postings.

I also fully realize that not everyone is a computer enthusiast of the same 7th dan that I am. I always expect to have specialized machines around to do whatever nefarious bidding I require and use specialization as a reason (excuse if you prefer) to have a bunch of machines around. So with that as a setup, I have to say that I vastly prefer small laptops. Or notebooks. Some people prefer "notebooks". Feel free to do the appropriate mental substitution. There's just something magnificent about a machine that you can take with you.

Aeronauts, Unite!
One Andy Carra is particularly more responsible for my views on laptops than most. He introduced me to this machine. Yeah, I know that it's far more en vogue to use a pop can for scale but, I, um, didn't have one. Luckily, MacGuyver isn't my patron saint for nothin'.
Who sez a 486 can't be awesome?


This was before I really understood hardware or how to make it go. The Compaq Contura Aero is a 486sx 33MHz with a base 4MB of memory expandable to 20MB (max). It came with a 170MB or so hard drive, a proprietary PCMCI floppy drive, and a 7.8" 640x480 16 color passive display LCD. It weighs in at about 4 pounds with a footprint of 10.25" x 7.5" x 1.5". It's a thing of beauty.

It's surprisingly solid for such a small machine with a plastic shell. The trackball is tiny but still manages to be usable. The screen is compact but still readable. It has no internal fan so it's completely silent beyond the hard drive and the clicking of the keys. When you use it for a while and it starts to get warm, it has a very distinct odor--not an unpleasant one, but also not one that you'd expect to come from a computer. Most of the other Compaqs that I've encountered over the years have been junk, so I usually refer to the Aero as the "Greatest of the Compaqs". I don't think you can sum up in words what all makes the Aero cool, but if you sit down to use one, you know right away that it's a quality machine.

I bought one and modded it. It should be noted that the guts of the Aero were never intended to be mucked with by mere mortals. At some point I broke the infamous right hinge. For a short while anyway, I held the record for the biggest hard drive ever put into the tiny Aero (6GB circa about Y2K). I can't be mad at the guy who beat my "record" since he put up a kick-ass site about the Aero.

I still have this machine and it still works. It currently dual boots Win95 OSR2 and OpenBSD 2.8 (I think). Watch this space! for future hackeries with this, one of my favoritest machines.

Dark Sony Days
My first laptop was a godawfully heavy 13.3" Toshiba Satellite which I bought in grad school. It was (roughly) 12 pounds which doens't sound heavy unless you need to carry it around all day and with textbooks. With the right clutch of my Aero out and sans a battery that could run it for more than 15 minutes, I really really wanted another machine that I could take with me. At the time, and I did my homework for this one, the Thinkpads and the Vaios were the big names in subnotebooks. I bought a Vaio and it served me well. Specifically, a PCG R505DL boasting an at the time impressive 1GHz P3, 30GB hard drive, and 384MB of main memory. It's got a 12.1" 1024x768 passive display and sans docking station, weighs in at roughly 3 pounds.

I hate Sony, but make an exception for their subnotebooks.  Or laptops.
This Vaio is a lot larger than the Aero but at the time, I don't think that Sony sold a smaller one (10" screen) with the appropriate power for a reasonable sum. It's a very full featured machine with a single PCMCIA slot, a DVD/CDRW, a floppy drive, built in Ethernet, a couple USB ports, and a Sony memory stick slot that I've used exactly twice in seven years. The dock and battery can be hotswapped in Windows if you're so inclined.

For as sleek and thin as the machine is, it's amazingly solid. The corners don't give, and you don't have to baby it to move it around. The base with all its ports is nice for folks who want to leave the optional bits hooked up to a workstation and take the machine for strolls. The base itself isn't terribly heavy so if you want to take the entire thing on a trip, it's not a big deal. The keyboard is compact but not too tiny to type on effectively and has a really nice feel. As an interesting data point to that effect, I think I've written more code on my Vaio than on any other machine I've ever owned including two engines and probabaly seven games/prototypes/tech demos.

It's a good machine, and I'm a little sad to be retiring it. Except that it means I have a new machine.

Humanizing Technology
With the sale of my house in Wisconsin, and a burning desire to buy something cool, I bought one of these. It's 10.6" x 7.5" x 0.9" with an 11.1" 1366x768 display and weighs in at less than 4 pounds. It's a low voltage core 2 duo and currently has 1GB of ram and a 120GB hard drive. The memory upgrade is already on the way though I suspect it'll be a while before I try to replace the drive (solid state drives need to come down in price a bunch).

Stylish.  Portable.  Gawd, I sound like a marketer.
Now, I'll be the first one to say that I was skeptical about the leather binding thing as well as Asus' current marketing campaign, but I have to say that the S6Fm is a high quality machine and it really wouldn't seem as cool without it. They really went out of their way to make it exceptional and that's something I can definitely appreciate.

Given that there are exactly two machines that fit my specifications available right now, I think I made the right choice. I thought that the price was high until I received it and found that with the machine I also got:
- a high capacity battery in addition to the normal one
- a matching optical mouse
- a mess of accessories which are by no means necessary, but definitely very thoughtful of them to have included

It's light, solid, and reasonably powerful for its size. Everything is built in and modern. I've got very few complaints. Course, I did just buy it and I haven't really had a lot of time to get used to it either, but I'm happy to have found an appropriate spiritual successor to my beloved Aero.

More than a decade of computing excellence is displayed before you.

2007/08/01

One House Off the Market

In a stunning display of complete and utter ineptitude, my house is now officially off the market. I'll save up the ranty goodness for another day because right now, I hold in my hands a check the size of which I've only seen once (not coincidentally, when I sold my last home).

Like any good geek coming into a pile of money, visions such as these now fill my every waking moment.

2007/07/26

Hack: Impossible?

[insert theme music here]

Your mission, should you choose to accept it, is to hack the following upgrade card into a workable machine sizing less than a breadbox and drawing under 50 watts of power at idle. Said machine should be capable of running OpenBSD 4.1 as a server or WinXP.

The target: one Powerleap upgrade card. Model: PL-Renaissance/R370S fitted with a 256MB stick of PC-133 SDRAM and an Intel 733MHz Pentium III Coppermine processor.
ISA card...PC upgrade...you decide!

You have as much time as you need and a budget of $200. Beyond that, you may scrounge for parts around your workshop.

Good luck.

2007/07/17

Old Hardware

Most of the people who read here know me well enough that this isn't a surprise, but for everyone else out there: I have a problem with obsolete computer hardware.

The problem is that I seem to accumulate it at an alarming rate (i.e., greater than zero) and have a real hard time getting rid of it. Currently I own seventeen machines in various states of disrepair. The vast majority of those are functioning but without a real purpose. I never take a machine that I don't intend to use for some purpose of varying nefariousness and while I did use most of them, most of those uses are no longer necessary. That makes me sad, not in the least because I get bitten by the "must have new hardware" bug about every four months.

I don't think there's anything that depreciates in value quite like computer hardware except maybe automobiles and my stock options. Computer equipment just doesn't die that often if you take care of it. Oh sure, you'll have a hard drive or two die but for most parts just don't stop doin' they thang. Some of my (vast) collection I still have uses for but that leaves about a dozen machines I need to offload.

This is where y'all come in. I need help getting rid of these but I'm particular about where they should go. I don't want them in a landfill; I want them in the hands of someone who will put them to use doing whatever or at the very least recycled. So if you know of a good or even slightly disfunctional home that could use an old machine or three, drop me a line.

2007/07/11

Betterer Followup

Don't try this at home. Make sure you download the full version (about 30 megs) rather than just watching the preview.

And if you absolutely must watch it in crappy low rez, well, I feel for ya, but here ya go. You won't get a lot of the more subtle effects; just sayin'.

No hobbits were harmed in the making of this film.

2007/07/02

Bad Followup

As it turns out, I've been kind of busy lately, but not with anything that could have prevented me from posting something meaningful here. I just didn't know how to follow the last one. So here's a whirlwind update of what's gone on in the last two months.

Stuff:
- Looks like I'm finally selling my house in Madison
- I'm finally able to exercise my Activision stock options
- Got my fast machine in a proper case
- Playing Civ IV (for obvious reasons)
- Played Vanguard
- Played LOTRO

The last two are deserving of posts of their own which I'll leave for another day. The first two mean I don't have to eat ramen and mac&cheese every day (assuming all goes well, anyway).

Also: tasteh.

That is all.

2007/05/03

Thoughts of WoW

If you don't like long posts, you can stop reading now. It might get a little sappy in here: you have been warned.

I'm in the process of fixing, reinstalling, rearranging, etc. all my machines. On this particular machine (laptop) I found the WoW videos I'd downloaded seemingly ages ago. In the process of going through them deciding which to keep and which to toss, my thoughts were again drawn to far away Azeroth.

I played nigh unto religiously for a really, really long time but only now many months after calling it quits have I finally come to terms with it. At one point I changed servers to Greymane with a few good friends. We were kind of fed up with all the BS that goes along with dealing with people and just wanted to have fun again. At some point we got into PvP and did a whole lot of it.

This time around, I played a mage which is pretty atypical of me; I usually play tanks or healers and had just come off a year gig as a paladin (yeah, sorry). For those who haven't played WoW, mages can be kind of squishy and for a good spell in the 30s and 40s brackets, I had been having kind of crappy luck and really seriously considered rerolling or finally quitting for good. I mean, shit, it had been a year and a half and it's not like I didn't get my money's worth.

I don't remember where I found it (probably the uber-useless mage boards) but I found this video and everything changed. Cliche, but true. I mean, jeez, that guy rocked. He has some serious gear to be sure, and a build that's all about making highlight reels, but still--daaamn. I figured I'd never see that kind of gear ever (I was wrong) but if you could do that, then it was something to shoot for; something far beyond the doom and gloom of the mage boards.

I respecced, busted up to 49 and we hung out there for a good couple months and went pretty much undefeated. I even made a PvP video (I'd link it here, but FileFront isn't playing nice this evening). We met a lot of great people and had a mess of fun. And little did I know it at the time, but that was the platform upon which the rest of our success would be built.

HRG showin' the alliance how it be done

Me, Zura, and Vain were the last of the few that came from our previous server. If you look close, it's us three and a couple others in group 2. Despite my rantings and ravings and general malaise, they stuck with me (for better, I'd say). We did a lot of awesome things and got a lot further than anyone thought we would, myself included. These were the folks I counted on to stay sane when nothing was going right (pretty frequently, as I remember) and who sadly took most of the brunt of my bad calls (of which there were many).

This particular shot was just as we'd gotten some success in raiding; before it got too busy to PvP often. This was the second match we'd won after I dinged Exalted with the Defilers so I was sportin' some nice shoulders and an Ironbark: some of my first epics. Greymane was pretty godawfully one sided; if you smacked an alliance weenie real good, they'd just about rain epics like a goddamn pinata. It was terribly frustrating to lose because they had better gear which made our wins over such teams that much more satisfying. For months I'm sure I grated on folks nerves with: "What are those chumps gonna do when we start gettin' epics?" The above screenie contains the answer.

Me & Hypo doin' what mages do best:  kicking ass
This is me and Hypo kicking ass in AV. The thing to realize is that even though the horde in general had better PvPers, they almost never showed up to AV once they got their shineys and the alliance (in general) had way better gear. The end result is that we lost a lot--but we looked damn fine doing it. I owe the top part of whatever skill I had to Hypo since he always pushed me to play better than I really could. He's an uber mage; probably the best I ever played with. Favorite story: at one point he respecced to fire like I was when we were working through MC to up our raid DPS.

Our MT was so uber, Kia named a truck after him.
This is probably one of my favorite raid shots. We had our raid firsts of Ragnaros and Onyxia pretty close together which established our position of prominence on our server. What you can't see in that shot is how we struggled through personnel issues when we couldn't get 30 people together to do a big raid or doing Lucifron shorthanded with only two priests (sorry, but you kind of have to know that encounter for the significance of that to sink in). You don't see the hours of frustration as we wiped due to server lag or just plain bad luck or the infighting that eventually drove the group to split up after I'd gone. You don't see the blood sweat and tears that went into the organization or the flak that we took for "just a game".

In the end, you don't see a lot of things in that shot, but that's the HRG I remember, the one I led: mature, determined, unstoppable.

My days as a mage came and went--memories that I might not have had if I hadn't found that one video. I met a lot of great people, many of whom I'm still in touch with today. Maybe Azeroth isn't as far away as I thought.

2007/04/29

Hazards of the Infrequent

A long (long) time ago, I did 3D modelling. It was a long forgotten day when my 386 with its 16MB of system memory and 4.2GB of disk was a serious amount of computing power.
...in a galaxy far away...
By today's standards it's pretty weak, but in a day when hardware acceleration hadn't quite reached consumers it was pretty awesome.

Hazard: I have these stored in RD4 format (I upgraded). Nothing in the modern era seems to be able read these files. God knows that even if I had an install disk for the program that made those that it'd be a miracle to get a machine together that will even run it.

The good news: the files are in ASCII. The bad news: the format was written by a "real programmer" and is unintelligible. Yeah. Awesome.

Sooo....my options are looking like:
  • fiddle through the data to try to piece together the geometry
  • keep looking for something that can import them
  • rebuild the models from the source sketches assuming I can find them

    Woo.