Skip to content

Database

Holdi601 edited this page Mar 1, 2022 · 1 revision

Input Database

The Inputs for each game are Stored in the JoyPro folder /DB/GAME/ and then the type of file the game stores the input information in. In DCS the files containing all possible Inputs are HTML files, which can be created from the assigning Options. In IL2 the Inputs are saved in the IL2.actions file. Star Citizen stores it within the actionmaps.xml file. These files must contain all possible Inputs from these games, otherwise you won't be able to find that input in the Joypro search, when creating or editing a relation. As DCS has different controls per aircraft, within the DCS folder needs to have the exact name of the Modules before the .html ending. If the naming is messed up, the inputs won't be correct for the Output.

Clean Database

Some Games have a set of default inputs. That means whenever you delete all user related data of the game, it will generate default bindings to every Device you own. In our example DCS behaves that way. DCS stores its final configured input files in .diff.lua format. If those files don't exist DCS already has bindings. And even if you have a file for each of your input, if the given input element which is given by default not mentioned in it, it will be assigned by default. So Joypro needs to compensate for those default inputs. Inside its CleanProfile/DCS folder it stores all the profiles for each aircraft, when there are 0 bindings to it in the common .diff.lua format. The file name needs to exactly match the module name, otherwise it won't compensate the inputs for the right module. However DCS has different defaults for different DirectInput devices, which can lead to Problems, as Joypro can't compensate for every default binding there is. However it allows you to cut the joystick specific defaults out of the game folder, so you won't have accedental binds due to custom defaults by using the "Cut DCS stick specific defaults". image If you want to restore them simply click on the restore button.

Manual Database

Some Inputs are hidden and not exposed to the User unless you add specific lines to the Default.lua. However Joypro does not read the Default lua itself, as it needs the resulting input id hashes, and these are not given in the file. You can get those IDs by generating new HTML files for those planes in the DB, however Joypro comes with every release with its most recent set of HTML database for DCS. So if you regenerated HTML files and then update joypro, those files will be overwritten. So before getting annoyed with this entire procedure, you can add stuff to the database manually that will persist over updates by using the Manual DB entry Management. First click on Settings: image Make sure this path to your DCS installation is correct, if not correct it: image Then Manual DB Entry Management: image Then first select the Game and then whether it is an axis, to which plane it belongs or if it belongs to all planes, what the exact id is(please make sure this one is correct) and type in the category it belongs to and then Add. image

Once you hit close it will write the Database into your C:/Users/%USERNAME%/Documents/Joypro/ManualAdditions.bin so make sure to not to delete this file, if you want your manual additions to persist over updates.

Refreshing Databases

With game updates input IDs can change. Or if you have mods installed for DCS and need their inputs you also need to refresh your database and clean database. First click on Settings: image Make sure this path to your DCS installation is correct, if not correct it: image In order to refresh all the DCS Planes click on Refresh DCS ID DB. image This will cycle through all your planes in game, and generates a HTML file and properly renames it. If you only want to single refresh it, you can do it by hand. In order to do that. Start DCS. Go into Control Settings. Select the plane in your settings for which you want to update the controls. Then click on the Bottom "Make HTML" image Then in the opening folder rename a DirectInput html file. So ignore the Keyboard, Mouse and TrackIR file. Take the largest and the name must be exactly the same as the folder name. image Once you have done that. Copy that file and overwrite it or add it in your JoyPro/DB/DCS folder.

BEFORE REFRESHING CLEAN DATABASE COPY YOUR SAVED GAMES/DCS/CONFIG/INPUT folder because that will be deleted in the next step. In order to refresh the Clean Database click the refresh DCS Clean DB Button within the settings. Follow the Instructions.

If you want to do it by hand. Open DCS World. Go into Control Settings. and click on clear all, and then just click on the planes you want to refresh the clean profile for. if you want to clean all click on check all. image and then yes. This will delete your entire inputs. Now Navigate to C:/USERS/SAVED GAMES/DCS/CONFIG/INPUT then the plane you want to refresh, then Joystick, and then rename any file to the exact module name, as its done in the manual DB refresh but instead of html ending, write .cf as file ending and copy that file into JoyPro/CleanProfile/DCS/ and overwrite the file or if its a mod plane just add the file.