« VALENTINE'S BLOGGING | Main | LINK OF THE WEEK! »

Wednesday, February 16, 2005

SHOOTING TO KILL: BEDAZZLE'S U:SL

Four months fighting lag, stubborn code, and family crises to create Second Life's first full-featured, multiplayer first-person shooter. (Previous projects from the "Shooting to Kill" series covered here and here.)

I first decided to write something about U:SL sometime last November, I think, right after I heard the howling wind and the crunching snow. Those were some of the sound effects Team Bedazzle had already incorporated into their Winter Ice Cathedral map on the simulator of Abraxas, and it was touches like that which convinced me that something truly ambitious was in the making. Since then, Linden Lab has put some indirect promotional punch behind U:SL, featuring it with some in-game screenshots and a trailer (both of which I ended up contributing some post-reportage assistance in creating.) But back in November, of course, the game was still an unknown quantity-- and for that matter, was still referred to as Project Unreal, in tribute to the classic FPS Unreal Tournament.

In gameplay, U:SL resembles a cross between Unreal Tournament and Halo, with the gritty, big-chested firepower of the former, and the slower paced, low-gravity combat of the latter. (And this last element is more a server-side issue-- since all objects and avatars in Second Life are streamed, the average frame rate runs considerably lower than most current shooters.) Now in publicly playable open Beta, U:SL is the work of nearly fifty residents from around the world, its four month development cycle a history of setbacks, workarounds, and for at least one key developer, emotional ordeal.

What follows are a few milestones along the way, as told by three members of Bedazzle's core team.

FROM A WALK IN THE DUCK PARK TO A SPRINT ON RAINY STREETS

"[A]s we worked on Sim Horror," Bedazzle leader and financier Foxy Xevious tells me, "I was trying to figure out what path I wanted to take next for my next project. I remember talking to Yadni [Monde] on ideas and he suggested a shooting game." After mulling the concept over, she decided this where she'd invest her time and money (at the time, Foxy leased several simulators from Linden Lab.) At first, her plan was to create three themed combat areas: a snow-covered castle, a jungle, and a cityscape. Led by Bedazzle's chief artist Jimmy Thompson, the team began work on these environments.

"The snow level was impressive from day one of being built," says Foxy, but "the jungle was scratched 'cause it kept looking more like a romantic park where people go to feed the ducks. So I wasn't impressed with that... and then with a little nagging from me, I suggested to Jimmy [that] we start working on a city." They pored over urban photographs, and Jimmy was fixated on one depicting rain-swept streets. "I agreed and said 'Let's make a Chinatown...'"

THE TOWN BENEATH THE TOWN

"I tried to recreate the high density ambiance of the night life of the Chinatown streets we have on every big city," Jimmy Thompson tells me. To do that, he created a new weather system-- also used in the winter map-- and a series of lighting effects which would illuminate the streets in a unique way. But in Chinatown, perhaps the most striking effect is the reflection you see in the streets themselves, in the ghostly reflection in the puddles. While some graphic engines are pre-engineered to generate mirror effects, Second Life's does not.

So Jimmy Thompson created his own.

"Creating a reflective surface inside SL is a simple techinque that can be used for many purposes," Thompson tells me. "Inside Chinatown, I created a mirror duplicate of every 'important' object that needed to appear in the reflection effect. The puddles that we see in the street of Chinatown are transparent regions inside the ground texture." In other words, you're actually not seeing reflections at all, but looking down at exact copies in reverse.

During the open Beta of Chinatown, a griefer smuggles in a contraband "push" gun and shoots me with it, tossing me hundreds of meters up and out of the town. Which turns out to be a good thing, because it gives me a chance to see what Jimmy's talking about from a new angle, when I land.

"And now that I'm looking at [Chinatown] from outside," I tell Jimmy, "I noticed that it's actually floating in the air. Why is that?"

"Chinatown has its own replica 'under' the street level in order to create the reflection effect," he says. "There is a HUGE black box containing a replica of all major object to create the reflection. All those object are simpler versions with small texture and in phantom mode." Jimmy grins. "Not the whole town, but all the object that I wanted to get reflected. I'd say 25% of it."

ON THE NOSE CODE

"The whole thing includes a very large amount of scripts, designs, and techniques I had to shove together to make work," Crystalshard Foo tells me. Ms. Foo is Bedazzle's chief coder, whose job it was to jigger the in-world Linden Script Language into something that would resemble a shooter, including multiple weapons, hit points, scoring, and classic game modes like Capture the Flag.

"The game itself was designed to be modular," says Foo. "Weapons can be specificed and added easily. A script is available that can make any weapon compatible with the game in some way... So once the official U:SL project is over, we'll see about letting additional third-party weapons in the game." (U:SL's native hardware were primarily developed by master weaponatrix Francis Chung.)

When you begin a game of U:SL, you attach a small pyramid to yourself, which floats right in front of your face. "The pyramid functions as both your game client ('life pack') and HUD," Foo explains. And as it happens, it's fitted to sit right in front of your nose. "The reason being that when you go [into first-person] mouselook, even if you choose to keep your avatar visible, all head attachments go invisible." What they wanted was a heads-up display (keeping track of hits points and the like) which was visible even in first-person mode-- something that was also not part of Linden Lab's base code. The workaround here is a see-through helmet device which holds the pyramid and its game data in place, dangling in front of you, even in first-person. "Less pretty," she acknowledges, "but it works!"

Once attached, the pyramid turns the plethora of guns and effects into a full-fledged game. "[T]he lifepack both maintains connections with the server over the network," says Foo, "and acknowledge incoming damage events generated by gun bullets. In effect, all the active objects in the game talk with each other. Local events (gun bullets, life/shield pick-ups, etc) are handled locally. Global events (flag captured, game start/stop, player got fragged) are sent to the server for acknowledgement before being processed, confirmed, and broadcasted to everyone else." (U:SL's scoring system was designed by a Till Stirling of Silverday Production-- which means, yes, not only are there resident game developers in Second Life, there are middleware developers, too.)

In all this, Crystalshard Foo believes she's developed a viable alternative to the installed combat system created by Linden Lab, which simply keeps track of hit point damage, and teleports dead residents back to their pre-set home location. "Which-- let's admit it-- is very limited and sometimes just downright annoying."

Despite all this innovation, it's U:SL's in-world server-- represented in the game by a humble laptop near the simulator teleport entry points-- that Cystalshard Foo is most proud of. "I had to actually sit down and design a full-scale network protocol for this thing," Foo says. "It was very educational and, of course, loads of fun." She grins broadly. "Sometimes during the development I turned on Debug output just to get warm fuzzies in my heart. (Much to the cringe of everyone nearby.)"

THE INTERNATIONAL LABOR OF LOVE

"We started the project in October," Jimmy tells me, "so it's took a total of five months to get the final result. I'd say that I invested around 20 hours a week in the project." This, after his real life work running a small French Canadian company that develops software for regulating maritime traffic. "3D is a passion for me," he says. "I strongly believe that if we work all together we could reach a level of visual apparence equivalent to the other major online games."

Crystalshard Foo, who logs into Second Life from somewhere in Israel, declines to say what she does for a living-- except to say it isn't programming and it isn't game development. "Its not my job-- that'll ruin the fun... Thing is, I have a good sense of observation. I am good at 'reverse engineering'. So I learned the concepts of play by playing these games... [then] learned how they did it and used it to make my own."

How many hours per week did he spend working on U:SL, on average?

"Almost every waking hour since December, as long as I was near a 3D and Net-capable PC," she answers. "When I code a project I am obsessed. When I am at the computer, I code. When I am not on the editor, I code in notepad. When I am not at the computer at all, I code mentally. (I once went as far as code on a restaurant napkin, but that's an entirely different story.)"

THE HEART OF BEDAZZLE

Even before U:SL's public release, Foxy Xevious found herself fielding offers from professional developers/filmmakers. "We are waiting everything out to see what our option are at the end," she says. Throughout its development, she has always described the project as something without commercialism as a main goal; something that she and her team made for the sheer love of the doing, and the chance to share it with the Second Life community. In Foxy's case, that devotion extends beyond the time and effort it took, or even the money she's spent developing it. (As with Sim Horror, Foxy financed U:SL out of her own pocket, plowing thousands of dollars she's earned from the real estate title business she owns and runs out of her home, into this most ephemeral of creative endeavors.

Beyond time, effort, and money, Foxy also cares for her daughter, now five. "I get about four hours of sleep a night," Foxy tells me. "She’s in school 'til about 6PM and my sister's kids live here." So she trades care of their kids with her sister, while somehow running the title business, and these two worlds featuring snow and Chinese lanterns and thousands of shell casings.

"I don't know how I can leave Second Life on one PC running on Busy mode as I work processing [title] orders," she admits. "Anytime I hear Instant Message jingles or hear someone [in SL] typing to me, I'll take a peak at who it is. I think it also creates a lot of work for me on the weekends, since on Fridays I have work pile up to get out by Sunday night."

In the middle of U:SL's development, Foxy Xevious sent out a notecard to members of the Bedazzle team, and some of her other close SL friends:

"A lot of things are going through my head that are crushing my spirits into pebbles," she wrote in it. "The person everyone knows me as is not a sad person, is not a depressed person... I am a warrior, and if there's one thing I can't stand is a person who always feels sorry for themselves, or a person who has the feeling of being helpless."

But since then, she went on, things had changed. While she was working on U:SL, Foxy's real life mother contracted cancer, and had little time left. And in the time she had remaining, Foxy had decided to take care of her. This was a difficult decision, not only because it required moving her life and her business to another state, so she could buy a home near her mother. More than that, she said, it was difficult because her mother had abandoned her at the age of two, leaving Foxy to be raised by an aunt.

All this comes out shortly after playing a few rounds of U:SL with Foxy in the snow beneath the Winter Ice Cathedral, running down pathways, leaping over obstacles, exchanging gunfire. "[C]reating U:SL has not been easy," she acknowledges. "It's been a emotional rollercoster for me, but I think it also has done me a lot of good. I have a solid team that shows me support in no matter what choices I make... We created something that we love. It's our world that we build here for others to enjoy. It helps keep my mind off things, while giving me something to look forward to."

"Do you think being a caretaker for U:SL and SimHorror is sort of a response to that?" I ask her, referring to her mother's mortal illness. "Wanting to hold something together?"

"I see it as healing, to be honest, Hamlet," Foxy Xevious tells me. "Jimmy is like a best friend here who always cheers me up and keeps me motivated to go on... If something bothers you a lot it makes it hard to stay focused-- sometimes to where you want to give up. There’s been plenty of times where real life has took away all my motivation to not want to even go further."

But somehow, she still found a way to keep at it. The spires of the Palace are testament to that-- as are the open doors in Chinatown, lit up by a glow, going off to places unknown.

"I gave [my mother] a chance to be in my life when she was diagnosed with cancer," she continued in the notecard to her friends. "I have forgiven her for what she has done to me but the pain that I may lose her soon is killing my soul. As happy as I try to be, as much as I try to forget, the thoughts will not exit my mind."

But despite all that, this wasn't her way of announcing her decision to abandon Bedazzle or U:SL. This was just her way of explaining why the way forward would be so hard for her at times.

"Please forgive me if I may not be myself for the coming months," she concluded. "I will still continue to be a part of Bedazzle, all plans are still on, I will still be around. Nothing brings me happiness than to see our group succeed. I have invested too much time and money to be a quitter now."


Thanks to Cindy Bismark, Artemis Fate, and additional unnamed residents for the varied action poses in the screenshots accompanying this piece.

Posted at 05:15 AM | Permalink

TrackBack

TrackBack URL for this entry:
http://www.typepad.com/services/trackback/6a00d8341ccd9653ef00e5505507ad8834

Listed below are links to weblogs that reference SHOOTING TO KILL: BEDAZZLE'S U:SL:

» Unique Grand Canyon Ranch Wedding Package Departing from Las Vegas Now Offered by Las Vegas Grand Canyon Tours from This unique all-inclusive
package is an opportunity for couples to create a wedding experience that everyone involved [Read More]

Tracked on May 26, 2006 11:32:57 AM

» Getting Rich in the Heart of Russia from Vladimir Putin's
be criticizing Vladimir Putin's heavy hand, but with oil money bringing new prosperity, Russians aren't [Read More]

Tracked on May 27, 2006 4:02:20 PM

» News Online from JapanHorse
Features weekly articles, archives to past issues, and timelines of scientific importance. [Read More]

Tracked on Jun 4, 2006 1:50:31 PM

» q aqua clean detox dietary supplement from Detox process
The good news is that the detox process may enhance your body's ability to metabolize the medication and you may soon require less. But in the meantime, ... [Read More]

Tracked on Jun 9, 2006 5:37:16 PM

» Video: al-Zarqawi's (Not Very) Safe House Bombed from
[Read More]

Tracked on Jun 13, 2006 10:53:38 PM

» Bosh's Pal Aldridge Could Make Sweet Music from Feschuk of the
attention yesterday when they got word that LaMarcus Aldridge, the 6-foot-10 forward who is one of the top prospects in the coming [Read More]

Tracked on Jun 28, 2006 8:51:49 PM

» RB Toolbar from rbtoolbar
RB Toolbar - уникальный и наиболее перспективный и продуманный проект... [Read More]

Tracked on Jul 20, 2006 10:59:52 AM

» Medical Dictionary from Bestbarrel
Searchable dictionary created by Dr. ALFRED. [Read More]

Tracked on Jul 25, 2006 8:12:20 PM

» ALL Themes from Invision Power Board
He has set up a test blog so you can check it out - it’s great work. ... Note to all theme authors: In order to be considered for the competition, ... [Read More]

Tracked on Jul 26, 2006 5:32:54 AM

» site map: charms holding pins from myjewelrystore
Select your jewelry...14K White Gold .43ct Diamond & Sapphire Ring G-H SI3 [Read More]

Tracked on Jul 27, 2006 11:39:32 AM

» People Search in Internet 2006 from Plot Summary for Words
Words - Cast, Crew, Reviews, Plot Summary, Comments, Discussion, Taglines, Trailers, Posters, Photos, Showtimes, Link to Official Site, Fan Sites. [Read More]

Tracked on Aug 2, 2006 12:58:08 AM

» long titts from People searching
Searchable keywords online... [Read More]

Tracked on Aug 2, 2006 1:04:06 AM

» Bvlgari from Bvlgari Watches
Great Saving On Bvlgari Watches Bulgari Watch Bvlgari Assioma, Bulgari Zero1, Bulgari Watch Tubagas, Bvlgari Diagono Aluminium, ... [Read More]

Tracked on Aug 5, 2006 2:01:58 AM

» Wiki: Search Results from MostDor
Search Results · WelcomeVisitors . . . . . . WhatIsWiki WhatIsWiki . . . . . . WhatIsWiki. 2 pages found out of 22 pages searched. ... [Read More]

Tracked on Aug 5, 2006 7:45:30 AM

» clinique from clinique: Read reviews and compare prices
Shop our selection of Clinique fragrances and cosmetics online. ... Search results for "clinique". Item 1 to 10 out of 580 Show all, sorted by Popularity ... [Read More]

Tracked on Aug 5, 2006 9:35:18 AM

» LA Jury: Vioxx Maker Not Liable from not liable for
man's heart ailments after he took the drugmaker's once-popular painkiller [Read More]

Tracked on Aug 8, 2006 10:08:18 PM

» Search Results Page - a from ondmd
Your search results page is packed with information. ... [Read More]

Tracked on Aug 10, 2006 6:32:36 PM

» Internet Home from For All
... Computers & Internet News · History of Computers & Internet ... 1995-2006 [Read More]

Tracked on Aug 12, 2006 10:58:33 AM

» Search Results Page - d from much.kiev.ua
Your search results... [Read More]

Tracked on Aug 16, 2006 2:51:58 AM

» Soma next day delievery. from Soma to florida.
Soma cannabis. Soma. [Read More]

Tracked on Sep 21, 2009 10:56:57 PM

Comments

Oh, fantastic article. *reads*

Of course, I'm biased. But openly so.

Since when have you shown UI in screenshots to go with a story, Hamlet? It's a nice change to diversify things but I'm just curious. :)

OMG that photo Kris took of Crystal made it! AWESOMES!!!

Posted by: Torley at Feb 16, 2005 12:27:48 PM

Good entry for a worthy topic!

Posted by: Pirate Cotton at Feb 16, 2005 4:22:58 PM

CrystalShard's system is so modular that there's huge "mod" potential. A group of people could come in and all agree to play a game and allow things like freeze rays, remote mines, or even slow-motion combat. In this way people can bring their own attachments and basically have a modded server - much like Hamlet's experience with the pushgun. *grin*

Posted by: HiroPendragon at Feb 18, 2005 1:11:40 AM

laggy. is all I can add to that. I rather play counterstrike than to have this in SL aswell. that´s adding more than nesessary. I mean nice that bedassle is so creative but what for?I mean, what do these people get in return? and what does it offer to the community? It´s against my nature to come to SL to shoot around. If I want to play egoshooter, I play an egoshooter which is coded for that purpose and won´t have the laggy environment of SL.
I think it´s a waste of energy. Sorry to say it so drastically. Though the grafics are spectacular. Maybe it´s more like an egobooster than an egoshooter for some individuals.

Posted by: Demian Caldera at Feb 18, 2005 9:32:03 AM

Demian, I think the reason for them trying to build it is less of what monetary gain they could make of it but more of pushing the limits of Second Life and seeing what they could make.

When they asked the man who climbed mount everast and came down half dead his answer was, "Because it's there".

Posted by: Artemis at Feb 18, 2005 9:57:48 AM

> If I want to play egoshooter, I play an
> egoshooter which is coded for that purpose

That's a fascinating way to describe a first-person shooter, Demian. Is that the German term for an FPS?

Posted by: Hamlet Linden at Feb 18, 2005 3:17:23 PM

Hamlet... German? Freudian, yes, so ... perhaps? Heh! I have to agree with Artemis in that the central part of this is a proof of concept - that FPS can be made and to show what LL needs to do to remove barriers holding SL developers back from making games just as fun as any professional studio. (Now that seems like a scary thought to level builders and artists, but it could also push the game industry into a whole new level of innovation and create even more opportunities.)

Posted by: Hiro Pendragon at Feb 19, 2005 3:34:59 AM

I am gonna throw my acid spit, well to me Crystal did an amazing work, definitely, but would be even better if everything was built wis a low server ressources consuming in mind, but...

You can play with the seburo lagmachine :/

For the modular part, i would tone it down as Foxy gave exclusivity to Francis Chung for third party weapons.

Posted by: Kyrah 1Abattoir at Feb 22, 2005 12:17:48 AM

Hey!! I like this forum!!

http://www.7icon.com/ - look at my free collection of beuty and fashion
http://www.7icon.com/
http://www.7icon.com/

go to http://www.7icon.com/

online fashion magazine for men and women

7icon.com

Posted by: tomy at Nov 11, 2005 2:14:54 AM

Nice site !
I found nice shoes store and want to share it address.
sas shoes outlet stores
http://sas-outlet-stores.54.pl/
dsw shoes
http://dsw-shoes.54.pl/
rockport slip-on shoes
http://slip-on-shoes.54.pl/
naot shoes
http://naot-shoes.54.pl/

Posted by: q at Jul 31, 2006 6:52:51 AM

credit card application credit card application

credit counseling credit counseling

bad credit auto loan bad credit auto loan

free credit score free credit score

credit card consolidation credit card consolidation

Posted by: home at May 31, 2007 3:49:13 AM

Good job and great design! I love this site!
Tamarack resort Maggie valley resort Bahamas resorts Phoenix resort hotel Oscoda resorts Fairfieldresorts.com Hidden beach resort Cyberrentals long beach resort Resortquest Century resorter Canada fishing resort Brasstown valley resort Key west resorts Pointe south mountain resort Colorado resorts Kalahari resort wisconsin dells Phoenix resort Wilderness resort in wisconsin dells Disney resort North carolina ski resort Gaylord opryland resort Perdido beach resort Poconos resorts Tahiti resorts West crooked lake resort Koh samui resort Georgia resorts Taman negara resort Hawaii resorts Westgate resort

Posted by: Resort e at Jun 27, 2007 5:52:31 PM

Look! Only now! Discounts!
Happy birthday sheet music for saxophone Blaster master music Cheapest music downloads Switchfoot music video Free linus and lucy sheet music Nat king cole music Free live music downloads Star wars music video Navy hymn music Ice hockey music Free indian music San fransisco music box Editing music Crossroads music Cakewalk music creator Crossfade music Whitesnake music video Criterion music box Kenny chesney music Ares music download program Bleach music videos Magic music Where can i listen to music Salvation army music Blank music staffs Triple h theme music Here i am music Crip music Find country music Gemm music

Posted by: Music o at Jun 27, 2007 6:07:37 PM

HI! Nice design! Thanks.
Scottsdale plaza resort Panorama resort Summer bay resort Pointe south mountain resort Bluegreen resorts Bahamas resorts Fairfieldresorts.com Gulf highlands beach resort Lake havasu rv resort Sedona resorts Colorado resorts Mandalay bay resort Last resort by papa roach Taman negara resort Lawrence welk resort West crooked lake resort park rapids Snowshoe ski resort Poconos resorts Sugar mountain ski resort Phoenix resort hotel Lake tahoe ski resorts Family vacation resort Silverleaf resorts Canyons ski resort Hawaii resorts Disney resort Lake tahoe resorts Resort all inclusive wedding package Hidden beach resort Alaska fishing resort

Posted by: Resort a at Jun 27, 2007 7:47:52 PM

Hello. I love your!
Free drum set sheet music Origin of the blues music Free music match skins My doorbell sheet music Karate teen music Free downlaod music Free online music trivia Plant experiments with music Elton john sheet music Free music lessons Music video blogs Sheet music for classical guitar Free music notation software piano Sheet music notations Crazy frog music videos Play free online music Free music video html codes Online music service Piccolo music Expressionism in music Winmx free music downloads eminem History of american folk music My favourite things sound of music Sheet music for the phantom of the opera Behind the music vh1 The sound of music do re mi First quality music supplies Music video source Free dulcimer music Gta san andreas music

Posted by: Music g at Jun 27, 2007 9:41:28 PM

This site truly amazing!!!

Posted by: jan at Jul 2, 2007 4:38:21 PM

Nice effect.r

Posted by: mcvnv at Jul 5, 2007 9:30:51 PM

Thank's for the very informative site, these sites are some I would recommend.

For Online Casino slots and online casino try this La Isla Casino, for more online casino slots and online slots try Slots Kings.

If Bingo is your thing try Bingo Online News for online bingo and internet bingo, internet casino slots and slots information to be found

on Slots Online News. If you like to play bingo online Red7Bingo is the best internet bingo to be found on a online bingo site. For online poker

we recommend Nett Poker. Street Slots is the leading site for Slots, Video Slots and Online Slots. Nett Casino have all the info on casino poker

and many other online casino games in a Norwegian Casino Portal about online casino. Craps is a game of fun and excitement, play craps in CrapsRoom.com

the number one website for online craps.

online casino slot machine online casino slot machine Hope you enjoy them.

Posted by: craps at Aug 31, 2007 6:12:43 AM

I just happen to read these blog entries...years later! :0 I'd like to add that I am NOT the person who made the above comments. Somebody used my name to post this crap. I am Demian Caldera in SL and I worked with Bedazzle on the projects. Heck, I don't even know what Counter Strike is!

Posted by: Demian C at Sep 28, 2007 12:30:08 PM

very helpful, thanks!.

Posted by: Elizabeth at Oct 5, 2007 3:47:58 PM

This is a great tutorial thanks!e

Posted by: maik at Oct 11, 2007 10:16:02 PM

rosuvastatin crestor buy generic rosuvastatin crestor online
buy lipitor buy generic lipitor online
mevacor lovastatin buy mevacor lovastatin online
discount pravachol buy generic discount pravachol online
buy zocor buy zocor online
diabetes medication buy diabetes medication online
Generic Actos buy generic actos online
Viagra Online Viagra Online

Posted by: toy at Oct 16, 2007 2:43:59 AM

With regard to viagra and erectile dysfunction, it is already apparent that Viagra was first developed as a treatment for angina but later the drug emerged to be a suitable cure for male impotency but far more striking news is presently capturing the attention of the whole world. Seems Untrue! Well, it is doubtlessly true that oysters fed with the anti-impotency drug Viagra has shown effective results against erectile dysfunction and George May, the Australian farmer who created Viagra oysters became thoroughly popular after the news relating to the efficacy of his Viagra oysters leaked out. Guys! If cheap viagra can make oysters so powerful against erectile dysfunction then why won’t you be able to combat your impotency successfully after you buy viagra online? Opt for Viagra via viagra online and once you buy viagra and administer the drug in accordance with the instructions of the doctor, you would instantly get cured of erectile dysfunction!

Posted by: viagra at Oct 17, 2007 10:11:19 PM

cosamin buy online


[url=http://cosamin-ds.idoo.com/capsule-cosamin-ds.html]best link of cosamin[/url]

nice site

Posted by: cosamin-onhfghhjs at Oct 24, 2007 3:59:03 AM

This is an age when people are growing more and more health conscious and are becoming more aware about their bodies. The health info sites on the internet are the best guides to these kinds of people.

Posted by: Health info site at Oct 28, 2007 8:27:16 PM