Behavior Notes

rfinz edited this page Apr 12, 2013 · 7 revisions

Initial Discussion of Behaviour

Sand Block Changes
  • Take out a sand blocks gravity out entirely OR
  • Rebuild the way biomes are spawned to create more sandstone OR
  • Have falling sand break apart on contact with worm
Worm Movement
  • Occasional "Breach"
  • Rock and water avoidance (To be discussed further, i.e. what does it do when it runs into obstacles)
  • What does worm do when no one is around?
  • How often/what conditions will they spawn in?
Worm Vectors
  • L=10m
  • Q(t) = {t, sin(x), 0} <-underground
  • Q(t) = {t, 0, sin(x)} <-above ground
  • theta = sin(x) <- Angle of rotation of Ith block

Pseudo Code for interaction

If (rockDetected) {
    when xi = xh
    rotate pi/2 radians
    If(aboveGround)
        Q = Qunderground
    }
}

Worm Behavior Refinements

Does NOT move through
  • Rock
  • Ore
  • Water*
  • Lava*
  • Large Clumps of Dirt

*Senses and actively avoids

Guides or Affect Movement
  • Human walking nearby
  • Tunnels (Open air smaller than 6x6x6)
  • Thumpers
  • Mining

Basic Movement Heuristics

  • Slithers forward
  • Time based random direction modification
  • Long periods of dormancy

Basic Senses

  • Sense water/liquids from 10 blocks
  • Character/Mob movement from 10 blocks
  • Stone/Dirt from 5 blocks
  • Thumper/Mining from 50 blocks

Behavior Priority

  1. Avoid Liquids
  2. Avoid Rocks
  3. Move towards thumpers
  4. Move towards miners
  5. Moves towards character walking
  6. Moves towards mobs
  7. Moving down tunnels
  8. Bein' random
  9. Slithering forward / sleepin'