The year is 2052 and the world is a dangerous and chaotic place. Terrorists operate openly, killing thousands; drugs, disease and pollution kill even more. The world's economies are close to collapse and the gap between the insanely wealthy and the desperately poor grows ever wider. Worst of all, an ages old conspiracy bent on world domination has decided that the time is right to emerge from the shadows and take control. No one believes they exist. No one but you.
This is a loader written for DX and mods, attempting to automate & select the loading of different options for DX itself as well as any mods you may be playing. It supports adding the relevant statements to each file involved.
Tool created by ggrotz. Mirrored here for archival purposes.
DX Loader - a universal DX game loader - version 2.03
-----------------------------------------------
This is a loader written for DX and mods, attempting to automate & select the loading of different options for DX itself as well as any mods you may be playing. It
supports adding the relevant statements to each file involved.
License
----------
No charge to be made for this software. Free for use and distribution. Author is not to be held responsible for any damages that may be caused by this software.
Revision History
------------------
2.03 - fixed minor bug where scaling fix not enabled in all situations.
2.02 - changed initial loading routine so it will replace any file that is missed.
2.02 - fixed a/v with Save opt tab when you do the initial load routine of the loader.
2.02 - Note: There is a bug/naming consistency if you use Kentie's DX11 renderer. The settings are stored in the inconsistently named [D3D11Drv.D3D10RenderDevice]. The loader will use the more consistent [D3D11Drv.D3D11RenderDevice], which is what the driver requires in the GameRenderEngine line. There is no fix here for the loader, since this
will likely be changed when Kentie picks this renderer back up. If you wish the default settings stored in this loader, copy them from the latter identified section to the former identified one in whatever DeusEx.ini you are using.
2.02 - bug fix. Renderer information will now copy properly.
2.02 - checked and changed some of the packaged renderer defaults.
2.01 - fixed a pathing bug relating to running Deus Ex when it involves long path names or spaces.
2.00 - completely rewritten. The main features you will notice that are different is that the INI files are now put into the user's local app path. As well, the INI files are
completely editable within the program. This will enable total "limited user" compatibility. Also, the functionality of the little save game optimization utility I posted once upon a time has been folded into the program.
1.07 - added "DeusExPath" line back in dxloader.ini, indicating the path to your Deus Ex install as the other method created a number of issues.
1.07 - updated the resolution detection code again, as it caused duplicates (again) on my new system.
1.07 - updated dxloader.ini with definitions for GMDX, DX: Nihilium, Terminus Machina and Kentie's new DirectX11 renderer.
1.06 - cleaned up the resolution detection code when doing the Alternate 2027 Launcher and put that code in this file. It will only display resolutions that support 32-bit
display quality at 60hz.
1.06 - fixed bug which overwrites [Engine.Engine] section value Root to 'DeusEx.DeusExRootWindow' no matter what the settings. This breaks mods that have their own root
window code.
1.06 - added mod definitions for Delta ]2[ - been playing it and used the loader to run it so I put it in here. It'll take a little bit of work with D43K.INI to run the mod
as I have been doing with this loader, so feel free to ask what I did.
1.05 - changed the OTP forums link to act like a normal web hyperlink.
1.05 - removed "DeusExPath" line in dxloader.ini in favor of using the method used by the mod installers (described below). If that value is set, this program
should work fine regardless. If not, see notes below.
1.04 - added setting for CacheSizeMegs. This setting should be set at a higher number than the Deus Ex installed default (4), but consistent with your system memory.
Anything from 64-256 is acceptable given the size of the New Vision resources, but more is possible if you have a lot of memory.
1.04 - added support for the New Vision maps path. Changed the paths in the included dxloader.ini to be consistent with the defaults in the New Vision installer.
1.03 - internal version which supports methods to reduce the amount of disk space used in saved games. No interest in helping test this version was made, so the
idea was dropped for now.
1.02 - added a renderer detection scheme, so renderers not installed won't be offered.
1.01 - changed the compile to use the XP style controls.
Setting it Up
--------------
Use the configurations within the main program. Running the program will produce three INI files (Loader.ini, Mods.ini, Renderers.ini) in the user's local app path, which can then be edited within the program.
Hotel Carone Note: If you want to run this mod, it uses its own configuration files, but uses the default DX. For this loader to support Hotel Carone, you will
need to copy Deus Ex to a name consistent with the name in the loader ini (I used CARONE.EXE).
Technicals
-------------
This section is intended for those that want full documentation of what this program does to your DX files. The above sections will hopefully be good enough if
you don't want the TL;DR version and just want to run this loader.
Upon running the loader:
1) The DX folder will be searched for executables with names matching the ones specified in the detections list of the mods.ini. Also defaults in the loader.ini will be put onto the menu.
2) the proper options for the item selected (LastRun on start) will be placed into the menu. This will be done by reading the IniFileName and the UserIniName
specified in the dxloader.ini and dictated by the MyDocuments option and optionally the ENBSeries.ini (if installed).
3) The system will be scanned for all the resolutions the display will support at 60hz, which will be displayed as resolution options.
What this program does upon opting to run something:
1) Save information to the relevant IniFileName. This will include resolution information, render device, color bits, windowing, cache size and the option for
the OTP UI scaling fix. In addition, the FirstRun flag will be set to 1100 and the CDPath will be set to work as a "no CD crack".
2) For the selected renderer, the information from the loader ini will be set in the IniFileName. If the renderer is not supported in the IniFileName it will
be added. Also, DetailedTextures and UseS3TC will both be set to true to force these settings, as they are required for New Vision and/or HDTP.
3) Set paths lines in the IniFileName for the third-party graphical and gameplay enhancements (New Vision, HDTP, Shifter). If the appropriate line exists in
the Configs section, the lines for each will be added in a correct manner for the three to run properly if they are not already present in the file.
4) The UserIniFile will be set with a computed FOV based on the resolution that is entered.
5) If ENB series support is indicated & selected, the UseEffect flag in enbseries.ini will be set to 1. Otherwise it will be set to 0. This does not turn on
and off the ENB series renderer as it is effectively the DX9 renderer if it is installed. Shift+F12 can be used to toggle the ENB effects on and off, but
this option will set whether it is on or off initially on load.
6) defaults that need to go to the loader.ini will be saved.
7) the DX program will then be run. The processor affinity will be set to the first processor.
8) The loader program will then terminate.