Welcome to the Creatures Wiki! Log in and join the community.

ATTR

From Creatures Wiki
Jump to navigation Jump to search

ATTR is a CAOS command and function used to change or output the attributes (characteristics) of an agent, which is about how the agent will interact with the physical world. Each attribute is set by a particular number - the final ATTR number is the sum of those attributes. Whenever ATTR changes, the engine checks that the agent is in a valid position in the world.[1]

The developers chose the numerical values for ATTR in all three games so that each total ATTR value would be unique: that is, there is only one way to get to each total ATTR value. For example, take the ATTR value of 199 in C3/DS - an agent with an ATTR total of 199 is carryable (1) + mouseable (2) + activateable (8) + suffers collisions (64) + suffers physics (128). These characteristics add up to 199, and there is no other possible combination that makes 199.

Usage[edit]

Command[edit]

Syntax: ATTR binary_flags(int)

Sets the attributes of the current TARG to those specified by the bitmap binary_flags. This should be the sum of all the relevant attribute flags from the list below.

Function[edit]

Syntax: ATTR

Returns the ATTR number of TARG, as detailed below.

C1[edit]

The attributes in Creatures 1 are:

  • 1 - Can be picked up by creatures
  • 2 - Can be picked up by the hand
  • 4 - Can be activated using the hand
  • 8 - Carries other objects or creatures (only for use in vehicles)
  • 16 - Creatures can't see it
  • 32 - Floating on screen
  • 64 - Limits movement to current room (wallbound)
  • 128 - Movement limited by ground surface (groundbound)

NOTE: 128 and 64 cannot be combined.

C2[edit]

The attributes in Creatures 1 are:

  • 1 - Can be picked up by creatures
  • 2 - Can be picked up by the hand
  • 4 - Can be activated using the hand
  • 8 - Carries other objects or creatures (only for use in vehicles)
  • 16 - Creatures can't see it
  • 32 - Floating on screen
  • 64 - Responds to collision events and size
  • 128 - Affected by gravity

C3[edit]

The attributes in Creatures 3 are:

  • 1 - Can be picked up by other agents
  • 2 - Can be picked up by the hand
  • 4 - Can be activated using the hand
  • 8 - Vehicle only: Will automatically hold agents dropped into its cabin
  • 16 - Creatures can't see it. (From the CAOS docs: '...applies to ESEE and STAR on creatures, as well as internal creature code.')
  • 32 - Stays in one position relative to the screen, position is set with FLTO. FREL can be used to make it stay in one position relative to another agent
  • 64 - Collides with the walls between rooms depending on its PERM.
  • 128 - The agent is affected by gravity, air resistance and friction, these are set by ACCG, AERO and FRIC. Agents without this flag only move when thrown
  • 256 - The agent, and its contents if it's a vehicle, cannot be seen on remote cameras or on images created with SNAP
  • 512 - Vehicle only: Creatures can only see and interact with agents in the cabin if this flag is used

Examples[edit]

Make HOTS mouse-carryable, and make it suffer collisions and physics:

TARG HOTS
ATTR 194

Send the attribute bitmap of HOTS to the output stream:

TARG HOTS
OUTV ATTR

Prevent any agents from suffering physics:

ENUM 0 0 0
  SETV va00 ATTR
  ANDV va00 128
  DOIF va00 eq 128
    SETV va00 ATTR
    SUBV va00 128
    ATTR va00
  ENDI
NEXT

See also[edit]

External links[edit]