Results 1 to 6 of 6
  1. #1

    Question Rothschild's Specifications for animal AI

    I know I have alot here already, but it would be great if people come up with some more ideas. If you dont feel like thinking through all the details, thats alright too - I'll do my best to fill in the gaps and add it to my OP.

    -Ability to change target
    -currently animals in combat mode have 'tunnel vision.' After selecting a target and entering combat, the animal will pursue said target until the animal or target dies or the distance between the animal and the target is greater than some threshold value.

    -animals should be targeting the nearest potential target at an instant. Potential targets could be those who's distance is less than some treshold value.

    -'Fight or Flight' decision mechanisms, Intimidation
    -animals should have a sense of how intimidating a player.

    -The 'base intimidation' of a player against a certain specie animal of a certain level can be assesed as a linear function of the skill and stat points. Each (specie,level) pair would have different coefficients in the linear combination which will corelate to animals of certain species being afraid of players with different skill/stat sets as well as animals of a higher level being harder to intimidate.

    - an intimidation multiplier is determined by gear. Bone armour and weapons will cause greater intimidation than an unarmed nudist.
    - Aggressive animals will detect a player's intimidation level only after the player attacks them; Passive animals would detect intimidation level for players once the player enters some threshold range.
    -At the point an animal detects a players intimidation level is the point at which it makes a decision to fight or flee
    -Two threshold distances will be needed. The smaller threshold represents when an animal will enter combat mode if aggressive or detect intimidation lvl if passive. Th larger threshold will represent the distance at which the fight or flight reaction wears off and the animal returns to the standard pathfinding behavior.

    -using a linear combination of the stats makes the calculation for intimidation relatively fast (only addition and multiplication is used).

    -using 2 tresholds as described above ensures that animals are not entering and leaving fight/flight repeatedly in rapid succession.

    -Fight or Flight + Ability to change target
    -animals should flee if the sum intimidation of potential targets is above the intimidation treshold.
    -animals should weight the distance of targets with the intimidation in order to select targets. Priority will be given to attacking more intimidating potential targets

    -Levels, XP, Maturity
    -Each animal should have 7 counters
    -Damage dealt (weighted by intimidation of player who dealt it)
    -Damage recieved (weighted by intimidation of player damaged)
    -Kills (weighted by intimidation of player killed)
    -Water Consumed (integer units of water)
    -Food Consumed (integer units of food)
    - Integral over time of distance to nearest active player. (this accounts for how much time the animal has been alive, weighted by the distance to the nearest player)
    - total distance travelled (arc length in meters)

    -The 'XP' of an animal should be a linear combination of these 7 counters.

    -A sequence of tresholds {t_i: 1<=i<=n, n is natural} are used to delimit levels based on XP. and animal is of level k if t_k <= XP < t_k+1

    -The values of the 7 counters should affect the amount of change of stats for the animal at level up.
    -Damage dealt would affect how much attack damage and attack frequency increases
    -Damage recieved would affect hp and defense gains.
    -Kills would affect legendary-ness
    -Water Consumed would weight how much the other traits increase
    -Food Consumed will effect amount of XP needed for the next level (by modifying the next XP treshold). Hungry animals wont level as fast.
    - 'Integral over time of distance to nearest active player' will affect 'domesticate-ability) Animals which spend more time near people will become harder to domesticate.
    -Total distance traveled will affect movement speed. (which if animal levels are bounded will increase asymptotically to some maximum speed).

    - At certain level ups, {l_i : 0<=i<=n, n is natural} the animal matures,
    -l_0, the animal transitions from newborn cub to cub
    -l_1, the animal transitions from cub to adolescent
    -l_2, the animal transitions from adolescent to mature adolecant. Only after this threshold can it spawn cubs.
    -l_3, the animal transitions from mature adolescent to adult.

    -Legendary-Ness, renown:
    -Animals can become legendary.
    -Legendary-ness is independant of maturity level.

    - The units of legendary-ness will be 'renown' or 'rn' for short
    - Animals must level up to increase rn, however rn is not proportional to lvl.
    - At lvl up, the number of kills an animal has will be used, with a multiplier, to determine the new renown value.
    - the renown of an animal will affect its hp, damage dealt, defense, speed, quality of bones, skin.
    -A sequence of tresholds {s_i: 1<=i<=m, m is natural} are used to delimit Levels of Legendary-ness. animal is of legendary level level k if s_k<=rn<s_k+1

    -When the rn of an animal exceeds a threshold, the animations for that animal change. k-Legendary animals of a given specie at a certain maturity will be larger and look more intimidating then (k-1)-Legendary Animals of that specie at that maturity.

    -another hunting option 'gut' or 'stomach contents' for legendary animals above a certain legendaryness threshold.
    - For each unique character killed after superseeding the required threshold, a human bone and/or rare item is added to the stomach contents.

    -animals should form groups (packs) of the same specie

    -aggressive animals will tend to be solidary, however newborn cubs (level<l_0) will group around their mother.
    -passive animals will remain in packs if possible.

    -packs will have a maximum size, 2q, where q is a natural number
    -when a pck reaches 2q animals it splits into 2 packs of q animals. The animals in the pack are ordered by renown. Then alternatingly placed into the new packs, to ensure that the nw packs will both have ssome stronger and some weaker critters.

    - fight or flight is applied to the pack, whos treshold for intimidation is the sum threshold of its members, as opposed to the individual.

    -Target selection is applied to each critter in the pack independantly.

    -Packs have a renown associated with them - the sum renown of the members. the renown of the pack will affect the items which can be harvested from the stomach contents of its members.

    -Packs will attract animals of the same type which are currently stray.

    -The location of a pack is the center of gravity of its members weighted by renown.
    -The leader of the pack is the member with highest renown
    -The members of the pack move such that the distance between the pack location and pack leader is below some threshold.
    -The members of the pack do not travel farther than a certain distance from the pack location.
    -The needs of the leader influence the heading of the pack. If the leader wants water they go to water, etc...

    -During a battle, if higher lvl animals in the pack die, then the pack may become intimidated as the intimidation threshold decreases. This may cause packs to flee and scatter during a losing battle. It will create strays which can then join other packs.

    -The larger a pack, the more difficult it will be to domesticate a member.
    -Strays will be relatively easy to domesticate by comparison.

  2. #2
    Xsyon Citizen
    Join Date
    May 2011
    UK, England, London
    100% amazing! +1 for me

  3. #3
    Sorry, For some reason I thought I had said something before.

    I like this idea a lot, And hope the dev's are reading it.

  4. #4
    Some well thought out ideas here, +1

  5. #5
    yea...this would make hunting a little more interesting.

  6. #6
    the game tracks wind flow direction.
    Then add a way for mobs(animal) to be able to track by smell to the animal AI. This could tie into the rest of the OP. If the animal is the type that runs then as soon as it smell you it will start moving away from you. If it's the fighter type then it starts to move to you. This could help make hunting more like hunting as in you only head into the wind when hunting. There would have to be a way for us to track wind as well, So that you knew what direction the wind flow was headed.

    Maybe add the smell tracking to upper skill level hunters. Telling you "you smell a XXX", Letting you know what type of animal is up wind from you.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts