GAI: Episode 2 – lesson assignments / homework



week 1 – lesson assignment: Considering the fact that no value multipliers/factors, or in fact information was given on this, creating a flowchart for this navmap is nearly impossible, there is also a slight case of bad navmapping going on to the right of the text “low wall”

week 1 – homework: for this i chose to use the dark souls boss “quelaag”, which, for obvious reasons doesn’t have a good paper-prototype representation since i chose to use a game that’s more recent than 1990, and is capable of more complex interaction than “move” and “shoot”, i chose this because dark souls is one of the few games where AI is the main part of what makes the game interesting for me,

so, as an example, quelaag has roughly 8 “zones” in which the player can be, namely

  1. on her left side, attacking her sides
  2. on her right side, attacking her sides
  3. in front of her, attacking her (nearby)
  4. in front of her, at medium distance and close to the center
  5. in front of her, at medium distance, anywhere
  6. in front of her, far away
  7. behind her, nearby
  8. anywhere, really

apart from this there are a number of other factors that weigh in to which actions are chosen

most of the zones mentioned get disabled for a set amount of time after it has been used, there is also a random amount of time between actions where she sort of just stands there waiting, maybe turning to face the player, and sometimes hopping, strafing, or walking around

these zones also correlate to 1 or more specific actions(1 and 2 are a sideways stomp/fire blast attack, 3 is a lava barf nearby, as well as a flaming sword attack, 4 is a lava projectile and a flaming sword “poke” that has a similar range, 5 is a lava spray, 6 is a leap towards the player, 7 is a backward stomp and 8 is turning to face the player, walking closer to the player, or dodging)

and then there is one move that is triggered by being attacked a bunch, which is a highly damaging fire blast with a large AOE, this is triggered separate from the areas, in that it will never be used if quelaag is not being attacked

this, in conjunction with a set of animations for each attack that convey rather clearly which move is about to be used, if you know where to look


week 2 – assignment 1:

main issue with finite state machines is you can very easily make states too detailed or not detailed enough, and the main difficulty is finding this balance, this is really too detailed, but i couldn’t think of anything else to make the tank do, and i forgot to represent the fact that “lost the player” should go back to “chase” instead of to patrol, and chase should have a “not-seen” timer that goes off when the FSM should return to patrol

week 2 – assignment 2: the miner and his wife (the idea for this was basically copied from the book i read almost a year ago)