Hey, I agree with you that the ACLU is a great organization, but I've had some interesting arguments with John about them -- he doesn't like the ACLU because of their support for gun control, which is one of the reasons I support them.
Baby or bathwater? We distort, you decide. Some of our opinions and priorities are different, but John's arguments are always well thought out and interesting.
The article incorrectly states that "Sun scientist and Java inventor James Gosling heard about van Hoff through colleagues in 1993, while the Dutchman was still earning his master's degree at Scotland's prestigious Strathclyde University."
James Gosling certainly knew about Arthur van Hoff before 1993, at least since 1989 when Arthur released his amazing "GoodNeWS".
While I was working at Sun from 1990-1991, we flew Arthur out from Scotland to California and negotiated with him about integrating GoodNeWS aka HyperNeWS aka COOL aka HyperLook) into Sun's X11/NeWS window system. We spent quite a bit of time redesigning a new version of HyperNeWS for The NeWS Toolkit, I ported HyperNeWS to TNT, and Arthur delivered a prototype of the new system called "COOL" (Customizable Open Look).
Arthur was well known and respected in the NeWS community for his incredible work with HyperNeWS, NeWS, PostScript, a C to PostScript compiler called PdB, an SGML parser, and other amaing stuff. We lobbied Sun quite hard to convince them to hire Arthur, but they strung him along for a long time then finally refused, because they wanted to kill NeWS instead of doing something great with it.
Micropoly is the Microsoft Monopoly Game! It's a parody of Microsoft that's fun to play, a free board game based the rules of Anti-Monopoly, and a political statement protected under the First Amendment.
[...]
The Goals of the Micropoly Project:
To make a political statement about the effect of Microsoft's monopoly on the economy.
To raise awareness of the original folk game monopoly invented by Quakers and illegitimately patented and pirated by Parker Brothers.
To promote the alternative Anti-Monopoly rules, invented by Ralph Anspach in 1973, that teach why monopolies are bad.
To distribute the graphics and rules of Micropoly as a free "open source" game, true to the spirit of the Quaker who originally invented monopoly.
To develop a computerized version of monopoly, that can be customized with any local theme and artwork, and played over the Internet.
To imitate life imitating art imitating life imitating art, and so forth.
Micropoly synergistically illustrates several important points, by drawing parallels between the time of the Great Depression and the end of the Twentieth Century:
Monopolies are bad, and competition is good.
The original rules of monopoly require everyone to play as a monopolist. That's why companies like Microsoft and Parker Brothers like the lesson it teaches: being a monopolist is good, and in order to win you have to make the biggest monopoly. But the rules of Anti-Monopoly divide players into monopolists versus competitors, resulting in a dynamic, unpredictable, more interesting game. Competition has the same benefits in real life!
The "open source" philosophy has been around a long time before computers.
The Atlantic City Quaker woman who invented the original board game spread it around to her friends for free. She would invite people over to play, and they loved the game, so they made their own copies with crayons on oil cloth. This free folk game spread around the country and was played by many people, long before Parker Brothers knowingly decided pirated it. Today we have computer networks, desktop publishing, color printers, and the "open source" model of software development, so it is much easier to spread the free Micropoly game all over the world.
Big companies abuse the patent and legal systems to pirate and exploit other peoples original ideas.
Parker Brothers pirated monopoly from its original inventors, illegitimately patented an "open source" folk game, perpetrated an extremely successful propaganda campaign to convince the world that Monopoly(TM) was invented by Charles B Darrow, and aggressively drove other companies out of business with frivolous lawsuits.
They waged a nasty 10 year legal assault on Ralph Anspach, inventor of the "Anti-Monopoly" game, ruining his successful game company, even though his case finally made it to the Supreme Court and won!
As a result of his hard fought victory, the true story of Parker Brother's Billion Dollar Monopoly Swindle has been published for all to read, and it's safe to call a game "anything-opoly".
We are very grateful that he never gave up, and won in spite of Parker Brothers' dirty tricks. We thank him, because he made it possible for us to publish Micropoly, and generously offered to let us use his superior Anti-Monopoly rules, which so perfectly illustrate the point of Micropoly.
The similarities in the monopolistic behaviors of Parker Brothers and Microsoft should be obvious.
Everyone notices the obvious built-in political bias, whatever that is. But everyone sees it from a different perspective, so nobody agrees what its real political agenda actually is. I don't think it's all that important, since SimCity's political agenda pales in comparison to the political agenda in the eye of the beholder.
Some muckety-muck architecture magazine was interviewing Will Wright about SimCity, and they asked him a question something like "which ontological urban paridigm most influenced your design of the simulator, the Exo-Hamiltonian Pattern Language Movement, or the Intra-Urban Deconstructionist Sub-Culture Hypothesis?" He replied, "I just kind of optimized for game play."
Then there was the oil company who wanted "Sim Refinery", so you could use it to lay out oil tanker ports and petrolium storage and piping systems, because they thought that it would give their employees useful experience in toxic waste disaster management, in the same way SimCity gives kids useful experience in being the mayor of a city. They didn't realize that the real lessons of SimCity are much more subtle than teaching people how to be good mayors. But the oil company hoped they could use it to teach any other lessons on their agenda just by plugging in a new set of graphics, a few rules, and a bunch of disasters.
And there was the X-Terminal vendor who wanted to adapt the simulator in SimCity into a game called "Sim MIS", that they would distribute for free to Managers of Information Systems, whose job it is to decide what hardware to buy! The idea was that the poor overworked MIS would have fun playing this game in which they could build networks with PCs, X-Terminals, and servers (instead of roads with residential, commercial, and industrial buildings), that had disasters like "viruses" infecting the network of PC's, and "upgrades" forcing you to reinstall Windows on every PC, and business charts that would graphically highlight the high maintanence cost of PCs versus X-Terminals. Their idea was to use a fun game to subtly influence people into buying their product, by making them lose if they didn't. Unlike the oil company, they certainly realized the potential to exploit the indirect ways in which a game like SimCity can influence the user's mind, but they had no grip on the concept of subtlety or game design.
[...]
-Don
Whoop de doo. Python's had OpenGL for years.
on
OpenGL in PHP
·
· Score: -1, Troll
What's everybody so excited about? The only reason OpenGL in PHP raises any eyebrows, is because PHP is an anemic toy language for amateurs and script kiddies, not a real general purpose programming language for professionals, like Python.
Python has had OpenGL support for ages, and it also has a wide range of user interface toolkits, many of which been integrated with OpenGL.
I mean, come on: you can program OpenGL in Visual Basic. What's so impressive about finally being able to do the same thing in PHP? I'm not impressed that it's taken PHP so long to partially catch up with other toy languages.
I agree that expansion packs are a different issue than sequals. The imporant point is that expandability leaves the door open to groundbreaking originality, especially by the players.
Maxis has produced seven expansion packs for The Sims, and they have all sold extremely well. Some of the expansion packs have implemented ideas we had while developing the game, but didn't have time to put into the original product (like visiting town, socializing and shopping in Hot Date, or the pets in Unleashed).
In fact, a separate product from Maxis called SimsVille was cancled, largely because The Sims Hot Date expansion pack was able to realize many of the important new features that distinguished SimsVille from the original Sims.
The Sims expansion packs and objects are fundamentally different than typical monolithic game mods. They are modular components that plug together synergistically, not exclusive universes that you can only play one at a time. You can combine Sims downloads all together at once and play with them all like a big pile of legos, but you can only play one DOOM WAD at a time.
But the official expansion packs from Maxis are only one measure of success. More importantly, the players themselves have produced orders of magnitude more downloadable objects, skins and other content, than Maxis has produced.
The Sims is a flexible enough platform that supports other games and activities at many different levels: socializing, building, storytelling, crafting skins and objects, programming tools and behaviors, etc.
There has been an exciting Renaissance of original creative player produced content for The Sims. Player created content is the reason The Sims continues to sell so well after four years.
The Ultimate Sims List links to more than 3600 active Sims fan sites, where you can download an uncountable and growing number of objects, skins and decorations.
Player created content is where all the original creative action is happening with The Sims these days.
Tools like The Sims Transmogrifier and RugOMatic enable players to create their own content. Players have figured out how to program the objects and written independent behavior programming tools like IFFPencil2.
One creative player called SimSlice has taken object programming much further than anyone at Maxis expected, by developing Slice City: a game within the game, like a little lilliputian version of SimCity! Other players are even creating add-ons to the Slice City add-on: making buildings, parks, landmarks, seaports and marinas to plug into Slice City!
I've made a video demonstration of RugOMatic and Slice City, that shows how to create rugs for The Sims by dragging and dropping pictures and text, and then set them on fire and kill people with the Slice City disaster menu!
Fox News is one of the most popular sources of news in the world, and they're also one of the least accurate, most corrupt, distorted, one sided, unfair, unbalanced bunch of liars on TV.
Success doesn't equal integrity. Cheaters like the idiots at Fox News and the right wing zealots in Orange County make more money precisely because they're liars and parasites.
The Power Plant is the buyable object -- click here to see a pic. Place it anywhere on your lot. That starts the game. Only buy one per lot for best gameplay. If this is your first time here, please read everything below carefully. Otherwise you can click here for some Slice City Gameplay Tips.
Slice City - "the other city that never sleeps". This city is awake and alive with hustle and bustle 24/7! Citizens use businesses, homes, parks, etc. for work and play, and these all cost you money to maintain. The happier the little people are in their habitat, the harder they will work, and the more profit you will make from them. Well-maintained cities can encourage more citizens to move in there. This will not only increase your population, but also your city size... and your profit margin. Cities that are neglected or not well-maintained will cease growing, or slowly deteriorate until they are nothing but piles of rubble. Using the various "disasters" (including a tornado option) can do that in much less time.;) So to maximize your worker's output, keep all structures "refurbished". Your citizens may even help you do that on occasion too. And if you need more help, ask The Gardener.:)
The citizens also need power from the Power Plant to do any expanding. The Power Plant started in the "ON" position, but you can "Power it down" (by clicking on it) to stop your city from growing any further, and to keep your daily profits/costs stabilized (good for those that like the small town feel). "Power it up" again to allow for potential growth to resume (good for those that like the larger city life). City costs, profits and growth (if any) are calculated each midnight (between 11:55pm and 12:05am).
I've heard cries of "it will never work" before. But player created content is the driving force behind the top selling game of all time, The Sims.
I believe that one of the major reasons that The Sims Online has failed (in stark contrast to EA's expectations, and the success of the offline version), is that The Sims Online doesn't support player created content. It's been promised, but EA never executed on Will Wright's vision.
The Sims was originally designed to support player created content. Thanks to the enormous quantity of player created content (on the order of millions of unique skins and objects, many of them excellent quality), The Sims is anything but bland and empty.
I know people who actually make a full-time living and support their real families, by creating original, high quality Sims objects. There's a thriving cottage industry of publishing Sims objects and skins on many web sites, and selling subscriptions to Sims players who love to pay for downloading all kinds of original content!
But "bland and empty" does accurately describe The Sims Online: once you've played for a while, you get tired of the sparse selection of character skins and objects to buy. But that wouldn't be the case, if The Sims Online supported player created content like The Sims offline, as EA has promised but not delivered.
Player created content makes the economy richer, interesting, dynamic and personal, because it enables creative players to bring actual VALUE into the economy, and truly invest in building the virtual world.
Contrast that with The Sims Online economy, which has been flooded by Simoleans generated with MazeBots by people selling them on eBay. 100 million more Simoleans dumped into the Sims Online economy isn't going to improve the game play or the richness of the environment one bit -- in fact it just makes it worse.
But enabling players to add new skins and objects to The Sims Online would substantially increase its quality, while earning the creative players respect and Simoleans, and entertaining everyone.
If the enormous amounts of energy that players were putting into implementing MazeBots and generating Simoleans to sell on eBay, were put into implementing content creation tools and generating skins and objects, then The Sims Online might someday be even more successful than The Sims Offline.
It doesn't require "extensive tools and abilities" for players to create content. And it's not necessary for the tools to be built into the game itself. The content creation tools should be factored out into an SDK and released, so third party developers can extend them and integrate them into other tool chains and web services.
The Sims Transmogrifier is an external tool for The Sims, which enables players to create their own objects, by cloning existing objects and repainting the 2D graphics with programs like Photoshop. It doesn't require 3D Studio Max or any advanced 3D skills. Lots of kids and adults use it every day to make their own objects.
But it's certainly possible to make useful content creation tools that are easier to use than Transmogrifier. After all, not everyone knows their way around Photoshop, but many people want to make objects with pictures they download from the net or take with digital cameras.
I've developed an easy to use tool called RugOMatic, which enables players to create rugs for The Sims by simply dragging
The MIDI Bong lets you digitize a bong hit and email it over the net, so your friends can play it back on their own MIDI bongs.
The carb, stem and chamber are instrumented with airflow and smoke density detectors. You can record a digital smoke envelope, and email it to your friends. You can scale and normalize any pre-recorded bong hit to your own lung capacity, or even mix and cross-fade between multiple bong hits.
MIDI Bong Version 2.0 will support quadratic multi-hit smoke interpolation, real-time streaming telebong control protocol, and head-to-head bonghit competitions.
More teathered and wireless base stations and portable units are in development: Personal iBong. Enterprise RackMount Bong Blade. Fast and Wide SCSI RAID Bong. PCMCIA BongCard OnTheGo. Portable USB Bongle. Firewire eBongPro. WiFi Residential Gateway Bong. Hands Free Bluetooth Bong.
In Bellenson's apartment, Marc Canter has been lying on a postmodern faux-leopard-skin couch with his eyes half closed, listening as Bellenson and Smith outline their grand vision. He rouses himself now, like a lugubrious guru, a veteran of more than half a dozen projects pushing the state of the art. He wishes to make a statement about trends that lie ahead.
"There is a new paradigm for tools," he says. "In the old days, they were shrink-wrapped pieces of software; you sat down and read the manual and used the tool. Nowadays, the tools are free. And what we need are scalable content tools. Look at Hollywood: They take a movie and amortize the cost among multiple forms, from cable TV to toys. On the Web, we haven't been able to do that, because it's just a delivery medium. But if all the content can be decoupled" - in other words, if it can exist separately from any particular format - "I can output a low-end Web site, a medium-res CD-ROM, and a high-end broadband version, all from the same ideas. In the smell world, this means 16-pack cartridges that do only a few smells, or big systems that do thousands."
"We expect to have low-end and high-end iSmell hardware," Smith agrees. "The low end may retail for under $200. The smell cartridges - even at the high end - will probably cost under $50." With moderate use, he guesses, they should last a few months.
"The key, as always, is the installed base," Canter says. "But there's so many different target markets. It'll be easy to get overwhelmed. You'll need a staff of 15 people just to answer the phones. We'll do the usual things - developers' kits, conferences, seminars, T-shirts, hats, all that stuff." The prospect seems to overcome him with ennui, yet he appears convinced it will work.
[...] "I think aesthetic disclaimers will be more important," adds Canter. "You know, when PageMaker was first released, it created a lot of really ugly pages. I'll be surprised if 10 percent of the first smell output is bearable."
This is, after all, a totally new art form.
"We know when the first visual art was done, in cave paintings," Canter continues. "And the first musical art consisted of tribal people beating drums. Think of all the books written about musical and visual arts since then. Now show me the library on smells."
They even had an SDK for programming the device. I talked with them at the game developers conference about a game I was working on that might benefit from smell. They thought it would be more fun, if you could smell when The Sims needed to take a shower, pissed their pants, or set the house on fire.
For some reason, DigiScent's iSmell Digital Scent Technology never took off.
In 1987, three years after the success of NFS, Sun lost the war to define the standard graphics interface for the next generation. The winner, the X Window System, was technically inferior to Sun's NeWS offering. But X had one critical advantage; it was open source.
The NeWS communinty inside and outside of Sun tried making many of the same arguments in 1987, before the term "open source" was coined, to convince Sun to distribute the NeWS source code for free.
James Gosling recruited me to work on NeWS at Sun, by promising "We'll get it out, even if I have to spill some real blood on the floor." A lot of blood was certainly spilled, but we never got NeWS out for free. I wish he was right, when he told me "The folks running the
show now have more guts."
But they didn't, and still don't, and never will. So why would anyone ever believe that Sun would actually make Java free, even if James Gosling promised you personally that he would spill some real blood on the floor to make it happen?
The following messages led to James Gosling taking me to lunch during a job interview at Sun, and totally convincing me that Sun was absolutely serious about making NeWS free. So I accepted the job offer from Sun, instead going to Xerox PARC, based on that belief.
Date: Sat 3 Mar 1990 09:17:06 PST
From: James Gosling <jag@Eng.Sun.COM>
Subject: Re: sun's commitment to NeWS
To: Don Hopkins <don@cs.UMD.EDU>
The changes at Sun sound very very good! Especially if it will result
in freely available NeWS server sources. I am looking forward to the
results of your victory and the changes at Sun!
It's like working at a new company. Right now, the biggest problem in
making the NeWS server freely available is the fonts: we don't own
them, so we can't distribute them. There are a few public domain
fonts, but they're mostly uninteresting. People who want the fonts for
non-sun platforms will have to get licenses from the font houses.
I will be working at PARC this summer as an intern. I have not decided
what to do after that, but I will figure that out once I'm out there.
The new project you're starting up sounds extremely interesting, and I
would like to find out more about it! I talked to Smita yesterday and
she said you and she might be on this coast some time soon. If you
will be in my area I would love to see you and discuss what we have
been and will be doing in great detail! Once I am out west (around the
beginning of June) I hope we can get together more frequently and less
frantically!
We'll be in New York in May for a few days. We might be able to drop
in then. When you're out here, you'll definatly have to spend some
time with us.
====
Date: Tue 6 Mar 1990 08:37:51 PST
From: James Gosling <jag@Eng.Sun.COM>
Subject: Re: Sun's response to the net
To: Don Hopkins <don@cs.UMD.EDU>
Maxis has shipped 7 Sims expansion packs, and re-issued The Sims twice with some of them built in. But the number of objects in all the official expansion packs combined is quite small, compared to the number of user created objects.
By a large factor, players have created far more custom objects for The Sims, than the 1500 or so that Maxis has produced in 7 expansion packs. It's hard to estimate the exact number of player created objects, but it's interesting to note the number of "magic cookies" registered:
The free Transmogrifier
program enables players to create their own objects for The Sims. Anyone who downloads Transmogrifier may optionally register to get a free "magic cookie" (a unique 16 bit number) that distinguishes the objects they create, so the IDs of the objects created by different players won't collide.
Ultimately, the 16 bit magic cookie wasn't big enough: In four years, I've given out 127,031 magic cookies (so the 16 bit counter is about to wrap around a second time), so there are at least that many people interested in making their own objects for The Sims.
Players have created and published so many objects for downloading, that you can buy third party utilities to help categorize all your object downloads, and renumber object id collisions.
Assuming conservatively that each player who bothered to register a Transmogrifier magic cookie made only two objects (and ignoring everyone who didn't register), and assuming generously that Maxis made 1500 objects in all 7 expansion packs (by my count there are 1461 objects, including official Maxis downloads, excluding characters and special invisible objects), that's a User:Maxis ratio of 169:1 -- a factor of a couple orders of magnitude.
This is a propsal I wrote to Maxis after The Sims was released in March 2000, outlining some of my ideas for third party content authoring tools that I could develop. This led to The Sims Transmogrifier, but it touches on several other interesting tools and projects that Maxis never got around to.
There is a strong demand many from third parties who want to develop their own custom content for The Sims, including characters and objects.
Proposed Solution:
Update, clean up and document the content creation tools, so third parties can make their own characters and objects for The Sims.
Port the tools to the latest version of 3D Studio Max.
Make the tools self contained so they can be run stand-alone, by removing all dependencies on the Maxis environment and expensive software packages: Character Studio (Biped, Physique), Access, SourceSafe, MKS Toolkit (Korn Shell).
Document the content creation tools with an overview, examples, tutorials, and a reference manual. Write down the folklore that has been passed by word of mouth. Read over the code and document how it actually behaves.
Provide consulting, training and content creation services to third parties who want custom content authored for The Sims, but don't want or know how to do it themselves.
Develop a Sims Content Authoring SDK, so it's possible for third parties to create specialized content creation tools, like FaceLift.
Goals:
Third Party Character Creation and Customization:
Characters include virtual people who the user can play with, as well as autonomous non-player characters with programmed behaviors. Characters consist of bodies, heads and hands of 3D polygonal meshes with texture mapped bitmap skins.
Characters are created at Maxis by highly skilled artists using expensive tools like 3D Studio Max, Character Studio, the CMX exporter, and Photoshop.
Simplify the content creation tools and make them run stand-alone, so third party artists and designers can create their own characters and objects.
Maxis' expert 2D character artists currently use Photoshop to paint body textures in layers, then flatten and dither them into 256 color bitmap files.
"Flesh out" the process of applying layered clothing to naked bodies and dithering to 8 bits, so anyone can dress up their characters in all kinds of clothes.
Maxis' expert 3D modeling artists create textured low-poly rigid meshes (like heads, hands and accessories) attached to individual bones, and the CMX exporter creates rigid suits.
Make the CMX exporter easy for third parties to use, so many proficient 3D artists will be able to make their own textured heads, accessories, selected character pointers, and carried objects.
Maxis' expert 3D character modeling artists attach textured low-poly deformable meshes (like bodies) to skeletons using Character Studio Physique and Biped, and the CMX exporter reads out the weighted vertex/bone bindings and creates deformable suits for the game.
Character Studio is an expensive plug-in that enables a skilled artist to bind deformable meshes to skeletons, but there are other ways to do that with 3D Studio Max and other 3D tools.
Enhance the CMX exporter to support Max's new way of attaching deformable meshes to skeletons, so third party 3D artists can create bodies.
Maxis designers and programmers use the Edith tool to configure the behavior of characters and objects.
Clean up and document Edith, so third party designers and programmers can program and modify their own characters and objects.
Third Party Object Creation and Customization:
Objects consist of pre-rendered z-buffered sprites, packaged together with character
Here are some proposals and documents I've written, describing the work I've done and projects I've proposed with The Sims character animation system, plug-in objects and tools. After four years, a great deal of useful information has been reverse-engineered by independent third-party developers and open source projects like The Sims Technical Library. I hope these ideas will inspire more tool developers to contribute their programming skills to the Sims community.
Will Wright's original vision was enabling creative storytelling, by allowing players to add their own characters and objects to the game, and encouraging developers to program new objects and create tools like Transmogrifier and RugOMatic. Before The Sims was even released, Luc Barthelet sewed the seeds of its success by providing fans with content and tools like SimShow, so they could start making web sites and character skins. By the time it was released, you could already download a wide range of skins from many different web sites!
Four years later, Sims Object hackers have taken it much further than anyone ever imagined. A third-party tool called "iffpencil 2" has taken the place of Edith (Maxis's visual Sims object programming environment) in the Sims object hacking community.
One mind-blowing example is Slice City, which is an amazing game within a game: SimCity within The Sims! Your Sims can walk around and interact with a live, growing city like a Lilliputian scene from Gulliver's Travels. I'm not making this up: this actually runs INSIDE The Sims, and is ingeniously implemented by plug-in objects!
You start with a power plant, which gradually grows a whole city populated by swarms of insect-sized people. As the city grows, it spawns new objects including buildings (reprogrammed houseplants that the gardener still waters), crowds of people (reprogrammed cockroaches that you can still stomp to death), parks, marinas and monuments. You can go into build mode and rearrange them however you like, place roads (that get extremely busy at rush hour), and interact with the buildings through pie menus in play mode. There's even a tornado that comes through and knocks down your buildings. And you can download add-ons and pre-made cities!
Nothing like SimSlice was in the original design plan, but Will Wright credits all the creative players as the primary reason The Sims has become the #1 selling game of all time.
I believe the starkly contrasting failure of The Sims Online has a lot to do with the fact that it doesn't support player created content like the original Sims. One of the fundamental reasons that original Sims players have been disappointed with The Sims Online, is that Maxis never executed on the original plan to let online players upload and exchange their own skins and objects.
In order to help more fully realize Will's original plan, I wrote these proposals and documents to support the community of Sims artists, tool developers and object programmers like Bil Simser, Judson Hudson, Michael Watson, Rick Halle, Tom van Dijk
It's not fair that the Tobacco Industry gets all the taxpayers' cash handouts, while the Video Game Industry, which also makes dangerous products, doesn't get diddly squat.
I think the root of the problem is that violent video games don't kill as many people each year as tobacco.
So I call on all video game developers to develop much more lethal, violent, addictive video games than ever before, because the game industry has a lot of catching up to do with the tobacco industry.
Only when Violent Video Games succeed in killing more than four million people per year worldwide, will the U.S. Government recognize that they deserve the same longstanding protection and support as Big Tobacco.
The X-Windows Disaster chapter of the Unix-Haters Handbook explains why Cut and Paste doesn't work in X-Windows after all these years.
I think it's hillarious that Cut-and-Paste still doesn't work right, more than 10 years after I wrote this, which certainly illustrates my point that X-Window sucks.
-Don
The Nongraphical GUI
X was designed to run three programs: xterm, xload, and xclock. (The idea of a window manager was added as an afterthought, and it shows.) For the first few years of its development at MIT, these were, in fact, the only programs that ran under the window system. Notice that none of these program have any semblance of a graphical user interface (except xclock), only one of these programs implements anything in the way of cut-and-paste (and then, only a single data type is supported), and none of them requires a particularly sophisticated approach to color management. Is it any wonder, then, that these are all areas in which modern X falls down?
Ten years later, most computers running X run just four programs: xterm, xload, xclock, and a window manager. And most xterm windows run Emacs! X has to be the most expensive way ever of popping up an Emacs window. It sure would have been much cheaper and easier to put terminal handling in the kernel where it belongs, rather than forcing people to purchase expensive bitmapped terminals to run character-based applications. On the other hand, then users wouldn't get all of those ugly fonts. It's a trade-off.
[...]
Ice Cube: The Lethal Weapon
One of the fundamental design goals of X was to separate the window manager from the window server. "Mechanism, not policy" was the mantra. That is, the X server provided a mechanism for drawing on the screen and managing windows, but did not implement a particular policy for human-computer interaction. While this might have seemed like a good idea at the time (especially if you are in a research community, experimenting with different approaches for solving the human-computer interaction problem), it can create a veritable user interface Tower of Babel.
If you sit down at a friend's Macintosh, with its single mouse button, you can use it with no problems. If you sit down at a friend's Windows box, with two buttons, you can use it, again with no problems. But just try making sense of a friend's X terminal: three buttons, each one programmed a different way to perform a different function on each different day of the week -- and that's before you consider combinations like control-left-button, shift-right-button, control-shift-meta-middle-button, and so on. Things are not much better from the programmer's point of view.
As a result, one of the most amazing pieces of literature to come out of the X Consortium is the "Inter Client Communication Conventions Manual," more fondly known as the "ICCCM", "Ice Cubed," or "I39L" (short for "I, 39 letters, L"). It describes protocols that X clients must use to communicate with each other via the X server, including diverse topics like window management, selections, keyboard and colormap focus, and session management. In short, it tries to cover everything the X designers forgot and tries to fix everything they got wrong. But it was too late -- by the time ICCCM was published, people were already writing window managers and toolkits, so each new version of the ICCCM was forced to bend over backwards to be backward compatible with the mistakes of the past.
The ICCCM is unbelievably dense, it must be followed to the last letter, and it still doesn't work. ICCCM compliance is one of the most complex ordeals of implementing X toolkits, window managers, and even simple applications. It's so difficult, that many of the benefits just aren't worth the hassle of compliance. And when one program doesn't comply, it screws up other programs. This is the reason cu
A few weeks after RMS's house burnt down, Mike Gallaher and I ran into him at a science fiction convention. Mike worked for UniPress Software at the time, which RMS regularly refered to as "The Evil Software Hoarders".
Mike said "Richard, I heard a rumor about your house burning down".
Richard chimed back, "Yes, but where you work, I expect you'd have heard about it in advance!"
Here's a picture of Devon climbing onto the roof of said house, before it burnt down. (No, Devon wasn't breaking in to set the fire on behald of UniPress Software -- Devon lived there too.)
I agree: One problem with "mods" in the Quake sense, is the need to carefully balance them, which is a difficult, tedious, global task that requires a lot of skill and patience. (Sounds like fun, huh?)
Quake Mods aren't modular, they're monolithic. The level of granularity is so coarse, that designers need to perform a huge amount of tedious work, in order to make a good one. And you can only experience on at a time, so if you have 100 good mods, they don't synergistically add to each other's value.
Sims objects and characters are modular mods, so they plug together into a simulated environment and interact with each other. You can take objects and characters created by many different designers, and compose them together with stuff you created yourself, into your own higher level, monolithic "mod" (a family living in a house).
Sims object and character creators don't have to worry about achieving "balance" -- that's the fun part of the game that the players do for themselves, in Build and Buy mode.
Achieving balance is the hard part of making successful Quake mods.
But achieving balance is the fun part of playing The Sims.
This approach lifts the burden of achieving balance from the shoulders of mod designers, and repackages it as entertainment for players.
Games that support truly modular mods like Sims objects and characters, enable mod designers to create interesting, expressive, stand-alone objects that players love to plug together (and value enough that they'll pay for downloading), at a more prolific, finer level of granularity than monolithic game mods like Quake.
Modular mods work together at many different levels, and they're open-ended, so there's never any end to what you can do with them.
The Palm House, Kew Gardens is a great example how many different artists, designers, historians and botanists have colaborated together at different levels, to create an accurate representation of the Royal Botanical Garden, Kew.
With the permission of the Trustees of the
Royal Botanic Gardens, Kew, this theme celebrates the wonders of not only the Palm House, but the Temperate House, Dome and Formal Gardens of Kew in this prestigious time of it gaining World Heritage Status. You can read more about this important event here.
In order to accurately recreate this historical landscape and architecture in The Sims, the designers incorporated objects from Sims object artists including Persimmon Grove, Kiri's Simthing for Everybody, and cloned and modified other user created objects from the Sims Tattoo Parlor.
This exemplary historical recreation is not just the end-product of many people's colaboration, but actually a contributing source in a huge distributed feedback loop:
You can download the Royal Botanic Gardens, plug the lot into your game, move your own family in, furnish it however you like, rearrange the landscape and architecture, deconstruct and reassemble it again with your own collection of objects, direct the drama as it unfolds, take pictures with the built-in camera, write stories in your scrapbook, and publish your family and their story on The Sims Exchange, to share with other players, to download and play with all over again.
While The Sims lets you edit your house within the game, it does pause time, so the people aren't trying to walk around while you're rearranging the living room and putting up walls.
During the development of The Sims, one of the parts I worked on was the in-game editing tools. Originally, the tools could be active while time was running, and it caused all kinds of unplanned problems: You could pick up a burning fire and drop it on a victim, who would start screaming and die a horrible death. You could move the shower out of the way while somebody was getting into it, and watch them bathe naked in the middle of the room.
Instead of telling us programmers to fix the code, Will Wright addressed those problems by coming up with the Live/Buy/Build modes, which froze time while you were buying objects or building architecture. Underneath the hood, the game was perfectly happy to go on simulating while you were in build or buy mode, but the user interface forced it to pause.
But when the time came around to revisit the user interface design for The Sims Online, that solution no longer worked: You CAN'T freeze time, because it's an online game, so you're not the only player who would be frozen.
The Sims Online essentially requires time to go on while anyone's in build or buy mode. So the programmers had to fix the architectural and object placement tools to support that, the object scripters had to reprogram the objects to expect anything to happen, and the testers had to flush out zillions of unexpected bugs and side-effects from that major design change.
The other challenges that needed to be carefully balanced, were the perfect synchronization with the other players (so different people didn't end up with inconsistent views), and the immediate local feedback (so the wysiwyg house editing interface isn't sluggish, and always shows you what you'll get). The necessary compromise is that sometimes editing operations may not take effect, because somebody sat in (and locked) the chair you were about to move, for example.
Since I'm one of the people culpable for how complex and messy that wysiwyg editing code is, I was totally amazed how The Sims Online team at Maxis eventually got the editing tools to work as well as they do now.
The first time during The Sims Online beta that I saw another player editing their lot, building walls, laying out tiles and wallpaper, moving objects around, there were certainly a bunch of weird bugs and inconsistencies. But Maxis got them out eventually and now it works like a charm!
It's really amazing to sit back in Berkeley and watch your housemate in Japan build, landscape, decorate, furnish and feng-shui a home in The Sims Online. Watching a master at work is a great way to learn technique! You can even knock down the walls or move objects around at the same time yourself, if you're both housemates! So you have to be careful who you choose as housemates, because you might come back and find your lot trashed by The Sims Mafia. I'd love to watch one of those operations go down!
I can't wait for the multi player online versions of Photoshop and 3D Studio Max!
Level design can be so fun, that some games like The Sims actually have level designers built-in, as an integral part of the game.
The Sims "level designer" (i.e. the architectural tools for editing your house, buying and placing objects) are built into the game, which makes it possible for 8-year-old kids to easily "design levels".
But there's a lot more to customizing and creating you own game than "level design".
The Sims also lets you design your own characters and objects, plug them together to tell stories, and even publish the stories online.
The Sims' storytelling ability hinges on the player's ability to add their own characters (skins) and scenery (objects) into the set, to illustrate whatever stories they want to tell.
Tools like Transmogrifier and RugOMatic not only make it possible for characters to customize the game to tell their own stories, but also share their creations with other players, and download objects from the web to play in their own games.
High quality subscription web sites like SimFreaks actually pay talented artists to create beautiful sets of themed objects, like the
Christmas Gingerbread House set.
Some experienced artists are generous enough to freely teach other Sims players how to create their own objects, by publishing step-by-step tutorials in the principles of object making for the complete novice, at sites like The Bunny Wuffles School of Sims Transmogrification.
Maxis has created a wide range of objects for The Sims, which are included with the original game, the seven expansion packs, and numerous free downloads. But the player created object outnumber the Maxis created objects by an order of magnitude.
The Sims also opens up opportunities for programmers as well as artists: third party software developers
like SimPrograms and SimsTools
have created a market for tools that enable players to manage their Sims objects, and artists to make even more of them.
I'm developing some easy-to-use tools that automate the Transmogrification process, and open up Sims object creation to wide range of people. RugOMatic enables anyone, even without artistic talent or technical skills, to quickly create their own rugs for The Sim by dragging and dropping pictures and text.
Microsoft should pay for Mike Rowe and his family to change their names. And put them in the Witness Protection Program.
A few years ago, I published a web site called www.Micropoly.com, about an open source Microsoft Monopoly game I created as a joke.
Of course I was worried about being sued by Microsoft and Hasbro at the same time! I even talked to some people from EFF and hired a good lawyer specializing in artists rights, to give me advice on how not to get sued.
Fortunately the name Micropoly skirts around both vigorously enforced trademarks, and the satirical speech is clearly protected by the First Amendment. However, I learned I was still taking a risk, because the draconian trademark disparagement laws are commonly abused by big corporations like Microsoft and Hasbro, to nullify constitutionally protected freedom of speech.
Baby or bathwater? We distort, you decide. Some of our opinions and priorities are different, but John's arguments are always well thought out and interesting.
-Don
James Gosling certainly knew about Arthur van Hoff before 1993, at least since 1989 when Arthur released his amazing "GoodNeWS".
While I was working at Sun from 1990-1991, we flew Arthur out from Scotland to California and negotiated with him about integrating GoodNeWS aka HyperNeWS aka COOL aka HyperLook) into Sun's X11/NeWS window system. We spent quite a bit of time redesigning a new version of HyperNeWS for The NeWS Toolkit, I ported HyperNeWS to TNT, and Arthur delivered a prototype of the new system called "COOL" (Customizable Open Look).
Arthur was well known and respected in the NeWS community for his incredible work with HyperNeWS, NeWS, PostScript, a C to PostScript compiler called PdB, an SGML parser, and other amaing stuff. We lobbied Sun quite hard to convince them to hire Arthur, but they strung him along for a long time then finally refused, because they wanted to kill NeWS instead of doing something great with it.
But I wanted to work with Arthur anyway, so I left Sun and went out to the Turing Institute in Glasgow Scotland, to work with Arthur. We developed HyperNeWS into a product called "HyperLook", which we released in 1992. HyperLook included a wonderful PostScript graphics editor that you could use to create user interface components and customize the look and feel of the desktop with PostScript code and graphics.
I also ported SimCity to SunOS and used HyperLook to build the SimCity user interface and client/server interface, which we released at the same time.
As Peter Delany wrote on 10-29-1991:
Micropoly is the Microsoft Monopoly Game! It's a parody of Microsoft that's fun to play, a free board game based the rules of Anti-Monopoly, and a political statement protected under the First Amendment.
[...]
The Goals of the Micropoly Project:
To make a political statement about the effect of Microsoft's monopoly on the economy.
To raise awareness of the original folk game monopoly invented by Quakers and illegitimately patented and pirated by Parker Brothers.
To promote the alternative Anti-Monopoly rules, invented by Ralph Anspach in 1973, that teach why monopolies are bad.
To distribute the graphics and rules of Micropoly as a free "open source" game, true to the spirit of the Quaker who originally invented monopoly.
To develop a computerized version of monopoly, that can be customized with any local theme and artwork, and played over the Internet.
To imitate life imitating art imitating life imitating art, and so forth.
Micropoly synergistically illustrates several important points, by drawing parallels between the time of the Great Depression and the end of the Twentieth Century:
Monopolies are bad, and competition is good. The original rules of monopoly require everyone to play as a monopolist. That's why companies like Microsoft and Parker Brothers like the lesson it teaches: being a monopolist is good, and in order to win you have to make the biggest monopoly. But the rules of Anti-Monopoly divide players into monopolists versus competitors, resulting in a dynamic, unpredictable, more interesting game. Competition has the same benefits in real life!
The "open source" philosophy has been around a long time before computers. The Atlantic City Quaker woman who invented the original board game spread it around to her friends for free. She would invite people over to play, and they loved the game, so they made their own copies with crayons on oil cloth. This free folk game spread around the country and was played by many people, long before Parker Brothers knowingly decided pirated it. Today we have computer networks, desktop publishing, color printers, and the "open source" model of software development, so it is much easier to spread the free Micropoly game all over the world.
Big companies abuse the patent and legal systems to pirate and exploit other peoples original ideas. Parker Brothers pirated monopoly from its original inventors, illegitimately patented an "open source" folk game, perpetrated an extremely successful propaganda campaign to convince the world that Monopoly(TM) was invented by Charles B Darrow, and aggressively drove other companies out of business with frivolous lawsuits.
They waged a nasty 10 year legal assault on Ralph Anspach, inventor of the "Anti-Monopoly" game, ruining his successful game company, even though his case finally made it to the Supreme Court and won!
As a result of his hard fought victory, the true story of Parker Brother's Billion Dollar Monopoly Swindle has been published for all to read, and it's safe to call a game "anything-opoly".
We are very grateful that he never gave up, and won in spite of Parker Brothers' dirty tricks. We thank him, because he made it possible for us to publish Micropoly, and generously offered to let us use his superior Anti-Monopoly rules, which so perfectly illustrate the point of Micropoly.
The similarities in the monopolistic behaviors of Parker Brothers and Microsoft should be obvious.
[...]
-Don
[...]
Everyone notices the obvious built-in political bias, whatever that is. But everyone sees it from a different perspective, so nobody agrees what its real political agenda actually is. I don't think it's all that important, since SimCity's political agenda pales in comparison to the political agenda in the eye of the beholder.
Some muckety-muck architecture magazine was interviewing Will Wright about SimCity, and they asked him a question something like "which ontological urban paridigm most influenced your design of the simulator, the Exo-Hamiltonian Pattern Language Movement, or the Intra-Urban Deconstructionist Sub-Culture Hypothesis?" He replied, "I just kind of optimized for game play."
Then there was the oil company who wanted "Sim Refinery", so you could use it to lay out oil tanker ports and petrolium storage and piping systems, because they thought that it would give their employees useful experience in toxic waste disaster management, in the same way SimCity gives kids useful experience in being the mayor of a city. They didn't realize that the real lessons of SimCity are much more subtle than teaching people how to be good mayors. But the oil company hoped they could use it to teach any other lessons on their agenda just by plugging in a new set of graphics, a few rules, and a bunch of disasters.
And there was the X-Terminal vendor who wanted to adapt the simulator in SimCity into a game called "Sim MIS", that they would distribute for free to Managers of Information Systems, whose job it is to decide what hardware to buy! The idea was that the poor overworked MIS would have fun playing this game in which they could build networks with PCs, X-Terminals, and servers (instead of roads with residential, commercial, and industrial buildings), that had disasters like "viruses" infecting the network of PC's, and "upgrades" forcing you to reinstall Windows on every PC, and business charts that would graphically highlight the high maintanence cost of PCs versus X-Terminals. Their idea was to use a fun game to subtly influence people into buying their product, by making them lose if they didn't. Unlike the oil company, they certainly realized the potential to exploit the indirect ways in which a game like SimCity can influence the user's mind, but they had no grip on the concept of subtlety or game design.
[...]
-Don
Python has had OpenGL support for ages, and it also has a wide range of user interface toolkits, many of which been integrated with OpenGL.
I mean, come on: you can program OpenGL in Visual Basic. What's so impressive about finally being able to do the same thing in PHP? I'm not impressed that it's taken PHP so long to partially catch up with other toy languages.
-Don
Maxis has produced seven expansion packs for The Sims, and they have all sold extremely well. Some of the expansion packs have implemented ideas we had while developing the game, but didn't have time to put into the original product (like visiting town, socializing and shopping in Hot Date, or the pets in Unleashed).
In fact, a separate product from Maxis called SimsVille was cancled, largely because The Sims Hot Date expansion pack was able to realize many of the important new features that distinguished SimsVille from the original Sims.
The Sims expansion packs and objects are fundamentally different than typical monolithic game mods. They are modular components that plug together synergistically, not exclusive universes that you can only play one at a time. You can combine Sims downloads all together at once and play with them all like a big pile of legos, but you can only play one DOOM WAD at a time.
But the official expansion packs from Maxis are only one measure of success. More importantly, the players themselves have produced orders of magnitude more downloadable objects, skins and other content, than Maxis has produced.
The Sims is a flexible enough platform that supports other games and activities at many different levels: socializing, building, storytelling, crafting skins and objects, programming tools and behaviors, etc.
There has been an exciting Renaissance of original creative player produced content for The Sims. Player created content is the reason The Sims continues to sell so well after four years.
The Ultimate Sims List links to more than 3600 active Sims fan sites, where you can download an uncountable and growing number of objects, skins and decorations.
Player created content is where all the original creative action is happening with The Sims these days. Tools like The Sims Transmogrifier and RugOMatic enable players to create their own content. Players have figured out how to program the objects and written independent behavior programming tools like IFFPencil2.
One creative player called SimSlice has taken object programming much further than anyone at Maxis expected, by developing Slice City: a game within the game, like a little lilliputian version of SimCity! Other players are even creating add-ons to the Slice City add-on: making buildings, parks, landmarks, seaports and marinas to plug into Slice City!
I've made a video demonstration of RugOMatic and Slice City, that shows how to create rugs for The Sims by dragging and dropping pictures and text, and then set them on fire and kill people with the Slice City disaster menu!
-Don
Success doesn't equal integrity. Cheaters like the idiots at Fox News and the right wing zealots in Orange County make more money precisely because they're liars and parasites.
-Don
-Don
http://www.simslice.com/Slicecity.htm
The Power Plant is the buyable object -- click here to see a pic. Place it anywhere on your lot. That starts the game. Only buy one per lot for best gameplay. If this is your first time here, please read everything below carefully. Otherwise you can click here for some Slice City Gameplay Tips.
Slice City - "the other city that never sleeps". This city is awake and alive with hustle and bustle 24/7! Citizens use businesses, homes, parks, etc. for work and play, and these all cost you money to maintain. The happier the little people are in their habitat, the harder they will work, and the more profit you will make from them. Well-maintained cities can encourage more citizens to move in there. This will not only increase your population, but also your city size... and your profit margin. Cities that are neglected or not well-maintained will cease growing, or slowly deteriorate until they are nothing but piles of rubble. Using the various "disasters" (including a tornado option) can do that in much less time. ;) So to maximize your worker's output, keep all structures "refurbished". Your citizens may even help you do that on occasion too. And if you need more help, ask The Gardener. :)
The citizens also need power from the Power Plant to do any expanding. The Power Plant started in the "ON" position, but you can "Power it down" (by clicking on it) to stop your city from growing any further, and to keep your daily profits/costs stabilized (good for those that like the small town feel). "Power it up" again to allow for potential growth to resume (good for those that like the larger city life). City costs, profits and growth (if any) are calculated each midnight (between 11:55pm and 12:05am).
-Don
I believe that one of the major reasons that The Sims Online has failed (in stark contrast to EA's expectations, and the success of the offline version), is that The Sims Online doesn't support player created content. It's been promised, but EA never executed on Will Wright's vision.
The Sims was originally designed to support player created content. Thanks to the enormous quantity of player created content (on the order of millions of unique skins and objects, many of them excellent quality), The Sims is anything but bland and empty.
I know people who actually make a full-time living and support their real families, by creating original, high quality Sims objects. There's a thriving cottage industry of publishing Sims objects and skins on many web sites, and selling subscriptions to Sims players who love to pay for downloading all kinds of original content!
But "bland and empty" does accurately describe The Sims Online: once you've played for a while, you get tired of the sparse selection of character skins and objects to buy. But that wouldn't be the case, if The Sims Online supported player created content like The Sims offline, as EA has promised but not delivered.
Player created content makes the economy richer, interesting, dynamic and personal, because it enables creative players to bring actual VALUE into the economy, and truly invest in building the virtual world.
Contrast that with The Sims Online economy, which has been flooded by Simoleans generated with MazeBots by people selling them on eBay. 100 million more Simoleans dumped into the Sims Online economy isn't going to improve the game play or the richness of the environment one bit -- in fact it just makes it worse.
But enabling players to add new skins and objects to The Sims Online would substantially increase its quality, while earning the creative players respect and Simoleans, and entertaining everyone.
If the enormous amounts of energy that players were putting into implementing MazeBots and generating Simoleans to sell on eBay, were put into implementing content creation tools and generating skins and objects, then The Sims Online might someday be even more successful than The Sims Offline.
It doesn't require "extensive tools and abilities" for players to create content. And it's not necessary for the tools to be built into the game itself. The content creation tools should be factored out into an SDK and released, so third party developers can extend them and integrate them into other tool chains and web services.
The Sims Transmogrifier is an external tool for The Sims, which enables players to create their own objects, by cloning existing objects and repainting the 2D graphics with programs like Photoshop. It doesn't require 3D Studio Max or any advanced 3D skills. Lots of kids and adults use it every day to make their own objects.
But it's certainly possible to make useful content creation tools that are easier to use than Transmogrifier. After all, not everyone knows their way around Photoshop, but many people want to make objects with pictures they download from the net or take with digital cameras.
I've developed an easy to use tool called RugOMatic, which enables players to create rugs for The Sims by simply dragging
The carb, stem and chamber are instrumented with airflow and smoke density detectors. You can record a digital smoke envelope, and email it to your friends. You can scale and normalize any pre-recorded bong hit to your own lung capacity, or even mix and cross-fade between multiple bong hits.
MIDI Bong Version 2.0 will support quadratic multi-hit smoke interpolation, real-time streaming telebong control protocol, and head-to-head bonghit competitions.
More teathered and wireless base stations and portable units are in development: Personal iBong. Enterprise RackMount Bong Blade. Fast and Wide SCSI RAID Bong. PCMCIA BongCard OnTheGo. Portable USB Bongle. Firewire eBongPro. WiFi Residential Gateway Bong. Hands Free Bluetooth Bong.
-Don
About 5 years ago, DigiScents developed a product called the iSmell, which was covered by Wired Magazine. It was even on the memoriable cover. They hired Marc Canter to be their visionary spokesguru:
They even had an SDK for programming the device. I talked with them at the game developers conference about a game I was working on that might benefit from smell. They thought it would be more fun, if you could smell when The Sims needed to take a shower, pissed their pants, or set the house on fire.For some reason, DigiScent's iSmell Digital Scent Technology never took off.
-Don
The NeWS communinty inside and outside of Sun tried making many of the same arguments in 1987, before the term "open source" was coined, to convince Sun to distribute the NeWS source code for free.
James Gosling recruited me to work on NeWS at Sun, by promising "We'll get it out, even if I have to spill some real blood on the floor." A lot of blood was certainly spilled, but we never got NeWS out for free. I wish he was right, when he told me "The folks running the show now have more guts."
But they didn't, and still don't, and never will. So why would anyone ever believe that Sun would actually make Java free, even if James Gosling promised you personally that he would spill some real blood on the floor to make it happen?
The following messages led to James Gosling taking me to lunch during a job interview at Sun, and totally convincing me that Sun was absolutely serious about making NeWS free. So I accepted the job offer from Sun, instead going to Xerox PARC, based on that belief.
But the closest Sun ever came to making NeWS free was declaring it "free", but charging $995 for media, and not allowing anyone to redistribute it without buying a $995 CDROM first.
-Don
====
Date: Sat 3 Mar 1990 09:17:06 PST
From: James Gosling <jag@Eng.Sun.COM>
Subject: Re: sun's commitment to NeWS
To: Don Hopkins <don@cs.UMD.EDU>
It's like working at a new company. Right now, the biggest problem in making the NeWS server freely available is the fonts: we don't own them, so we can't distribute them. There are a few public domain fonts, but they're mostly uninteresting. People who want the fonts for non-sun platforms will have to get licenses from the font houses.
We'll be in New York in May for a few days. We might be able to drop in then. When you're out here, you'll definatly have to spend some time with us.
====
Date: Tue 6 Mar 1990 08:37:51 PST
From: James Gosling <jag@Eng.Sun.COM>
Subject: Re: Sun's response to the net
To: Don Hopkins <don@cs.UMD.EDU>
By a large factor, players have created far more custom objects for The Sims, than the 1500 or so that Maxis has produced in 7 expansion packs. It's hard to estimate the exact number of player created objects, but it's interesting to note the number of "magic cookies" registered:
The free Transmogrifier program enables players to create their own objects for The Sims. Anyone who downloads Transmogrifier may optionally register to get a free "magic cookie" (a unique 16 bit number) that distinguishes the objects they create, so the IDs of the objects created by different players won't collide.
Ultimately, the 16 bit magic cookie wasn't big enough: In four years, I've given out 127,031 magic cookies (so the 16 bit counter is about to wrap around a second time), so there are at least that many people interested in making their own objects for The Sims.
Players have created and published so many objects for downloading, that you can buy third party utilities to help categorize all your object downloads, and renumber object id collisions.
Assuming conservatively that each player who bothered to register a Transmogrifier magic cookie made only two objects (and ignoring everyone who didn't register), and assuming generously that Maxis made 1500 objects in all 7 expansion packs (by my count there are 1461 objects, including official Maxis downloads, excluding characters and special invisible objects), that's a User:Maxis ratio of 169:1 -- a factor of a couple orders of magnitude.
-Don
This is a propsal I wrote to Maxis after The Sims was released in March 2000, outlining some of my ideas for third party content authoring tools that I could develop. This led to The Sims Transmogrifier, but it touches on several other interesting tools and projects that Maxis never got around to.
A Proposal to Develop Third Party Content Authoring Tools for The Sims
by Don Hopkins, March 2000
Problem Definition:
There is a strong demand many from third parties who want to develop their own custom content for The Sims, including characters and objects.
Proposed Solution:
Update, clean up and document the content creation tools, so third parties can make their own characters and objects for The Sims.
Port the tools to the latest version of 3D Studio Max.
Make the tools self contained so they can be run stand-alone, by removing all dependencies on the Maxis environment and expensive software packages: Character Studio (Biped, Physique), Access, SourceSafe, MKS Toolkit (Korn Shell).
Document the content creation tools with an overview, examples, tutorials, and a reference manual. Write down the folklore that has been passed by word of mouth. Read over the code and document how it actually behaves.
Provide consulting, training and content creation services to third parties who want custom content authored for The Sims, but don't want or know how to do it themselves.
Develop a Sims Content Authoring SDK, so it's possible for third parties to create specialized content creation tools, like FaceLift.
Goals:
Third Party Character Creation and Customization:
Characters include virtual people who the user can play with, as well as autonomous non-player characters with programmed behaviors. Characters consist of bodies, heads and hands of 3D polygonal meshes with texture mapped bitmap skins.
Characters are created at Maxis by highly skilled artists using expensive tools like 3D Studio Max, Character Studio, the CMX exporter, and Photoshop.
Simplify the content creation tools and make them run stand-alone, so third party artists and designers can create their own characters and objects.
Maxis' expert 2D character artists currently use Photoshop to paint body textures in layers, then flatten and dither them into 256 color bitmap files.
"Flesh out" the process of applying layered clothing to naked bodies and dithering to 8 bits, so anyone can dress up their characters in all kinds of clothes.
Maxis' expert 3D modeling artists create textured low-poly rigid meshes (like heads, hands and accessories) attached to individual bones, and the CMX exporter creates rigid suits.
Make the CMX exporter easy for third parties to use, so many proficient 3D artists will be able to make their own textured heads, accessories, selected character pointers, and carried objects.
Maxis' expert 3D character modeling artists attach textured low-poly deformable meshes (like bodies) to skeletons using Character Studio Physique and Biped, and the CMX exporter reads out the weighted vertex/bone bindings and creates deformable suits for the game.
Character Studio is an expensive plug-in that enables a skilled artist to bind deformable meshes to skeletons, but there are other ways to do that with 3D Studio Max and other 3D tools.
Enhance the CMX exporter to support Max's new way of attaching deformable meshes to skeletons, so third party 3D artists can create bodies.
Maxis designers and programmers use the Edith tool to configure the behavior of characters and objects.
Clean up and document Edith, so third party designers and programmers can program and modify their own characters and objects.
Third Party Object Creation and Customization:
Objects consist of pre-rendered z-buffered sprites, packaged together with character
Sims Proposals
Here are some proposals and documents I've written, describing the work I've done and projects I've proposed with The Sims character animation system, plug-in objects and tools. After four years, a great deal of useful information has been reverse-engineered by independent third-party developers and open source projects like The Sims Technical Library. I hope these ideas will inspire more tool developers to contribute their programming skills to the Sims community.
Will Wright's original vision was enabling creative storytelling, by allowing players to add their own characters and objects to the game, and encouraging developers to program new objects and create tools like Transmogrifier and RugOMatic. Before The Sims was even released, Luc Barthelet sewed the seeds of its success by providing fans with content and tools like SimShow, so they could start making web sites and character skins. By the time it was released, you could already download a wide range of skins from many different web sites!
Four years later, Sims Object hackers have taken it much further than anyone ever imagined. A third-party tool called "iffpencil 2" has taken the place of Edith (Maxis's visual Sims object programming environment) in the Sims object hacking community.
One mind-blowing example is Slice City, which is an amazing game within a game: SimCity within The Sims! Your Sims can walk around and interact with a live, growing city like a Lilliputian scene from Gulliver's Travels. I'm not making this up: this actually runs INSIDE The Sims, and is ingeniously implemented by plug-in objects!
You start with a power plant, which gradually grows a whole city populated by swarms of insect-sized people. As the city grows, it spawns new objects including buildings (reprogrammed houseplants that the gardener still waters), crowds of people (reprogrammed cockroaches that you can still stomp to death), parks, marinas and monuments. You can go into build mode and rearrange them however you like, place roads (that get extremely busy at rush hour), and interact with the buildings through pie menus in play mode. There's even a tornado that comes through and knocks down your buildings. And you can download add-ons and pre-made cities!
Nothing like SimSlice was in the original design plan, but Will Wright credits all the creative players as the primary reason The Sims has become the #1 selling game of all time.
I believe the starkly contrasting failure of The Sims Online has a lot to do with the fact that it doesn't support player created content like the original Sims. One of the fundamental reasons that original Sims players have been disappointed with The Sims Online, is that Maxis never executed on the original plan to let online players upload and exchange their own skins and objects.
In order to help more fully realize Will's original plan, I wrote these proposals and documents to support the community of Sims artists, tool developers and object programmers like Bil Simser, Judson Hudson, Michael Watson, Rick Halle, Tom van Dijk
Should the Government Treat Video Games like Alchohol and Tobacco?
[...]It's not fair that the Tobacco Industry gets all the taxpayers' cash handouts, while the Video Game Industry, which also makes dangerous products, doesn't get diddly squat.
I think the root of the problem is that violent video games don't kill as many people each year as tobacco.
So I call on all video game developers to develop much more lethal, violent, addictive video games than ever before, because the game industry has a lot of catching up to do with the tobacco industry.
Only when Violent Video Games succeed in killing more than four million people per year worldwide, will the U.S. Government recognize that they deserve the same longstanding protection and support as Big Tobacco.
-Don
-Don
-Don
The Nongraphical GUI
X was designed to run three programs: xterm, xload, and xclock. (The idea of a window manager was added as an afterthought, and it shows.) For the first few years of its development at MIT, these were, in fact, the only programs that ran under the window system. Notice that none of these program have any semblance of a graphical user interface (except xclock), only one of these programs implements anything in the way of cut-and-paste (and then, only a single data type is supported), and none of them requires a particularly sophisticated approach to color management. Is it any wonder, then, that these are all areas in which modern X falls down?
Ten years later, most computers running X run just four programs: xterm, xload, xclock, and a window manager. And most xterm windows run Emacs! X has to be the most expensive way ever of popping up an Emacs window. It sure would have been much cheaper and easier to put terminal handling in the kernel where it belongs, rather than forcing people to purchase expensive bitmapped terminals to run character-based applications. On the other hand, then users wouldn't get all of those ugly fonts. It's a trade-off.
[...]
Ice Cube: The Lethal Weapon
One of the fundamental design goals of X was to separate the window manager from the window server. "Mechanism, not policy" was the mantra. That is, the X server provided a mechanism for drawing on the screen and managing windows, but did not implement a particular policy for human-computer interaction. While this might have seemed like a good idea at the time (especially if you are in a research community, experimenting with different approaches for solving the human-computer interaction problem), it can create a veritable user interface Tower of Babel.
If you sit down at a friend's Macintosh, with its single mouse button, you can use it with no problems. If you sit down at a friend's Windows box, with two buttons, you can use it, again with no problems. But just try making sense of a friend's X terminal: three buttons, each one programmed a different way to perform a different function on each different day of the week -- and that's before you consider combinations like control-left-button, shift-right-button, control-shift-meta-middle-button, and so on. Things are not much better from the programmer's point of view.
As a result, one of the most amazing pieces of literature to come out of the X Consortium is the "Inter Client Communication Conventions Manual," more fondly known as the "ICCCM", "Ice Cubed," or "I39L" (short for "I, 39 letters, L"). It describes protocols that X clients must use to communicate with each other via the X server, including diverse topics like window management, selections, keyboard and colormap focus, and session management. In short, it tries to cover everything the X designers forgot and tries to fix everything they got wrong. But it was too late -- by the time ICCCM was published, people were already writing window managers and toolkits, so each new version of the ICCCM was forced to bend over backwards to be backward compatible with the mistakes of the past.
The ICCCM is unbelievably dense, it must be followed to the last letter, and it still doesn't work. ICCCM compliance is one of the most complex ordeals of implementing X toolkits, window managers, and even simple applications. It's so difficult, that many of the benefits just aren't worth the hassle of compliance. And when one program doesn't comply, it screws up other programs. This is the reason cu
Mike said "Richard, I heard a rumor about your house burning down".
Richard chimed back, "Yes, but where you work, I expect you'd have heard about it in advance!"
Here's a picture of Devon climbing onto the roof of said house, before it burnt down. (No, Devon wasn't breaking in to set the fire on behald of UniPress Software -- Devon lived there too.)
-Don
Quake Mods aren't modular, they're monolithic. The level of granularity is so coarse, that designers need to perform a huge amount of tedious work, in order to make a good one. And you can only experience on at a time, so if you have 100 good mods, they don't synergistically add to each other's value.
Sims objects and characters are modular mods, so they plug together into a simulated environment and interact with each other. You can take objects and characters created by many different designers, and compose them together with stuff you created yourself, into your own higher level, monolithic "mod" (a family living in a house).
Sims object and character creators don't have to worry about achieving "balance" -- that's the fun part of the game that the players do for themselves, in Build and Buy mode.
Achieving balance is the hard part of making successful Quake mods. But achieving balance is the fun part of playing The Sims. This approach lifts the burden of achieving balance from the shoulders of mod designers, and repackages it as entertainment for players.
Games that support truly modular mods like Sims objects and characters, enable mod designers to create interesting, expressive, stand-alone objects that players love to plug together (and value enough that they'll pay for downloading), at a more prolific, finer level of granularity than monolithic game mods like Quake.
Modular mods work together at many different levels, and they're open-ended, so there's never any end to what you can do with them.
The Palm House, Kew Gardens is a great example how many different artists, designers, historians and botanists have colaborated together at different levels, to create an accurate representation of the Royal Botanical Garden, Kew.
In order to accurately recreate this historical landscape and architecture in The Sims, the designers incorporated objects from Sims object artists including Persimmon Grove, Kiri's Simthing for Everybody, and cloned and modified other user created objects from the Sims Tattoo Parlor.This exemplary historical recreation is not just the end-product of many people's colaboration, but actually a contributing source in a huge distributed feedback loop:
You can download the Royal Botanic Gardens, plug the lot into your game, move your own family in, furnish it however you like, rearrange the landscape and architecture, deconstruct and reassemble it again with your own collection of objects, direct the drama as it unfolds, take pictures with the built-in camera, write stories in your scrapbook, and publish your family and their story on The Sims Exchange, to share with other players, to download and play with all over again.
-Don
During the development of The Sims, one of the parts I worked on was the in-game editing tools. Originally, the tools could be active while time was running, and it caused all kinds of unplanned problems: You could pick up a burning fire and drop it on a victim, who would start screaming and die a horrible death. You could move the shower out of the way while somebody was getting into it, and watch them bathe naked in the middle of the room.
Instead of telling us programmers to fix the code, Will Wright addressed those problems by coming up with the Live/Buy/Build modes, which froze time while you were buying objects or building architecture. Underneath the hood, the game was perfectly happy to go on simulating while you were in build or buy mode, but the user interface forced it to pause.
But when the time came around to revisit the user interface design for The Sims Online, that solution no longer worked: You CAN'T freeze time, because it's an online game, so you're not the only player who would be frozen.
The Sims Online essentially requires time to go on while anyone's in build or buy mode. So the programmers had to fix the architectural and object placement tools to support that, the object scripters had to reprogram the objects to expect anything to happen, and the testers had to flush out zillions of unexpected bugs and side-effects from that major design change.
The other challenges that needed to be carefully balanced, were the perfect synchronization with the other players (so different people didn't end up with inconsistent views), and the immediate local feedback (so the wysiwyg house editing interface isn't sluggish, and always shows you what you'll get). The necessary compromise is that sometimes editing operations may not take effect, because somebody sat in (and locked) the chair you were about to move, for example.
Since I'm one of the people culpable for how complex and messy that wysiwyg editing code is, I was totally amazed how The Sims Online team at Maxis eventually got the editing tools to work as well as they do now.
The first time during The Sims Online beta that I saw another player editing their lot, building walls, laying out tiles and wallpaper, moving objects around, there were certainly a bunch of weird bugs and inconsistencies. But Maxis got them out eventually and now it works like a charm!
It's really amazing to sit back in Berkeley and watch your housemate in Japan build, landscape, decorate, furnish and feng-shui a home in The Sims Online. Watching a master at work is a great way to learn technique! You can even knock down the walls or move objects around at the same time yourself, if you're both housemates! So you have to be careful who you choose as housemates, because you might come back and find your lot trashed by The Sims Mafia. I'd love to watch one of those operations go down!
I can't wait for the multi player online versions of Photoshop and 3D Studio Max!
-Don
The Sims "level designer" (i.e. the architectural tools for editing your house, buying and placing objects) are built into the game, which makes it possible for 8-year-old kids to easily "design levels".
But there's a lot more to customizing and creating you own game than "level design". The Sims also lets you design your own characters and objects, plug them together to tell stories, and even publish the stories online.
The Sims' storytelling ability hinges on the player's ability to add their own characters (skins) and scenery (objects) into the set, to illustrate whatever stories they want to tell.
Thanks to player created content, The Sims becomes more like the open-ended Perky Pat layouts in Philip K Dick's book, The Three Stigmata of Palmer Eldritch.
Tools like Transmogrifier and RugOMatic not only make it possible for characters to customize the game to tell their own stories, but also share their creations with other players, and download objects from the web to play in their own games.
High quality subscription web sites like SimFreaks actually pay talented artists to create beautiful sets of themed objects, like the Christmas Gingerbread House set.
Some experienced artists are generous enough to freely teach other Sims players how to create their own objects, by publishing step-by-step tutorials in the principles of object making for the complete novice, at sites like The Bunny Wuffles School of Sims Transmogrification.
The celebrated designers at the Cultural Heritage Foundation have made names for themselves by using Transmogrifier and other tools to create all the necessary scenery to build amazing historical recreations, like The Palm House, Kew Gardens, London England, the Isambard Kingdom Brunel Theme, and the Turkish Baths.
Maxis has created a wide range of objects for The Sims, which are included with the original game, the seven expansion packs, and numerous free downloads. But the player created object outnumber the Maxis created objects by an order of magnitude.
The Sims also opens up opportunities for programmers as well as artists: third party software developers like SimPrograms and SimsTools have created a market for tools that enable players to manage their Sims objects, and artists to make even more of them.
I'm developing some easy-to-use tools that automate the Transmogrification process, and open up Sims object creation to wide range of people. RugOMatic enables anyone, even without artistic talent or technical skills, to quickly create their own rugs for The Sim by dragging and dropping pictures and text.
RugOMatic
A few years ago, I published a web site called www.Micropoly.com, about an open source Microsoft Monopoly game I created as a joke.
Of course I was worried about being sued by Microsoft and Hasbro at the same time! I even talked to some people from EFF and hired a good lawyer specializing in artists rights, to give me advice on how not to get sued.
Fortunately the name Micropoly skirts around both vigorously enforced trademarks, and the satirical speech is clearly protected by the First Amendment. However, I learned I was still taking a risk, because the draconian trademark disparagement laws are commonly abused by big corporations like Microsoft and Hasbro, to nullify constitutionally protected freedom of speech.
But they wouldn't take the bait. The only company I ever heard from was the manufacturer of the proprietary Micropoly Industrial Lubricant, the Solid Idea for Lubrication for food and beverage processing. Their customers were getting confused when they found my Microsoft Monopoly site.
-Don
And 1 + 1 = 4, as 1 approaches 2.
-Don