Mailing List |
Joe Rheaume's Project
Thank you for the opportunity to talk about your Alife development, Biots.
How did you become interested in Alife?
I was visiting the Minneapolis Zoo as a child. They had this touch-screen computer simulation of life in a lake. It had algae, fish, crustaceans, turtles, etc. You could alter the population of one group via a slider-bar, and watch its effect on the other populations. Sometimes a new balance would be reached, other times a mass extinction with nothing left but an algae-choked pond. Ever since I've been completely enamored with sand-box games and computer simulations.
What was the background for developing Biots?
I've always had a drive to create. ALife is one of my 3 hobbies, along with Interactive Fiction and Cartooning, and all three of them stem from the desire to create my own worlds. I had been scheming up a computer simulation of alien evolution all throughout middle school and part of high-school. Around that time I encountered some Mac freeware by a guy named Ryan Koopmans. His site (e-brains.com?) no longer exists, unfortunately. One of the programs was called Genetic Wars. You had these little cartoon icons that had programming in them. You placed them on a battlefield and they would collect food for energy, fight using missile, melee, or kamikaze attacks, and capture "goals". The fun part came in selectively breeding your warriors to get more desirable programs. The other bit of freeware, "Vivarium", was the direct inspiration for Biots. It only had 4 species, no speciation, no seasonal or climate changes, and the fruit dropped randomly on the screen instead of having ALife plants. The way the animals executed instructions was somewhat different from biots as well. It let you play with settings, but I wanted more control. In College, when I finally had enough programming background (Nov 2001), I set about reverse-engineering the parts I liked about Vivarium, and I've been building from there ever since.
Biots is a great online example of iconographic Alife. What inspired you visually in creating Biots?
Virtual and Desktop pets. Especially, "Neko", from which the cat sprites were lifted. Biots was actually developed over the skeleton of a college Java animation assignment, which provided the cat sprites. I've modified them a bit, and build most of the sprites for the different species from the cats. Biots are something to sit back and watch, so it was important to me to have nice bright colors that complemented each other, and also to have all the animals be cute. I especially took that idea into account when designing the changing plant sprites for the different seasons and climates.
Fans of Final Fantasy IV will also notice that the "emus" are actually chocobo sprites. Fans of Gauntlet might recognize the "meat" sprite, though my version is cleaned up quite a bit to fit the overall style of Biots.
I saw a number of links to Biots 3d but couldn't find the actual page. Is the Biots 3d development on hold? Do you need additional open source contributions to assist?
Looks like I need to update the links. Biots 3D can be found at;
It is much less sophisticated than Biots, and much less of a success as far as maintaining a stable ecosystem. It was mainly an excuse to do something impressive for a 3D graphics class in college without actually having to do impressive 3D graphics. If I decided to remake biots into a 3D environment I'd probably start again from scratch. The only really interesting bit of emergent behavior is the tendency for "stationary predator colonies" to evolve. These occasionally appear in the Java version of biots as well.
What kind of feedback have you received on Biots? What would you like to add in the future?
Back when it was just a bunch of asexually reproducing cats running around eating randomly dropped apples, the most common bit of feedback was "cats don't eat apples". I've actually had very little feedback. I tried getting Biots linked on various ALife pages back in 2002, but they all seemed to no longer be maintained. (Even Biota.org) It wasn't until the re-emergence of biota.org that biots even had a link to it from a site I didn't own. It probably wasn't until I posted biots instead of my webcomic last April Fool's day that anyone other than friends or colleagues saw it. I do occasionally get people ask me if they can use some of my sprites, but that's about it.
There is so much I'd like to add to Biots. I have a nice long list of new species I'd like to add, both plant and animal. Right now I'm experimenting with an amphibian/plant hybrid called a "Photovore". The concept is that it has fronds growing out of its back filled with algae. When it rests, it buries itself in the dirt and spreads its fronds, gaining energy without needing to search for food. The tradeoff is that other biots can "defoliate" it (that is, use the same "action" they use on trees, draining its energy without having to kill it). This version hasn't been released yet because it's caused some problems with unchecked population growth. They tend to cluster and suck energy from each other. I need to force them to space out before they can drink sunlight.
Another Idea I'm playing with is "zombies". This would be the first addition of disease to Biots. It would work very similar to the Zombie Infection Simulator. The first cause of zombification will likely be a mutant toadstool.
I need to reduce the amount of destruction caused by fires, as this leads too often to mass extinction. And I want to introduce some more species of flowers (I'm thinking sunflowers, whose seeds would provide supplemental protein for carnivores)
I have some code for the first sexually dimorphic biots species. These are "humans". The males and females have slightly different attributes, they can only mate with the opposite gender (all the other biots are hermaphrodites), and those that can asexually reproduce split into one of each gender. I have a version of Biots with these creatures, but it's buggy, and not integrated into the latest version.
I've also always wanted to have a simulated system of alleles, so the biots can evolve stats and abilities (without speciation) in addition to behavior. This will probably not be implemented until I recreate biots in some new system. Maybe then I'll add a UI that isn't abysmal.
The main thing I need to do is update the online documentation and development journal to catch it up with all the newest additions.
How did your studies inspire the development of Biots?
Apart from providing the tools to create it, not much. Most of the actual inspiration came from my life-long interest in biology and evolution. I might have gone into genetics instead of computer science, but I'm dismally bad at lab work. That's not to say I'm not grateful for the power computer science has given me to create a virtual world. Some of the math I had to take for my degree did come in handy, though. A bit of trig is used in the vision code, and the "triangle test" was used in Biots-3D to determine if an object was near a creature's "mouth". The only good calculus has done me so far was that I used it to write a joke in one of my comics.
I noticed links on your site to sodaplay.com. How does Java assist Alife development online?
Java is great. It was developed for object-oriented code, unlike c++ which just had OO tacked on. I also really love Borland's JBuilder. Throwing an ALife applet online is a great way to quickly show what you've done, and if you wanted to mix ALife with a little online game, Java or Flash would be the way to go.
My problem has been figuring out a way to save and load the biots. In all these years, I've never successfully been able to save biots as cookies, because it has a 4k cap and screws up the applet in some browsers, or recreate biots as a Java Application, because the graphics code I used is apparently applet-only. This as been pretty frustrating and it's really stunted the program's growth. I'd like for people to be able to save biots in little files, copy and trade them, and selectively breed them in a little "lab" application. That's an area where "Vivarium" still surpasses Biots. The next time I'm unemployed for a while, I'll have to figure it out.
Your site has fantasy and comic links on it too. I find it fascinating that contemporary Alife developers tend to gravitate to possible-world inspired reading material. How do you think fantasy and comic material could feed back into Alife development? Do you have any plans of creating other Alife worlds based on fantasy and/or comic elements?
This shows just how outdated the personal areas of my website are. I actually draw and write a weekly science-fiction/fantasy comic myself now. That's one reason development of Biots has slowed recently. The comic, biots and my foray into interactive fiction do indeed all feed into one another. Interactive fiction is those text-adventure games everyone used to play in the early eighties. There is still a thriving community of amateur i-f developers, and there are some nice tools out there for building i-f. I'd been playing with using an i-f language called TADS 2 to do some games with ALife in them. One was sort of a text-based Sim-Ant, only the ants were giant and the soldier caste tried to attack you. The object of the game would be to destroy the queen before the natural development of the colony lead to a flight of breeders. I got as far as the ALife part with that game but never got around to making the game part. I did enter a fantasy game into the 2004 Interactive Fiction Competition called Magocracy (download). The game was a wizard-tournament where the other combatants had some want-and-fear based AI. Not really ALife, and not really Interactive-Fiction according to some of the judges. It placed dead middle.
Concepts from Magocracy and Biots have entered my webcomic, and general fantasy concepts have entered Biots. All the biots have hidden magical powers, such as fire-breathing, freezing enemies, generating an electric shock, firing lasers from their eyes, and teleporting to a random location. I put these in for the fun of it, and also to see how the biots might evolve ways of using them. The powers come at a high energy cost, so misuse leads to starvation. I have seen animals teleport out of danger, freeze prey, and shock attacking predators. The fire breathing is most often used to set the forests on fire and wipe out all the animals on the screen. I still need to tweak that.
What is your sense of the broader Alife community?
As far as I know. It's virtually non-existent, especially when compared to the organized and supportive Interactive-Fiction community, or the vast and drama-prone Webcomics community. I really hope that Biota.org can change that.
What more would you like to see with the Alife community?
I get the sense that I'm not the only one who only comes back to develop a long-standing ALife project every few months or so, while engaging other interests the rest of the time. I think building a sense of community needs to take that into account. Perhaps something like a wiki or a forum where someone could leave a thought out in public for others to stumble upon and comment at their leisure. It would also be nice if we all got together for a massive link-exchange. Each of our project sites should link to each other's project site. You'd think ALife developers of all people would be better at self-organizing ;)
Any final thoughts?
I wrote Biots to give myself something to watch as it learned. I still run it just about every day to see if I'll catch any new behavior or see something that needs tweaking. I consider it a great success in that respect, but I'd be really proud if Biots had a bit more exposure to other people who would enjoy it. Especially if those people got even more fed up than I am with the bad UI and lack of a save feature and offered to help me fix it. The source code is open and available on the site.
Thank you for the interview Joe. Your feedback on biota.org is much appreciated.
The interview was taken by Biota.org's Tom Barbalet via email on December 29th, 2005.