How to make a great command profile for X3 (TABLE OF CONTENTS!)

General discussions about the games by Egosoft including X-BTF, XT, X², X³: Reunion, X³: Terran Conflict and X³: Albion Prelude.

Moderator: Moderators for English X Forum

terrigat
Posts: 58
Joined: Mon, 30. Apr 07, 21:52
x3tc

Post by terrigat »

Mergelsberg posted a X3:Reunion Saitek profile a while back but I had trouble figuring out what it was doing.

I had converted it for myself on a piece of paper before making my current profile & had half converted those notes into a forum legible version. I was planning on finishing up a less CPU straining revision of this before posting but my playtime had been eaten up by Minecraft.

Kazegami posted an important fix for Mergelsberg's profile to reduce problems associated with creating Saitek profiles.
I was having problems with this profile and the X52 (NOT pro) causing lockups, blue screens, and overall badness.

Solved it by shortening all the named functions (Fire Auto, Next Property, etc) to less than 15 characters (I assume the max number of characters on the X52 MFD) and got it to work perfectly.

Program from the Saitek Profile Editor
---[ Mode 1 ]
---[ Mode 2 ]
---[ Mode 3 ]
[ Program from the X3 ingame profile ]
* = requires a mod
[] = available / no assignment
+ = bind key to command ingame

Joystick

Trigger
Halfway [ enter ] + pinkie [ Esc ]
[ Ctrl ] Adv Cmd - press + pinkie [ Ctrl ] Adv Cmd - Repeat 1/2sec + pinkie [ ]
[ Ctrl ] Adv Cmd - Repeat 1/2sec + pinkie [ ]
Full [ ] (make sure you unbind this key ingame)
[ Ctrl ]
[ Ctrl ]

Launch [ freight doors ]
[ l ] (missile launch)
+ pinkie [ Shift+e ] (eject pilot)

C [ r ] (Property Menu)
[ r ] (Property Menu)
[ Shift+t ] (target nearest enemy)
+ pinkie [ j ] (seta)

Black POVhat (top)
up [ target next owned property ]
[ home ] (target next enemy)
[ home ] (target next enemy)
down [ target previous owned property ]
[ end ] (target previous enemy)
[ end ] (target previous enemy)
left [ target previous object ]
[ page down ] (target previous object)
[ delete ] (target previous owned property)
right [ target next object ]
[ page up ] (target next object)
[ insert ] (target next owned property)

Switches
---T1+2---
up [ wingmen attack ]
down [ wingmen protect ]
---T3+4---
up [ drone attack ]
down [ drone protect ]

A [ best selling price locator ] + pinkie [ , ] (universe map)
[ m ] (missile select)
[ m ] (missile select)

B [ best buy locator ] + pinkie [ . ] (sector map)
[ g ] (ecliptic projector)
[ g ] (ecliptic projector)

Throttle
Mouse Wheel
down [ Page Up ]
up [ Page Down ]

Slider [banded X 3, adv cmd - press]
1-15% [ 1 ]
16-50% [ 2 ]
51-85% [ 3 ]
86-100% [ 4 ]
(originally on Rotary E)

E [ toggle autopilot ]
+ pinkie [ Shift+c ] (command console for current ship)

D: [ enable turbo boost ] + pinkie [ Shift+j ] (jumpdrive)

POVhat
cockpit [ strafe up / down / left / right ] - up=pull
menu [ scroll up / down / left / right ] - up=pull (I added this from my setup)
User avatar
esd
Posts: 18000
Joined: Tue, 2. Sep 03, 05:57
x3tc

Post by esd »

I'd post up my config profiles, but I doubt anyone else is using a Nostromo n50 alongside a Razer Naga :D

(Not genius, Naga)
Last edited by esd on Wed, 1. Dec 10, 02:25, edited 1 time in total.
esd's Guides: X² Loops - X³ MORTs
terrigat
Posts: 58
Joined: Mon, 30. Apr 07, 21:52
x3tc

Post by terrigat »

Just in case someone would like to put up their own profile but don't wish to create a profile template from scratch, here is what I've been using. I've make an example at the bottom to show how simple the most complex profile can look using this template.

I use colors that appear best to me on this forum. Since I am not color blind I can't say how universal my coloring scheme is. I tried to keep colors as they appear on the stick.

Templates:

Code: Select all

[ [color=green][/color] ], hold [ [color=green][/color] ] + pinkie [ [color=red][/color] ]
[ [color=red][/color] ], hold [ [color=red][/color] ] + pinkie [ [color=red][/color] ]
[ [color=violet][/color] ], hold [ [color=violet][/color] ] + pinkie [ [color=violet][/color] ]
[ [color=cyan][/color] ], hold [ [color=cyan][/color] ] + pinkie [ [color=cyan][/color] ]
[color=yellow]+[/color]  [ [color=green][/color] ]
Legend:

Code: Select all

[b][color=yellow]Program from the Saitek Profile Editor[/color][/b]
---[ [color=red]Mode 1[/color] ]
---[ [color=violet]Mode 2[/color] ]
---[ [color=cyan]Mode 3[/color] ]
[ [color=green]Program from the X3 ingame profile[/color] ]
* =  requires a mod
[ ] = available / no assignment
[color=yellow]+[/color] = bind key to command ingame

[b]button name[/b]
[size=10]what button does[/size]
[i][size=10]notes[/size][/b]

Buttons

Code: Select all

[b][color=yellow]Joystick[/color][/b]
[b]Black POVhat[/b] (top)
up
down
left
right

[b]Switches[/b]
---T1+2---
up
down
---T3+4---
up
down
---T5+6---
up
down

[b]Silver POVhat[/b] (center)
up
down
left
right

[b]Launch[/b]

[b]A[/b]

[b]B[/b]

[b]C[/b]

[b][color=yellow]Throttle[/b][/color]
[b]Mouse Wheel[/b]
down
up
[b]Mouse wheel click[/b]

[b]mouse thumbstick[/b] [banded X 2]
1-15%
85-100%
1-15%
85-100%
Mouse Button

[b]POVhat[/b]

[b]Rotary E[/b]

[b]Rotary i[/b]

[b]Slider[/b] [banded X 3, adv cmd - press]
1-15%
16-50%
51-85%
86-100%

[b]D[/b]

[b]E[/b]

[b]i[/b]
Example

Code: Select all

[b]Black POVhat[/b] (top)
up [ [color=green]owned property[/color] ], hold [ [color=green]personal information[/color] ] + pinkie [ [color=red]p[/color] ]
[ [color=violet]num8[/color] ]
[ [color=cyan][[/color] ], hold [ [color=green]][/color] ] + pinkie [ [color=cyan]][/color] ]
down [ [color=green]sector map[/color] ], hold [ [color=green]galaxy map[/color] ] + pinkie [ [color=red],[/color] ]
[ [color=violet]num2[/color] ]
[ [color=cyan];[/color] ], hold [ [color=green]'[/color] ] + pinkie [ [color=cyan]'[/color] ]
left [ [color=green]actions for selected object[/color] ], hold [ [color=green]current ship[/color] ] + pinkie [ [color=red]y[/color] ]
[ [color=violet]num4[/color] ]
[ [color=cyan]home[/color] ], hold [ [color=green]insert[/color] ] + pinkie [ [color=cyan]page up[/color] ]
right [ [color=green]comms[/color] ], hold [ [color=green]command console for current ship[/color] ] + pinkie [ [color=red]\[/color] ]
[ [color=violet]num6[/color] ]
[ [color=cyan]end[/color] ], hold [ [color=green]delete[/color] ] + pinkie [ [color=cyan]page down[/color] ]
[color=yellow]+[/color] current ship [ [color=green]\[/color] ]
[color=yellow]+[/color] wingmen attack target [ [color=green][[/color] ]
[color=yellow]+[/color] wingmen protect me [ [color=green]][/color] ]
[color=yellow]+[/color] wingmen protect me [ [color=green]hold ][/color] ]
[color=yellow]+[/color] drones attack target [ [color=green];[/color] ]
[color=yellow]+[/color] drones protect me [ [color=green]'[/color] ]
[color=yellow]+[/color] drones protect me [ [color=green]hold '[/color] ]
[color=yellow]+[/color] target next owned property [ [color=green]hold insert[/color] ]
[color=yellow]+[/color] target previous owned property [ [color=green]hold delete[/color] ]
[size=10]p = personal information
, = galaxy map
c = command console for current ship
home = target next enemy
end = target previous enemy
insert = target next owned property
delete = target previous owned property
page up = target next object
page down = target previous object[/size]
looks like:

Black POVhat (top)
up [ owned property ], hold [ personal information ] + pinkie [ p ]
[ num8 ]
[ [ ], hold [ ] ] + pinkie [ ] ]
down [ sector map ], hold [ galaxy map ] + pinkie [ , ]
[ num2 ]
[ ; ], hold [ ' ] + pinkie [ ' ]
left [ actions for selected object ], hold [ current ship ] + pinkie [ y ]
[ num4 ]
[ home ], hold [ insert ] + pinkie [ page up ]
right [ comms ], hold [ command console for current ship ] + pinkie [ \ ]
[ num6 ]
[ end ], hold [ delete ] + pinkie [ page down ]
+ current ship [ \ ]
+ wingmen attack target [ [ ]
+ wingmen protect me [ ] ]
+ wingmen protect me [ hold ] ]
+ drones attack target [ ; ]
+ drones protect me [ ' ]
+ drones protect me [ hold ' ]
+ target next owned property [ hold insert ]
+ target previous owned property [ hold delete ]
p = personal information
, = galaxy map
c = command console for current ship
home = target next enemy
end = target previous enemy
insert = target next owned property
delete = target previous owned property
page up = target next object
page down = target previous object


This example makes mode 1 (red) act like I have it in my current profile. Mode 2 (violet) makes a POVlook out of the hat. Mode 3 (blue) gives access to target selection depending on press/hold/pinkie-shifted of left or right, also wingmen & drones can be managed from up/down to protect or attack.
Last edited by terrigat on Tue, 16. Nov 10, 15:48, edited 2 times in total.
terrigat
Posts: 58
Joined: Mon, 30. Apr 07, 21:52
x3tc

Post by terrigat »

esd wrote:I'd post up my config profiles, but I doubt anyone else is using a Nostromo n50 alongside a Razer Genius :D
I've found that if the info is there, someone would buy what you have because you have proven that it can work.
terrigat
Posts: 58
Joined: Mon, 30. Apr 07, 21:52
x3tc

Post by terrigat »

[X3R] = X3: Reunion
[X3T] = X3: Terran Conflict


[X3R][X3T] X3 profile location
\My Documents\Egosoft\profiles\profile0.xpf

[X3R][X3T] Game ignores numlock state - num7 always acts the same

[X3R][X3T] If an assignment is only valid in menus, then you can safely add a cockpit only command to the same key (ie you can't boost or fire your cockpit weapons in menus & you can't trigger the enter key outside of menus

[X3R][X3T] POV look works in menus unless programmed otherwise

[X3R][X3T] Pressing a key & holding a key can be programmed for separate commands

[X3R][X3T] If a key has a 'hold' command linked to it, the game will only perform the press OR hold command after release (aka release the button before or after one second changes action). Examples of buttons that don't do well with 'hold' commands are boosting & Match speed to target. It requires you to hold it down but that can't work on a key that has a 'hold' command attached.

[X3R][X3T] Won't accept more than two keyboard inputs at any given time no matter how they are input (aka keyboard or joystick). Try not to bind too many joystick buttons to keyboard input if you plan to have said buttons depressed at the same time

[X3R][X3T] If you modify your ingame profile, save it & quit without saving your game, your changes won't appear in that now 'old' save until you "switch current profile."

[X3R][X3T] There are 22 keyboard keys that have no input associated with them & are open to fan-made hotkey scripts (ie claim, attack all, defend position, explode everything in sector, etc):
` ; ' [ ] \ / 7 8 9 0 h v b n F6-F12
Don't forget that Hold button isn't linked to many commands leaving those open to custom use as well
Last edited by terrigat on Mon, 3. Jan 11, 02:11, edited 3 times in total.
terrigat
Posts: 58
Joined: Mon, 30. Apr 07, 21:52
x3tc

Post by terrigat »

[Saitek - X52/pro/x45/ALL]


[Saitek - ALL] Trying to use just the X3 or Saitek profile to program your joystick will leave you with an unsatisfactory experience. Saitek is great for adding more keyboard commands to each button on the joystick or attaching a macro to a button on the stick. X3 is good at overcoming a keyboard input limitation ingame and adding a 'hold' function to a key

[Saitek - ALL] Profile location (&*#$ obscure)
Documents and Settings\All Users\Shared Documents\Saitek SD6 Profiles\*.pr0

[Saitek - X52pro] These buttons (potentially) send a constant input signal to X3. Having the game ignore them can help remove some odd 'sticky' button issues
17,18 - mouse wheel buttons
28,29,30 - mode selector buttons
X3TC.EXE -ignorejoy 17 -ignorejoy 18 -ignorejoy 28 -ignorejoy 29 -ignorejoy 30
[Saitek - X52]
- mouse wheel buttons
- mode selector buttons
[Saitek - X45] (info from travisdh1):
X3TC.exe -ignorejoy 7 -ignorejoy 8 -ignorejoy 9 -ignorejoy 10 -ignorejoy 11 -ignorejoy 12
***NOTE: For steam, you can drop the X3TC.exe when adding these to the "SET LAUNCH OPTIONS" under properties

[Saitek - X52/pro] Mouse Wheel = page up / down in menus. If I don't "ignorejoy" these I get input problems. You're experiences may vary. NOTE: this doesn't mean you can't use the buttons ingame, it just means that you have to bind them in the Saitek Profile Editor

[Saitek - X52/pro] The clutch button "i" will not register ingame. You need to bind it in the Saitek Profile Editor

[Saitek - x52/pro] The default throttle control is the throttle slider. Uncheck "use throttle" under 'Input Device' on the initial splash screen to use the actual throttle.

[Saitek - ALL] Advanced commands or macros will add overhead to your CPU so try to avoid making too many unless you have a highend processor.

[Saitek - ALL] If a joystick button is programmed in the Saitek Profile for a keyboard command, you can have:
press = action1
hold = action2
pinkie+press = action3
pinkie+hold = action4
PER mode

[Saitek - X52/pro] Silver POVhat unprogrammable ingame. I would recommend programming these in the Saitek Profile Editor. If you tick the mark "Use POV hat to look around" under "Input Device" on the initial splash screen, you can attach input to these buttons although I can't recommend it. With this unticked, the Throttle POVhat is POV up/down/left/right and the silver POVhat can't be assigned commands ingame. With "Use POV hat to look around" ticked, this enables the silver POVhat to input POV up/down/left/right and the throttle POVhat now inputs:
left=POV Left
right=POV Up
pull=Button #24
push=POV Down
which means that you now can't program throttle POVhat left/right/down & silver POVhat left/up/down separately

[Saitek - X52/pro] Yes, the mouse stick is jerky when used to freelook. Yes, its the same using the regular numpad. You just can't map diagonals onto the mouse stick. If you can think of a nice alt function for the mouse-stick, please share. I could program these onto the silver POVhat but didn't want to waste the possible command slots.

[Saitek - X52/pro] From Hyppe on why the throttle (& rotaries for that matter) knocks out SETA:
I dont know about other controllers, but I would assume that controllers which use digital sensors instead of analog potentiometers work better (X52 has analog potentiometer on throttle).

[Saitek - X52/pro] It is possible to turn the pinkie trigger into the SHIFT key. This can open up some interesting work arounds if you want to increase how many unused keyboard keys you can access using the joystick. When I tried this, I ran into the issue described above with limited keyboard input.

[Saitek -X52/pro]Kazegami posted an important fix to reduce problems associated with creating Saitek profiles.
I was having problems with this profile and the X52 (NOT pro) causing lockups, blue screens, and overall badness.

Solved it by shortening all the named functions (Fire Auto, Next Property, etc) to less than 15 characters (I assume the max number of characters on the X52 MFD) and got it to work perfectly.
terrigat
Posts: 58
Joined: Mon, 30. Apr 07, 21:52
x3tc

Post by terrigat »

Here are some keybinding programs available for gamepads / joysticks

Xpadder ($9.99)
If someone has already forked over money & wants to post a review or tutorial then I'll link to it here.

Joytokey (free-ware) courtesy of stormtrooper68
from the readme
* Virtual joystick setting
"Even if you have only one joystick, you can configure joystick->key
mapping for multiple virtual joysticks (e.g. one for default mapping,
another for registering shortcuts, and yet another for mouse control)
.
And you can temporarily switch to those virtual joystick setting by
pressing a physical joystick button."
A poor mans saitek profiler. I wouldn't use it unless your logitech or saitek software can't work with your controller.

Ppjoy (free-ware)
Used in the [TUTORIAL] Combining several Game Controllers & still works the best. The new version includes ppjoyjoy so no need to download it separately now. It wasn't associated with [X3T] although it works just fine with any Egosoft game so I added a link here.
terrigat
Posts: 58
Joined: Mon, 30. Apr 07, 21:52
x3tc

Post by terrigat »

Since farting around in menus using a joystick isn't the best, who wouldn't mind some good hotkey scripts.

A few I've been keeping tabs on:
Salvage Command Suite
MARS Fire Control
Anarkis Defense System
Improved Boarding
NICE Interface Enhancement
Command Queuing

I know that Gazz's [X3R][X3T]NICE Interface Enhancement hotkey script or Cycrow's [X3T]Command Queuing could rewrite the rules for creating game input. NICE currently lets you recall focus of any targetable object. Command Queuing allows just about any complex actions to be created ahead of time & invoked whenever needed. Too bad Command Queuing doesn't appear to create hotkeys right now.

Imagine doing this:
I hold a CQ hotkey to bring up a menu that allows my to select a precreated CQ macro from a list.
I hold down the NICE hotkey & that attaches a target to that hotkey.
I then hit that hotkey & press a CQ hotkey linked to my selected CQ.
Commands are followed by the NICE target.
Target returns to previous autopilot commands after complete.

/Rant
terrigat
Posts: 58
Joined: Mon, 30. Apr 07, 21:52
x3tc

Post by terrigat »

Okay.

That was a lot of copy and paste.

Please let me know if I butchered legibility with the new layout. I'm sure this division caused some loss of congruity in my information flow.
User avatar
Drewgamer
Posts: 536
Joined: Fri, 27. Aug 10, 08:39
x4

Post by Drewgamer »

Just wanted to say thanks for all this info, it has really increased my understanding of profile creating with the X52. I probably won't use the profile you've got here (I still prefer using the mouse for a lot of things xD); but it will definitely help me setup some good hotkeys for use in combat.
Check out my mod Crystal Rarities

Return to “X Trilogy Universe”