Spieldesign - AI: Unterschied zwischen den Versionen

Aus Notebook
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „Basic blocks - AI actions * Acquire (target, number = 1, allowStealing = false, allowPickpocketing = false, allowKilling = false) * Activate (target, number =…“)
 
Zeile 35: Zeile 35:
  
 
* Find (location, targetSelection, searchOwnInventory = true, randomizeList = true) -> objectList
 
* Find (location, targetSelection, searchOwnInventory = true, randomizeList = true) -> objectList
 +
 +
Action trees - composite and decorator nodes:
 +
 +
* Random (Pick one child node and finish when it finishes. Return value is the child node's return value.)
 +
* Sequence (Go through child nodes in sequence and execute them, until you finish or one node fails. Return the last executed node's return value)
 +
* Selector (Go through child nodes in sequence and execute them, until the first succeeds. Return success unless no child nodes succeeded)
 +
* ParallelAny (Run all child nodes at once. Return when the last one finishes. Return success unless no child nodes succeeded)
 +
* ParallelAll (Like ParallelAny, but return failure if any child node failed)
 +
* RandomSequence (like Sequence, but in random order)
 +
* RandomSelector (like Selector, but in random order)
 +
* Invert (run the child node, invert its result)

Version vom 3. Dezember 2015, 15:21 Uhr

Basic blocks - AI actions

  • Acquire (target, number = 1, allowStealing = false, allowPickpocketing = false, allowKilling = false)
  • Activate (target, number = 1)
  • Eat (foodType, createFakeFood = false, gainChemicals = true)
  • Escort (target, number = 1, destination, waitDistance, minDistance, maxDistance, rideHorse = false, preferPaths = true, runIfBehindDistance)
  • FleeFrom (from, avoidNodeRadius, distance, rideHorse = false, ignoreDeadThreats = true, quiet = true, countAsIsFleeing = true)
  • FleeTo (to, goalRadius, rideHorse = false, quiet = true, countAsIsFleeing = true)
  • Fly (location, height)
  • Follow (target, minRadius, maxRadius, useLeadersGoal = false, rideHorse = false, needLOS = false)
  • FollowTo (target, endLocation, minRadius, maxRadius, useLeadersGoal = false, rideHorse = false, needLOS = false)
  • ForceGreet (topic, waitLocation, triggerLocation)
  • Guard (restrictedArea, suspiciousOf, warnRadius, attackRadius)
  • HoldPosition (location)
  • KeepAnEyeOn (target, observationArea, endPursuitArea)
  • LockDoors (location, warnBeforeLocking)
  • Orbit (location, innerRadius, outerRadius, height)
  • Patrol (pathStart, pointRadius, repeatable, startAtNearestPoint, rideHorse = false)
  • Say (topic, target, lookAtTarget)
  • Sit (target)
  • Sleep (target)
  • Travel (destination, rideHorse = false)
  • UnlockDoors (location)
  • UseIdleMarker (target)
  • UseMagic (location, spell, holdWhenBlocked, castTimeMin, castTimeMax, cooldownTimeMin, cooldownTimeMax)
  • UseWeapon (location, weapon, target, alwaysHit, repeat = false, crouchToReload, doNoDamage, holdWhenBlocked, allowCombatStart, alwaysPowerAttack)
  • AimWeapon (location, weapon, target, holdWhenBlocked)
  • UseWeaponVolley (location, weapon, target, alwaysHit, repeat = false, crouchToReload, doNoDamage, holdWhenBlocked, allowCombatStart, alwaysPowerAttack, volleyWaitMin, volleyWaitMax, volleyShotsMin, volleyShotsMax)
  • Wait (duration, stomMovement = false)
  • Wander (location, preferPaths = true, rideHorse = false, minDistance)
  • Sandbox (location, preferPaths = true, minDistance, energy, allowEating, allowSleeping, allowConversation, allowIdleMarkers, allowFurniture, allowSitting, allowWandering, allowWorkbenches)
  • UseSkill (location, skill, holdWhenBlocked, useMaterials)

AI functions (return a value)

  • Find (location, targetSelection, searchOwnInventory = true, randomizeList = true) -> objectList

Action trees - composite and decorator nodes:

  • Random (Pick one child node and finish when it finishes. Return value is the child node's return value.)
  • Sequence (Go through child nodes in sequence and execute them, until you finish or one node fails. Return the last executed node's return value)
  • Selector (Go through child nodes in sequence and execute them, until the first succeeds. Return success unless no child nodes succeeded)
  • ParallelAny (Run all child nodes at once. Return when the last one finishes. Return success unless no child nodes succeeded)
  • ParallelAll (Like ParallelAny, but return failure if any child node failed)
  • RandomSequence (like Sequence, but in random order)
  • RandomSelector (like Selector, but in random order)
  • Invert (run the child node, invert its result)