Announcement

Collapse
No announcement yet.

UFSM: Finite State Machine

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • replied
    v2.0.6 is uploaded to Marketplace;
    ​​
    This latest update (for Unreal 4.20+) now includes pre-built binaries for Windows, Linux, Android, Mac and iOS platforms.

    Leave a comment:


  • replied
    Seems like I just forgot to move a few things to "_Shared.h"

    Leave a comment:


  • replied
    You should build your plugins with a non-unity build so they catch missing includes/decls

    UFSM_Log.cpp is missing include for UStateMachineComponent
    UFSM_StateMachineComponent.cpp is missing include for UFSMSettings
    UFSM_StateMachineComponent.cpp is missing include for LOG_FSM (#include "UFSM_Log.h")
    UFSM_StateMachineComponent.cpp is missing include for ACharacter
    UFSM_StateMachineComponent.cpp is missing include for USkeletalMeshComponent
    UFSM_StateMachineComponent.cpp is missing include for UStateMachineABP
    UFSM_StateMachineABP.cpp is missing include for UStateMachineComponent

    Leave a comment:


  • replied
    hello, Bruno XaVIeR

    Thank you for your answer.
    Your answer is very helpful.

    Leave a comment:


  • replied
    Originally posted by sukrit1234 View Post
    Hi hello, Bruno XaVIeR
    I need to use for Multiplayer how can I do any code or clear example ?
    I try serveral hours. It's not replicate at all although I'm enable replicate setting.
    Check on FSM Component's Details panel which "Replication Mode" is set.

    ​​​​​​For Unreal, "none" mode means no condition is set and it will replicate to everyone...
    By default: a FSM Component is set to replicate from Server to Owner Client only, you can change that in Details Panel.

    Leave a comment:


  • replied
    Originally posted by kkljh1212 View Post
    hello, Bruno XaVIeR

    I am not good at English. Please understand this.

    I'm going to ask some questions.

    1. Can this plug-in replace the UE's State-Machine?
    StateMachine used in AnimBP
    I want to make it with c++ and use it.
    Is this possible?

    2. Questions about how to use.
    - Can you make it like a state-machine in the UE? (using C++ only )- Do I need to create nodes in AnimBP and control them in C ++?


    It is not easy to understand the documents listed above.
    So I asked a question.
    If you answer, it will be very helpful.

    Thanks!
    Shame on me...
    Since last year I have a list of tutorials I must do for this plugin, but I am still under contract witha company and while this company don't release me I cannot sit and develop the tutorials this plugin needs.
    But I didn't give up yet, one day I going to make them :s

    _____

    About your questions:

    #1 No, you can use Animation FSMs to "control" states of this plugin(if you want to).
    You can otherwise development your own FSM Blueprint and make it run totally unrelated to AnimBPs.
    I think some people assume "AnimBPs are required to use this", that is not the case! It's a possibility, not a requirement.

    2# Again, you can keep everything in your FSM Component, you don't have to use AnimBPs if your game don't need this "link" between the two systems.

    _____

    I'm supposed to make a tutorial about this, maybe a character movement system... I'm open to suggestions on what you people would like to see covered on a demo/tutorial Blueprint.

    Leave a comment:


  • replied
    Hi hello, Bruno XaVIeR
    I need to use for Multiplayer how can I do any code or clear example ?
    I try serveral hours. It's not replicate at all although I'm enable replicate setting.

    Leave a comment:


  • replied
    hello, Bruno XaVIeR

    I am not good at English. Please understand this.

    I'm going to ask some questions.

    1. Can this plug-in replace the UE's State-Machine?
    StateMachine used in AnimBP
    I want to make it with c++ and use it.
    Is this possible?

    2. Questions about how to use.
    - Can you make it like a state-machine in the UE? (using C++ only )- Do I need to create nodes in AnimBP and control them in C ++?


    It is not easy to understand the documents listed above.
    So I asked a question.
    If you answer, it will be very helpful.

    Thanks!

    Leave a comment:


  • replied
    Epic processed the update 2.0 with fixes and changes listed above;
    You should be able to download it from Launcher now.

    -----

    Edit:

    Submitted v2.0.2 with a hotfix for the last known one bug I'm aware of:
    * FSM Components couldn't find "States" list if Component's Owner wasn't a Pawn, resulting on a permanent "NULL" State lock on Begin Play.
    * Now regardless of attaching to a Pawn/Character or not, FSM Components will always initialize States list correctly even if Owner has no Blueprint Asset.

    Leave a comment:


  • replied
    Fantastic. Thanks for the quick response.

    As it stands, I found a work-around by creating a FSM class which I configure before attaching to the actor.

    Really impressed with how it all works - really cleans up the blueprints.

    Leave a comment:


  • replied
    Submitted version 2.0 for review (for Unreal 4.18, 4.19, 4.20);
    UFSM 2.0 changes:

    * Several internal runtime minor fixes.
    * "K2_Enumator" data input and "BP_Enumarator" merged purpose.
    * Global Flow Options moved from Project Settings to individual FSM Component's Settings section.
    "Blueprint Auto Flow Transitions" = true by default;
    "Blueprint Auto Flow FSM" = true by default;

    * Unreal Engine might set "Auto Activate" = false checkbox on FSM Components; make sure you have it enabled or the Component will just "sleep".

    Leave a comment:


  • replied
    Originally posted by Robyne View Post
    Running 4.20.1 build. Activating a state machine gives the following error:

    Code:
    ...
    When stepping through the source on line 70 of UFSM_StateMachineComponent.cpp the STATE value was 'Empty'. Would this have something to do with it?
    Activate() doesn't check if your Component have been fully initialized or not; it assumes you've built your State array already.
    I will add code there to prevent that crash.

    Leave a comment:


  • replied
    Originally posted by scardario View Post
    Ok, so I gave it a rest to everything (including my brain) because it wasn't working at all, after a good night's sleep I started to reorganize everything, I even deleted and recreated the component in the owner object and the states in the FSM object. Now it seems to be working correctly.

    Thanks for the help.


    EDIT:

    I'm having problems again, now I can see some warnings on the message log:

    Code:
    {FSM}:: 'Set State' named [None]: State ID doesn't exist. --> FSM: Set State: [Function /Script/UFSM.StateMachineComponent:SetState at (maquinaEstados-nacho_C /Game/maps/UEDPIE_0_start.start:PersistentLevel.nacho_C_0.maquinaEstados-nacho)]
    {FSM}:: 'Set State' named [saltar]: State ID doesn't exist. --> FSM: Set State: [Function /Script/UFSM.StateMachineComponent:SetState at (maquinaEstados-nacho_C /Game/maps/UEDPIE_0_start.start:PersistentLevel.nacho_C_0.maquinaEstados-nacho)]
    I already double checked the state names, for some reason it's being unable to set an existent state.

    I've identified this bug and fixed.
    Was related to recent changes on MakeStates() function moved to be called from within InitProperties(); next update will contain fix for this.

    Leave a comment:


  • replied
    Running 4.20.1 build. Activating a state machine gives the following error:

    Code:
    Assertion failed: Pair != nullptr [File:d:\rocketsync\4.20.0-4212847+++ue4+release-4.20\working\engine\source\runtime\core\public\Containers/Map.h] [Line: 467]
    
    KERNELBASE
    UE4Editor_ApplicationCore
    UE4Editor_Core
    UE4Editor_Core
    UE4Editor_UFSM!UStateMachineComponent::Activate() [d:\build\++portal+dev-marketplace+full\sync\localbuilds\plugintemp\hostproject\plugins\ufsm\source\ufsm\private\ufsm_statemachinecomponent.cpp:70]
    UE4Editor_UFSM!UStateMachineComponent::SetActive() [d:\build\++portal+dev-marketplace+full\sync\localbuilds\plugintemp\hostproject\plugins\ufsm\source\ufsm\private\ufsm_statemachinecomponent.cpp:76]
    UE4Editor_UFSM!UStateMachineComponent::ActivateFSM() [d:\build\++portal+dev-marketplace+full\sync\localbuilds\plugintemp\hostproject\plugins\ufsm\source\ufsm\private\ufsm_statemachinecomponent.cpp:559]
    UE4Editor_UFSM!UStateMachineComponent::execActivateFSM() [d:\build\++portal+dev-marketplace+full\sync\localbuilds\plugintemp\hostproject\plugins\ufsm\source\ufsm\classes\ufsm_statemachinecomponent.h:160]
    UE4Editor_CoreUObject
    When stepping through the source on line 70 of UFSM_StateMachineComponent.cpp the STATE value was 'Empty'. Would this have something to do with it?

    Leave a comment:


  • replied
    Update for Unreal 4.20 released.

    Leave a comment:

Working...
X