Hi,
1: I think you are over thinking this. The package I provided is merely the start for you to understand how the joystick works. I have attached a working package showing how to control a cube movement and rotation.
the basic building block for this is to use the action "Joystick Bridge" and then plug the vertical and horizontal value into other actions performing something with the transform of a gameObject or else.
so in that example, I bind the right pad values to transltate the cube and I bind the left pad values to rotate the cube.
you might get confused as to how to do that from the prefab itself. You can absolutly implement your control IN the prefab itself, but it's also perfectly acceptable to not use that ( remove them Fsm if you never going to use them) and do as I did, simply implementing joystick bridges where ever you need it.
2: No you don't want to get the transform of the joysticks, you only want to use the values passed with the joystick bridge, the rest is only internal and will not reflect in a convenient way what you are after.
If you want to put the joystick bridge values into a vector 2 or vector 3, you can compose very easily the component of them vectors and insert in them the joystick values, you then pass that composed vector to your controller.
3: Fsm Object are a very convenient way to access public variables of any components available in your project, this effectily remove the need to have to create a custom action for each of these cases where playmaker can simply not provide an action for each individual api and behavior available in Unity, that is simply not a realistic task.
so, concrete example:
you want to control the field of view of the camera but you haven't spotted that an action exists for it. no problem.
1: drag a "set property" action onto a state,
2: drag and drop the camera component itself onto the "target object" field. you'll notice that the ObjectType informational field will switch to "UnityEngine.Camera"
3: select the "fieldOfView" property available int he drop down list of the "Property" field. a Float select will be shown
4: set the field of view float value here.
a Fsm Object can be ANY behavior currently available in your project and will like ALL pubic variable that Playmaker can handle
so instead of using set property and dragging the component you want to control
1: create a Fsm Object in the variable tab.
2: select the Object type to Unityengine.Camera
3: drag and drop the camera gameObject in the "objectValue" field
4: In the state where you have your set property, reference that variable in the "target object" field and proceed as usual to set one it property.
Hope this make more sense now. I am pretty sure one of the video tutorial do cover this, but I haven't watched them all, so can't say for sure.
Bye,
Jean