![xcom 2 mod launcher xcom 2 mod launcher](https://gamescrack.org/wp-content/uploads/2019/06/XCOM_2_Alternative_Mod_Launcher_5.jpg)
+NonNativePackages=LW_PerkPack_Integrated +NonNativePackages=NewPromotionScreenByDefault_Integrated +NonNativePackages=LW_LaserPack_Integrated +NonNativePackages=LW_XCGS_ToolboxOptions – unsurprisingly – in LWotC’s XComEngine.ini Is called a topological ordering, always exists for a DAG, and one such ordering can be found Append new codes and strings to the arraysįor (idx = 0 idx B, then A must come before B in the order.
![xcom 2 mod launcher xcom 2 mod launcher](https://i.ytimg.com/vi/VWXQ3fBRee4/maxresdefault.jpg)
If there are more strings than codes, this cuts off the excess before adding our new codesĪ = AbilityTemplateManager.AbilityAvailabilit圜odes.Length If there are more codes than strings, this inserts blank strings to bring them to equal before adding our new codes Local X2AbilityTemplateManagerĚbilityTemplateManager ĪbilityTemplateManager = X2AbilityTemplateManager(class'Engine'.static.FindClassDefaultObject("XComGame.X2AbilityTemplateManager")) Var localized array NewAbilityAvailabilityStrings It can be useful to modify these arrays from code: Declare copies of the arrays in your own class, fill them in from your private configįiles, then copy them over at runtime (code simplified from Rising Tides: The Program): var config array NewAbilityAvailabilit圜odes
![xcom 2 mod launcher xcom 2 mod launcher](https://i.ytimg.com/vi/zk8XGppXslw/maxresdefault.jpg)
XCOM 2 MOD LAUNCHER CODE
One example of this areĪbility availability codes – a config and a localized array that map a tactical condition error code to a user-displayed string. +VarName syntax to add to the array – and explicit indices would be incompatible with other mods.
![xcom 2 mod launcher xcom 2 mod launcher](https://tbmods.ru/wp-content/uploads/2018/10/1505294997_preview_20180906205037_1.jpg)
Some base-game config arrays use VarName=. This causes a bunch of issues in practice. Config load order is rarely guaranteed and should not be relied on by mod authors. Longest time, the Alternative Mod Launcher had offered a “load order” column that affected only the ActiveMods array.
XCOM 2 MOD LAUNCHER MODS
Of course, the simple act of moving a workshop folder to the local mods folder (for local development or in order to prevent updates)Ī common misconception is that the order of the ActiveMods in XComModOptions.ini determines config load order. This does not mean mods uploaded later load later – in fact, mods with the IDs 20, 100 and 101 will be loaded in the orderġ00, 101, 20 due to how the lexicographic comparison of folder names works. In the workshop directory, these folder names correspond to the strictly monotonically increasing UGC (Steam user-generated content) IDs. Within these orders, mods are loaded alphabetically by their folder name. Order there determines whether workshop mods or local mods are loaded first! The game knows of the mod directories through a config array ModRootDirs in XComEngine.ini, and it turns out that the DLCs happen to be loaded after that, and then it’s mod directories. It is obvious that base-game config is loaded first. Mod directories ( XCOM 2/XCom2-WarOfTheChosen/XComGame/Mods/*/Config and workshop/content/268500/*/Config).DLC directories ( XCOM 2/XCom2-WarOfTheChosen/XComGame/DLC/*/Config).User directory ( Documents/My Games/XCOM 2 (WotC)/XComGame/Config).Config load order is important, and here’s the Processed mod has any chance to textually match an original entry. Since single-value types use the last inserted entry, the config file processed last usually wins.īut at the same time, if a certain approach relies on removing previous array entries, only the first Minor formatting differences such as white-space, indentation, capitalization and leading zeros are relevant for the removal of entries. They look for VarName, VarName, … keys, using the last inserted value, until one isn’t found. KVPs with different indices produce different keys.Īrrays look for the VarName key and insert all entries in order into the array. Static (fixed-size) arrays look for VarName, VarName, … keys and use the respective value inserted last.Primitive types use the value inserted last.How it precisely works depends on the kind of variable. Only after all config files have been loaded, config variables are imbued with the values from the config map. For base-game config files and files in the user directory ( Documents/My Games/XCOM 2 (WotC)/XComGame/Config), Key=Value