Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

[RELEASED] Fury Framework - RPG/RTS Creator

Discussion in 'Assets and Asset Store' started by andorov, Dec 23, 2011.

  1. gaweph

    gaweph

    Joined:
    Sep 2, 2012
    Posts:
    26
    My mistake, its an array of BYtes, therefore can just convert to an integer:

    Int32 AmountLeftInStack = BitConverter.ToInt32(stack.States.ToArray(), 0);

    The most efficient use seems to be to just give a token to the deposit, and then decrement the token every time a unit "mines" from the deposit.

    Im still stuck however with this as when you call ModifyTokenStack, you have to specify the specific Byte index, however what do you do if you want to modify the entire Byte Array fro the stack?

    Another issue (which i have read previously), is that the OnCreated of the deposit doesn't seem to be called when the game launches, does this only fire if you create the deposit via code, and not if you place it into your scene?
     
    Last edited: May 30, 2013
  2. RkSanders

    RkSanders

    Joined:
    Jun 28, 2011
    Posts:
    26
    Hey, I'm trying to make player friendly bot spawner that will attack the enemy-warriors. I made a new unit definition, prefab (using player-warrior), and copied the creepspawner.cs. The new 'friendly' bots still show as enemies through the hud and attack player characters. I've tried owners one and three both attack both player mage and warrior. What else needs to change?
     
    Last edited: Jun 1, 2013
  3. gaweph

    gaweph

    Joined:
    Sep 2, 2012
    Posts:
    26
    I think you have to set the team for the commanders. Make sure your player team matches the team for the units being created.
     
  4. RkSanders

    RkSanders

    Joined:
    Jun 28, 2011
    Posts:
    26
    Hey thanks for the reply. So there is a differences between "default owner" (in the inspector on a unit script) and team? Checked the friendly bots team and it's 1. My player character is set to 0. What's the easiest way to change the commanders team? Doesn't seem to work by using Fury.Behaviors.Commander.SetTeam in the modified spawner.cs.Thanks a lot!
     
    Last edited: Jun 1, 2013
  5. gaweph

    gaweph

    Joined:
    Sep 2, 2012
    Posts:
    26
    It seems you specify your commanders in the Map Definition, and then you can specify each commanders team in this map definition

    So all you want to do is make sure that your friendly AI has the same team as your user commander.
     
  6. RkSanders

    RkSanders

    Joined:
    Jun 28, 2011
    Posts:
    26
    Hey thanks a lot!. The problem was that Locked Teams was checked in the maps properties. Now they're swapping teams correctly.
     
  7. kooinam

    kooinam

    Joined:
    Nov 24, 2012
    Posts:
    1
    I am having this error while deploying on ios.
    compute_class_bitmap: Invalid type 13 for field System.Collections.Generic.List`1+Enumerator[T]:current
    I am using the standalone version.Any solution?
     
  8. nobleGas

    nobleGas

    Joined:
    Jun 8, 2013
    Posts:
    1
    Hey guys,

    Im having a problem changing the direction of the capsule collider when creating a unit definition? Can't change the collider inspector settings at all so im trying to do it through code but not getting anywhere.


    Code (csharp):
    1.   public override void OnCreated(Fury.Behaviors.Unit created)
    2.     {
    3.  
    4.         var collider = created.GetComponent<CapsuleCollider>();
    5.        
    6.          collider.direction = 2;
    7.         base.OnCreated(created);
    8.     }
    Anybody know how i could do this properly? I feel like its the navmeshAgent script thats causing this but have no idea how to access its direction/properties other than the ones revealed when i play the game.

    Thanks

    EDIT: fixed it, as per the first tutorial video ,i had to make an empty gameobject and apply the unit compnent to that.
     
    Last edited: Jun 8, 2013
  9. stoli

    stoli

    Joined:
    Nov 13, 2012
    Posts:
    4
    How do you adjust the sensitivity and acceleration ? I cant find "Fury.Hud.SensitivityMouse" anywhere. Could you be more specific ?
     
  10. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    844
    Hi there, I'm trying to make it so when you start the game the player unit is automatically selected. I tried adding a dynamic var to store a Unit on the Simple HUD script so I could use it on Selection.add, but I think it doesn't accept it because the Unit class is stored in a dll. Any ideas?
     
  11. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    844
    found a way :)
    For those interested, add this in the Initialize method over SimpleHUD.cs :
    Code (csharp):
    1.  
    2. Fury.Behaviors.Unit mainChar;
    3. Fury.Behaviors.Unit[] unitComponents = FollowObject.GetComponents<Fury.Behaviors.Unit>();
    4. foreach (Fury.Behaviors.Unit unit in unitComponents){
    5.     mainChar = unit;
    6. }
    7. Selection.Add(mainChar as Fury.Behaviors.Unit);
    8.  
     
    Last edited: Jun 17, 2013
  12. RkSanders

    RkSanders

    Joined:
    Jun 28, 2011
    Posts:
    26
    I've added a victory condition and I want the game to change states and go to the lobby again, so the game can restart. Fury.Behaviors.Manager.GameState is readonly and I can't find any end game functions. Is this something that I'd have to add to the Managers script? (I see Manager has Fury.Behaviors.Manager.StartGame). I'm tooling around with the free version, so just wondering if I've hit the limit on what I can do with it or if this isn't the right approach.

    Thanks
     
  13. FlailingJackal

    FlailingJackal

    Joined:
    Nov 2, 2012
    Posts:
    2
    Hey, just want to say fantastic engine! Really enjoying working with it so far.

    I have a quick question too. So I integrated the KGFmap system into my screen and want the map to follow the selected unit. There is a method to change the unit the map follows.

    KGFMapSystem miniMapTarget = new KGFMapSystem();
    miniMapTarget.SetTarget();

    I just need a way to input the GameObject/unit that is selected. I've been trying a few things with no success, the main issue is a need the actual GameObject of the unit selected for the parameter of the SetTarget method. I've been looking at the simpleHUD.cs and I just can't figure it out and am feeling really stupid. If anyone could point me in the right direction that would be great.
     
  14. andorov

    andorov

    Joined:
    Feb 10, 2011
    Posts:
    1,061
    Just updated the asset store packages to Unity 4.0.

    Also changed the structure of the packages. FuryEditor.dll is no longer precompiled because it was causing way too many crashes when people upgraded Unity or mismatched versions.

    edit: I'm reading through the thread right now for any unanswered questions but please, email me directly as I don't come to these forums much anymore :(
     
    Last edited: Jul 2, 2013
  15. aidengaming123

    aidengaming123

    Joined:
    Apr 19, 2013
    Posts:
    55
    Does this come with a mobile example scene?
     
  16. Syaz

    Syaz

    Joined:
    Apr 14, 2013
    Posts:
    5
    Nope. It is mobile-friendly. You just have to program your own touch handlers. TouchKit and TouchScript plugins are the popular ones.

    Too bad if you don't plan on doing it for PC. You will need to do quite a bit of re-code of the SimpleHUD.cs and fight a bit against the mouse input system.
     
  17. aidengaming123

    aidengaming123

    Joined:
    Apr 19, 2013
    Posts:
    55
    Ok cool :)
     
  18. OberSchutze

    OberSchutze

    Joined:
    Oct 12, 2012
    Posts:
    11
    Hello, I have been using your Fury framework for a little while now and I am now running into some troubles. I just bought Unity pro and the paid version of fury and I am following your tutorials. On the 2nd video when you add the dummy into the scene as soon as I hit play the dummy disappears from the screen and the model disappears from the hierarchy. I then changed it to the same default owner that the player is and then it shows up fine. Any help would be great.

    Also it still says that the license is still false. Do I need to download it again from the asset store?
     
    Last edited: Aug 4, 2013
  19. OberSchutze

    OberSchutze

    Joined:
    Oct 12, 2012
    Posts:
    11
    I tried emailing you, but the email bounced back.
     
  20. pneill

    pneill

    Joined:
    Jan 21, 2007
    Posts:
    207
    @OberSchutze

    The reason that happens is because the unit isn't associated with a commander that's required for the scene. If the unit doesn't have a commander present in the scene, it's deleted.
     
  21. Jinfaa1

    Jinfaa1

    Joined:
    Sep 24, 2012
    Posts:
    4
    hello! please tell me how to make a detour units? And yet for some reason you can push the dummy character.
     
  22. Syaz

    Syaz

    Joined:
    Apr 14, 2013
    Posts:
    5
    I emailed the framework author regarding this issue as well. To quote his reply:

    It is unfortunate there isn't an easy option to do this. We have "clamped to surface" but not "immovable". :(
     
  23. Jinfaa1

    Jinfaa1

    Joined:
    Sep 24, 2012
    Posts:
    4
    I decided to try the A *. And almost everything is good, dummy does not move. To get around the units used http://arongranberg.com/astar/docs/class_dynamic_grid_obstacle.php. And the units bypass each other! But that's not all, for some reason the units when they want to outdo each other sometimes change their minds one way to go and change it for another. And A * strange works with fraemwork, the characters run and twitch.
     
  24. Jinfaa1

    Jinfaa1

    Joined:
    Sep 24, 2012
    Posts:
    4
    How have you managed to contact the author? All letters are sent back.
     
  25. Syaz

    Syaz

    Joined:
    Apr 14, 2013
    Posts:
    5
    ali@dreadware.com

    Give him a few days time. He's been busy but he'll reply, from my experience.
     
  26. Jinfaa1

    Jinfaa1

    Joined:
    Sep 24, 2012
    Posts:
    4
    I wrote him back but the letter was returned. Strange ... Used the mail gmail.
     
  27. ColeBKray

    ColeBKray

    Joined:
    Dec 18, 2011
    Posts:
    36
    Hi,

    How can I set up MonoDevelop, so intellisense shows Fury Framework stuff?

    I couldn't find any solution for this on google.

    Thanks :)
     
  28. ColeBKray

    ColeBKray

    Joined:
    Dec 18, 2011
    Posts:
    36
    Ok,I solved this problem( instead of using Monodevelop- Built In, I switched to browse -> Monodevelop in Unity Preferences).

    Now I ran in a more advanced problem:

    Fury Framework doesn't work with Mixamo animations, animations from other FBXs, so I started to write my own Animation Controller.
    I guessed that Fury.Behaviors.Animator.OnStateChange is fired when the movement of the Unit changes, so I wrote the following code:
    Code (csharp):
    1. using UnityEngine;
    2. using System.Collections;
    3.  
    4. public class Animate : Fury.Behaviors.Animator {
    5.    
    6.     private Animator anim;
    7.    
    8.     // Use this for initialization
    9.     void Start () {
    10.     anim = GetComponent<Animator>();
    11.        
    12.     }
    13.    
    14.     // Update is called once per frame
    15.     void Update () {
    16.        
    17.        
    18.        
    19.     }
    20.    
    21.      override public void OnStateChanged( Fury.AnimationStates oldState, Fury.AnimationStates newState){
    22.     //Debug.Log(CurrentState);
    23.         if (oldState == Fury.AnimationStates.Idle){
    24.             if (newState == Fury.AnimationStates.Move) {
    25.         anim.SetBool("IsMoving", true);
    26.              
    27.         }
    28.         }
    29.        
    30.     }
    31.    
    32.    
    33.    
    34. }
    35.  
    IsMoving is a boolean in Mecanim, when it's set to true, the animation should change from an idle one to a walk one, but it doesn't change.


    I checked CurrentState in the console, and continually prints out "Move", whether I move or not.

    Can you please help me with this?
     
  29. CaptainExtra300

    CaptainExtra300

    Joined:
    Jul 14, 2012
    Posts:
    130
    Glad this does multiplayer too I assume this can be used for a moba style game, right?
    ,
    any chance this framework comes with some sort of simple match-making feature, ie: moba style match-making?
    team, vs team, 1 vs 1 , 2 vs 2 etc....
     
  30. Betweenmatt

    Betweenmatt

    Joined:
    Aug 28, 2013
    Posts:
    3
    I'm having trouble creating an ability that increases movement speed. I figure I would use the ISpeed status, but have trouble figuring out where to go from there x.x
     
  31. Bellesteck

    Bellesteck

    Joined:
    Oct 9, 2013
    Posts:
    5
    -nevermind
     
    Last edited: Oct 9, 2013
  32. Bellesteck

    Bellesteck

    Joined:
    Oct 9, 2013
    Posts:
    5
    Quick question, I'm using the movement script included with unity framework. it appears that it is programmed to move the object(unit) to the location while turning at a certain speed. also, it looks pretty choppy when a unit accelerates and then stops at the precise point. could someone give me an example on how i could code a new script(or something to fix this)? what I'm looking for is (A) a way to make the object de-accelerate on its way to the location designated, AND (B) not allow the acceleration to begin until the object(unit) is facing the position.
    Any help would be excellent! ( I'm not good with coding as I am a designer, so please be very clear) -Thanks
     
    Last edited: Oct 11, 2013
  33. webgovernor

    webgovernor

    Joined:
    Feb 10, 2013
    Posts:
    18
    Hi Bellesteck,

    There's not much documentation out there other than the fury.xml file provided with the evaluation package, but I think the easiest way to implement this will be to checkout the source code and follow the Order() logic of Unit. The author says he'll provide the source code if you ask for it... unfortunately, I've been unable to get a hold of him via e-mail. We're looking to do something similar to your change. If I do end up getting some information from the asset author, I'll be sure to pass it along here.

    Side note: Does anyone have the source and would be willing to share it if I provided an invoice #?
     
  34. Evilcool

    Evilcool

    Joined:
    May 26, 2013
    Posts:
    5
    how about fog of war solution ?
     
  35. Iglander99

    Iglander99

    Joined:
    Feb 27, 2014
    Posts:
    4
    Hi, Everybody

    I'm trying to reproduce the tutorial 1 "Creating a character" but i've an error :

    Destroyed an entity because Commander (Three) does not exist.
    UnityEngine.Debug:LogWarning(Object)
    Fury.Behaviors.Manager:()
    Fury.Behaviors.Commander:()
    :(Single)
    Fury.Behaviors.Manager:Update()


    My map has three commanders (though i don't understand why) and I flag them like in the Tutorial Scene

    $Fury_Map.png

    What i'm doing wrong ?
     
  36. Iglander99

    Iglander99

    Joined:
    Feb 27, 2014
    Posts:
    4
    Ok, I see the problem : in the player's property Unit, the default owner is affected to "Three". I set the value of "One" and resided the map to one element.
    Everything works fine.
     
  37. Iglander99

    Iglander99

    Joined:
    Feb 27, 2014
    Posts:
    4
    Hi ColeBKray,

    Just go to this site : http://mecwarriors.com/2013/11/22/humanoid-animation-free-root-motion/

    Follow the tutorial and just modify the script PlayerMovement.cs, it works fine for me ! :

    Code (csharp):
    1. using UnityEngine;
    2. using System.Collections;
    3.  
    4.  
    5. public class PlayerMovement : MonoBehaviour {
    6.     Transform mainCamera;      //holds the main camera as a Transform object
    7.     Animator animController;   //holds the player character's animator controller
    8.  
    9.     //the character's possible movement states
    10.     enum MovementState
    11.     {
    12.         Idle = 0,
    13.         Walking = 1,
    14.         Running = 2
    15.     }
    16.     //holds the player's current enumerated movement state
    17.     MovementState currentMovementState;
    18.  
    19.     // Use this for initialization
    20.     void Start () {
    21.         // Use this for initialization
    22.         mainCamera = Camera.main.transform;           //initialize the camera's transform
    23.         animController = GetComponent<Animator>();    //initialize the animator controller
    24.     }
    25.    
    26.     // Update is called once per frame
    27.     void Update () {
    28.         //get axis input from player (W, A, S, and D keys/Arrow keys)
    29.         float verticalAxis = Input.GetAxis("Vertical");
    30.         float horizontalAxis = Input.GetAxis("Horizontal");
    31.  
    32.         //get the forward-facing direction of the camera
    33.         Vector3 cameraForward = mainCamera.TransformDirection(Vector3.forward);
    34.         cameraForward.y = 0;    //set to 0 because of camera rotation on the X axis
    35.        
    36.         //get the right-facing direction of the camera
    37.         Vector3 cameraRight = mainCamera.TransformDirection(Vector3.right);
    38.  
    39.         //determine the direction the player will face based on input and the camera's right and forward directions
    40.         Vector3 targetDirection = horizontalAxis * cameraRight + verticalAxis * cameraForward;
    41.        
    42.         //normalize the direction the player should face
    43.         Vector3 lookDirection = targetDirection.normalized;
    44.  
    45.         //rotate the player to face the correct direction ONLY if there is any player input
    46.         if (lookDirection != Vector3.zero)
    47.             transform.rotation = Quaternion.LookRotation(lookDirection);
    48.  
    49.         var self = GetComponent<Fury.Behaviors.Unit>();
    50.         //if there is any player input...
    51.         if (verticalAxis != 0 || horizontalAxis != 0 || self.State == Fury.UnitStates.MovingToPosition)
    52.         {
    53.             //if the run modifier key is pressed
    54.             if (Input.GetKey(KeyCode.LeftShift) || Input.GetKey(KeyCode.RightShift))
    55.                 currentMovementState = MovementState.Running;      //set movement state to running
    56.             else    //if there is no movement modifier
    57.                 currentMovementState = MovementState.Walking;      //set movement state to walking
    58.         }
    59.         else    //default to idle if no input
    60.         {
    61.             currentMovementState = MovementState.Idle;    //set movement state to idle
    62.         }
    63.  
    64.         //send the current movement state to the character controller
    65.         animController.SetInteger("MovementState", (int)currentMovementState);
    66.  
    67.     }
    68. }
    69.  
    70.  
     
    Last edited: Mar 8, 2014
  38. monkolabs

    monkolabs

    Joined:
    Feb 12, 2014
    Posts:
    6
    whether support in android / iOS?
     
  39. kilik128

    kilik128

    Joined:
    Jul 15, 2013
    Posts:
    909
    HI i try in speed i don't see any level system and xp or this only maybie
     
  40. ameenul

    ameenul

    Joined:
    Oct 22, 2013
    Posts:
    2
    Hi.. can anyone explain me about map definition, what is the difference about if I checked "is required" and if I dont checked it ?

    What is function of "locked team" ?
    and is element 0 refer to owner one?
     
  41. ameenul

    ameenul

    Joined:
    Oct 22, 2013
    Posts:
    2
    Good morning, my name is Akbar, I want to ask, I use layer based collision in my game so if player layer collide with player there is no collision, but.., in fury if player is UNIT the collision based layer in unity cant work, so player still collide with another player . How to make player can pass through to another player or disable collision with specific layer?.. I am using navmesh agent from unity