5
\$\begingroup\$

So I was just learning about Behaviour trees and I thought they're really cool. So I decided to use them in my games. But what I don't quite understand is:

Short: Can everything done in an FSM, be done in a BT?

Long: So one of the games I'm involved in has some RE (classical resident evil) mechanics. In RE, interaction with triggers could change. For ex see this video, take 2:40 as an example (it's the tiger statue puzzle from RE1) - basically, if you interact with it the first time, it says "It's a tiger statue, it appears to have holes in its eyes". If then you use the Blue gem on it, it rotates to the left (or right) revealing an item behind it, if you pickup the item you go back to the initial state. Use the red gem and it would rotate the other direction revealing another item, pickup it and you're back again. This is obviously an FSM. Here's how it looks:

enter image description here

So how can this tiger statue puzzle FSM be done in a BT? (if at all) - Is this more suited for an FSM? or a BT would be nice to use here as well?

Thanks for all tips/any help.

EDIT: Gamedev.net crosslink.

\$\endgroup\$
  • 1
    \$\begingroup\$ This is a little open-ended. You have two different base questions and then follow up with additional questions. You might find this kind of discussion will work better at the gamedev.net forums, or you might want to sharpen your question into a single concrete problem you're trying to solve/understand. \$\endgroup\$ – Sean Middleditch Jun 14 '14 at 1:16
  • \$\begingroup\$ Done. Down to one question. Even though I think they're all related and could be answered in one go. The main thing I want to understand is how to represent the FSM I showed as a BT. \$\endgroup\$ – vexe Jun 14 '14 at 1:53
  • \$\begingroup\$ A computer scientist might give you an answer about whether or not theoretically any FSM can be expressed as an equivalent BT or vice versa. \$\endgroup\$ – Philipp Jun 14 '14 at 9:13
  • 1
    \$\begingroup\$ I thought this was more a gamedev related thing? I'm just asking, how can I express the fsm in the video (tiger statue) as a BT? isn't this a basic gameplay thing..? \$\endgroup\$ – vexe Jun 14 '14 at 10:33
2
\$\begingroup\$

For reference: I found a thread where somebody wants to adapt FSM behaviour into an BT as well, that contains some hints and a simple example in the first posts of how to do it.

But I don't think you want to use it for things like this statue. Like you see in your given example and the graph you draw to show it: It is extremly simple to design interactions and puzzles in those graphs. You directly map the possible actions of the player to the outcome and you dont have any unnecessary information.

Behaviour trees do not simplify this design or implementation process. Don't get me wrong, BTs can be great to design and quickly prototype complex AI behaviour, but this is no Artificial Intelligence, it is just a game object reacting to simple distinct player actions.

Stay with your FSM for tasks like that!

\$\endgroup\$
  • \$\begingroup\$ Thanks! Yea I guess that makes sense. I just thought BTs would fit in for simple stuff too. I guess I'll refrain from using them till I have a bit more complex situation or some AI. \$\endgroup\$ – vexe Jun 17 '14 at 18:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.