Creatures Community Chat

Sunday, March 22, 2015

CAOS tutorials?

Hello Norn lovers (or Grendel/Ettin lovers. No discrimination here).

I've been playing around in CAOS (C3/DS programming language) lately, as I'm interested in adding some stuff to the Garden Box.

It's been years since I last tried coding for Creatures, and I'm quite rusty. Fortunately I've become a much better coder since I last played with it, so it's sinking in faster than it used to.

Unfortunately I've had a bit of trouble finding good training resources. Not terribly surprising; CAOS is essentially a dead language.

That said, I can't help but feel that more people might take it up if it were easier to learn.
I'm hardly an expert. Honestly I'm just about starting from scratch again, but if I can get enough knowledge under my belt I was considering doing some very basic tutorials to help people get started.

Actually what I'd really like to do is put together some default scripts where people can essentially plug their own images and custom variables in to, at least for basic food/toy/plant agents.

So often I pick up a new agent only to find something is missing from the scripting. Such as food that doesn't have a CA smell for creatures to follow. Or fruit that doesn't decompose and turn into detritus, meaning Toxic Norns and some critters don't get a feed. Some relatively basic stuff in terms of concepts, but things that can be a little difficult to code if you're just starting out.

It may take me a couple of weeks to get to grips with the language again, and even longer to pump out some tutorials. But if it's something I'm going to do I need to know what level of understanding my audience has with programming. Are you all brilliant? Are you dabblers with a basic understanding of coding practices (if/else statements, for loops, variables)? Or are you complete novices who look at computer code and run from the room screaming?

I've set up a poll in the left side panel. If you could be so kind as to fill that out I'll consider where to start with this tutorial series.

Any additional feedback or ideas, put them in the comments below.

Cheers guys. Now to try and get this damn plant to grow....


  1. I think the dabbling category fits me very well! I know some very basic concepts about CAOS coding, although I definitely wouldn't be opposed to tutorials geared towards complete amateurs. I think that so long as you explain everything, though, you should be all set! I learned about Creatures genetics by diving into somewhat advanced documents and trying to unravel things. It was a little difficult, but so long as things are laid out well, you could probably approach things any way you'd like! Feel free to browse through some of my genetics lessons: Many have been set at a very easy sort of level, but I try to work in some lesser known tidbits so that advanced players at least have something to take a look at. I'm sure the poll will help you figure out the best way to tailor the tutorials!

    1. I'm considering doing a couple of video tutorials. There's a lot of concepts I'd like to cover, and I think rambling might be a better way for me to get it across. It will allow me to jump back and forth describing the code in a way the written word just wouldn't allow easily. That and as far as I know there aren't any CAOS video tutorials.
      Out of interest, do you know some of the programming concepts? Such as loops, if statements and object oriented coding? I'm wondering if a tutorial shouldn't be spent explaining some of that.

    2. Video tutorials are awesome! Some of those concepts sound vaguely familiar, but I never did get very far into even forming much of a base for further development. A tutorial explaining the basics would be very valuable to me... So you'd have at least one member in the audience, if that helps. Ha!

    3. Awesome, that's good to know.
      I remember trying to pick up CAOS back in my mid high school years and it was a real struggle to understand what was going on. I did manage to get some weird kangaroo toy created, but boy was it hard work.

      Now I've been to Uni and studied some programming I can look at even an old language like CAOS and see the underlying structure, which makes it really easy to learn.

      I think a lesson or two getting people to wrap their heads around this structure would be extremely valuable. Hopefully we can take some of the mystic out of coding.

    4. I'd be really interested in tutorials which took a coding concept in CAOS, explained how it worked, and then showed examples of where it's used, how it could be used in the games. It's easy to 'get by' just by knowing enough concepts to code certain kinds of objects in the game, not all concepts.

    5. As a starter tutorial I'm thinking of basically doing that. I was thinking of opening something like 'Unity3D' and going over the concepts in a modern language (which I think might be easier to understand), then going back over it again in CAOS.

      Beyond that I was also thinking of a doing a "getting started" tutorial to show people where to get all the necessary tools and how to install them on modern computers.

      Then at long last I'd get into doing some actual coding. I've already written a new plant agent based on the 'basic plant' tutorial on Creatures Wiki. That would probably cover half a dozen or so tutorials as we walk through creating something really basic, then building in a heap of additional features (like CAs, turning into detritus, etc).

      I'd also spend a bit of time going over some fundamentals of what makes for good agents that don't confuse Norns, again covering things like CAs, help files, etc.

    6. I'd love to see more discussion of creatures-centred agent design! Items which have a range of actions that creatures can perform on them and relevant, consistent stimuli, as well as agents which are not perceptible by creatures when they can't be interacted with, and perceptible when they can be fiddled with.

  2. Video (or anything visual, such as diagrams/flowcharts/etc) guides explaining coding/CAOS concepts is something I've always wanted to see because I believe a lot of people learn better from that kind of medium. Sadly though, that just isn't my talent, so I would be thrilled to see you take it up, especially since you seem to be so visually-oriented.

  3. I'm really new to CAOS but interested to learn more. I know the Creatures series is really dead these days, but this is the most recent post on anything I could seem to find (maybe my searching skills are just bad, I don't know). If anybody is still considering making any tutorials - especially video ones, that would be amazing - then I would be incredibly happy.