File information

Last updated

Original upload

Created by

Demon9ne

Uploaded by

Demon9ne

Virus scan

Safe to use

Tags for this mod

Documentation

Readme

View as plain text


Loot Icons Extension
by Demon9ne

Loot icons focused on expandedness and customization



Features

Icon Variety
- Over 60 different vanilla icons are utilized, for different items. (Ammo, for instance, displays a different icon per type, instead of generic magazine icons.)

Mod Settings Profile
- Loot Icons Extension utilizes Mod Settings, so that you have a degree of control over everything listed below.

Icon Substitution
- Loot Icons Extension can further customize the "base set" of icons, using a touch of common sense and some underutilized vanilla icons. (See the screenshots above.) One new icon is also added for non-alcohol beverages.
- Mod authors (perhaps you) can now create and assign new loot icons to custom items. And it's very easy. (See Mod Dev Info below, for details.)
- HUD icons can be substituted for individual non-melee weapons you find in Night City. (Originally a psiberx mod, if you've been here a while.) - https://github.com/psiberx/cp2077-playground/blob/main/ExtendedLootIcons.reds

Icon Appearance
- Icons Sorting: When staring directly at a container or corpse, icons will reorganize themselves to be in the same order as the items in the loot window. QoL.
- Icons can be seen through walls, if you'd like. Requiring the scanner, if you'd like.
- Icons can display at increased or decreased scale, and either horizontally or vertically.

Icon Tinting
- Icons can be tinted--or even randomly tinted per game session--from a small set of basic colors per item quality.
- Custom icons can have custom tints that deviate from the standard item quality tint.
- Quest items can be set to tint differently, so they always stand out.
- Icons can all be tinted to one color by choosing a theme tint--from a small set of basic colors that fit the game.
- Icons can be tinted to a special palette by choosing the unique Mox theme, which factors in item quality.

Addendum
- Tagged containers show the tagged icon, rather than loot icons.
- Duplicate icons are intentionally not removed, as you're probably used to. There's always one icon per item.
- Some mods add loot to civilian npcs that are incapable of displaying icons. Cause unknown, for the time being.
- This mod contains an attempt to correct the ammo icon bug (which causes ammo that is alone in a container to have no icon).
- If you have CET and you'd like to know your current (perhaps random) icon tints, use console command: Game.ReportIconTints()
- This mod does not change icon visibility range.

Important
- Loot Icons Extension contains a DLL file, which attempts to correct a vanilla bug. If you have anti-virus or anti-malware software that detects it and freaks out, be smart: redownload the mod and redeploy it to overwrite the DLL, just in case actual malware hiding on your PC replaced it with something legitimately dangerous.
- If you uninstall mods manually, do not forget to check and ensure that the files from the previous version are removed.

Optional File: Loot Icons Extension Light
LIExt Light contains no DLLs, making it a bit more stable than the original. Use it if you distrust DLL files, your antivirus nags, or you experience crashes.
- Does not contain the vanilla bug fix for ammo icons not appearing when they are the sole icon

Optional File: Over 600 Shuriken
I wanted to illustrate the potential of Loot Icons Extension, so I contacted manavortex about a potential collab, and this is the result of our efforts.
- Adds a unique loot icon for shuriken.
- Treats shuriken as the calling cards of the Tyger Claws, who often drop them.
- This file uses Codeware to randomize the hundreds of shuriken, to avoid getting constant duplicates.
- Make sure to download Over 600 Shuriken and update TweakXL to v1.10.5+ before installing.

Changelog
- v1.0: Initial release
- v1.1: Minor code adjustments for efficiency and stability
- v1.2: Fixed a game start issue when running the mod without Mod Settings (which is optional/recommended)
- v1.2: Added code to untag looted containers/enemies, for players experiencing this issue
- v1.2: Minor code adjustments for efficiency and stability
- v1.3: Fixed iconic quality icon tinting
- v1.3: Added quest item tinting, with Mod Settings option
- v1.3: Added theme tinting (override for all items up to a quality threshold), with Mod Settings options
- v1.3: Added a unique theme, Mox, which is a theme that factors in item quality
- v1.31: Fixed the rare item quality tint in the Mox theme
- v1.32: Fixed some tomfoolery under the hood in Mod Settings tinting
- v1.4: Minor pathing adjustments and code adjustments for efficiency and stability
- v1.4: Fixed issue with some valid hex colors being overwritten by identically named colors
- v1.4: The Codeware dependency version requirement is now v1.12.9+
- v1.4: The ammo icon vanilla bug fix DLL has been updated/refactored for stability
- v1.4: The color conversion DLL is eliminated, functionally replaced by improved redscript
- v1.4: Released optional file LIExt Light as an alternative, in case of future stability issues
- v1.5: Minor code adjustments for efficiency and stability
- v1.5: Added the ability to set icon opacity (transparency) while aiming down sights, in Mod Settings options
- v1.5: Added the ability to set icon opacity (transparency) while scanning, in Mod Settings options

Mod Conflicts
- Better Loot Markers - https://www.nexusmods.com/cyberpunk2077/mods/3486 - is unfortunately incompatible. To author this mod, I essentially had to rewrite that mod from scratch in Redscript, adjust some things, and then add to it (a lot). Generally speaking, I would say that if you want something dependable and simple, go with Better Loot Markers. And if you want something a bit more varied, try this. If you happen to ignore this and install both, this mod will notice and disable itself.

Requirements
- ArchiveXL - https://www.nexusmods.com/cyberpunk2077/mods/4198
- Codeware (v1.12.9+) - https://www.nexusmods.com/cyberpunk2077/mods/7780
- Redscript - https://www.nexusmods.com/cyberpunk2077/mods/1511
- TweakXL (v1.10.5+, if you downloaded the Over 600 Shuriken optional file) - https://www.nexusmods.com/cyberpunk2077/mods/4197
- Mod Settings (Recommended) - https://www.nexusmods.com/cyberpunk2077/mods/4885
- Over 600 Shuriken (if you downloaded the Over 600 Shuriken optional file) - https://www.nexusmods.com/cyberpunk2077/mods/13542

Credits
- rodikh (for inspiring this and getting in touch about a collaborative effort to bring the features above to life) - https://next.nexusmods.com/profile/rodikh
- psiberx (for scripting help, inspiration to integrate HUD icons somehow, and Codeware/TweakXL updates related to my feedback) - https://next.nexusmods.com/profile/psiberx
- Roms1383 (for help with the attempt to fix the ammo loot icon bug) - https://next.nexusmods.com/profile/Roms1383
- Dravic, from the CP2077 Modding Discord server (for some info on tints--he's the reason you can select Malibu as a rare quality color)
- brahmax, for playtesting
- GhostRdrTat, for playtesting
- manavortex (for an enthusiastic collab on the Over 600 Shuriken optional file) - https://next.nexusmods.com/profile/manavortex



Mod Dev Info: How to assign a custom loot icon to an item

After making your item and your custom loot icon (32x32px and 64x64px, white, with a transparent background), there are but 2-3 simple steps to assigning it to your item, so that Loot Icons Extension utilizes it. We'll go over an extremely modded-CP2077 example: you've made a bikini and you want it to have the bikini icon you've drawn.

Step 1: Your .inkatlas file goes in the following archive folder: base\gameplay\gui\common\icons\Bikini.inkatlas ...
- If you have .xbm files for the textures, you can put them where ever you want. Just refer to their location properly in the .inkatlas file.

Step 2: Your new item will need to include 2-3 tags to be assigned properly. Open your TweakXL file in r6\tweaks\yourmod\ and add them ...
- In step 1, we called your file Bikini.inkatlas, so you'll need to add the tag LootIconsExt_Atlas_Bikini.
- You will also need to add a tag for the TexturePart name. If your texture is "BlueBikini", then you would add the tag LootIconsExt_Part_BlueBikini.

Step 3 (Optional): If you'd like your icon to always be a specific color, regardless of quality ...
- In step 2, we mentioned that the bikini is blue--so you probably want it to have a blue icon--you could add one of two different tags to tint your icon blue: either LootIconsExt_Tint_Blue or LootIconsExt_Tint_0000FF.
- But let's say that you want it to be a specific shade of blue, called "Robin's Egg Blue"--you'll need to strip any punctuation and spaces from the name of the color. The following tag will turn your item's loot icon that color: LootIconsExt_Tint_RobinsEggBlue.
- Loot Icons Extension will accept a tag ending in any 6-digit hex color (often called "HTML colors") or any named color from this site: https://chir.ag/projects/name-that-color
- Lastly, if you want to create a colored icon and skip tinting altogether, do that by including the tag: LootIconsExt_Tint_None

Overview:
- Your .inkatlas file is located in base\gameplay\gui\common\icons
- Your item in your TweakXL file was given the following tags: LootIconsExt_Atlas_Bikini, LootIconsExt_Part_BlueBikini
- Your item also might have one of the following tags to tint its icon: LootIconsExt_Tint_Blue, LootIconsExt_Tint_0000FF, LootIconsExt_Tint_RobinsEggBlue, et al.

You're all done. Very easy stuff.

It's also probably worth mentioning that if you create a new firearm, it could benefit from having both a custom loot icon and a custom HUD icon. If you'd like the item to never show a HUD icon (regardless of the Mod Settings option), you can tag your item with LootIconsExt_SkipHUDIcon.