(FSM) Concurrent Action conditions?

Forums 💬 NodeCanvas ⚙️ Support (FSM) Concurrent Action conditions?

Viewing 7 posts - 1 through 7 (of 7 total)
  • Author
    Posts
  • #18618
    wf
    Participant

      Hey, I’d like to run multiple states at once. Concurrent Actions would work but I need to evaluate conditions like Check Blackboard or Check Event. Is this possible? Thank you

      #18624
      Gavalakis
      Keymaster

        Hello,

        Running multiple states at once is really outside the scope of Finite State Machines. In FSMs only one state can be active.
        Please let me know an example of what you are after and maybe we can come up to a solution for the case, even providing you some new node.

        Thanks.

        #18623
        wf
        Participant

          Thanks for the response Gavalakis. Hope I can explain this clearly.
          I basically want to make a scheduler that runs tasks on a delay. Similar to MonoBehaviour.Invoke(task, delayTime)

          For example:

          The normal action state sends an event and continues it’s normal flow

          Concurrent state receives the event, waits a few seconds, does what it needs to and ends

          #18622
          Gavalakis
          Keymaster

            Hello again,

            I see. One way to achieve that would be to create a secondary FSMOwner on the gameobject with an ANY STATE node and event conditional transitions to other states which would contain the actions you need to perform for each case.

            Events send from your main FSM will be checked in that secondary FSM, so the ANY STATE will respond accordingly while your main FSM will continue it’ normal flow.

            Let me know if you need any clarifications on the setup.
            Thanks.

            #18621
            wf
            Participant

              Thanks. I’ll probably end up using a coroutine outside of nodecanvas
              It would be awesome if you added support for multiple threads inside one graph

              #18620
              Gavalakis
              Keymaster

                Hello again,
                I will take a look and see what can be done in that matter for sure.
                Thank you 🙂

                #18619
                meatloaf
                Participant

                  I second this. Right now we are currently working on a networking game and having multiple layers / threads active at a time could handle things like data synchronizations pretty well i think.

                  If you have any other ideas for how I could handle this now I would love to hear them.

                  Thanks in advance!

                Viewing 7 posts - 1 through 7 (of 7 total)
                • You must be logged in to reply to this topic.