Seriously impressed!
-
….
I have the manuals and have printed out the Falcon BMS Keyboard Layout (QWERTY/US Int.) but I’m not sure where to find the the .pr0 file that goes with the layout. I tried the X52.pr0 profile and didn’t see anything in it.
And yes, I have been looking through the forums.
I’m not a programmer and I don’t understand the DX file system. It sounds like it is supposed to be easy, but I don’t understand running the file lines into the DX numbers.
Since a lot of the comments I’m seeing are a couple years old I’m not sure if I can get reply’. …John, it sounds like you’re confusing two different things that may, or may not, work together depending how you’re setting up your HOTAS and Keyboard. The default keyboard layout IS a DX layout …. keys are mapped directly to BMS commands and will work without a Saitek pr0 file.
The *.pr0 file is a Saitek profile file. It is, usually, user created. It basically acts as an interface between and input device (like a joystick) and a program (like BMS) to virtually press keys on the keyboard. It is a keyboard emulation program. For instance, you pull the trigger, the Saitek profile sees that ‘pull trigger = press F’ (what equals what is the info in pr0 file) so it sends a keyboard ‘F’ to BMS. The BMS keyboard layout has the ‘Fire Gun’ command associated with the ‘F’ key and the gun fires.
With DX you ‘cut out the middle man’. You link the trigger directly to the ‘Fire Gun’ command. Pull the trigger, the gun fires. No 3rd party key emulator; no virtual key press on the keyboard.
In any case, a command (called a ‘callback’) has to associated with an action (pressing a keyboard key or a HOTAS button/switch). This is the actual, proper ‘Fire Gun’ callback: SimTriggerSecondDetent.
Depending on your need, there can be a time where you ‘mix and match’ Saitek programming (pr0 file) with BMS programming (DX). The kinds of setups run the gamut from nearly 100% Saitek to run the HOTAS to 100% DX to run the HOTAS … and many mixed variations in between. It depends on personal need and preferences.
All of this together … the association of BMS commands to the HOTAS and the keyboard … comprise your keyfile.
What keyfile are you currently using and have you made or downloaded a pr0 file? I strongly recommend going with a keyfile that someone has made and shared. Start with that as a basis for customization. There should be several X52 keyfiles available.
-
It is worthwhile to appreciate the entire chain from button to result which has a few links. Some middle links in the chain are configurable by joystick software, device sorting, or the .key file.
For example:
Press Button A
Saitek SST Software produces a keyboard “B” keystroke
BMS user’s key file interprets a “B” keystroke as being callback SimEjectResult: Button A = SimEject
A different example:
Press Button A
Saitek drivers or SST assign a DirectX button output
BMS modifies the button number based on which device number it is to produce a globally unique button number
BMS user’s key file interprets a button number (e.g. 56) to the callback SimEjectResult: Button A = SimEject
The major lesson is that the SST (or any joystick) software shapes the output and the .key file translates that output into sim action. They cooperate and are made to match so that what one is throwing the other is catching. “When I press this button, give this output” says the joystick software and “when I see this joystick output, I will trigger this sim action” says the key file. There exist .pr0 files and .key files that come as matching sets which should just work out of the box.
The one caveat to this is if the key file is expecting your joystick to be buttons 1-32 and they are 33-64 or 65-96 that just means BMS is taking your joystick as device #2 or #3 or #4. Devices are assigned blocks of 32 buttons. The devicesorting.txt file prioritizes device number assignments simply by the order top-to-bottom the devices are listed.
Now you absolutely don’t have to understand the key file format unless you get into the more advanced tweaking. To modify which input is associated with a command you simply highlight the callback in the list you want to set then press the joystick button. This works both for keystroke-emulation output or DirectX button output. Highlight, press, highlight, press, highlight, press… that’s it.
-
It is worthwhile to appreciate the entire chain from button to result which has a few links. Some middle links in the chain are configurable by joystick software, device sorting, or the .key file.
For example:
Press Button A
Saitek SST Software produces a keyboard “B” keystroke
BMS user’s key file interprets a “B” keystroke as being callback SimEjectResult: Button A = SimEject
A different example:
Press Button A
Saitek drivers or SST assign a DirectX button output
BMS modifies the button number based on which device number it is to produce a globally unique button number
BMS user’s key file interprets a button number (e.g. 56) to the callback SimEjectResult: Button A = SimEject
The major lesson is that the SST (or any joystick) software shapes the output and the .key file translates that output into sim action. They cooperate and are made to match so that what one is throwing the other is catching. “When I press this button, give this output” says the joystick software and “when I see this joystick output, I will trigger this sim action” says the key file. There exist .pr0 files and .key files that come as matching sets which should just work out of the box.
The one caveat to this is if the key file is expecting your joystick to be buttons 1-32 and they are 33-64 or 65-96 that just means BMS is taking your joystick as device #2 or #3 or #4. Devices are assigned blocks of 32 buttons. The devicesorting.txt file prioritizes device number assignments simply by the order top-to-bottom the devices are listed.
Now you absolutely don’t have to understand the key file format unless you get into the more advanced tweaking. To modify which input is associated with a command you simply highlight the callback in the list you want to set then press the joystick button. This works both for keystroke-emulation output or DirectX button output. Highlight, press, highlight, press, highlight, press… that’s it.
Or you just follow my advice of a 20 years falcon simmer and developer and you never ever touch your keystroke in BMS
Assuming you have a joystick with a programming software , the job must be done in your external software so that the correspondence between you buttons and the BMS keyfile matches . This is the purpose of those software : avoid changing the game default keystroke.
Imagine keystroke of BMS beeing Non editable and program your joystick like if it was .
-
……I am not using this as an excuse, but to let you know a small bit about me. I was injured in an IED blast in May 2007 in Ramadi, Iraq…
If somebody already said it then my apologies, but thank you for your sacrifice sir, wishing you well in your recovery.
As to BMS then once you are comfortable with your HOTAS and controls setup then there are some excellent training videos by Krause (I am sure that he did not read all the posts before his reply) but the Brits can make movies too and Supanova has created some superb training videos which are more recent and BMS 4.33 centric - check out his YouTube channel and I am sure that you will not be disappointed
-
Or you just follow my advice of a 20 years falcon simmer and developer and you never ever touch your keystroke in BMS
No thanks I want a good control config instead
-
No thanks I want a good control config instead
You don’t need to touch anything to get the real f16 Hotas configuration
Why would you need more ? And besides , please explain why do you need to touch the keystroke instead of programming your joystick ? Please explain because after all those years I still don’t get it
-
You don’t need to touch anything to get the real f16 Hotas configuration
Why would you need more ? And besides , please explain why do you need to touch the keystroke instead of programming your joystick ? Please explain because after all those years I still don’t get it
If I may, for my part, it’s a matter of habit with sims I’ve been playing for 20 years. A command list that was responding to revamp straight from the UI was the quickest and easiest way to obtain what I needed, especially when I wanted to go back to my pdf and virtual cockpit as soon as I could. I started to build my X52 HOTAS settings from that point and reached a satisfactory setup in the end. If there is a flaw in the method that will harm my experience, then it is the thing that I don’t get, just as well as many others, obviously. But I wouldn’t want you to rewrite what you already elaborated earlier here, I have read it already and it must be just me.
-
You don’t need to touch anything to get the real f16 Hotas configuration
Why would you need more ? And besides , please explain why do you need to touch the keystroke instead of programming your joystick ? Please explain because after all those years I still don’t get it
It should be well-known the benefits of not using keystroke emulation. I can give examples:
1. I don’t want if a cat jumps on my keyboard that my landing gear can ever come down.
2. I wanted to make “F” press the F-ACK button.
3. If I am typing in chat and I press uncage button I don’t want it to put “U” in my message.
4. I want to use the SimHotasPinkyShift function.
5. I want to press UHF transmit and TMS up at the same time.Middleman keyboard joystick emulation might give fast results but it has drawbacks: key collisions, taking up the keyboard from other functions, able to accidentally be pressed on keyboard. Keystroke emulation without editing the default key file is acceptable for most people with most desires most of the time. But editing the key file and/or using DirectX direct binding in places simply allows you to do more things than if you forbid yourself from doing it.
-
You don’t need to touch anything to get the real f16 Hotas configuration ….
True only in the case where your HOTAS is a Cougar (or WH/Cougar TQS combo). In MANY other common cases, it’s not a 1:1 hat/button match to the F16 HOTAS so you MUST create an alternate configuration to accommodate the F16 HOTAS functions.
-
True only in the case where your HOTAS is a Cougar (or WH/Cougar TQS combo). In MANY other common cases, it’s not a 1:1 hat/button match to the F16 HOTAS so you MUST create an alternate configuration to accommodate the F16 HOTAS functions.
I think you are taking what Mav said out of context. He is saying that everything on the F-16 HOTAS is already mapped as a function in the keyfile.
-
Thats not what he said. He said you need never touch the keystrokes file, and you should set everything in your joystick programming.
Which is of course a load of bunk. You should set the keystrokes file to use directx presses, amd that is only going to work properly if your interface to the sim is a single, solitary cougar.
-
Thats not what he said. He said you need never touch the keystrokes file, and you should set everything in your joystick programming.
Which is true. You absolutely can program everything in your joystick programming software, as long as your joystick is complex enough to have additional software.
Which is of course a load of bunk.
Im not sure why you feel the need to demean someones opinion… Im certain there is a rule about that someplace…
You should set the keystrokes file to use directx presses, amd that is only going to work properly if your interface to the sim is a single, solitary cougar.
This is also a totally acceptable way of doing things. But it is also your opinion on if it is the best way or not.
Or you just follow my advice of a 20 years falcon simmer and developer and you never ever touch your keystroke in BMS
Notice he says that it is his advice… Decide how you want to do it, but lets not bash people for giving an opinion
-
Im not bashing people. I have the greatest respect for Mav. After all, he is responsible for the flight model in my favorite sim - which is my favorite in large part due to its flight model.
I am absolutely demeaning that opinion however. A close reading of the forum rules indicates that rule 7 can apply here, to every single post made on this forum, should you so wish. So you are correct - there is a rule about that, someplace.
I will concede it is certainly my opinion (one which is shared, but it is absolutely my opinion nonetheless).
-
Everyone throw in his opinion, which must be better than the next
BUT
there is one thing missing from all this: the LEVEL of confidence of the user with the sim and with his HOTAS.If you are green with all this, the advice of Mav is gold value
If you’re experienced and know what you do, you can indeed modify at your own whish
if you are inexperienced and an experienced guy tell you to modify at will, the new guy will be frustrated and will leave the sim forever.MavJP is right, when you start, there is absolutely NO NEED to touch the keystroke.
The idea is to discover the sim with as little setup hassle as possible.
There are ready made joystick config in your install by the way, and not only for the cougar. Maybe these would help.
if they don’t then maybe it’s wise to report the issues so the dev can fix this for the next update.There is always a transition moment when trying a new sim. After that transition, the new guy will certainly address some issues they have with the basic stuff. I would advise ppl not to touch the keystroke before that point. If after they want to change it, fine. But again, it is not easy and can lead to problem. At least the guy now have basic understanding about the issues and how the sim interacts with all this.
By the way Frederf, the excuse of the cat made me laugh, that’s the lamest I ever read about the need to modify the keystroke.
You should set the keystrokes file to use directx presses, amd that is only going to work properly if your interface to the sim is a single, solitary cougar.
See I disagree with this. Having full DX is not the easiest way to go.
DX is necessary I agree, but ONLY for presses that needs to be held while another potential keypress might be depressed at the same time. For all the rest DX is just the same overkill as when someone has a problem in Falcon and a guy says to reformat your drive…
Example of needed DX: UHF & VHF PTT, pickle, AP override, …
Example of useless DX: All state switches or pushbutton that are NOT held = ICP master modes, HUD panel switches etc etc etcDX is a pain because id is mismatching Windows starts at ID 0 and BMS at 1
A newbee will be totally confused setting that up. Because he will start assigning in BMS and will be offset by 1
If nobody explains that small detail he’s bound for some heavy frustration. -
It should be well-known the benefits of not using keystroke emulation. I can give examples:
1. I don’t want if a cat jumps on my keyboard that my landing gear can ever come down.
2. I wanted to make “F” press the F-ACK button.
3. If I am typing in chat and I press uncage button I don’t want it to put “U” in my message.
4. I want to use the SimHotasPinkyShift function.
5. I want to press UHF transmit and TMS up at the same time.Middleman keyboard joystick emulation might give fast results but it has drawbacks: key collisions, taking up the keyboard from other functions, able to accidentally be pressed on keyboard. Keystroke emulation without editing the default key file is acceptable for most people with most desires most of the time. But editing the key file and/or using DirectX direct binding in places simply allows you to do more things than if you forbid yourself from doing it.
Thank you , you just proved my point : in all of this , not one valid reason to modify the keyfile (For a newcomer)
You are right by the way , emulating the keyboard is a bad bad thing.
That is why the second advise is to use DX only
Third advise of course is to use on the joystick ONLY the buttons that exist on the real HOTAS , not one more !!!
Those three advices should be the ones any reasonable falconeer should give to a newcomer.
I summarize
- never touch KEYFILE
- use only and never more joystick buttons than the real HOTAs
- use DX programming for the (2)
Following those would save HOURS of headaches for newcomers
-
Not just newcomers, look at how many posts we had from experienced falconeers when 4.33 launched and their custom 4.32 keyfiles no longer worked properly.
Despite all the information on what had changed in Kolbe’s manuals (in the Key Files & Input folder) and the advice in the BMS-Manual to start with a 4.33 keyfile, rather than try to edit your 4.32 keyfile to make it 4.33 compatible we still had plenty of people complaining that this feature or that wasn’t working for them.
I guess some people prefer to learn things the hard way, or just enjoy the challenge.
-
- use only and never more joystick buttons than the real HOTAs
- use DX programming for the (2)
Just out of interest, where do you stand on using the shifted DX layer? Perhaps it’s a necessary evil, given PC limitations?
-
Just out of interest, where do you stand on using the shifted DX layer? Perhaps it’s a necessary evil, given PC limitations?
Shifted layer is not necessary for f16 Hotas programming
I am talking what a standard setup should be for a newcomer
-
Now I’m confused: Don’t change the key file. Do use DirectX bindings.
…but to use DirectX bindings you have to alter the key file!
-
Now I’m confused: Don’t change the key file. Do use DirectX bindings.
…but to use DirectX bindings you have to alter the key file!
Based on the earlier comments, I’m assuming he means don’t change any of the keyboard assignments.