Wednesday 5 August 2015

Creature-Friendly Principles - Consistency and Readiness

A Bear of Very Little Brain and Friends at the New York Public Library

Courtesy of Flickr users Tony and Wayne.

Norns, Grendels, and Ettins are bears of very little brain.  Even since the earliest days, the classification system has helped creatures experience their world.  To a creature, all toys are the same, and all food the same.

This has a few implications.

Creatures learn what they can do with any given object genus (i.e. they learn that they can eat food or push toys, once they come across enough edible foodstuffs or pushable toys to learn that this is possible).

Creatures also learn what to expect from genuses.    They expect food to satisfy their hunger.  They expect fire to be painful.  They expect toys to be fun.  They can't tell if an item is 'ready' for them or not.

When deciding what your object should do, it is helpful to look at the official scriptoriums (scriptoria?) of the worlds.   Keep in mind that several of the games were built by a team, so some genuses won't be fully consistent.   The Creatures Development Standards for C3/DS are a good place to start, as well.  You're looking for what actions a creature can take on an object, as well as what chemicals and stimuli result from that.

If you want to make it so that items seem to be ever-ready for the creatures, that can be accomplished by not designing your objects so that they're 'out of commission' for a long time, or by making them invisible for the period of time when they aren't ready for action.  That way, creatures won't learn that pushing food doesn't always work, and try other actions instead. 

For example, a DOIF command can be used with the POSE command to make an apple blossom invisible by keeping its attributes invisible until the timer script runs through all the growth poses. At this point, in C3/DS, smells are added too, to make the object perceptible through the winding corridors of the Ark.  Similarly, a mature herb can be installed as being visible, and when it is eaten, toggled to invisible until the herb is mature again.  A lot of concepts from C3/DS coding are retrofittable to C2 or C1 coding, if appropriate commands exist in the earlier versions. 

No comments:

Post a Comment