(FSM) Concurrent Action conditions?

NodeCanvas Forums Support (FSM) Concurrent Action conditions?

Viewing 7 posts - 1 through 7 (of 7 total)
  • Author
    Posts
  • #10895
    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

    #10896
    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.

    Join us on Discord: https://discord.gg/97q2Rjh

    #10898
    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

    #10901
    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.

    Join us on Discord: https://discord.gg/97q2Rjh

    #10910
    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

    #10912
    Gavalakis
    Keymaster

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

    Join us on Discord: https://discord.gg/97q2Rjh

    #13497
    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.