Search Unity

[RELEASED] Control Freak 2 - Multi-platform Input System.

Discussion in 'Assets and Asset Store' started by DansGameTools, Oct 21, 2016.

  1. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
    Control Freak 2 is a multi-platform input system that supports multi-touch, accelerometer, keyboard, mouse and game controllers.

    Make your game multi-platform without touching a single line of code! (In 99% of cases no code modification is needed).

    Main features :
    • Advanced touch control system that can perfectly emulate traditional input sources (digital, analog, delta, scroll and even low-level touches).
      On-screen controls can be composed out of button, joysticks, steering wheels, track pads and super touch zones. State of touch controls can be bound to virtual keys, named buttons and axes. Super Touch Zone, the most advanced control type of the pack, lets you bind every finger gesture imaginable - for example, single-finger tap can act as a right mouse button click, swiping horizontally with three fingers can emulate mouse scroll wheel and two-finger twist gesture can be bound to an analog axis that rotates the camera!

    • Simple API - there's no need to learn new API or rebuild you code to work with event-based input system... Familiar Input-like static class will make you feel right at home.

    • Script Converter will automatically convert your project's scripts!

    • With Control Freak Assistant you will be able to quickly create custom Input Rigs, complete with touch controls, with just a couple of clicks.

    • Integration with Playmaker and a collection of Rigs for many popular assets including:
    More info:
    Videos on YouTube
    News and Tutorials
    Asset Store Product Page
     
    Last edited: Jul 18, 2018
  2. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
     
    Last edited: Nov 4, 2016
  3. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
  4. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
  5. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
    Control Freak 2 3rd Anniversary Sale - 50% Off!!
    Get your copy today!

    http://u3d.as/5GT
     
  6. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
  7. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
  8. dayero

    dayero

    Joined:
    Jan 27, 2014
    Posts:
    45
    Small Question Before I buy this: If, for the moment, my game is only desktop with only keyboard and mouse control, are there still advantages to using control freak over the unity standard input classes?
    What are the advantages regarding controller support?
     
  9. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
    Hi,

    Sorry for getting back to you so late, but I Unity Forum e-mail notifications don't work for me for some reason...

    Switching to CF2Input class will allow you to add touch controls later on WITHOUT writing any additional code!

    Game controller mapping isn't consistent across platforms at all - the same controller model is mapped differently on Windows, Mac, Android and so on... You simply can not use Unity Input Manager to assign game controller buttons to named axes and expect them to be cross-platform.
    Control Freak 2 handles remapping internally and allows you to bind common game controller elements (analog sticks, d-pad, face buttons, triggers, etc.) to axes and virtual key codes. At the moment, the list of supported game controllers is not the longest, but it will expand in the future.

    Best regards,
    Dan
     
  10. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
  11. ViVugameStudio

    ViVugameStudio

    Joined:
    Oct 5, 2016
    Posts:
    5
    Hi,
    I have kubold controller in https://www.assetstore.unity3d.com/en/#!/content/26876 and want to use CF2 to port in to touch input.
    I follow your guide on youtube but the recording input not work.
    The controller was made by playmaker. If you cannot try with kubol's controller, could you create a guide/tutorial to clear how to use CF2 when create a new project.

    I want to learn more about the CF2 so can you explain all modules/editors in Cf2. I dont find the document that cover all parts of Cf2.
     
  12. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
    Hi,

    I can help you out - please visit : http://www.dansgametools.com/p/control-freak-support.html.

    Best regards,
    Dan
     
    dh2biker likes this.
  13. MrEsquire

    MrEsquire

    Joined:
    Nov 5, 2013
    Posts:
    2,712
  14. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
  15. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
    Hi,
    That kind of control scheme simply cannot be translated to touch screen - you must add a second touch joystick and add the ability to aim with a joystick to your script. That's the best way.

    Alternatively, you could switch to using a virtual cursor. Instead of using the actual mouse position, you could create a simple GUI sprite and control it's position by adding mouse delta every frame. That would allow you to use real mouse delta on desktops and virtual mouse delta sourced from CF2 Track Pad, Super Touch Zone controls or any other input source (game controller, keyboard, etc.) bound to 'Mouse X' and 'Mouse Y' axes .

    Best regards,
    Dan
     
    snan likes this.
  16. muhammadadnan0075

    muhammadadnan0075

    Joined:
    Dec 17, 2016
    Posts:
    14
    Hello @DansGameTools
    Bind Pitch(Analog) doesn't seem to work in Tilt mode. i have latest version of CF2 installed.
     
  17. wahyuway

    wahyuway

    Joined:
    Oct 7, 2013
    Posts:
    80
    Hi @DansGameTools
    I want to rotate and spin gameobject. How can i simulate swipe using cf2?
    i've played with sample swipe scene, but still figure it out. Could you help me? Tks
     
  18. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
    Hi,

    I'm sorry, but before I can answer your question, I need verify your Asset Store Invoice number.
    Please send it to DansGameTools@gmail.com.
    Sorry for the inconvenience.

    Best regards,
    Dan
     
  19. SoftTechGamingStudio

    SoftTechGamingStudio

    Joined:
    Feb 1, 2017
    Posts:
    4
    How to change switch state using an another script ?
     
  20. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
    I'm sorry, but before I can answer your question, I need verify your Asset Store Invoice number.
    Please send it to DansGameTools@gmail.com.
    Sorry for the inconvenience.
     
    theANMATOR2b likes this.
  21. daniozi117

    daniozi117

    Joined:
    Mar 4, 2016
    Posts:
    26
    I want to add axis name to switch the person
     
  22. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
    I'm sorry, but before I can answer your question, I need verify your Asset Store Invoice number.
    Please send it to DansGameTools@gmail.com.
    Sorry for the inconvenience.
     
  23. hoodoo

    hoodoo

    Joined:
    Oct 19, 2012
    Posts:
    133
    Hi Dan. I'm considering purchasing CF2, but wondering if you have documentation for how to set it up and use it? The doc link on the asset store page doesn't work: http://dgtdocs.000webhostapp.com/

    Thanks.
     
  24. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
  25. mattis89

    mattis89

    Joined:
    Jan 10, 2017
    Posts:
    1,053
    Hello! Does this asset work out of the box to make a split screen coop?
     
  26. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
    Yes. I've sent you more details in an e-mail.
     
    mattis89 likes this.
  27. ALi_shah

    ALi_shah

    Joined:
    May 10, 2014
    Posts:
    9
    Help ??? Getting this error when ever i install controll freak in my project using control freak input for UFPS
    PlayerSettings Validation: Requested build target group (22) doesn't exist; #define symbols for scripting won't be added.
    UnityEditor.PlayerSettings:SetScriptingDefineSymbolsForGroup(BuildTargetGroup, String)
    ControlFreak2Editor.ConfigManager:AddSymbol(String, BuildTargetGroup) (at Assets/Assetbundels/Extensions/Plugins/Control-Freak-2/Scripts/Editor-Scripts/Tools/ConfigManager.cs:302)
    ControlFreak2Editor.ConfigManager:AddSymbolToAll(String) (at Assets/Assetbundels/Extensions/Plugins/Control-Freak-2/Scripts/Editor-Scripts/Tools/ConfigManager.cs:195)
    ControlFreak2Editor.ConfigManager:AddDefaultControlFreakSymbols() (at Assets/Assetbundels/Extensions/Plugins/Control-Freak-2/Scripts/Editor-Scripts/Tools/ConfigManager.cs:115)
    ControlFreak2Editor.Installer:Install() (at Assets/Assetbundels/Extensions/Plugins/Control-Freak-2/Scripts/Editor-Scripts/Tools/Installer.cs:305)
    ControlFreak2Editor.Installer:OnGUI() (at Assets/Assetbundels/Extensions/Plugins/Control-Freak-2/Scripts/Editor-Scripts/Tools/Installer.cs:249)
    UnityEngine.GUIUtility:processEvent(Int32, IntPtr)
    Untitled.png
     
  28. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
    Hi,
    Go to Asset Store window in Unity Editor and update Control Freak 2 from there.
    Best regards,
    Dan
     
    ALi_shah likes this.
  29. mrm83

    mrm83

    Joined:
    Nov 29, 2014
    Posts:
    224
    Is this asset suppose to work with ss camera canvas?
    When I use SSC, the joystick sticks to one direction as user move towards that direction.
     
  30. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
    Screen Space Camera is not supported at the moment - just Screen Overlay and World Space (with an Orthographic Camera).
    If you need Camera Overlay mode, you can still make it work by using Screen Overlay canvas and resizing the CF2-Panel object's RectTransform to cover the screen portion of your camera.

    If you need anything more, please send your questions to DansGameTools@gmail.com .
     
  31. mrm83

    mrm83

    Joined:
    Nov 29, 2014
    Posts:
    224
    Ok, I separated out my UI so that CF2 is on it's own canvas (SSO) and I created my main UI canvas which is SSC.
    However, my SSC ui seems to be blocked such that interactions are not working. Changing the SSC canvas to SSO fixes this problem.
     
  32. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
    Hi,

    Please send me more details to DansGameTools@gmail.com.

    Also, please include your Asset Store order/invoice number for verification and a zipped 'CF2-Data' folder (you will find it in your project's root folder, after running CF2 Script Converter).
     
  33. h00man

    h00man

    Joined:
    Apr 17, 2017
    Posts:
    48
    hi, i was wondering if there was any way to convert a "mouse portion following" to one of your touchable joysticks?
    i used this script to make a crosshair follow my mouse cursor.
    my question is do you think its possible to convert it to a joystick, so that when i move the joystick the cross hair moves on the screen?

    Code (CSharp):
    1. public class follwMouse : MonoBehaviour {
    2.  
    3.     private Vector3 targetPos;
    4.     public float speed = 2.0f;
    5.  
    6.     void Start() {
    7.         targetPos = transform.position;
    8.      
    9.     }
    10.  
    11.     void Update () {
    12.  
    13.         float distance = transform.position.z + Camera.main.transform.position.z;
    14.         targetPos = new Vector3(Input.mousePosition.x, Input.mousePosition.y, distance);
    15.         targetPos = Camera.main.ScreenToWorldPoint(targetPos);
    16.  
    17.         Vector3 followXonly = new Vector3(targetPos.x, targetPos.y, transform.position.z);
    18.         transform.position = Vector2.MoveTowards (transform.position, followXonly,speed * Time.deltaTime );
    19.     }
    20. }
    tnx
     
  34. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
    Porting control systems that use absolute mouse position to mobile is rarely easy, but with a couple of extra lines of code, you could, for example, switch to a virtual cursor position controlled by joystick axes.
     
  35. h00man

    h00man

    Joined:
    Apr 17, 2017
    Posts:
    48
    ok, i searched for it , but couldn't find anything useful :(
    in fact i don't what should i search , or what kind of tutorial should i look for.
    is there any video on youtube that contains controlling a mouse cursor with a touch joystick?
     
  36. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
    Hi, send your Asset Store invoice/order number to DansGameTools@gmail.com for verification and then I will explain you how to make it work.
     
  37. h00man

    h00man

    Joined:
    Apr 17, 2017
    Posts:
    48
    ok , thanks:)
     
  38. bilterystlaura

    bilterystlaura

    Joined:
    Sep 26, 2018
    Posts:
    4
    hello, I followed the tutorial OK everything works well on mobile, but I lost the keyboard function on the computer, do you have a solution?

    salut, j'ai suivie le tutoriel OK tout fonctionne bien sur mobile, mais j'ai perdu les fonction clavier sur l'ordinateur, avez vous une solution ?
     
  39. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
    Hi, send your Asset Store invoice/order number to DansGameTools@gmail.com for verification and then I will explain you how to make it work.
     
  40. TechTools

    TechTools

    Joined:
    Nov 21, 2013
    Posts:
    19
    Hi, it seems the install add-ons dropdown menu is greyed out, so I can't download the Opsive integration. Is there a workaround or a fix for this?
     
  41. DansGameTools

    DansGameTools

    Joined:
    Sep 16, 2013
    Posts:
    30
    Hi, Are you sure Opsive TPC is already imported?
     
  42. TechTools

    TechTools

    Joined:
    Nov 21, 2013
    Posts:
    19
    It wasn't, that's probably the issue. Thanks :)
     
  43. stanislavdol

    stanislavdol

    Joined:
    Aug 3, 2013
    Posts:
    269
    Hi, I'm wondering if there is a built-in gesture for zooming in/out using 2 fingers?
     
  44. captnhanky

    captnhanky

    Joined:
    Dec 31, 2015
    Posts:
    89
    Hi!
    Is there a way to make a "dead zone" in the middle of the joystick controller, where the joystick does nothing?
    I need this because on mobile when my character is supposed to go down it constantly changes left- right direction, which is annoying.

    Thanks!
     
  45. ALi_shah

    ALi_shah

    Joined:
    May 10, 2014
    Posts:
    9
  46. Greg-Bassett

    Greg-Bassett

    Joined:
    Jul 28, 2009
    Posts:
    613
    In my scene I can use the mouse wheel to zoom the camera in and out, how can I use CF2 to use two finger pinch to do the same thing as the mouse wheel?

    Thanks in advance!
     
  47. ivabibliocad

    ivabibliocad

    Joined:
    Jan 11, 2014
    Posts:
    71
    Hello I'm endlessly failing with the extended flycam script. The problem is with the mouse look input/transfer. Any advice will be appreciated!!

    Here's the script generated:
    Code (CSharp):
    1. if (ControlFreak2.CF2Input.GetMouseButton(1))
    2.             {
    3.                 _rotationX += ControlFreak2.CF2Input.GetAxis("Mouse X") * CameraSensitivity * Time.deltaTime;
    4.                 _rotationY += ControlFreak2.CF2Input.GetAxis("Mouse Y") * CameraSensitivity * Time.deltaTime;
    5.                 _rotationY = Mathf.Clamp(_rotationY, -90, 90);
    6.             }
    7.  
    8.             Quaternion targetRotation = Quaternion.AngleAxis(_rotationX, Vector3.up);
    9.             targetRotation *= Quaternion.AngleAxis(_rotationY, Vector3.left);
    10.             transform.rotation = Quaternion.Slerp(transform.rotation, targetRotation, Time.deltaTime * 4f);
    11.  
    12.             float speedFactor = 1f;
    13.             if (ControlFreak2.CF2Input.GetKey(KeyCode.LeftShift) || ControlFreak2.CF2Input.GetKey(KeyCode.RightShift)) speedFactor = FastMoveFactor;
    14.             if (ControlFreak2.CF2Input.GetKey(KeyCode.LeftControl) || ControlFreak2.CF2Input.GetKey(KeyCode.RightControl)) speedFactor = SlowMoveFactor;
    15.  
    16.             transform.position += transform.forward * NormalMoveSpeed * speedFactor * ControlFreak2.CF2Input.GetAxis("Vertical") *
    17.                                   Time.deltaTime;
    18.             transform.position += transform.right * NormalMoveSpeed * speedFactor * ControlFreak2.CF2Input.GetAxis("Horizontal") *
    19.                                   Time.deltaTime;
    20.             float upAxis = 0;
    21.             if (ControlFreak2.CF2Input.GetKey(KeyCode.Q)) upAxis = -0.5f;
    22.             if (ControlFreak2.CF2Input.GetKey(KeyCode.E)) upAxis = 0.5f;
    23.             transform.position += transform.up * NormalMoveSpeed * speedFactor * upAxis * Time.deltaTime;
     
    Last edited: Jul 11, 2019
  48. NoSpoonAnim

    NoSpoonAnim

    Joined:
    Feb 10, 2016
    Posts:
    11
    strange problem i have. cf2 gui buttons work but not visible in build on xiaomi pf f1 only. what could that be?
     
  49. NoSpoonAnim

    NoSpoonAnim

    Joined:
    Feb 10, 2016
    Posts:
    11
    solved by not having sprite material on buttons
     
  50. abdelthugthug

    abdelthugthug

    Joined:
    Jul 25, 2018
    Posts:
    1
    CF2 Buttons are working on Editor But not on mobile ? did anyone solve this ?