(for XXMI Launcher supported games, or 3dmigoto mod)
...
...
...
...
Even though this is not main mod loader or mod tool, and only tool to organize mod folders, but:
Client-Win64-Shipping.exe)._MANAGED_ that are modified..ini files are minimal, and no new sections are ever added..ini files are guaranteed to be valid, as it is already smart enough to determine bad lines from modder.if-endif lines to the Command List sections and the $managed_slot_id variable to the existing Constants section.if-endif lines added by the manager, by using Restorer in Settings if you’re not using it anymore or if you wanted to post/distribute your mods.When you press the Update Mod Data button, the following process occurs:
Mods path from the field you filled in.d3dx.ini and d3d11.dll files in the same directory as your Mods path (for example: GIMI\Mods, GIMI\d3dx.ini, and GIMI\d3d11.dll). The d3dx.ini file is necessary to identify errored lines in your mod files later. And the d3d11.dll is just to make sure that you're in modding environment._MANAGED_ folder inside the Mods folder. This is where all managed mods are stored. Only the mods inside this folder will have their .ini files modified.nrmm_keypress.txt (which ensures simulated keypresses reach XXMI or 3DMigoto seamlessly) and manager_group.ini (to handle switching mods between groups)._MANAGED_ folder and identifies every managed mod within them..ini file will be left referencing an old namespace once the change is made. But, multiple ini files within the same mod could define namespace = line with the same value and it is fine and sometimes intended.XXMI or 3DMigoto. This helps identify errored lines accurately, specifically invalid if-elif-endif structures that could interfere with the manager's modifications.group_x.ini config file (where x is the group index) and creates a new one. It then processes each mod inside those groups..ini files inside the mod folder..ini files if one does not already exist..ini files, it will add ;-; to the start of any errored lines found during the parsing phase, marking them as ignored or comments..ini file, it will look for the [Constants] section or create one if not found, and add the variable global $managed_slot_id = x, where x is the mod's index based on the folder name's sort order.command list sections (which are: [Present], [ClearRenderTargetView], [ClearDepthStencilView], [ClearUnorderedAccessViewUint], [ClearUnorderedAccessViewFloat], [BuiltInCustomShader...], [CustomShader...], [BuiltInCommandList...], [CommandList...], [ShaderOverride...], [TextureOverride...], main [ShaderRegex...]). It adds a manager if line (if $managed_slot_id == $\modmanageragl\group_x\active_slot) at the first line in the section. And an endif at the bottom line of the section. Because errored lines are already handled previously, adding if-endif is safe here.[Key...] sections by adding the same manager expression to the condition = line.[TextureOverride...], [CustomShader...], [ShaderOverride...], and main [ShaderRegex...], certain lines (like hash, match_priority, shader_model, etc) are executed by XXMI or 3dmigoto regardless of the if-endif logic. The manager places these lines above the if line, for better readability.indentation for every line inside an if block and removes them after an endif. This is also for better readability only..ini files by writing a temporary file first. Once the save is successful, it renames the temporary file to the original filename. This prevents empty or corrupted files if the app crashes during the process.[ on a line or a preamble condition = line with no value. The manager will remove or mark as comment these lines even if the .ini file is not part of a managed mod.Update Mod Data popup regarding duplicated or missing common modding libraries (OrFix, Slotfix, RabbitFx, etc) referenced by your mods.Special thanks to:
Dart
71.5%
C++
22.9%
C
3.9%
CMake
1.3%
(for XXMI Launcher supported games, or 3dmigoto mod)
...
...
...
...
Even though this is not main mod loader or mod tool, and only tool to organize mod folders, but:
Client-Win64-Shipping.exe)._MANAGED_ that are modified..ini files are minimal, and no new sections are ever added..ini files are guaranteed to be valid, as it is already smart enough to determine bad lines from modder.if-endif lines to the Command List sections and the $managed_slot_id variable to the existing Constants section.if-endif lines added by the manager, by using Restorer in Settings if you’re not using it anymore or if you wanted to post/distribute your mods.When you press the Update Mod Data button, the following process occurs:
Mods path from the field you filled in.d3dx.ini and d3d11.dll files in the same directory as your Mods path (for example: GIMI\Mods, GIMI\d3dx.ini, and GIMI\d3d11.dll). The d3dx.ini file is necessary to identify errored lines in your mod files later. And the d3d11.dll is just to make sure that you're in modding environment._MANAGED_ folder inside the Mods folder. This is where all managed mods are stored. Only the mods inside this folder will have their .ini files modified.nrmm_keypress.txt (which ensures simulated keypresses reach XXMI or 3DMigoto seamlessly) and manager_group.ini (to handle switching mods between groups)._MANAGED_ folder and identifies every managed mod within them..ini file will be left referencing an old namespace once the change is made. But, multiple ini files within the same mod could define namespace = line with the same value and it is fine and sometimes intended.XXMI or 3DMigoto. This helps identify errored lines accurately, specifically invalid if-elif-endif structures that could interfere with the manager's modifications.group_x.ini config file (where x is the group index) and creates a new one. It then processes each mod inside those groups..ini files inside the mod folder..ini files if one does not already exist..ini files, it will add ;-; to the start of any errored lines found during the parsing phase, marking them as ignored or comments..ini file, it will look for the [Constants] section or create one if not found, and add the variable global $managed_slot_id = x, where x is the mod's index based on the folder name's sort order.command list sections (which are: [Present], [ClearRenderTargetView], [ClearDepthStencilView], [ClearUnorderedAccessViewUint], [ClearUnorderedAccessViewFloat], [BuiltInCustomShader...], [CustomShader...], [BuiltInCommandList...], [CommandList...], [ShaderOverride...], [TextureOverride...], main [ShaderRegex...]). It adds a manager if line (if $managed_slot_id == $\modmanageragl\group_x\active_slot) at the first line in the section. And an endif at the bottom line of the section. Because errored lines are already handled previously, adding if-endif is safe here.[Key...] sections by adding the same manager expression to the condition = line.[TextureOverride...], [CustomShader...], [ShaderOverride...], and main [ShaderRegex...], certain lines (like hash, match_priority, shader_model, etc) are executed by XXMI or 3dmigoto regardless of the if-endif logic. The manager places these lines above the if line, for better readability.indentation for every line inside an if block and removes them after an endif. This is also for better readability only..ini files by writing a temporary file first. Once the save is successful, it renames the temporary file to the original filename. This prevents empty or corrupted files if the app crashes during the process.[ on a line or a preamble condition = line with no value. The manager will remove or mark as comment these lines even if the .ini file is not part of a managed mod.Update Mod Data popup regarding duplicated or missing common modding libraries (OrFix, Slotfix, RabbitFx, etc) referenced by your mods.Special thanks to:
Dart
71.5%
C++
22.9%
C
3.9%
CMake
1.3%