Tales of the Rampant Coyote
Ye Olde Archives. Visit the new blog at http://www.rampantgames.com/blog/ - and use the following feed: http://rampantgames.com/blog/wp-rss2.php
Ye Olde Archives. Visit the new blog at http://www.rampantgames.com/blog/ - and use the following feed: http://rampantgames.com/blog/wp-rss2.php
Tuesday, January 31, 2006
Playing Lately: Go
I recently got hooked on playing (and watching) Go on an the "Pandanet" Internet Go Server. It's fun, it's free, and it's one of the most challenging and entertaining board games I've ever played.
For those not in the know, Go is to Asia what Chess is to Europe. Except Go is approximately a thousand years older. The rules are much simpler than chess. You play on a (usually) 19 x 19 square grid. You place stones on the intersection of lines on the grid. You alternate turns with the other player (one plays white stones, the other plays black). Your objective is to surround as much territory (empty grid intersections) by your stones as possible - well, more than your opponent. Once stones are placed on the grid, they don't move (unless captured).
Stones of the same color that are next to each other (horizontally or vertically) are connected and form an army. That army lives or dies TOGETHER. An army of stones is captured if it has no empty grid intersection next to any of its stones, and the captured stones are worth one point to the opponent at the end of the game (the same as surrounded empty grid intersections).
And that's pretty much the rules. There are some exceptions and special cases - like the rule of Ko which prevents players from going into an infinite loop alternating capturing of a single stone. But the rules are gloriously simple, yet infinitely tricky to master.
I was first introduced to Go in college. As part of a course in advanced Artificial Intelligence, we had to learn how to play Go, and write a program to play an intelligent game of Go. Part of our midterm and final grade was determined by pitting the student's Go-playing programs together in a tournament. The student who's program won the tournament got an A ... the second place winner got an A-, third place got a B+, and so on. It was a small class, and I think you were guaranteed at least a C if your program played a better-than-random game.
What makes Go so interesting for AI is that it's not as tractable to "brute force" searching as chess. In chess, there are only a handful of valid moves available in the mid-game, and most of those can be discarded early in a search as being "unproductive." (It's through a technique called "minimax" with Alpha-Beta pruning...) That allows the computer to "play" the game virtually several moves ahead, which is better than most players (and competitive, nowadays, with the grandmasters of the game).
On the other hand, in Go the search space is HUGE and it takes a long time for many moves to be clearly identified as "good" or "bad." The first move on the Go board has 19 x 19, or 361 possible moves. The second move has 360 possibilities. And so forth. So to exhaustively search four moves ahead from the very first move, that's 361 x 360 x 359 x 358 total moves that have to be evaluated.... almost 17 billion moves! So Go-playing programs have to use other, "fuzzier" tricks, and still can't play much better than a beginner.
So it's still a human-dominated sport. The bad news is, it's tough (especially here in the U.S.) to find someone who knows how to play Go and is willing to play. Naturally, the Internet comes to the rescue.
I actually played once while still in college (and the Internet Go Server was a "brand new thing.") It was still largely a TelNet operation - I don't know if I had a client program or not. I ended up playing a Korean. He even warned me of mistakes I was making in my game, but I couldn't see what I was doing wrong and made the mistakes anyway. Needless to say, he cleaned my clock.
So I guess it took me over a decade to get up the nerve to try it again. :) I still suck, and still get my clock cleaned when playing non-beginners. But the neat thing about the IGS and the client I'm using is that I can watch far-better players playing their games (including broadcasts of professional tournament games), participate in chat to kibbitz with other observers about the game (VERY helpful, as some players will explain why certain moves were made, etc.), and even call up a "trial" board of the current game in progress to experiment with various moves before committing. You can also save complete (or incomplete) games to play them back to study them.
This is nothing too spectacular for players who have been using Chess clients for a long time, I'm sure. But it's nifty, free entertainment :)
And now... here's the zinger.
I wonder if it would be possible to put together a similar "Go Playing" tournament for AI programs. Maybe using Python or something. Keep it all open-source. Players upload their AI, and it gets run on a server. The master program would have to use it's "best guess" to determine scoring at the end of the game (one of the OTHER problems with Go that doesn't exist in chess... it is hard for the computer to even determine the game's score accurately, let alone analyze a position...)
I'm WAY too pegged for time to do this anytime soon. But it's an interesting thought. Is there anything already like this out there?
Labels: Mainstream Games
Saturday, January 28, 2006
Fragging the Bad Bill
I alerted everyone I could about HB 0257, the proposed ammendment to the Utah "pornography" law (officially the "materials harmful to minors" law, though they have YET to find any kind of real link between videogame violence and long-term "real world" violence, though they have CERTAINLY tried). I e-mailed the representatives of Utah's House Judiciary Committee, and actually got responses from two of them (one was a form letter, the other was a very short note that she was also concerned about the bill).
Naturally, I didn't get an email from Rep. David Hogue, who is my district's rep., and who sponsored the bill.
The committee met on the bill while I was at work, but a friend of mine listened in on an Internet broadcast of the hearing. According to him, the Utah Retail Merchant's Association was there to complain bitterly about the bill. One of their points was that there is a 30-day MINIMUM jail sentence associated for violators of this law, which could happen JUST FOR advertising a game or movie in the newspapers, or displaying it on a rack. They also noted that the newspapers themselves could be in violation of the law for going into the details of a violent crime yet failing to report on the consequences (because the consequences haven't occured yet), OR they could be in violation for only reporting the consequences of a brutal crime.
Apparently they tried to salvage the bill at the last second by creating a quick-and-dirty ammendment (trying to get it passed so they could then QUIETLY re-ammend it later once it's already a law) by changing a bunch of "Or" clauses into "And" clauses - restricting the definition of what constitutes inappropriate violence.
The modified bill came EXTREMELY close to passing through the committee - it was a six-six split. Since the majority did not favor it, the bill could not pass out of the committee with recommendation, so it's pretty much dead. If it HAD passed, I guess it would have gone on to a general vote. But I think at this point it's dead-dead-dead. Until someone resurrects it under a new name and slightly different language.
The summary of the rise and fall of this incredibly bad bill can be found here:
I am just nervous about how close this bill came to actually passing through committee. Six committee members voted in favor of it.
Man, I've never been this political before. As I am also a part-time computer game developer, I look at everyday events in life and ask, "Could this be turned into a computer game?" So how about the whole process of getting a bill through city, state, or federal legislative process. Until it was something I cared about, the whole thing sounded dry as toast. But as the TV shows "The West Wing" and "Commander-In-Chief" have shown, the whole political and governmental process can be punched up to become nicely dramatic and juicy, full of backstabbing, spinning, wheeling, and dealing. There's disguising really crappy laws with all kinds of "pork" in them with titles and overall 'summaries' that sound really, really good to voters. It's a "Protection of Family Values" bill, or an "Election Reform" bill, when really it's a "Make More Exceptions To That Pesky Bill of Rights" bill that also grants congressman raises, forces the military to buy tanks from a factory in a sponsoring congressman's home district, and raises taxes in some minor way that they hope nobody will notice.
Would that be interesting fodder for a game?
Wednesday, January 25, 2006
Indies Squeezed Out of XBLA?
This was reported on joystiq - Greg Canessa, general manager of XBLA, now has this to say:
"As the business has grown, we now are swamped--completely swamped--with folks that want in Arcade, large publishers and small publishers alike .... the Capcoms, Namcos, Midways, Konamis, EAs--those types of guys were like, 'Yeah, maybe one or two titles.' Now they're coming out with us saying, 'oh, we wanna do 25 titles. We wanna do 20 titles. We're starting up a division to do arcade titles.' So we have a huge amount of opportunities from the large publishers. Not just back-catalog stuff... The retro stuff is part of it, but it's also new content they wanna develop for arcade..."
So the indies blazed the trail, won big. I don't know if anybody was expecting XBLA to be as huge of a success as it is turning out to be. So now the big publishers are ready to fight like a giant pack of starving dogs over a chunk of steak. The big winners will be the consumers, so I can't find fault with that aspect. But I do worry that the indies are going to get squeezed out of XBLA development. Harsh.
But it's not all doom-and-gloom for indies. We have two things going for us:
#1 - I don't know if the big publishers have figured out how to make the inexpensive downloadable game formula work. They still have high overheads, and not every game is going to perform like Geometry Wars (though, undoubtably, some will perform better as the platform matures). But the big publishers have a bigger overhead - so they can't make the same game as cheaply as an indie. And they can't just "spend their way to the top" with XBLA games as they can a standard retail title. Well, maybe they can't. But most of the cost of development is in content these days, and there are some hard limits on the amount of content that can be downloaded with an XBLA title. That levels the playing field somewhat. But it's all in marketing...
But I still expect Microsoft to give preference to big publishers over an indie title, if everything else was equal in a crowded month.
#2 - The runaway success of XBLA legitimizes downloadable games in a BIG way. Not that we really needed much in the way of legitimization, but it establishes the business model in the minds of hardcore gamers. There is a place to get games besides the local GameStop, EB, or Wal*Mart. And it's fast, easy, and worthwhile.
Guitar Hero 2 Track List
So I just built a time machine to jump 10 months into the future to try out Guitar Hero 2, and I'm coming back with a track list.
(NOTE FROM THE FUTURE VIA TIME MACHINE: I've now got at least a partial official track list - as does about every gaming news site in the world - which can be found HERE. )
Okay, so it's a wish list. If I were to create the perfect track list for myself, here are the songs I'd like it to include (I limited it to one song per band - otherwise I could fill the chart with Led Zeppelin and Van Halen songs...) Most of my songs are pre-1995, I'm afraid. I guess it takes about ten years for something to endure before it becomes "classic." At least that's my excuse. Actually, it's more like the stations I listen to now are classic rock, and more modern pop (which doesn't typically have strong guitar parts).
Here they are, in no particular order:
Sultans of Swing - Dire Straits
The Immigrant Song - Led Zeppelin
Johnny B. Goode - Chuck Berry
Spirit of the Radio - Rush
The Cradle Will Rock - Van Halen
Carry On Wayward Son - Kansas
Crazy Train - Ozzy Osbourne
Shine - Collective Soul
Wild Thing - The Troggs (an easy 'starter' song)
Rebel Yell - Billy Idol
Black Star - Yngwie Malmsteen
Don't Fear the Reaper - Blue Oyster Cult
Rhiannon - Fleetwood Mac
Owner of a Lonely Heart - Yes
Rock of Ages - Def Leppard
Bad Moon Rising - Creedence Clearwater Revival
Enter Sandman - Metallica
Fall of the Peacemakers - Molly Hatchet
Back In Black - AC/DC
I Want You To Want Me - Cheap Trick
Bad to the Bone - George Thorogood & the Destroyers
One Vision - Queen
Any Way You Want It - Journey
Twist and Shout - Beatles
Layla - Eric Clapton
Kryptonite - Three Doors Down
Barracuda - Heart
Sunday, Bloody Sunday - U2
La Grange - ZZ Top
Should I Stay or Should I Go - The Clash
Alternates (If they go 35 pro songs instead of 30):
Wasted Youth - Meat Loaf
Rocking Into the Night - 38 Special
Honkey Tonk Women - Rolling Stones
Blister in the Sun - Violent Femmes
All Night - KISS
So there's my picks. There are a couple of more obscure ones on the list (Molly Hatchet & Yngwie Malmsteen), but they are insanely fun. What are yours?
Cool! I get to be a FELON now!
I moved to Riverton, Utah, about two years ago. It's a quiet town, on the edge of the urban Salt Lake City sprawl. The city is torn between two worlds - it is trying to hold on desperately to its rural roots while being absorbed into the metropolitan community. We've got wars over new commercial districts going in next to horse pastures. Like many Utah communities, there are a LOT of kids, and it's a pretty safe neighborhood to let them run around in. During the summertime there's a constant ebb and flow of kids wandering from yard to yard, playing ball or biking in the street.
It's a nice place to live. It's a place where the folks in the neighborhood actually know each other, and look out for each other. I'm pretty happy here. It's a good place to raise my kids.
But I could very soon end up being one of those "dark secrets" of the community myself - an unrepentant FELON living just outside of the heart of the city. A corrupting criminal influence in their neighborhoods, sitting with them in church on Sunday, even teaching Sunday School! Now THERE is a scandal.
My crime? Apparently, I could end up being a seller of pornography to children. Not because I'd actually do ANYTHING like that... the thought turns my stomach. But our dear State Representative from my home of Riverton, Utah is pushing a bill to classify videogames as porn. Representative Hogue is trying to ammend a long-standing pornography law that very loosely classifies violence as porn.
I sell a game called Mythic Blades on my site - a 3D fighting game with all kinds of nasty little weapons set in ancient Greece. It's unrated - but according to HB257, it could theoretically be interpreted as:
* is patently offensive to prevailing standards in the adult community as a whole with respect to what is suitable material for minors;
* taken as a whole, does not have serious literary, artistic, political, or scientific value for minors;
* is glamorized or gratuitous;
* is graphic violence used to shock or stimulate;
* is graphic violence that is not contextually relevant to the material;
* is so pervasive that it serves as the thread holding the plot of the material together;
* trivializes the serious nature of realistic violence;
* does not demonstrate the consequences or effects of realistic violence;
* uses brutal weapons designed to inflict the maximum amount of pain and damage;
* endorses or glorifies torture or excessive weaponry or . . .
* depicts lead characters who resort to violence freely.
IT IS A FIGHTING GAME. It's not even bloody. It would probably get a "T" rating if it was to get an ESRB rating (which isn't going to happen, because getting that rating is prohibitively expensive for small, indie game developers!). My personal opinion is that the violence is unrealistic and toned-down (it's very similar to Soul Caliber in that way). But thanks to Rep. David Hogue, there is a remote chance that if a 17-year-old downloads this game from my site, I could get arrested on felony charges, and go to jail. I'm sure that by paying a lot of money to a semi-competent lawyer I'd get off, but this would still be a DISASTEROUS law if it passes.
I run a site which is, in my opinion, relatively "family friendly." I personally believe that all of the games on my site would be appropriate for a ten-year-old. That might not always be the case - I have a game in development that will deal with some slightly more grown-up topics, more appropriate for teenagers (15 and up?) and adults than younger audiences. But I have no intention of ever selling a game like Grand Theft Auto on my site (I'm sure that game series, and 25-to-life, which was developed by Avalanche in Salt Lake City, are undoubtably the true targets of this ridiculous bill).
PLEASE - spread the word around folks. Write to your government leaders. Write to your newspapers. Educate your co-workers and neighbors. Take an effort to VOTE. Right now, our politicians in the U.S. and other countries are using videogames as a cheap scapegoat to beef up the "Family Values" ratings on their ticket in preparation for re-election, out of a belief that videogames are politically "safe." You wouldn't see them trying to write similar laws about, for example, movies. Arnold Schwarzenegger wouldn't be pushing bills that defined nearly every movie he ever made as pornography, but he supported a bill - while not quite as bad as this one - still criminalized the sales of videogames in pretty much the same way.
Let these politicians know that videogames are not 'safe' targets of bad law! This is reaching insane proportions. Let the baby-boomers currently sitting in office know that their kids who grew up on videogames have been of VOTING AGE for quite some time now. Maybe they did such a crappy job parenting that they figure it is okay for the state to take that job away from their children --- but we have to let them know we won't stand for it.
Our hobby and industry has been coming under continuous attacks as we enter a new election year. Blame Rockstar for pouring blood into the water and attracting every political shark for thousands of miles for a feeding frenzy if you want to, but the fact is we've got to deal with it.
Sunday, January 22, 2006
Guitar Hero Mini-Review
Okay, so I finally bought Guitar Hero. Actually, I would have purchased it WEEKS ago, but it was sold out everywhere and I didn't feel motivated enough to try and order it direct.
I had heard great things about it, but when I saw some people playing a store demo, I was skeptical. But I had too many recommendations, so I bought it and brought it home. Next my wife was skeptical. We played, and now we're both huge fans. The game is just fun. No, it doesn't really simulate playing a guitar at all... any more than Medal of Honor simulates fighting in World War II. It's just a game - but it's a really good game.
One of the smartest choices they made with the game is to use popular, classic rock songs as their headliner tracks. ZZ Top, Blue Oyster Cult, Black Sabbath, Boston, Cream, the Ramones, Joan Jett, Jimmy Hendrix, David Bowie, Queen, White Zombie, Judas Priest, and newer tunes --- if guys like ME (thirty-somethings who grew up listening to these tunes) were their target demographic, they nailed it dead-on. The songs are sound-alike covers by WaveGroup Sound, but they did a great job making them sound like the originals. They also include some indie tunes from contest winners and the Boston garage scene that can be "purchased" in-game in career mode. These are a nice change of pace, and the ones I've heard are pretty dang good. Good enough that I may be motivated to see what these guys have available for purchase in the near future. But those aren't what's going to sell the game, so Harmonix / RedOctane wisely put them in as "bonus tracks."
I really liked the manual that comes with the game. The cover is a high-school composition notebook, and it keeps to that theme throughout, complete with doodles in the margins and handwritten verses from some of the songs. It's the whole high-school garage band flavor, and it's nailed. You get a similar flavor in-game, as your band progresses from basement shows and cheap fliers to headlining slick magazines and playing at big concert halls and rock festivals.
The game just OOZES atmosphere and style. There is a good deal of irreverent humor as well - once again reinforcing that this is all a game and you are intended to have fun with it. The high score list is written on a bathroom wall next to a urinal. When you input a new high score, the urinal flushes (flushing the previous fifth place high scorer down?). As you progress to a new venue, among the news quotes is one claiming that your band has just sold out. The "loading" screen is an amplifier with three dials that all crank up to eleven - a nod of course to the movie "This is Spinal Tap." In a more subtle joke, the cash rewards in career mode are in the form of an invoice that shows how nearly everyone - including bribes and lawyers - is getting a bigger portion of the cut than your band is.
The 3D graphics aren't close to what would be considered AAA quality by many publishers these days. You know what? It doesn't matter. Like Dance Dance Revolution, most of the graphics and background action are ignored by the player as he or she concentrates on playing the game. The graphics are mainly for the benefit of spectators. They are stylized, but colorful and fun. The guitarist whips into wild acrobatics with their instrument when the player goes into Star Power mode. He also plays the guitar with some moves that resemble real chords and string-bends. The audience reacts as the player moves between different levels of performance quality. The graphics are just fun, and convey a level of excitement, a little bit of silliness, and a lot of fun.
Ultimately it comes down to how well the game plays, and there's nothing I can really complain about here. The RedOctane controller performs really well, and overall the game makes you feel like you are really playing the song. When you screw up you get sour notes, and missed notes come out as missing guitar segments in the song. At lower level, a single note on the controller might simulate a whole series of notes in the song (not to mention chords), but at higher levels your actions on the controller more closely resemble the music. Beginning level demands very few "chords" (multiple fret buttons pressed at once) and only three fret buttons. Higher levels require you use up to all five buttons, and chords become the rule rather than the exception.
My comment after playing a few times and feeling like I was really rocking out was, "Wow, this game makes you feel a lot more competent than you really are."
This game won awards up the wazoo last year, and from what I can tell, it was all well-deserved. I expect most of the cost from the game went into licensing the music, but it was money well-spent. While it's hard to claim that is is in any way original (it's "yet another" rhythm game, and it's not even the first guitar game for the PS2), Guitar Hero is well-executed with an outstanding mix of music tracks, dead-on style and humor, and good, challenging gameplay that just feels right. It's a winner.
Saturday, January 21, 2006
It's the resellers' fault
Ah-hah. So now we know why innovation is being stifled in mainstream game development. It's not the cost of game development, the difficulty of marketing an innovative idea. It's not because EA tried to nix The Sims for YEARS before it was forced on them and allowed to make them rich as the best-selling PC game of all time. It's not that graphics technology has reached the point of diminishing returns such that 2-year-old games are no longer dwarfed by the appearance of their more recent cousins.
No. It's all because of those stores selling pre-owned games:
"However, if it continues to grow, it could potentially starve us of the fundsThat's right! Those stores selling secondhand games should be ashamed of themselves. If GameStop would simply stop selling used games, why, it would usher in a new golden age of innovation! EA would no longer keep foisting sequel after lackluster sequel, and we'd no longer see store shelves clogged with endless clones of 2-year-old hits! Gee, Sony really wants to innovate guys... please quit selling us used games so they can start innovating and taking risks on genre-diversifying titles!
necessary for research and development, and therefore, developers will be less
willing to take a risk on new and genre-diversifying titles. It's this creative
diversity that makes the games industry so popular, and without sustained
funding from new software sales, this could be at risk."
The retail games industry is suffering the same kind of split-identity crisis that the DVD and recording industry seem to be in now. They want to live in the best of two different worlds: A service industry, and a product industry. They want the scaleability, ease and (relatively) low overhead of simply pushing out products, but they want to charge the customer and limit usage like a service industry.
I can't imagine Sony denying me the right to re-sell a television at a garage sale. Or a major book publisher claiming I can't re-sell or trade my book later to a secondhand book store - or loaning a book to a friend so he could read it. Yes, this cuts down on on potential sales revenue to the game creators, and as a guy who has made a living selling videogames this concerns me.
But you have to draw the line between the rights of the consumer and the rights of the producer, and I'd rather err on the side of the consumer. I don't think it adversely affects the "artist" as much as it affects the middlemen. The artist is potentially a brand - and if they produce more than one title, a satisfied purchaser of a secondhand title from that artist (be it a game studio, a band, an author, or whatever) may be more inclined to purchase new titles from that artist in the future.
At least that's how the theory works. In practice, game studios rarely achieve a solid identity and branding of their own, outside of the I.P. of their games (which is almost always owned by the publishers these days). The publishers work hard to commoditize the game studios, keeping them relatively unknown to the consumer, and making them interchangeable for the purpose of creating sequels. This isn't helped by the fact that games are such gigantic team efforts - teams which are constantly in flux. It's hard for a consumer's mind to fix on an identity for a team. It's analogous to movies, where consumers tend to fix on specific "star" actors, or less frequently directors. When was the last time you went to a movie because a particular cinematographer or casting director was involved?
Still, that doesn't change my initial argument. Secondhand game sales are good for the consumers. Without consumers, our industry withers and dies. The "first-sale doctrine" (which gives legitimate purchasers the right to re-sell a license to a copyrighted work without obtaining the permission of the original seller) actually reduces the risk the consumer takes when purchasing a title, as they know they can always sell it used later if they don't want to make it a permanent part of their collection. This means that, contrary to the unnamed Sony spokesperson, secondhand sales may actually INCREASE the ability to create innovative, genre-diversifying titles.
So that's my story and I'm sticking to it. For now. :)
Labels: Indie Evangelism
Wednesday, January 18, 2006
January Utah Indie Game Dev Meeting
I just got back from the Utah Indie Game Dev Meeting (we don't really have an official name for it). It was the largest one yet. The meeting was great fun and extremely enlightening as usual. Some of the highlights for me:
* I can't remember his name, but one of the guys there tonight has been writing videogames since the late 70's - we was with Sierra for a while, and worked with Al Lowe on the Leisure Suit Larry series. We had a discussion about humor in games. I lamented that I'd made the humor in Void War so subtle --- a comment from the room was that "Subtle in games is a jackhammer to an infant's skull." You've GOT to go broad.
* I saw some really impressive-looking games in development. Ninjabee showed an upcoming title that looks HOT, but Steve asked us not to talk about it. We saw some games which have evolved quite a bit since our first meeting last summer. There were also some new ones. I left feeling simultaneously inspired and inadequate. These games are looking GOOD.
* Russell Carroll of Game Tunnel was there - as usual, he was a source of PRICELESS insight into the indie games industry. We got into yet another discussion of "what is an indie?" The question is getting harder and harder to answer. You've got so-called "indie" games that are nevertheless receiving funding from BIG BIG publishers - especially considering the PHENOMINAL success of the XBox Live Arcade for the 360. Indie is really a spectrum. You've got a couple of guys working out of their basements on a game for now pay, releasing it on their own website for sale --- those guys are clearly indies. Then you have a big studio that does exclusively contract work for big publishers --- they are clearly NOT indies (even though they aren't owned by a single publisher). But somewhere in-between you have a grey area that's going to make things difficult to call. What of companies (like the makers of the 360's Geometry Wars) that are "big budget" makers of most certainly NON-indie games for major publishers put some money and resources into a few smaller, downloadable games. Does that make them "indie?" What about the guys like Ninjabee, who do their own thing - doing it the indie way - in-between publisher contracts? What about the very narrow perception that "indie" games are strictly casual, match-three style games for casual players? The waters are only going to get muddier as time goes on.
* The group tonight was once again a huge cross-section of indie developers. You had some newbies (including the guy who organized the event in the first place, Greg Squire) who have yet to release their first title. And then you had guys who have been in the games industry for YEARS who are doing the "indie thing."
* Based upon the quality of the demos, these guys are certainly doing their best to create games that would have been utterly polished, top-shelf products a decade ago (or even completely IMPOSSIBLE a decade ago). The bar is raising, even for indies. This does get a little scary, as Russell was talking about what a small percentage of games that cross his desk every month even GET a review. There are TONS of indie games coming out all the time - and only a tiny percentage of them actually go anywhere. It's a tough market.
Anyway - those are some bits that flow to my sleep-deprived brain at the moment. I'm gonna get some rest, and plan out how I'm gonna deliver some KILLER INDIE GAMES in the near future :)
Tuesday, January 17, 2006
Journey to Rooted Hold
Those who take a peek at the Rampant Games' site may have noticed the appearance of another game in the list: Deadly Rooms of Death - Journey to Rooted Hold, by Caravel Games.
This is one weird-freaking game, but I like it. Part of what I like about it is that it's so impossible to categorize. It's largely a puzzle game. I'm not big on puzzle games, usually, but this one is a lot of fun. It's got the flavor of an RPG --- though without any stats. Adventure games are puzzle games, kind of, so maybe it fits as an "adventure game." But adventure games tend to rely more upon using inventory elements to solve challenge. Not so Deadly Rooms of Death. Basically it's a turn-based, non-random dungeon delve with lots of non-twitch-based hacking and slashing of monsters using your sword, the environment, and other adventurers who join you. Oh, and it includes a level editor.
If that doesn't explain it, give it a try. It's a free demo and some indie goodness.
Labels: Game Announcements
Friday, January 13, 2006
My Rant Is Printed
The Deseret Morning News published my rant, apparently. I can't see the print version since I'm down in Cedar City this morning, but I'll be back tomorrow. They trimmed it down a little bit, but they do have it online here:
Kudos to Deseret News for printing it, at least.
The full text of what I submitted is as follows:
Videogames burst onto the public scene in the mid 1970s with blocky graphics and intense action that mainly appealed to young men under the age of 16. Times have changed, those early gamers have grown up, and the gaming market has matured. Regrettably, much of the industry and public understanding have been slow to keep pace with these changes, as evidenced by the Opinion article on January 8th.
According to the Entertainment Software Association, the average videogame
player is 30 years old, and the average videogame purchaser is 37. Only 5%
of computer game purchasers are under 18. The adult female gamers (age 18+)
outnumber the young male gamers (age 6-17) by 4 to 3! The fastest growing
segment of the videogame industry is, in fact, women in their late 30’s and
older playing “casual” games, such as matching games and solitaire.
Obviously, videogames haven't been "kid's stuff" for quite some
time. But that hasn’t stopped them from being labeled as such to be used
as a convenient scapegoat for society’s ills by anyone with a need to add more
“family values” padding to their bullet-point list of accomplishments.
Based on public demand, the videogame industry has already adopted
a voluntary rating system (modeled after the MPAA’s movie ratings system).
Despite Representative Jim Matheson's recent ill-informed assertions to the
contrary, major game retailers - including Wal*Mart, the single largest seller
of new videogames in the U.S. - have already made age validation for "M"-rated
games standard company policy. These retailers often have no such policy against
selling other “mature” media to minors – videogames are getting special
treatment and scrutiny. If retailers are already voluntarily adhering to the
ratings system, why should we throw additional tax dollars to accomplish the
The ESRB rating system is a private ratings board,
which the government should not turn into an effective lawmaking body. Beyond
that, it is a flawed system, a fact made noteworthy in the media last summer
with the “Hot Coffee” scandal. By giving this private ratings system the gravity
of federal law, this would make any attempt to move to a more reliable or
informative ratings system in the future nearly impossible.
are more downsides. There is a rapidly growing "independent" game development
segment of the industry. These makers of these games are usually small
business owners often operating out of their garage or college dorm room. Their
budgets are far, far below that of their mainstream, “triple-A” cousins that are
advertised on TV, and usually do not allow them the significant expense of
obtaining an ESRB rating. These games include small, non-violent “casual” games,
as well as religious, educational, experimental, and “family-friendly” titles.
Forcing them to ante-up with the deep-pocketed big publishers for ratings would
run most of these small, struggling companies out of business. It would also
greatly increase the ESRB’s ratings load each year, potentially causing greater
cost and decreased quality and reliability of their ratings.
Most importantly, the proposed federal enforcement of ratings
compliance fails in its aim to protect children. Many surveys demonstrate that
parents are buying age-inappropriate games for their children – either by an
informed judgment call, or in ignorance of the posted ratings. Children also
trade, borrow, re-sell, and even (unfortunately) pirate videogames from many
vectors outside of domestic retail and rental channels. Console manufacturers
have already announced plans for future consoles to add a parental lock-out
control, thus solving the problem where it should be solved: in the home. The
push for federal mandate of ratings is really just a race to see whether the
politicians can get their expensive paper victory before technology solves its
THAT version is trimmed down a bit from what I first wrote after reading the editorial Sunday. I had several additional points that were less valuable to the argument (and made it less likely to be printed). Mainly I tried to say three things:
#1 - Videogames aren't any more for children than television or movies or books are for children - more adults play games than kids, so quit pretending that these games are being marketed to 8-year-olds.
#2 - Federal (or State) mandation of ESRB ratings, and enforcement at the retail level (especially Matheson's attempt to do it on the Internet as well) has LOTS of unintended consequences that will hurt the industry as a whole (and our industry is struggling already in the U.S., in spite of appearances of the mega-publishing giants).
#3 - Making the ESRB ratings part of federal (or state) law at the sales channel will not achieve the goal of protecting children from inappropriate material in the first place.
Wednesday, January 11, 2006
Tools make me happy
So... the announcement is in that the Torque Lighting Kit version 1.4 is now available. I've been anxiously awaiting it, so I could only do ONE merge instead of two. I don't know what the updated features are yet, but I have a suspicion on a couple of 'em. Most importantly, it all works with TGE 1.4., which was released about six weeks ago. It's been a long six weeks (but busy, with all the holidays and stuff). TGE 1.4 also includes a "Map2DifPlus" tool which I haven't used yet - but it's supposed to have a couple of new features and a LOT more reliability.
And additional new tools happiness... some enterprising guys have fixed up the Blender converter into Torque so that it will work with the brand-new Blender 2.4, which (I'm told) makes animations better and more easy-to-use than ever. I guess it is also compatible with Python 2.4, which means I can finally take my version 2.35 off my drives.
Sam Bacsa has also released the "Delta 7" release of "Codeweaver" - the IDE tool for TorqueScript. The past versions have been "nice but BUGGY" and occasionally infuriating. So far, I've not seen a trace of the crashes that plagued me in earlier releases, so it looks like this one is a winner. The new license agreement states that I have to add him to the credits line in any games I make using this tool. Since I was planning on doing that anyway, it's a pretty small price to pay.
Ah, and all these new tools will usher in a new era of unprecedented productivity and quality...
Or not. But it does feel a little like a late Christmas for me. Now if only someone would release the "create all my art assets based on verbal descriptions" tool, I'd be in GREAT shape.
Actually, someone kinda did... I'm gonna go give a tip o' the hat to the Low Poly Coop - Scott Hsu-Storaker has been making simple, re-usable content for FREE by request for some time now. He's got a few rules and limitations in place - he's not going to create complex animated models or guns - and of course anything he does by request is not going to be exclusive. But he's doing an INCREDIBLE service to the community by creating "stock content" suitable for use in many different kinds of games. It's kinda like checking the warehouse in the prop department of a movie studio to see what they already have that you can re-use with minor modifications.
THIS is how indies are gonna be able to keep up with the rising costs of game development. Stuff like what Sam and Scott are doing, and the Blender team, and the community at GarageGames.
Monday, January 09, 2006
On Game Engines and Swarm Missiles
In early 1995, I was working on both Warhawk and Twisted Metal for the then-upcoming Playstation 1 for Sony. Both games started with the same code base, and then diverged, but parts of the code (specifically the graphics and sound engines) remained shared between them.
We had a rather bizarre problem in Warhawk where suddenly everything would go haywire - usually when you were shooting the ever-popular "swarm missiles" at enemies. The cockpit would go "skittywumpus" (is that how you spell it?), matrices would get turned around, and sometimes the game would CRASH. Since the symptoms almost always appeared when the player was firing swarm missiles, and I was the man who'd written the code for all the weapons, the bug fell upon my head to "fix the swarm missiles." I had the bug on my list for WEEKS, and I had assumed (rightly so) that somewhere in my code I was clobbering memory that didn't belong to me.
It was especially nerve-wracking, as the cluster of six swarming, bobbing, 'flocking' missiles dancing around each other as they shot towards a target was a major 'seller' for the game in demos, and you do NOT want the game to bug up during a demo! Our executives were told only to show the the swarm missiles in the "pyramid level" (level 1), as it was harder to cause the problem on that level.
I was getting desperate one morning, and began tracking the logic through the engine code (We didn't have very good debugging tools for the Playstation in early 1995 ). Now, this WAS an in-house engine --- I'd mucked around in it before, and was familiar with the basic logic, but I wasn't one of the principle developers. THAT honor belonged to some of the guys, headed up by Randy Zorko, who had spent several years at the simulation company Evans & Sutherland. These guys were used to working on multimillion-dollar simulators for the military and civilian industries. They were also used to the limitations of these incredible super-computers.
As it turns out, one of the limitations they were used to was the number of "Coordinate systems" (read: independent, fully 3D models) in an environment. I think some of the best E&S systems could only handle something like 14 of these objects in the world at a time. So you'd have the user's plane, and maybe six other planes, and potentially six missiles in the air at a time. So they'd created a buffer of these objects which you could acquire from the engine, and they guessed some ASTRONOMICAL number of models which the engine could handle - something like sixty. Because the number was something so huge, they decided they never really needed to test to see if you exceeded that boundary (though theoretically the function was supposed to return a failure if there were none left).
Any programmers reading this can immediately spot the problem.
Every time you fired the swarm missiles in Warhawk, you created TWELVE new "coordinate systems" in the game. Six missiles, and six contrails (which were models that were built on-the-fly, a trick I also used in Void War). When our executives were giving demos to people, they were always playing in "God Mode," which gave you unlimited ammo and invulnerability. This meant they could fire a LOT of Swarm Missiles. It was quite possible to get three or maybe even four sets of missiles up in the air simultaneously. Add to that all the enemy planes, gun turrets, tanks, and enemy-fired missiles, and you can blow past that 60-CS boundary without too much trouble.
Randy was able to fix the problem in the engine in about five minutes, expanding the boundary to something like 90, AND adding a check to make sure you didn't blow past that (I don't think we ever did, in the ten games or so that used that engine). And the Swarm Missiles became famous.
So the moral of the story? I dunno. I was reminded of this as I was back in the "hate" phase of my love-hate relationship with the Torque Game Engine a few days ago (I'm back in the "Love" stage now; Torque was very nice to me yesterday). Building stuff on top of someone else's code is almost never a "free win", or even an easy win. The documentation is almost never adequate, and there's always a bunch of assumptions built into the engine (also undocumented) as to how and why its going to be used that rarely mesh with your own ideas of how its going to work. The bigger the engine (and Torque is HUGE), the more digging is going to be necessary to understand it and figure out how to change it to match your own expectations and needs.
Fortunately, Torque has a pretty solid community behind it, so while it's not quite the same as having the genius mastermind designer of the whole thing like Randy Zorko at your beck and call, it has helped reduce the gravity of some of the real hair-pulling problems I've run into so far.
Sunday, January 08, 2006
There Goes Utah
Sigh. We already had Senator Orrin "Digital Joe McCarthy" Hatch embarassing Utah with his technological illiteracy and pandering to the big media moguls (except for their videogame interests), but now Utah Representative Jim Matheson is jumping on the unconstitutional bandwagon to pad his own "Family Values" bullet list. And one of the local newspapers is jumping right aboard, perpetuating the myth that videogames are "kid's toys," completely ignoring the economic, legal, and even ethical considerations of government enforcement of a rating system that is STILL recovering from a huge black eye from its obvious flaws last year.
Their logic flies completely in the face of studies which ruled no conclusive linkage between videogame violence and real-world violent behavior, not to mention the fact that the average game player is about three times older than the "children" that our grandstanding politicians are claiming to be trying to protect.
I'm in the process of formulating a letter to the editor, but I am trying to formulate a reasonable response between being both infuriated and frustrated. I don't buy rated "M" games very often, but the last time I did (to purchase "F.E.A.R.") - from the LARGEST retail seller of new videogames in the country - I was carded! That's right, the verified I was over 18 (I've been getting gray hair since I was sixteen, so maybe that isn't a great indicator). Face it, kids borrow, trade, re-sell (and, unfortunately, pirate) videogames all over the country - the only place to REALLY keep kids away from inappropriate media of ANY kind is in the home, where it should be.
And sorry, Representative Matheson and Senator Hatch are not invited in my home.
Friday, January 06, 2006
Creeping Crud and Debugging
So I'm kinda sick. Got goopy crud coming out of my EYES, man. We won't talk about my nose. I've gone through an entire box of Kleenex in a single day. Not my definition of fun.
Yesterday I decided NOT to share what I had with the folks in the office, and stayed home. I was uncomfortable, but awake most of the time, so I figured I'd get some game development work done. I'm doing a stupid thing right now and working on two projects more-or-less simultaneously. I've got a small project that stands a really good chance of getting released this year, and a larger one that... doesn't.
I had HOPED I'd get all kinds of progress made. But as always happens, fate conspired against me. I did a lot of WORK --- does that count? But I spent pretty much the whole day clearing out three bugs. The programmers who read this might enjoy this:
#1 - I had accidentally "almost" shadowed a member variable of a base class. They were off by one capitalized letter. Since this was C++, capitalization counts. I was apparently inconsistent when I was reading and writing to this variable, so sometimes I was referencing the base class's variable, other times I was accessing the "correct" one. That was a pain in the neck to figure out. It COMPILED fine, after all!
#2 - A second, nasty crash bug was because of a pointer pointing to an object that had gone out of scope. 90% of the time it WORKED, because the data the pointer was pointing to hadn't been reaped / re-used yet. I'm usually really good about this kind of thing (I've been programming in C / C++ for over fifteen YEARS, you develop some careful habits in that time), but this was one I missed because I was *cough*cuttingandpasting*cough*
#3 - The third crash bug was because I was failing to check if a time delta was 0.000 before dividing the distance moved by the time delta to determine the velocity. Since we're dealing with cool doubles and stuff, I didn't get a "divide by zero" error that we used to get when we were always dealing with integers because they were INSANELY faster than floating-point math (anyone else remember those days?) So the velocity got set to a special value that means "infinite" (something like 1.#N00000 or something in the debugger), and later on I'm interpolating and adding the velocity (times the current, non-zero time delta) to the current position of the vector and BAM! Off it goes someplace WAY outside the boundary of the world. Torque kindly raises an exception when this happens - in Debug Mode - but the point it crashes is NOT the point where the erroneous data was introduced. This sort of thing happens way too frequently, and requires some detective work to tease out.
This being Torque, I also run into innumerable problems where I forget I'm working on the client object or the server object, and end up making a function call that only exists on the opposite side of the client / server architecture. Nevermind I'm writing a SINGLE-PLAYER game. In my humble opinion, the #1 improvement that GarageGames could make to Torque would be what they did for Torque2D (Now called the Torque 2D Gamebuilder) and make it EASY to create a single-player game, bypassing the network logic.
Don't get me wrong - Torque has a really solid multiplayer architecture that rocks. And it makes it easier than ever to create multiplayer games. But that just reduces the headaches of making a multiplayer game; it doesn't eliminate said headaches altogether. But if you ARE just doing a single-player game, you still have to worry about all the multiplayer headaches.
So there's my little rant. I blame my cold medicine.
Thursday, January 05, 2006
Game Moments #8 - EverQuest
Well, I could have a ton of stories and moments from EverQuest. Here's one.
Shortly after the first expansion for EverQuest came out - The Ruins of Kunark - I ended up linking up with some players from a brand-new guild called "The Order of Concord." They were hanging out by the Drolvarg temple in the Firiona Vie zone. I played a human rogue - one of the most USELESS classes prior to the expansion, but one that had been gradually rebalanced over the preceding six months since EQ had gone live.
Firiona Vie was a larger zone. New to the expansion was the fact that you had a small section of the zone that was "civilized" with shops and so forth. But beyond the gate, you had a dangerous mid-level zone for adventuring for characters of levels in the mid-20's to about 40. players in their high twentied through the thirties in level. Which was my level, and the level of the guys in the fledgeling Order of Concord. There was a "sister city" for evil players on the other side of the continent, which had a similar theme (civilized city, surrounded by the rest of the zone which was dangerous). Finally, there was a whole new race with a brand-new starting city.
One thing that was a common practice prior to the expansion, but which was exacerbated by the expansion was the fact that Druids in EverQuest could get around certain faction restrictions by changing into a wolf. As a wolf, they had neutral faction to EVERYONE, which allowed them to go to any of these new cities with impunity. Around the time of the expansion (I think it was about a week afterwards, but I can't remember), Sony put the kibosh on this practice by making druids-in-wolf-form (and Shamans-in-Bear-Form) automatically con hostile in these civilized territories. Since the guards and merchants of cities were of incredibly heroic and deadly power (why the guards stood guard instead of fighting monsters I'll never know...), this would prove immediately deadly to most druids.
Anyway, the thing that I liked about the Order of Concord folks was that they were a social guild. A really small bunch of folks who just played together because they liked being with each other, and even structured the guild around helping other players. I'd joined my current guild for social reasons, but had become inactive because it had become an "uberguild" - and I just didn't have the time and energy to put into constant raiding.
On the other hand, the group that hung out at the Drolvarg temple for those two weeks were a pretty mature bunch, and it was more like a chat session with deadly combats. Way more deadly than usual, as there was a bug during the first month of Kunark's release that caused creatures to "auto-pull" - newly respawned monsters remembered that you'd killed their predecessors, and would make a beeline towards your position if you were still in the zone --- dragging all their friends with them. So routinely we'd be sitting around, waiting for monsters to spawn, and then suddenly get surrounded by about eight Drolvargs. (Drolvargs were giant wolf-men type creatures).
We got pretty dang good at it. Sometimes we'd get slaughtered, and this was the type of group that would just laugh it off. "Woops, we're all dead, let's do it again!" No big deal. No stress, no blame, just having a good time and putting up with the occasional death and XP loss. We had a good time. And usually we'd come out of there with just AMAZING experience points, because more often than not we'd just BARELY survive and kill a TON of monsters during the evening.
One of the things that WORKED, amazingly, was that when it was clear we were in over our head, nobody ran --- but everyone told everyone ELSE to run. Nobody wanted to be the person to survive when everyone else died. So we'd shout for people to bolt, and then wait to "die for our buddies" so they could get a head start - but nobody would go. We'd fight until we had a sliver of health and no mana left, and yet amazingly survive. Then we'd desperately "med up," but only get a fraction back before we'd suddenly be ambushed by three to five more Drolvargs that "auto-pulled" on us. Unbelievably, we RARELY died from this. We'd work together really well and pull it off. Over and over again.
Then one night, we had a new guy show up to join the group. A druid. We explained to this guy how we played, how the auto-pull bug worked, and how deadly it got, and he said "No problem." Nice, friendly guy, and he did his job pretty well. Of course, he was always in wolf form (it gave the druid all kinds of bonuses). We killed a few Drolvargs, had a few laughs, and were settling ourselves in for another fine night of chatter and near-death experiences.
And then the going got tough. It was business as usual for the other five people in the group - we were down to low health, very low mana, and we were ambushed. One Drolvarg turned into two, two into four, four into six. In any other group, we'd have been bolting, trying to get as close to the city as possible before being killed one by one by the Drolvargs, so we'd have an easier time retrieving our equipment from our corpses. But this group - meh. We toughed it out.
When the dust cleared, there was one person dead. The druid. We looked around for his corpse, but couldn't find us. We asked him what happened.
He admitted he had gotten scared halfway into the fight, and had gated (teleported) out. Unfortunately, he was soul-bound in the city of Firiona Vie, right by the guards. Since he hadn't crossed the zone boundaries, he'd stayed in wolf form ... and the guards had killed him the instant he'd materialized.
The guys who stuck it out against hopeless odds? Another victory, in spite of losing the druid halfway through the fight.
It's funny how a little multiplayer game like "Evercrack" could teach you a thing or two about teamwork.
Monday, January 02, 2006
The First Playable "Level"
I guess I'm learning and growing.
When I was at SingleTrac, I got really annoyed at milestones that always had an early "20% complete" milestone of a "First Fully Playable Level." The idea is that you have a fully-functional, more-or-less complete (to "Alpha" level, anyway) playable level of the game. And this was an EARLY milestone. My argument was that while that was fine for content, it sucked for programming. By the time you've gotten a single level "fully playable" (by my thinking, which was 100% complete playability), then your programming is about 80% DONE. Because every single level was going to use exactly the same logic.
Now that I'm pretty much managing myself & my limited team & stuff, I still have some disagreement over the wording and intent of that "First Playable Level" milestone, but I understand it a lot more now.
For one thing, I now more fully comprehend the old "80/20" rule --- 80% of the job takes 20% of the time. Which obviously means the remaining 20% takes the remaining 80%. So when the programming is "Almost Done" getting that first level truly up and running, you are really at the 20% mark after all. It's all those little DETAILS and polishing and handling transitions and exceptions that takes up the rest of the time. It provides you a working build that you can create integration tests with (so if it works today and doesn't work tomorrow, you limit the available window in which the breakage occurs --- better than checking in TONS of code for months only to find none of it works).
Content is a lot more straightforward. So depending upon the amount of reuse of content in later levels, the first level could really represent 20% of the content. So the metric kinda-sorta works.
But there's another big reason from a design standpoint. The big trick with any game is getting it beyond the "tech demo" stage and making it a truly working, playable game. Once you are there, you can see how well things are working, how they are balanced, whether the elements that sounded good on paper actually turned out to be fun on the screen, and you can get ideas for improving the game that might not occur to you when you are simply dealing with the "paper prototype" (the design document). A LOT of potential design revision can occur at that point, and the fleshing out of ideas that might not have been too solid previously.
From a management standpoint, the first playable level gives you some benchmarks. It can help expose tasks that were forgotten or ignored previously. It gives you a baseline on your game from which you can judge progress. It can help you evaluate a design and decide if its worth pursuing. It can allow you to start doing a "red-line analysis" of the game. You've now got a demo you can show people when you are trying to pitch your game (to focus groups, publishers, prospective team members, etc.).
In short, this is the point where it ceases to be a "cool idea for a game" and becomes a GAME. Probably not a very good one, but something from which you can constantly iterate and improve upon until it's a GREAT game.
I still take exception to any belief that the first playable level should be considered anything close to "final." But I'm now a firm believer in getting that first playable level up & running as soon as possible in a game. And while it might not fit perfectly in the "20% progress" mark, it's probably not too far from that. Maybe it's closer to 50% if you are constructing or learning a lot of new technology or design work (a bunch of "black triangle" work), maybe even less if you are doing a straightforward sequel.