How The Game Is Played

http://blogs.sun.com/gameguy/date/20050429 Friday April 29, 2005

Jeff's Forum Rules for Busy Professionals

I donate a fair bit of time on the Javagaming.org forums on and off. In the past I've done a fair bit on USENET and in other on-line forums.

I've sometimes felt I should have a personal FAQ, so here it is...

Jeff Kesselman's Personal FAQ

Here's my code, can you fix it?
Long Answer: Sure. I bill $200 an hour in half hour increments with a $1,000 retainer due up front before work begins.
Short Answer: No.

How do I write a Java program that prints out all the 5 letter combinations of the letters in a 15 letter long string? (Or many other similar academic exercises.)
Answer: Do your own g-ddamned homework.

How do I write a game?

Answer: First learn to program. Then think of a game. Then write it.

I want to write a game like Everquest.
Long Answer: Everquest took a team of 30 people 3 years and about 25 million dollars to write. I suggest you set your sights lower and first learn how to code a simpler game. Classic games like Pong, Asteroids or Pac man make great beginning game programmer projects.
Short Answer: You and every other 13 year old.

I want to write a game like Everquest only better!
Long Answer: See above
Short Answer: You and every other 10 year old.

Isn't Java too slow for games?
Long Answer: Java is the equal of C in speed when coded correctly. There are many commercial examples now available. Look at the (dumb) Quake port "jake" or OddLabs' Tribal Trouble, or Agency9's Megacorps for just three good examples.
Short Answer: Where have you been? I don't think its the language thats the slow one in this room.

My buddy tried Java and he says its too slow.
Long Answer: When people first tried C++ they thought it was too slow, too. Any new tool takes new techniques and some time and patience to master. Many of the folks here at Javagaming.org can help you. You might also want to read Steve and My book "Java Platform Performance: Strategies and Tactics."
Short Answer: Your buddy is a no-talent moron.

I tried Java and its too slow.
Long Answer: Same as above.
Short Answer: You're a no talent moron.

Can U s3nd m3 sum war3z?
Long Answer: This is a professional programming forum. You won't find much sympathy for pirates here.
Short Answer: Sure. Send me your name and address and I'm sure the lawyers and police I send it to will be happy to share their war3z with you.

Can U H3lp m3?
Long Answer: This is a professional programming forum. You will find you will get a lot more attention and help if you drop the 7eet d3wd sp33k.
Short Answer: Sure can. Try this: EASL

I'm sure I'll think of more to add to this list over the next few days.

http://blogs.sun.com/gameguy/date/20050427 Wednesday April 27, 2005

A few of my favorite things.

Some people collect coins, some people collect stamps.

I collect video. I have a pretty good sized DVD collection and a list of my favorite media clips on the web. I thought I'd share the latter.

First up is a peice of Machinema. Machinema are video production peices done by capturing and editing video from game engines. Their production can be as complex and involved as a "live" movie, but all the actors, sets and cameras are virtual. Sort of found-art meets video production.

Here's my personal favorite, the video is all captured from from Star Wars Galaxies and yes you really CAN make your character do everything shown here, Though not quite as smoothly edited together as the artist here did: :)

http://www.lucasfiles.com/?s=&action=file&id=676

Next is something from the same twisted Britt who brought us those singing rats that were in that Quiznos ad. Its my ultimate proof that you can write a folk-song about anything:

http://www.rathergood.com/fishy/

Outside of the Quzinos ads, he's probably most famous for this video. A great example of the humor of juxtaposing incongrous elements. Its a bit hard to find as its a copyright violation and he no longer has it on his own site, but just for you folks I found a mirror :)

http://users.wolfcrews.com/toys/vikings/

Finally, I saved the best for the last. This is not a produced piece. Its quite real. An amazing news report that has been saved for posterirty on the net. Its sort of like watching the governmental version of a train-wreck happen in slow motion. The comic timing is just about perfect. Watch it all the way through and I promise you'll laugh til your sides hurt.

The Famous Exploding Whale:

http://www.perp.com/whale/video.html

http://blogs.sun.com/gameguy/date/20050426 Tuesday April 26, 2005

Fame comes from strange places.

Sometimes it just comes from having been in one place too long.

In my case that place seems to be on-line...

The name "Jeff K." might be a reference to Sun software engineer Jeff Kesselman, who is notorious for making frequent spelling mistakes, such as "teh" and similar, in newsgroup and forum posts.

The whole explaination is here...

http://www.surch.co.uk/-/Jeff-K..html

I WOULD like to point out that "Jeff K" is a composite character and seems to combine my most annoying traits with the most annoying traits of a lot of other "net-types". ( I personally hate leet-dewd sp33k.)

Still its kind of amusing. I've been online since the days of dial-up BBS systems and 300 baud modems. It had to catch up to me sooner or later 8)

Patents, Copyrights and Trademarks, oh my!

Okay,

Time for an educational rant. How many things wrong can you find in this sentance?

"Bechtolsheim is expected to bring new ideas to Sun's lineup. He has applied for several patents with the U.S. Patent and Trademark Office hoping to secure the copyright to words like "Streamhub," "Streamswitch," "Streamstar," "Streamstor," "Streamcast," and "Netblade." "

(source http://www.internetnews.com/fina-news/article.php/3311271)

This is about the most blatently IP ignorant statement I've ever seen, the reporter should be ashamed. Patents are not Copyrights, Copyrights are not trademarks. They are very different things.

Clearly what the writer should have said was:

"Bechtolsheim is expected to bring new ideas to Sun's lineup. He has applied for several trademarks with the U.S. Patent and Trademark Office including "Streamhub," "Streamswitch," "Streamstar," "Streamstor," "Streamcast," and "Netblade." "

But unfortunately this writer, and their editor, apparently knew no more then the average man does about these important terms. So you can knwo more then the average man, I'm going to take a moment to explain them. Then you too can either laugh at or tear your hair out over the way they are abused in America today.

Lets start with Copyright. A copyright is a right to control the copying of something. Thats why its called a "copy right". Thats where the word comes from. Copyrights only cover significant works of personal expression fixed in a tangible medium.

"Significant" refers to size, not importance. Single words cannot be copyrightted because, by the definition in the law, they are not significant. Furthermore, the law states that any coined terminology is immediately public domain with regards to copyright. You cannot create an exclusive language or jargon protected by Copyright. Its really that simple in this case.

The "tangible medium" requriement means you have to be able to point to your work and say "there it is" for it to be protected. An impromptou performance, for instance, is not in itself Copyrightable. I can re-perform what I remember of your performance without infringing your rights. HOWEVER if I video-tape your performance then I just fixed it in a tangible meidum, at which point you own the right to copy what is on that tape and I cannot copy and destributed it without your permission.

Copyright's purpose is fundementally to protect artists and encourgae them to produce artistic works.

Trademark is something else entierly. A trademark is a symbol that a provider of goods uses to uniquely identify their goods. A trademark must be unique to be trademarkable. I can't go trademark the work "Computer." Its already part of the english language and therefor not unique. I COULD go trademark "Kesselputer" however (assuming noone else already controls that trademark.) The words in the above text are probably trademarkable because Andy made them up and noone else has them Trademarked.

A Trademark is NOT a Copyright. It does not prvent me from copying or using your trademark in my works. This is why Andy Worhole could paint campbells soup cans. The ONLY thing a trademark does is prevent me from using that trademark in a manner that would confuse a reasonable consumer as to the origin of a good. There is a similar set of laws for Servicemarks, which cover services in the same way trademarks cover goods. Roto-router, for instance, is a servicemark.

Trademarks exist to protect one company from having another company masquerade as them when selling to their customers. Thats it. Thats all it does.

Now Patents are also completely different. Patents protect processes. Not ideas, as is commonly thought, but processes for accomplishing an end. They were invented because manufacturing processes were being kept secret by individuals and companies as their competitive advantage. When those people died, their processes were lost with them. A classic example is the Stradavarius violin. There are still university reserach projects going on trying to figure out exactly how he got the sound he did.

Patent law has been streatched a great deal over the recent years but its stil fundementally the same thing. It exists in order to give inventors a safe way to record their inventions so they don't get lost when they die.

If the reporter above had understood ANY of this he or she might have realized that the paragraph they wrote was total gibberish. Hopefully now at least you will know such gibberish for what it is when you see it.

http://blogs.sun.com/gameguy/date/20050422 Friday April 22, 2005

The Beauty of Failure

Failure is a beautiful thing.

Failure is something to be proud of.

Those may sound like odd sentiments but someone today asked me “what one sentence of advice would you give Jonathan.” I knew instantly that my answer was “tell your execs they need to fail more.”

Why? Because an honest failure means you tried something. You made a decision, maybe before you had all the information, and acted on it. And as my parents taught me, that's a good thing. As a child I was rewarded for trying my best, regardless of the outcome. That instilled in me a self-confidence and ability to act that is an incredible advantage over those who don't have it.

Decision makers some-times lose, but the indecisive never win. There are all sorts of examples of how being willing to fail has led to success in this world. The Fuller Bursh company used to send their salespeople out with a score card. Every time they got a no, they were to tick a box off. They knew that statistically their salesmen would get 9 no's for every yes. By having them track the no's and think of them as "one more step to a yes" they made it okay to fail. And the result was a highly effective salesforce.

I attended a talk by the egineers who started Atari a few months back. The thing they listed as the single most important thing about Atari was that it was a place where it was okay to fail. And they had some spectacular failures. Anyone remember the Atari Music System? I thought not, it was a color organ you hooekd up to your TV. It was their product immediately after Pong and, as they say, they think they sold about 5. But that was okay, and it being okay was the magic of Atari and why Pong and the Atari2600 had a chance to go down in history.

The indursty I came from, the game industry, is all about spectacular risk taking. A modern single player video game takes upwards of 10 million dollars to produce. All of it is spent based on a hunch that what you are putting together is something that the public will eagerly accept. There are no formulas or rules, every rule anyone comes up with in entertainment is quickly proved wrong. About the only rule is that blockbusters are always unique, original, risky projects. But people do get rich in that industry, and thsoe who don't get rich, still get by despite failures and set-backs. But noone who is allergic to risk survives very long at all.

I said in a previous blog that Sun has the soul of a start-up, and I believe that, but indecision kills start-ups. We don't have the resources of an IBM or a Microsoft, we are not the T-Rex that can arrive at the party late and simply crush those already at the table. We are the little carrion dinosaur who can be crushed if we don't get in, grab our piece, and get out.

So what would I tell Jonathan. I'd tell him “tell your execs they have to be braver. Tell them they will get slapped far harder for missing an opportunity then for trying and failing and that they will get slapped hardest for playing conservative and under-committing to those decisions. Tell them to chose their horses and then ride them for all they are worth. But when the horse breaks its leg, shoot it dead and go look for another promising one."

In other words, tell them its okay to fail if you've given it your best shot.

Thats the most valuable thing my parents ever told me.

Happy Birthday to Duke!

Tomorrow is the 10th anniversary of Java and I started looking back a bit at my own Java history.

I began at sun almost 6 years ago as the first full-time hire on the JDK Performance Tuning Team. Steve Wilson was my manager. But he wasn't my very first manager. In a typical Sun story, Steve was a contractor working for a guy named Dave (Sorry Dave I forgot your last name. I'm awful at names.) The week I was hired, Dave decided to leave. Steve interviewed and recommended me, and then a week later I recommended him as my replacement boss.

I think having the chance to effectively hire my own manager was a good introduction to Sun culture. In my 6 years at this place I've found it to be usually egalitarian, often surprising, and sometimes just a bit bizarre... but in a good way.

I am still VERY proud of the work we did on JDK1.3. JDK1.2 was a milestone as the first Java2 but it was a WHOLE lot of new code and there were some performance issues and bottlenecks that we, along with our volunteers from the JDK API teams (and there were more of them then us) worked out and got rid of in 1.3

Honestly, most of the heavy lifting was done by the API teams, our biggest contribution was creating processes for measuring performance daily and reporting problems and regressions immediately so they could be killed before they escaped.

The OTHER part of that job, and one that I loved, was Java performance programming evangelism and education. Through talks with some key Java customers of Sun's Steve and I quickly learned that half the performance problems out there were just programmer ignorance.

Through speeches at JavaOne, user's groups and SHARE meetings, as well as the book Steve and I eventually co-wrote (http://java.sun.com/docs/books/performance) , I had the joy of helping to re-educate a lot of Java programmers. We taught them the simple mistakes they could avoid, as well as how to profile and tune code. That book is still one of my prouder achievements at Sun. There is nothing better then to have a programmer you've never seen before come bounding up to you and say with a big grin, "I bought your book and it solved our performance problems!" There is a joy of pride in that that I am not ashamed to say I absolutely love!

I can't talk about teaching people to profile and tune their code without tipping my hat to the Java VM team. One of many brilliant things the VM guys have done over the years, was to develop a solid profiler interface early in Java's life-- JVMPI. This has made it one of the easiest environments I have worked in to analyze for performance bottlenecks and definitely helped us in helping Java shed its myth of slowness.

Be that as it may, its surprising how long those myths persisted. I guess a first impression is just as hard for a language to shed as it is for a person to shed. I would say it is only in the last year or two that I have finally stopped having to correct people's mis-perceptions of Java speed. I really believe a large part of Javafinally losing the label of slowness has been due to the work I have done with Chris Melissinos since leaving the performance team . Together for more then 3 years now, we have been encouraging Java game developers and getting their work showcased. When I left Steve's group I said to him, "Steve, when I can show Quake running in Java at the same speed as C, no ones ever going to call us slow again."

At least on the desktop, I think we are finally there.

I can't leave this subject though without mentioning the Sun Hotspot VM team one last time, and our counter-part to Steve's JDK group, the Hotspot VM performance team.

These guys are amazing. Consider this: They have less then 10% of the man-power IBM has committed to Java VM development. Nonetheless they make a VM that is at least IBMs equal and I think in a number of ways its superior. They give me amazing power to work with and for that I am eternally greatful.

My latest gift from them came when I was writing the Megacorps demo for GDC. This snuck in so silently that I don't know if anyone else has even noticed. The Megacorps port was a crash 3 week project. I had to write a whole fake networking layer to clue their code to my back-end and frankly didn't have time to write carefully optimized code. In particular I ended up having to allocate a LOT of short lived objects and copies of data. Breaking the rules I had preached to others about watching allocation of garbage in tight loops, I was scared to death I was introducing gc pauses.

When I finally ran it... it ran flawlessly. Sometime between the last time I tried this and now, the VM guys have gotten short-lived object allocation to where they always said they could-- its invisible!

So going into the parties and festivities tomorrow, there are a great many people who have worked very very hard on Java. And they all deserve praise and attention... but I'm going to be drinking to Sun's VM teams.

The finest in the world.

http://blogs.sun.com/gameguy/date/20050419 Tuesday April 19, 2005

Return of the grouchy old programmer

We just had some tounge in the cheek fun. Now I'm going to get serious on you again.

My buddy, pal, and fellow sun game industry guy, Chris Melissinos has written a BLOG entry on a subject near and dear to my heart. The never-ending noise over video-game violence.

http://blogs.sun.com/roller/page/ChrisM

I can't not weigh in on this one myself.

For me this is a bit personal. I was in the industry writing video game code when the whole ESRB thing happened. At the time I was working for a very skittish game company and had to watch what I said. Luckily, Sun allows us more freedom to express ourselves.

I hold a dual BS in both Computer Science and Film Production. As such I was very aware of the two ratings debacles that set the stage for this one-- the movie industry and the creation of the MPAA and the comics industry and the creation of the comics code.

In both those cases, self-serving politicians/demagogues whipped up a frenzy over the "evil influences" of the "new media." A frenzy easy to whip up because the adults they were talking to were totally ignorant of the media in question. In the end, the industries imposed self-administered rating systems to calm the public. They say those who do not study history are doomed to repeat it, and we're going on round three in this case, so a little history-study is in order.

In the case of the comic industry, the impetus was a very very badly researched and argued popular "psychological study" (using the term more loosely then my wife the BS in psychology would be comfortable with) called "Seduction of the Innocent." It basically argued that all of the horrible awful juvenile behavior that was suddenly occurring was the influence of evil comic books. "Our children are having their innocence taken away by comic books!" Sound familiar?

Folks this was 1954. I haven't honestly read the book. I can stomach only so much, but I suspect it was on the order of "hanging around pool halls and listening to that horrible [word beginning with N deleted for sensitivity reasons] jazz music."

Nonetheless the cry of wolf went out and a finger was pointed at the media. The result was two-fold. First, the rest of the comics community singled out one publisher to sacrificer on the altar of public opinion. That company was EC Comics and a good half the code made the names of most of the titles of their comics against the rules. The second was the stunting of the medium for a good 30 years were it was relegated to trite juvenile story telling with no socially relevant content. It was not til the mid 80s that American comics finally got to grow up into real adult literature.

The final demise of the code was in large part due to the sudden financial success of import adult comics from Europe where there was no code and independant "underground comics" in the US that purposefully flaunted their disregard for it. Nothing speaks in America like money and it was enough to get the main-stream comic book companies experimenting with code-breaking on their own. The eventual result being some of the most amazing story-telling ever to come out of comics. (Watchmen. The Neil Gaiman Sandman series, The Dark Knight, and so forth.) The whole industry, and Id argue American culture, owes a debt of gratitude to the Fabulous Furry Freak Brothers, Heavy Metal, and the other pioneers of adult comics.

The comics of the 80s and early 90s proved that comic books could be more then just juvenile kiddie reading but real culturally relevant art. Imagine what might have come out of such cultural situations as the Vietnam War era had it not been so crushed in the 50s.

So lets take a look at example number 2, the movie industry. At first the industry responded with a comics-code like seal. That however broke down as the major studios discovered a demand for movies that couldn't qualify for the seal, and therefor found ways around needing to acquire it. The end result was the system I grew up with-- the ratings of G,PG,R,and X. Rather then set s single code of what was and wasn't allowed, the idea was to give the consumer information and let them chose.

Unfortunately, this turned out to have a stifling effect on the industry. Movies were cut and re-cut in order to achieve the desired rating. Whatever was seen as the "sweet spot" for the largest audience was the one targeted. This turned out to be R in the long run and the result was that many movies had unnecessarily graphic sexual or violent content added just to push them to R. Something that, if the founders of the Catholic Legion of Decency, a primary mover in the original urge to restrict movie content, understood they would, I think, think twice before interfering in media again. But those who don't study history...

Worse, in my opinion, the X rating quickly became associated with porno-trash and was eschewed by the industry. Many very artistic and serious adult-oriented films have had to trim valid and relevant content in order to avoid it. (There is a classic story about Angel Heart but I won't bore you with it here.) The industry has tried to address this recently with the creation of a new "A" adult rating but its fighting the perception of being "the new 'X'" and unfortunately not very successfully.

So that brings us to the late 90s. And another political furor over "the corruption of innocent minds." This time the targets are rap music and video games. I will leave my opinions and observations on the rap thing to another day and focus on the video games. Again it was an easy political target because parents don't understand video games, and where there is lack of knowledge-- there is fear.

The whole ugly business was painfully predictable to those of us who know some history. The demagogues made speeches, the parents made anguished cries, and the industry responded with a rating system.

And what was the result of that rating system? I will tell you. The equivalent of an X in the video game rating system is an M for "Mature users only." The first video game released with an M rating was Mortal Kombat 3. In the first week of its release, Mortal Kombat 3 did more gross income then the first week of the movie The Lion King.

Well, that was effective wasn't it? At least we know the sweet spot, its an M. And lots of M titles followed. Ones you hear a lot about when people talk about video games and violence, like the Grand Theft Auto series. They were arguably the direct children of the video game rating system. People voted for M with their wallets, so thats what they got.

I addressed a group of parents about the video game industry the week after MK3 came out and I brought the clipping about sales because I knew the issue would come up. When it did I read the clipping and then posed this question back "YOU told us you need ratings. YOU told us our customers were 13 year olds (which, as Chris M points out, is patently false). Why are YOUR 13 year olds all buying a game WE marked as for mature adults???"

The somewhat embarrassed answer I got was "well we can't control our children."

And THAT my dear friends and readers is what really creates delinquency. Its not the media messages, its the parents who abdicate their responsibility to teach their kids and instead leave them to the wilds of the media. When I was a child, I was allowed only 2 hours a day of any TV that was not PBS. That was so my mother could monitor what I was watching and make sure that I learned the right things, not the wrong ones. I did not go to a movie without my parents approval. Movies they thought I might not understand, they often took me to themselves and discussed with me afterwards. And that was all true until I entered high school.

There were certain shows I was not allowed to watch at all until high school. One was "All in the Family." Its not that my parents thought it was a "bad show." Quite the contrary, they thought it was one of the most brilliant TV shows ever written. But they knew it was an adult show. That I wouldn't understand that your not supposed to like Archie's attitudes.. or Michaels all the time either.

Which gets me to my conclusion. There are two constants in America, that if anything have only gotten worse over the generations. One is that lack of active parenting leads to screwed up kids. I may not agree with everything the Church of Latter Day Saints believes but I do think they are dead on in the importance of active families and active parenting. When I was a kid they used to run TV ads to encourage people to do that, I hope they do again.

The second is that lazy inactive parents will always latch onto something to blame their screwed up kids on. And generally, its the media.

Sex at IBM and Sun

When I was in college I worked a summer at IBM. Lately I started musing on the differences in work environments. When it came to sex, the IBM the rule was "Not on company time or furniture." Though I've never heard it stated at Sun I assume the rule is similar. One of the interesting differences though is that it was stated at IBM. Based on my 6 years or so at Sun and that summer at IBM I thought I might do some more comparison and contrasting. Tounge firmly in cheek.

At IBM, nobody is allowed to find out what anyone else is doing. At Sun, nobody CAN find out what anybody else is doing.

At IBM your second-line manager's door is always open. At Sun, your never quite sure who your second line manager is this week, but everyone's door is open.

At IBM you never see or hear from an executive and you have no idea what they do. At Sun you are ALWAYS hearing from executives.. many of whom you still have no idea what they do.

At Sun, we are the Net. At IBM, we are the world.

When I was in college, IBM had a larger gross income then China. Today most of Sun's gross income seems to be IN China.

At IBM, things are run by managers, its very orderly, and nothing much happens. At Sun things are run by engineering, its total chaos, and WEIRD things happen.

At IBM you can get the Business. At Sun you can get burned.

IBM wants to give you the computer and charge you millions of dollars to make it do anything. At Sun we want to give you the computer and sell you the software... or was that sell you the computer and rent you the software... or was that rent you the computer and run YOUR software... oh hell, we just want you to like us and pay us to be smart with computers!

IBM pays lips service to the open-source-religious and then acts proprietary. Sun acts open source and then gets in trouble by not paying the proper lip service.

Sun invented Java. IBM wishes they had invented Java.

Sun has a (great) working Unix but hey, we'll talk Linux if we have to. IBM had a crappy Unix and now really wants the world to believe they are the only Linux vendor out there.

IBM comes up with new marketing strategies for old crap. Sun comes up with new crap with no marketing strategies whatsoever.

As much as they are trying to distance themselves from it, IBM is still the blue suit company. Stodgy, stable and boring. Sun I think will always have the soul of a start-up.

And that last is why I had 3 months at IBM, and going on 6 years at Sun! Those of us who are chaos surfers thrive on the kind of chaotic, creative place Sun continues to be. In the long run, I believe that is what makes us different and what our future big successes will be based on. Its not the kind of thing that bankers like. It even gives most managers ulcers... but we aren't a bank or a management company. We are an engineering company. And at the end of the day, we do that pretty damn well!

http://blogs.sun.com/gameguy/date/20050418 Monday April 18, 2005

Odds and Ends

This blog is just a short report of odds and ends.

I'm still in documentation hell. The game server doc is up to almost 50 pages and I still don't think I'm more then half way to what it really aught to be. I am reminded of something one of my first good managers, a man by the name of Bob Patton, said to me: "Writing code is easy. Writing english is hard!"

To relieve documentation stress I've picked up one of my pet projects again, a game client I'm writing in Java using Java3D that can be fed data right out of the NWN Aurora Toolset. You can see more info on it at http://jnwn.dev.java.net. All the work to date has been in the Aurora data loading and management. The ultimate goal is a MMOLRPG open source client that leverages the really great NWN tools.

The only down side of this approach is that you will need to own a copy of NWN to legally play as you need a license to the data, but its getting to be an old game so that shouldnt be that big a stumbling block.

Ive just about fnished the loader and am almost ready to start working on the fun part-- the game engine itself. One thing I hope to support, that NWN couldn't, is jumping and flying. NWN used a very conservative collision-map approach to collision detection that meant you could not allow the players' and monsters' feet to leave the "floor". Since I also want to experiment with game physics, I'm going to need to implement a real 3-space collider anyway so this constraint should be lifted.

Another subject: Hats off to the VM team!

I don't think I've gotten around to mentiong this yet, but I am seeing no noticeable GC pauses in any of my game-code these days, even in code that I had to write fast for GDC and that did a LOT of temporary allocation. Hats off guys, you finally have it working for short-lived objects the way you always told us you could-- invisibly. I'm very very impressed. Our Hostpot VM guys really are some of the best VM programmers in the world.

Online Game Report -- Matrix Offline. Okay I promised I wouldn't waste too much ink on this subject but I think I'm over my MxO phase. The biggest issue for me is that the game design really requires you to devote a LOT of time if you want to really be involved in things. Between the comittment necessary to create crews and factions, which is how you get enough attention to be included in the interactive parts of the game, and the level-horing that has players who just work the system in order to gain results fast already at levels 4 and 5 times my own, its just losing its appeal for me.

I understand why they went the way they went the way they did with the interactive game elements-- its really hard to scale those and include everyone. But the result is yet another game where, in order to be a first class citizen, you have to both devote most of your life to it and be willing to "play the system." Two things I am not willing to do.

So I'm back to CoH. At least its a game I can drop into for an hour or two, have some fun, and then leave and go back to productive stuff again. I'm finding solo-play in CoH frankly boring these days, but when I have friends to play with its still fun.

http://blogs.sun.com/gameguy/date/20050412 Tuesday April 12, 2005

Linux and Rhapsody

Well,

I am now just about a completely happy camper with Linux.

RealRahpsody works well enough to play my tunes under SUSE9.1 I was able to get it working (without a need to compile anything) using the instructions from these two web sites:

http://www.amishgeek.com/info/rhapsody

http://www.warpedview.com/rhapsody-on-linux/

Dont let hiccups in the install deter you, it WILL install well enough to run, though i had to reset my box once after the install to kil la bunch of wild re-spawning wine processes and get wine back to a good state.

But I am now getting great sound, and best of all its using the free version of Wine.

http://blogs.sun.com/gameguy/date/20050411 Monday April 11, 2005

Old heresies never die....

So lately The DaVinci code has caught the popular imagination. I'm going to make a few decidedly un-religious comments or observations.

First, the fact that people are treating this as some great new insight just goes to show the lack of education across the united states these days. When I was in college there was a book published called "Holy Grail, Holy Blood." Thats 25 years ago. Holy Grail, Holy Blood is the origin of the whole "the holy grail is Jesus's child" line of reasoning. Noentheless its the first or second thing I hear anyone talk about when mentioning the DaVinci code.

Almost as enduring as heresies are secret society myths. I was thus not terribly surprised to hear that Knights Templar and the Masons mentioned in the next breath. The Knights Templar secret-scoeity-conspiracy-theory is about a old as conspiracy theories get and has always been tied to holy-grail stuff. The poor masons get almost as much attention.

My father-in-law was a Socttish rite mason, another good and dear friend of mine was a mason as well, and in fact at one point in my life I came the closest to being recruited that they can do (they aren't allowed to recruit, you have to ask to join. I was told I was a "fine young man" and they'd be happy to talk to me if I was ever interested.) Let me just put it this way: If these are the height of international conspirators then the biggest threat we have is maybe being philosophized to death :)

It doesn't surprise me that these are all recycled in the latest religous conspiracy theory book. What does surprise me is how many people don't seem to know they are being recycled for the umpteenth time.

I can't leave the subject without commenting on this whole 'code' business and what total nonsense it is. Information theory understands the existence of something called a stochastic systyem. A stochastic system is a random noise generator coupled to a rule-set to pick interesting patterns out of the randomness. Stochastic systems create information. The information is not in the random noise but created through the selection process.

This code business is a classic stochastic system . The random noise field is a large text of characters and a random selection of a starting place and a skip-length. Give it enough time and it will produce rocgnizable patterns-- in this case words and sentance fragments we pick out. But in picking out those all we are really doing is ignoring the whole rest of the random field which, mathematically, has no more or less significance then the part we've chosen to focus on.

If you want a practical example of a stochastic system in action, go to your TV and tune to snow. Stare at it. The entire visual system of the human animal (and arguably our entire thinking process) is a large pattern matcher. If you stare at the snow you will see patterns emerge and disappear. But the fact of the matter is that the snow on the TV is just about the most perfectly gaussian-distributed random field of visual data you can get. The patterns are, literally, all in your head,

And the same is true for this code business.

Much more intersting, to my mind, is how and why our thinking systems are stochastic systems. For that I'd recommend a really good book, Gregory Bateson's "Mind and Nature." It gets deeply philosophical at times and is certainly not as easy to read as this Davinci Code nonsense, but I promise you that if you have a decent intellect and a strong intellectual curiosity, it will be a lot more rewardng in the long run.

Dr. Who and the BitTorrent of Doom

For anyone not aware of it, BBC Wales has started producing new episodes of Dr. Who again. NOw call me an uber-geek but I was really bummed at the thought that it might take years for them to reach the US.

Enter technology. My helpful considerate co-geeks in the UK have been capturing excellent quality AVIs of the episodes and making them available on BitTorrent.

For anyone not familiar with BitTorrent, it's a true distributed peer-to-peer file sharing network. In return for getting access to files you also become a server at the same time and help others receive the files. Its all controlled by index-files called .torrent files. The .torrent files for all the Dr. Who episodes have been appearing on ww.TorrentSpy.com and the result is that I have been able to watch all three of the current new Dr. Whos.

I'd feel slightly guilty about this, as it is no doubt a copyright violation, if (1) they were available any other way in the US and (2) the BBC hadn't actually started it be releasing the first AVI themselves. (The AVIs are so high quality I'm not sure they haven't been releasing all of them, but I have no information on any but the first.)

Which brings up an interesting question. Technologies like BitTorrent are not going to go away. How do you continue to run a media business in an era of such media transportability? FWIW BBC Wales seems to have decided that letting these new Dr. Whos be torrented serves as good advertising for their eventual sale for TV release in this country. It will be interesting to see how that works for them.

On the subject of Media, I just got and watched the director's cuts of Pitch Black and Chronicles of Riddick. I can see why CoR didn't do well in the theatres. As a sequel its an odd movie. It retains three characters (though recasts two of them) but its a completely different kind of movie. Pitch Black was a low budget action/horror/survival film. CoR is best described as Star Wars meets Conan, with a lavish visual style and sensability. About the only thing it has in common with its predecessor is the Vin Deisel Riddick character, a certai namoutn of action/violence, and a bit of a dark edge.

Nonetheless I found myself very much preferring CoR. My take is that this movie is likely to do an "Alien." It died in the theatres because it wasn't what Pitch Black fans expected and the studio didn't know how to market it. It has all the right ingredients however for a "cult-classic." Strong interesting characters, strong visual sense of style, a plot thats not too hard for just about anyone to follow, and of course the aforementioned edge. I suspect it will see a re-birth over the next few years in DVD release and may even come back to life as a series. (Lets hope if it does its better then the Alien series which became pretty worthless after the second movie.)

As long as I'm talking about movies, I can't leave the subject without mentioning one of the last toys I bought-- a pair of IoMagic 5.1 headphones. They arent the most comfortable headphones I've ever owned, but amazingly they really DO work. They have a cute little vibration they substitute for the rumble of a sub-woofer but outside of that I'd have to say the experience is very movie-theatre-ish. I have found myself preferrentially watching DVDs on my PC just because of the surround sound from these headphones. They also produce decent sounding music. If they had just made the ear pads a bit bigger so they didnt pinch my ears, they'd be about perfect.

Work-wise I'm still in Game Server documentation hell, preparing for a time when we might actually get more hands to help bring this beast to fully implemented status.

http://blogs.sun.com/gameguy/date/20050406 Wednesday April 06, 2005

Department of Bad Ideas

I'm sure you folks are getting tired of my rolling MxO (Matrix Online) report so unless something really interesting or unusual comes up this will be my last report for awhile on that subject.

I am also using this is as a chance to introduce what I hope will be an irregular feature of my blog-- the Department of Bad Ideas. The Department of Bad Ideas is reserved for things that people just really should have thought more about before doing. Things you look at for a minute and go "That was a Baaaaad idea."

The inaugural entry to the Department of Bad Ideas goes to the Matrix Online again I am afraid. Last night MxO kicked off the start of their first on-l;ine "event." This is a big part of what they have promised with this product to differentiate it. On-going, heavily plotted game changes that pull us a long in planned story that continues the story of The Matrix.

To kick off the story, last night the Matrix started having severe problems. if you asked around enough you could eventually find an NPC or other clue that told you that someone is sabatoging the matrix.

Cute idea. But doing it now was a baaad idea.

The software system that runs this game, as you;ve heard me report, is hardly stable yet itself. Now they are introducing plot-driven failures into the system. The problem ofcourse is that us players can't tell the difference between a planned "matrix failure" and a matrix online system bug, the latter of which abound. The result is two-fold. For those of us who understand what they are trying to do, our efforts to understand the "story" and investigate the mystery are confounded to the point of ultimate frustration.

Even worse, for those new to the game, it just looks like an even WORSE even BUGGIER game then it is. They already have people leaving because of legitimate bugs, making the situation worse is not going to help their bottom line.

And so THE bottom line is this.... welcome, my MxO friends, to the department of bad ideas.

Post Script: I've been hard on the MxO guys, and there are a lot of reasons to be hard on them. I can't leave the subject though wthout commending their customer support team. Harried at the moment I am sure to the point of tearing their hair out, they continue to be friendly, considerate and helpful. They fixed both the problems I mentioned earlier with my account so I am back up and playing, even if the game is still very difficult to play in its current state.

http://blogs.sun.com/gameguy/date/20050405 Tuesday April 05, 2005

And the beat goes on...

The bouncing continues at MxO HQ:

Iterator, Linenoise, and Enumerator currently unavailable. We are working to resolve the issue and the world will be available as soon as possible. We apologize for any inconvenience this may cause. We will post again when these worlds are available.

Kidna makes this PR release either funny or painful, depending on what side of the fence you are on...

"Warner Bros. Online is working with IBM to help build a flexible, resilient infrastructure that will be able to `continue the saga' of The Matrix trilogy and support the complex demands of a MMORPG," said Jim Noonan, senior vice president and general manager of Warner Bros. Online.

"Responsive and highly flexible technology is required to create an engaging and complete urban environment for players in The Matrix Online," said Jason Hall, senior vice president of Warner Bros. Interactive Entertainment. "Warner Bros. Online and IBM are working toward this goal in order to help provide a true interactive, online space that will allow gamers to continue the storyline of the Matrix."

To support The Matrix Online, Warner Bros. Online will implement IBM hardware, including IBM eServer pSeries systems and IBM eServer xSeries systems for overall infrastructure support. In addition, Warner Bros. Online will deploy IBM WebSphere Application Server for registration and billing; and IBM software to map out a blueprint that helps create a seamless environment for rapid design, integration, construction and deployment. IBM technology will also allow Warner Bros. Online to remotely manage the technology from different locations and with varying degrees of access so the team can separate out permissions, as well as identify and assign specific tasks. This is of particular importance considering the number of groups responsible for actual game play.

http://www-306.ibm.com/software/success/cssdb.nsf/cs/mcag-6ahn6w?opendocument

Edit, Additional:

Been a bad day for that IBM back end. Now the web-server that runs their forums is down :/

Server Error This server has encountered an internal error which prevents it from fulfilling your request. The most likely cause is a misconfiguration. Please ask the administrator to look for messages in the server's error log.

Well, they got MxO back up.

Sometime after midnight it looked like they may have finally gotten Matrix Online back up. Its difficult to tell however if it stayed up longer because their stabiltyi problem was resolved or just because alot of people gave up at midnight PST and went to bed, thereby lowering their load to something they coudl handle.

Only time will tell. I intend to check in tonight and see how thinsg are going. They have big event planned for Wednesday. That is sure to push the load, so they had better have a real fix by then or its going to be ugly...

EDIT: Update, guess they aren't sure enough of themselves to take that risk:

The Matrix Online Team is continuing to investigate the issues that have been interrupting the service since yesterday. Although all worlds are currently running, we remain concerned that the root causes may remain and are working extremely hard to premanently eliminiate this issue.

The entire team of The Matrix Online would like to thank the community for your understanding and patience. We regret the interruption in your game time. Once full stability is restored, we will be announcing appropriate plans to make it up to you all.

Until the service returns to full normal operations, the Live Events Team will delay the start of any planned in-game events. Updates on event status will be available throughout the day. For the very latest server information and updates, please check our Announcements forum.

We appreciate your understanding during this outage, and we hope resolve these issues soon.

Sincerely,

The Matrix Online Team