I should have clarified. Does it do that in any other games where you don't use Pinnacle? I did a bit of poking around and haven't been able to find a way to swap those axes. You might want to try the Tech Support forum for more help.
Originally Posted by Hiro239
I've been using the heck out of this, and making a number of modifications, as well as experimentations.
In fact, I've eliminated the problem of the mouse wandering to the edge of the screen almost entirely by making the mouse center to the screen after every move via a different avenue from mouse spring. To do this, I set the MOUSE GOTO COORDINATES command in the camera control function itself, rather than in an arbitrary button. Here's how to do that:
1. Hit F5 to bring up the commands.
2. Select Movement > Camera Control and open it with the Edit Steps button.
3. Choose the "mouse GOTO COORDINATES" event step and set it how you wish (this is detailed in the OP's post).
4. Click "Add Pause" and set the pause to .1, the use the "move up/down" buttons to arrange the commands like so:
GOTO COORDINATES X,Y
A note on this step: I don't remember when or why I added the pause, and you might be able to get rid of it with no consequence. I also just discovered the pause can be set to .01, which would be better. I'm going to mess around with that and get back you in a bit...
5. Save it
6. Verify on the main screen that the left stick is mapped to Camera Control, and verify that camera control is set with the advanced controls to "camera control when the camera is tilted over 1%," by going to "assign joystick command -> Edit joystick command. Each of the directional keys listed here should be set to [No Command] or it will act funny.
The mouse usually only targets what's right in your preset GOTO spot (except when you manage to "drift" it, like mentioned below).
The mouse is less visually distracting, since it sits near the middle.
You don't have to use an extra button to center the mouse.
You can still drift the mouse to the edge of the screen if you tap and release the stick at the proper frequency, but it's much more difficult than before.
There is a slight delay to the camera's responsiveness.
Both of these problems seem due to 1 of 2 things: 1. It could be the .1 second delay mentioned above. 2. It could be that "camera control when the camera is tilted over 1%," makes it hesitate somehow. Shortly, I'll test the delay and see what I can come up with.
With a little bit of investigation i was able to fix my swapped axis problem on PS2 controller, thanks to a post i found on a Tera Game forum where a user (Can't remember the name right now to give credit, sorry about that) posted a guide to swap the axis editing the windows registry. I post the guide after this lines in case anyone needs help with this problem too.
NOTE: This change only affects the axis of a concret gamepad, not all pads in windows, so you can fix only the gamepads that are not working properly.
To fix the axis problem, you need to edit 2 registry values in one of two locations. Which one you do depends on whether you are using the manual directx SDK install. If you are not sure, go to Start > All Programs > and if you have a folder called something like Microsoft DirectX SDK (June 2010), then you have it. If you don't see this folder, then you don't.
- 1) Unplug your controller.
- 2) Go to start menu and type 'regedit' into the search bar and run regedit.exe when it pops up.
- 3) If you do not have directx sdk: Navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contro l\MediaProperties\PrivateProperties\Joystick\OEM, and scroll through the keys in this folder until you find the folder containing your controller. It will be something like VID_(a bunch of numbers and letters). Mine was VID_0E8F&PID_003. The correct folder will have a binary data entry called OEMName and the value will be the name of your controller (mine was 'USB Joystick'). Go to step 4.
- 3) If you are using directx sdk: Navigate to HKEY_CURRENT_USER\System\CurrentControlSet\Control \MediaProperties\PrivateProperties\Joystick\OEM, and scroll through the keys in this folder until you find the folder containing your controller. It will be something like VID_(a bunch of numbers and letters). Mine was VID_0E8F&PID_003. The correct folder will have a binary data entry called OEMName and the value will be the name of your controller (mine was 'USB Joystick'). Go to step 4.
- 4) Inside this 'VID_...' folder you may see a folder called Axes. If you do have the Axes folder, inside should be several folders, something like 0, 1, 2, 5, and you can skip to step 5. If you do not have the Axes folder, right click the 'VID...' folder and select New > Key. Name the new key 'Axes'. Inside of Axes create 2 more keys, named '2' and '5', in that order. Be sure not to put the 5 folder inside of the 2 folder, they should both be under Axes. With the '2' folder selected, in the right window underneath the (Default) (value not set) entry, right click and create a new Binary Value. Name the Binary Value 'Attributes'. Leave the value blank. Repeat for the '5' folder and go to step 5.
- 5) Now we have our numbered keys underneath the Axes folder. It's okay if there are more, but we only care about '2' and '5'. We're going to modify the Attributes value of each of these. To do this, select the '2' folder, and double click where it says 'Attributes' in the window on the right. The value will either not be set to anything, or be something like 00 00 00 00 01 00 32 00. We need to set or change this value to be 00 00 00 00 01 00 35 00, and hit OK. All we are doing here is switching the HID value from 32 to 35, altering the Z-axis control to affect the Z-rotation instead.
- 6) We need to perform a similar operation on in the 5 folder. Select the '5' folder, and double click on 'Attributes' on the right. Again, the value will either not be set or be 00 00 00 00 01 00 35 00. We need to set/change it to be 00 00 00 00 01 00 32 00 and hit OK. This time we are changing the Z-Rot HID from 35 to 32.
- 7) Go to File > Exit. Reboot your system and plug the controller back in. (Remember to turn on the analog button if it's a PS2 controller). If you go to start menu and search for game controllers, and select 'Set up USB Game Controllers' (you can also find this in control panel), and select Properties for your controller, you will see a display of all of the controller's inputs. You should notice that the Z-Axis and Z-Rotation have been switched.
- Run Guild Wars 2. The right trigger Axes should now be working appropriately!
The camera/mouse will now work like they should. Hope this helps!
- PS: If it did not work for you, try repeating the process for both of the folders that I listed in step 3 (the one for if you have directx sdk and the one for if you don't).
Sorry for double post, but i have another question!
Is there a way to temporally disable the camera control with right stick, and control the mouse normally? I'm looking a comfortable way of control Aoes, can anyone help me please?
Thanks for everything.
Yes, you can set a key to toggle mouse control between camera and normal mouse function by setting the right trigger to shift-mode RED (you'll need to create the command -- just copy what the OP did for the shift blue ON/OFF command, but make it red instead and get rid of the mouse GOTO). Then on the main screen (with the image of the controller) under shift-mode, select SHIFTED-RED. Then change the R-Joystick to "MAPPED TO MOUSE." Now, whenever you hold R, you can control the mouse as normal. After that, you'll want to set a button to click the mouse. I set the right mouse button to click.
Originally Posted by Hiro239
1. I hold R, and position the mouse wherever, then release it.
(I make a mistake in positioning and want to adjust -> Repeat step 1. The mouse wont recenter as long as the trigger is pulled while you move it).
I pull R a second time and it clicks there.
The Shifted-Red state is also a great place to bind MWHEEL UP and MWHEEL DOWN to the joypad for map zooming. Now, whenever you have the map pulled up, you can hold R and zoom to your hearts content, or click on a waypoint.
Solved one of the problems. Apparently, the delay I had in there isn't really necessary. Instead, you want to set the mouse GOTO before RIGHT hold in the activated area, so that moving the stick centers the mouse then right clicks to move the camera. Optionally, you can also set a goto after the RIGHT release so that the mouse centers after every operation (this is purely a visual effect, however).
Originally Posted by Dessa
But hey look, I did improve the basic functionality of the movement command: Now you can tilt slightly to walk, and tilt fully to run!
Adjust sensitivity with the "advanced" button there. 65%-80% seem to work best.
Not the parts circled in pink. Because walking is toggled on/off in this game, you need to set it to PRESS on activate and deactivate, not HOLD/RELEASE.
For whatever reason, quickmapping to the arrow keys is broken by the walk-toggle, so you do need to actually set individual commands for all 8 directions.
I'll post a full profile at some point mapped to default GW2 controls at some point, but I'm still tweaking things right now.
That's a great idea. I'll test it in my profile and if it works well ill post in in the official profile. Thanks for the suggestion.
Originally Posted by Dessa
It was actually my first idea how to fix that, but what I have got was that every time PGP registered "new" movement, which happen all the time (crossing "zero" position from left to right etc.), my screen skip a little as mouse being centered (no matter if "goto" was on activate or deactivate part). It was quite annoying and I was unable to find how to fix it.
Yep, tha'ts my problem too. The second it hits the deadzone, it does the GOTO but doesnt re-register the RMB hold command, so the cursor just goes into free-move mode. I've experimented and tested quite a bit, and I find that if you completely remove the deadzone, this doesn't happen, so I know what this is what's happening. It's just a shame that you need a deadzone. By lowering the deadzone to 15%, I've reduced the frequency of this behavior, but it's not really a solution. In the mean time, I've still got some things to try...
Originally Posted by hollyg
The other solution is to just let go of the stick when swinging in the opposite direction, but I'd rather keep it intuitive than force people to use the stick differently.
SOLVED! ... Mostly. You can still trick the mouse into going free, but it takes a really specific waggle. After hours of gameplay, it happened perhaps twice.
More problematic is the walk-toggle. If you're walking when certain things happen, like cutscenes, when you come back, the walk toggle is reversed, so you walk when you press the stick to the extreme, and run when it's in the middle. Not sure if this one CAN be solved, but I'll look into it.
Anyhow, for the camera:
Okay, under camera control's ACTIVATED event, you want
1. mouse Goto
2. Pause .01-.03 seconds. The longer the pause, the less likely you will be to waggle the mouse off camera mode, but it will cost of responsiveness.
3. Right Mouse Button HOLD
And under DEACTIVATED
1. Right Mouse Button RELEASE
(2? mouse Goto? Haven't tested, but if this works, it will keep the mouse in the center of the screen after a camera movement operation is completed, which I find more aesthetically pleasing.).
Last edited by Dessa; 09-03-2012 at 01:59 PM.