Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1] 2

Author Topic: Animal Tokens 2.0  (Read 1745 times)

Warlord255

  • Bay Watcher
  • Master Building Designer
    • View Profile
Animal Tokens 2.0
« on: November 20, 2008, 05:06:00 am »

A revised, sharpened version of my More Animal Behaviors thread.
-----------------

MUNDANE
These alterations are (hopefully) the easiest to add to the existing code.

[BONUSSKIN:#]
The creature drops one or more extra skins when butchered; this is to reflect the size of creatures such as elephants. Could be changed to a core property value, like fat.

[BLOODLUST]
This creature is attracted to blood; applicable to add flavor/function to predators such as sharks and wolves. Implies [NOFLEE] (see below) so these creatures can attack wounded/bleeding dwarves or creatures.

[CROP_EATER:#]
This creature periodically eats crops, undoing the planting of a square of farm plot; possibly only those with the EDIBLE_VERMIN tag.

[HUNT:#:(creature1):(creature2):(etc)]
This creature will periodically (#) hunt the specified creatures by stalking and killing them (use Hunting code) and then eating them on-site. Wolves can hunt deer, bear can hunt salmon to loosely simulate wildlife behavior, or create food chains. Also good to make spawning megabeasts/semimegabeasts more active in their attacks. Would require the wildlife-extinction fix.

[NOFLEE]
An improvement of NOFEAR, if not a replacement; the creature will never run away from dwarves, even if they have not yet attacked. Would make predators more deadly, and allow "gentle giant" types that are oblivious to nearby dwarves.

[PLANT_EATER:#]
This creature periodically (#) eats shrubs and herbs in the terrain.

[SCAVENGER:#]
This creature will periodically seek body parts and corpses to eat. An appropriate number can make a creature a constant scavenger.

This concludes post one. Next: Extra Coding!
Logged
DF Vanilla-Spice Revised: Better balance, more !!fun!!
http://www.bay12forums.com/smf/index.php?topic=173907.msg7968772#msg7968772

LeadfootSlim on Steam, LeadfootSlim#1851 on Discord. Hit me up!

Warlord255

  • Bay Watcher
  • Master Building Designer
    • View Profile
Re: Animal Tokens 2.0
« Reply #1 on: November 20, 2008, 05:26:44 am »

And now, those suggestions which require a little more coding, but hopefully not too much.

[ALLY_CREATURE:(creature)]
This creature will assist the specified creature and treat it as one of its own, moving alongside them if possible.

[HOVER]
This creature can float one Z-level above the ground.

[LEDGE_CLIMBER]
This creature can move to a pathable tile adjacent to it even if it is one Z-level above or below.

[PACK_LEADER:(creature):NAMED/NOT_NAMED]
This creature appears with the specified creature, and has a name if specified. Implies [ALLY_CREATURE:(creature)].

[SWIM_JUMPER:#1:#2]
This creature, while swimming, periodically leaps out (#1) to a specified height (#2) and then falls back down, resulting in a corresponding splash.

[WALL_CLIMBER]
This creature counts any tile directly adjacent to a wall tile as pathable, and gains free flight-like Z-movement along those tiles.

Next: Nest behavior!
Logged
DF Vanilla-Spice Revised: Better balance, more !!fun!!
http://www.bay12forums.com/smf/index.php?topic=173907.msg7968772#msg7968772

LeadfootSlim on Steam, LeadfootSlim#1851 on Discord. Hit me up!

Footkerchief

  • Bay Watcher
  • The Juffo-Wup is strong in this place.
    • View Profile
Re: Animal Tokens 2.0
« Reply #2 on: November 20, 2008, 06:00:39 am »

Good ideas.  A couple ideas for organizing and simplifying:

1) Tags governing relationships with other creatures (HUNT, ALLY in particular) should refer to classes of creatures, not specific ones -- the number of possible interactions grows exponentially with the number of creatures, so you can't afford to specify each one explicitly.  Creatures could be grouped much as the symbolic language raws group words.  Two equivalent ways of doing this: creatures can declare their own group memberships (deer have a [GROUP:PREY]) tag, or an externally defined raw entry groups the creatures (deer included as one of the creatures in [CREATURE_GROUP:PREY]).  You could still define groups with only two creatures to preserve the goblin-troll partnership or whatever.  This also avoids the problem of what happens with a non-mutual ally relationship.

2) More or less cosmetic, but many of your tags could instead function as various tokens for a single tag.  For instance, rather than separate tags for [HOVER], [LEDGE_CLIMBER] and [WALL_CLIMBER], you could use [MOBILITY:HOVER], [MOBILITY:LEDGE_CLIMBER] etc.  This makes it easier to keep related information together.  The creature raws are a giant mess right now due to the hundreds of scattered tags.
Logged

Pilsu

  • Bay Watcher
    • View Profile
Re: Animal Tokens 2.0
« Reply #3 on: November 20, 2008, 10:57:17 am »

Blood lust is fundamentally broken by the fact how easily your dwarves get stained by it

I think you overestimate the bravery of predators like wolves. They typically scare easily

Swim jumping would probably result in said creatures breaking all their bones when they land and then attract sharks with the blood
Logged

Neonivek

  • Bay Watcher
    • View Profile
Re: Animal Tokens 2.0
« Reply #4 on: November 20, 2008, 12:05:57 pm »

"Swim jumping would probably result in said creatures breaking all their bones when they land and then attract sharks with the blood"

Flying Fish, Dolfins, and some kinds of whales.
Logged

Footkerchief

  • Bay Watcher
  • The Juffo-Wup is strong in this place.
    • View Profile
Re: Animal Tokens 2.0
« Reply #5 on: November 20, 2008, 12:34:49 pm »

"Swim jumping would probably result in said creatures breaking all their bones when they land and then attract sharks with the blood"

Flying Fish, Dolfins, and some kinds of whales.

He's just joking about the potential for unintended behavior.
Logged

Skid

  • Bay Watcher
    • View Profile
Re: Animal Tokens 2.0
« Reply #6 on: November 20, 2008, 12:49:49 pm »

[SOFT_LANDING:#] Makes it so that a creature will take a reduced percentage of damage from long falls.
Logged
Playing a cheesemaker in an average Fortress 'round here would be. Freaking. Terrifying.
Re: Animal Tokens 2.0
« Reply #7 on: November 20, 2008, 01:13:39 pm »

I think you overestimate the bravery of predators like wolves.
This.  Brave predators do not last long in the face of stern competition.  There are many more realistic ways to make wolves more dynamic and interesting.  I would suggest something like this for wolf behavior:

[Hierarchy:X] where X is a tag for a set of pre-defined behaviors specific to a kind(s) of beast.  So for wolves it would be [Hierarchy:Wolf] with a single breeding pair where the Alpha-male operates something like a squad leader and maybe even with a defined eating order, etc.


[Opportunistic] - Seeks out specifically the weakened, wounded, the very young and the very old.  Will attempt to flee if one of its number is cut down, with exceptions if Hungry or Starving.
Logged
ow did this get here

Pilsu

  • Bay Watcher
    • View Profile
Re: Animal Tokens 2.0
« Reply #8 on: November 20, 2008, 01:47:47 pm »

Dwarven elders get progressively more bad ass before they succumb. It's the children they'd try to eat

Preferably implemented after comedian skills don't make them superdwarvenly strong anymore. As awesome as a little kid punching a wolf in the face so hard it caves in would be, it's probably not intended behavior
Logged

Granite26

  • Bay Watcher
    • View Profile
Re: Animal Tokens 2.0
« Reply #9 on: November 20, 2008, 01:51:26 pm »

Dwarven elders get progressively more bad ass before they succumb. It's the children they'd try to eat

Preferably implemented after comedian skills don't make them superdwarvenly strong anymore. As awesome as a little kid punching a wolf in the face so hard it caves in would be, it's probably not intended behavior

The problem is that the maturation period is so long that it's not worthwhile to expand a fort through breeding.

irmo

  • Bay Watcher
    • View Profile
Re: Animal Tokens 2.0
« Reply #10 on: November 20, 2008, 02:05:40 pm »

[BONUSSKIN:#]
The creature drops one or more extra skins when butchered; this is to reflect the size of creatures such as elephants. Could be changed to a core property value, like fat.

I think it's more elegant to change the reactions table so that the tannery turns one elephant hide into 20 elephant leather.
Logged

Impaler[WrG]

  • Bay Watcher
  • Khazad Project Leader
    • View Profile
Re: Animal Tokens 2.0
« Reply #11 on: November 20, 2008, 03:34:01 pm »

Quote
20 elephant leather.

Agreed, and just make the leather equal to the creature size which would be the simplest way to get a reasonable amount of leather for animals with different sizes, no new tag required at all, just a little bit of code to generate a leather stack from each skin.
Logged
Khazad the Isometric Fortress Engine
Extract forts from DF, load and save them to file and view them in full 3D

Khazad Home Thread
Khazad v0.0.5 Download

Tormy

  • Bay Watcher
  • I shall not pass?
    • View Profile
Re: Animal Tokens 2.0
« Reply #12 on: November 20, 2008, 04:24:33 pm »

I think you overestimate the bravery of predators like wolves.
This.  Brave predators do not last long in the face of stern competition.  There are many more realistic ways to make wolves more dynamic and interesting.  I would suggest something like this for wolf behavior:

[Hierarchy:X] where X is a tag for a set of pre-defined behaviors specific to a kind(s) of beast.  So for wolves it would be [Hierarchy:Wolf] with a single breeding pair where the Alpha-male operates something like a squad leader and maybe even with a defined eating order, etc.


[Opportunistic] - Seeks out specifically the weakened, wounded, the very young and the very old.  Will attempt to flee if one of its number is cut down, with exceptions if Hungry or Starving.

A picture is worth a thousand words!
Spoiler (click to show/hide)
Logged

Granite26

  • Bay Watcher
    • View Profile
Re: Animal Tokens 2.0
« Reply #13 on: November 20, 2008, 04:43:48 pm »

Nope, just one...  Sick

Neonivek

  • Bay Watcher
    • View Profile
Re: Animal Tokens 2.0
« Reply #14 on: November 20, 2008, 07:09:54 pm »

Let me see... I cannot remember what else has been put in the first one but let me try.

-Wildpet: The creature in the wild can claim itself to be the pet of someone under its own will (Dogs following people home)
-Non-exotic birth: The creature can be tamed at birth as if it wasn't exotic
-Non-exotic Gender: The creature isn't considered exotic if it is of a specific gender.
-Non-exotic gender trainer: The creature isn't considered exotic if tamed by a specific gender
-Cold-Blooded Awareness (Temperature - Temperature): The creature's stamina is tied to its personal temperature. The numbers are the temperature in which it is fully awake to the temperature in which it falls unconscious / Paralyzed
-Half-Pain: The creature isn't harmed or stunned by pain but can still fall unconscious from it
-Fragmentation: The same creature can reform from any peice of that same creature that falls off.
-Variety Ill: The creature becomes ill if it injests a variety of food
-Non-pregnant producer: The creature produces Eggs or Milk without needing to be pregnant
-Easily Stunned: The creature becomes stunned upon the easiest of injury
-Low Gravity: The creature isn't harmed by falling (Many bugs and some birds can survive terminal velocity without injury)
-Some Gravity: The creature is resistant to falling (Cats, Bugs, Birds, and a few other creatures...)
-Part Migrate: The creature migrates but won't if they are properly fed
-Migrate return: The creature migrates and will return in the spring

Some Extra production
-Edible Blob: The creature is capable of excreeting a glob that is edible (One kind of Caterpiller does this to enslave ants)
-Fluid: The creature produces a non-standard fluid
-Fluid Death: The creature has several valuable fluids that can be obtained upon death
-House Plant: The creature is capable of housing or growing plants on itself and can give out fruit.
-Valuable Vomit: The creature's vomit is considered valuable
-Valuable Excret: The creature urine or... others stuff... is considered valuable or useful. (Horse urine is often used for hormones)
-Organ Stone: The creature has a stone inside it that can be collected upon death

Some extra attacks
-Puking: Projectile Vomit
-Acid Sprey: Spits acid
-Water Sprey: Spits a stream of water
-Web Spit: Spits acid
-Hot Water Sprey: Spits a stream of boiling water
-Rake: If the creature grapples you they are capable of rending you with their hind legs (This is a cat's main attack)
-Crawl Attack: designate an attack as only possible while the creature is crawling, crouching, or basically on its side (Cats do this)
-Electric Shock: ZAP!!!
-Lunge: The creature can lunge several spaces in a turn to attack the opponent
-Stun attack (Sonic): The creature can screech or roar to stun a creature. (Not out of fear)
-Maw: The creature's attack Crushes the enemy AND tears them up
Logged
Pages: [1] 2