Blackops Research & Development PresentsGlobal Icon SupportCurrent Version: 5.0
Download:
Vault -
Currently On VaultZip -
Zip DownloadSCD -
SCD DownloadBefore anyone gripes about another Blackops Project being posted please understand this one is actually a support tool for all mods (hence the global part) rather than something specific to Blackops.
Essentually one of the major issues with unit mods is that GPG didn't make icon support centralized so currently mods only really have three options. First is to just not include icons and deal with placeholders which is annoying but happens, Second is to use Goom's Build Icon Scripts which provide build icons but leaves alot of holes, and Third to put the icons into an SCD file in gamedata and hope it doesn't cause desync issues in multiplayer.
During trying to get 100% icon coverage for Blackops I asked DeadMG for some help rewriting an old script I was using. Quite frankly he returned it in such better shape that it lead to alot of possibilities. Together we tracked down as many of the game's references to unti Icons as I could and while I still haven't found them all we have made a serious chunk.
Install Instructions:Vault Package -
Avalible - Already downloads into proper place. Can be found in /My Documents/My Games/Gass Powered/ect if you need to.
SCD Package - Unzip and drop .scd file in your <FA Install Directory>/gamedata/ folder.
Zip Package - Unzip and drop the containing folder into your <FA Install Directory>/mods/ folder. Make sure folder structure is /mods/BlackopsACUs/mod_info.lua. If there is an extra folder the mod will not work correctly.
Zip Package Alternate - Unzip and drop the containing folder into /My Documents/My Games/Gas Powered Games/Supreme Commander Forged Alliance/mods/ folder. Make sure folder structure is /mods/BlackopsACUs/mod_info.lua. If there is an extra folder the mod will not work correctly.
Activation Instructions:Simply turn it on in the Mod Manager. If you activate a mod that specifically requires this mod you will get a message asking you to activate this mod as well.
Compatable Mods: (Mods configured specifically for BOGIS Support)
4th-Dimension(Bad Icon Preloader support) (Coming Soon)
Veteran Producing Factories V1.5 by FuryoftheStarsBlackOps: Unleashed by the BlackOps TeamBlackOps: Advanced Command Units by the BlackOps TeamBlackOps: Special Weapons Add-on by the BlackOps TeamBlackOps: Altered Reality Add-on by the BlackOps TeamHow it Works:Basically you simply turn it on.
The beauty of the mod is that it does all the hard work with very little prep needed as BOGIS will search all the active mods folder structures to locate any compatabilt unit or upgrade icon and store them for reference later.
This mod is configured for legacy mod support which means that it will find icons for any mod reguardless of what folder they are dropped into (Enhancments have 1 minor exception) even if they use the old fassion scd in the game data folder for their icons.
Icons Currently Supported:-Construction Icons (Icons shown in Factory/Build menus)
-Unit Select Icons (General icon shown when single or multiple units selected)
-Hover Over Unit Icons (Icon showed in unit detail popup)
-Targetting Icon (Icon shown on mousover to see what a unit is shooting at)
-Avatar Icons (Commander's Idle Icon)
-Commander Upgrades (Icons shown for commander upgrades)
Configuring Your Mod to Utilize This:Configuration is actually very straight forward as you simply have to have your icons somewhere for the mod to find them. There are a few minor conditions but they are caused mainly by the game's restrictions rather than mine.
1) All custom units must have 7 character unit IDs followed by _unit.bp or the script will ignore it. This is because some of GPGs scripts are incredibly picky.
2) Enhancment/Upgrade icons must be placed inside a faction specific folder. It doesn't matter where these folders are located just the name of the folder. This is because some enhancments may have the same name for each faction but require a different colored icon. It is to prevent overwrites.
aeon-enhancementscybran-enhancementsseraphim-enhancementsuef-enhancements3) Custom units making use of Enhancment/Upgrade icons must have a faction identifier as the 2nd character in the unit ID (example: xAxxxxx). This is the only hard limit on what you can set as the unitID besides the char limit mentioned above. This is because GPG's enhancment scripts look specifically at that character to determine faction.
a = Aeone = uef (earth)r = cybran (recyclers)s = seraphim4) This mod is capable of overwriting older scripts such as Goom's or Gilbot's Icon systems however you will need to check your mod's UID. If it is higher than the UID used by this mod then you will break functionality of BOGIS scripts and may not properly load the icons for all them ods you are running.
Manual Overrides:Due to populare request I have added a number of manual overrides to the mods functionality. These can be set by a player with a specific purpose in mind.
Alternate Icon PathThis is the first override and allows you to specifically set the path to an icon you wish to use. If you set this value the icon you choose will become the new default icon for all build menus, avatars, control groups, and general unit information. To set this you just need to add the follong line to your units BP.
Code:
Display = {
AlternateIconPath = '/mods/modfolder/<folders>/',
},
You do not need to include the unit ID or the file name in this path. This is just the folder path to where the icon should be located. BOGIS will map to this location as primary before trying to fall back on other icon locations.
Alternate Enhancment/Upgrade PathThis one is very similar to the previous override but marks out what folder to look for the units enhancment/upgrade icons. This is useful for units whos unitIDs don't have the proper faction identifier or adding custom icons to existing units.
Code:
Display = {
AlternateUpgradeIconPath = '/mods/modfolder/<folders>/',
},
This is just the folder path to where the icon should be located. BOGIS will map to this location as primary before trying to fall back on other icon locations.
Bad Icon PreloaderNote: This function is supported by version 3.0+Some of the biggest mods and even GPG's default game have helper/dummy units that don't have and simply don't need icons. To reduce log spam BOGIS compiles a list of units that don't have icons and puts them in a Bad Icon table. This way it reduces log spam everytime the game tries to load an icon for this unit.
Per request mod developers wished to pre-load a list of unitIDs into this table for units that they know do not have valid icons and so with some manipulation of Manimal's Mod locator script (to make sure BOGIS is running before trying to load data into mods outside your mod's folder) I created a little script that can be filled out and inserted into a mod to pre-load a list of unitIDs.
Create this file if it doesn't exist in your mod:
/mods/modfolder/hook/lua/globalInit.luaInsert this code into it:
Code:
do
local EXPreloadBadIconUnits = {
'eeb0001',
}
local GetMyActiveMod = function( byName, byUID, byAuthor )
for i, leMod in __active_mods do
if (byName and ( byName == leMod.name ))
or (byUID and ( byUID == leMod.uid ))
or (byAuthor and ( byAuthor == leMod.author )) then
--LOG("MANIMAL\'s DEBUG: Mod infos = "..repr(leMod))
return leMod
end
end
WARN("MANIMAL\'s MOD FINDER: Unable to get Mod Infos ! Either your mod is not installed or you have mistyped its name, UID or author.")
return {}
end
local BOGISCheck = GetMyActiveMod( 'BlackOps Global Icon Support Mod', false, false )
if BOGISCheck.name == 'BlackOps Global Icon Support Mod' then
local BlackopsIcons = import('/mods/BlackopsSupport/lua/BlackopsIconSearch.lua')
for i, v in EXPreloadBadIconUnits do
local EXunitID = v
BlackopsIcons.EXNoIconLogSpamControl[string.upper(EXunitID)] = EXunitID
end
end
end
Expand the "EXPreloadBadIconUnits" table with all the unitIDs that do not have icons in your mod. When this is done it will check to make sure BOGIS is running and then insert every unitID within that table into the Global Bad Icon table within BOGIS.
Note: This was done during Global Initiation so that it is executed & loaded before BOGIS runs its primary search function.This script deals specifically with standerd unitIDs and not Enhancment/Upgrade icons. Enhancment/Upgrade icons are required to have existing icons within the mod or bad things happen. Do not create an enhancment without having an icon for it.
-----===== Credits =====-----
Exavier MacbethInitial Code, File Tracking, Debugging, & Tweaking
DeadMGCore Functions & Hooking