Update 2.0.6 Quick Patch 8 hotfix, no major bugfixes. I simply stashed what I was in the middle of working on, reverted to the last public release, and fixed a couple minor lines so it's now Patch 8 compatible.
Update 2.0.1 (Almost) full rewrite, with a shiny revamped UI and a lot of changes under the hood.
Default hotkey is now 'F' to open the EasyDye window (changed to Alt+F in 2.0.4), and it can be customized in the Settings menu. You can also set the window to resize or expand it manually for whatever reason, as well as having it OpenOnStart, when you load into a game.
Modded dyes should be fixed to always show in the UI, but let me know if there are still some problematic ones to investigate.
Colors persist naturally like regular item dyes, because they are item dyes now. I used the Focus™️ method like FocusDyes, and as a result, EasyDye now conflicts with FocusDyes sadly. I made an effort to separate them, but didn't want to fully regenerate the 2500 custom blank dyes it provides, so I just plopped them right in as-is. I also tried to get an import process going in case anyone wanted to bring their FocusDyes in, but I haven't quite had the patience for it yet, maybe on the roadmap for later if there's enough interest.
MCM is now optional (but I still recommend it). Since EasyDye is more of a per-user client kind of thing, I'm using locally managed settings on each player's computer (available at %localappdata%\Larian Studios\Baldur's Gate 3\Script Extender\EasyDye). It's also where your custom dye LocalUserPresets are stored, in case you want to back up your colors or use them for making your own dye mods. Maybe I'll add the ability to share your colors with other players in the same session later 🤔
2.0.2 Minor hotfix: Fixed Multiplayer ClientControl issue 2.0.3 Minor hotfix: Added a mod blacklist for the Dye Tab, and included Faerun Colors on request by author. This also solves the incompatibility with the current 1.4.2 version of Faerun Colors, if you're running into that issue.
Update 2.0.4
DyeTab and internal dye manager should behave when it runs into weird material presets now, instead of poofing due to errors
Default hotkey changed back to ALT+F, although this will only affect new installs of EasyDye. If you're still running into problems trying to open the EasyDye window, try changing the hotkey to something other than just F (no modifiers). It apparently runs into conflict problems with in-game hotkeys if used as default.
New! Auto apply color harmonies while you're live-previewing changes, instead of having to drag/drop. This was added instead of a pure "randomize" button, since it gives more control. It makes some assumptions about which color regions it should apply colors to, but you can change those out or individually apply each color picker as needed.
Update 2.0.5
Added ability to import colors from Miraculous Dyes by Focus. Process explained more below.
Added ability to export User Presets as Material Presets to a .lsx file, which allows for more easily adding your color palette into a dye mod (goes in the Public/<YourMod>/Content/[PAK]_Whatever location). Modders will still have to take this generated UUID and create the other things however, ie- dye icons, dye item, ItemCombos.txt
Importing from Miraculous Dyes (FocusDyes) General notes:
You may still be able to recover saved dyes from your game save, if you've previously had FocusDyes installed in your playthrough. Just add it (and FocusCore) back to your mod order, below EasyDye.
Mod Uninstaller is recommended to cleanup FocusDyes, when you're ready to uninstall it at the end of the process.
While this import process will save your dye colors to EasyDye user presets, it unfortunately can't associate them with anything that is currently dyed with those colors. Those items will change to blank/gray or EasyDye-defined colors (since EasyDye recycles those material presets)
The recommended mod order is AahzLib -> EasyDye -> FocusCore -> FocusDyes, so FocusDyes loads last. You can re-add Focus mods now, if you don't have them currently, but previously did. Also make sure you install Mod Uninstaller or some other way to get rid of any FocusDyes items in your game (Pledge of Polychrome, passives, dyes, etc.)
Load into the game, open EasyDye (default ALT+F), navigate to the User Presets tab and hit Import. This may take a few seconds depending on the number of dyes you have, but once it's done the User Presets dropdown should update with all the imported dyes. These are now saved locally to your computer, and will persist even if you remove FocusDyes (and even EasyDye).
If you were given the FocusDyes items, open MCM and navigate to the Mod Uninstaller tab. Find and uninstall FocusDyes in the dropdown. Once that process is completed, save your game, and quit the game completely.
Remove both FocusCore and FocusDyes from your load order, export the order, and load back into your save.
You should now have all the dye colors available as EasyDye User Presets, and can re-apply them to your equipment.
Thanks for bearing with me on the initial 1.0 release. It was a difficult concept to wrap my head around and took a long time to wrangle the client-side mod code. There's still some cleanup that could be done, especially leading up to SEv21 where I'll have more IMGUI features to play with, but everything should be functional and work mostly as expected.
Feel free to post pictures of your freshly EasyDyed characters, and hope you enjoy 🏳️🌈
Known issues with 2.0.1
The Paperdoll in the Inventory screen doesn't update color changes according to the Live Preview, only when you finalize changes. It's a separate entity from your real character, and I haven't carried over the changes yet. It's on the to-do list.
Specifically around the UI's idea of the "selected/active item", ie- which tab you have selected for your equipped items. With the current SEv20 implementation of IMGUI, there's no way to query the selected tab, so I have to make do some guesswork sometimes to figure out which item you have selected. If EasyDye seems confused about which item you're trying to dye, switch to a different item tab and back again, which should mark it as the correct "selected/active item", and you can continue dyeing. This usually only happens initially when equipping/unequipping or changing your armor state (vanity<->armor).
A very talented modder (thanks Jerinski) did some testing and discovered some problems with the way item visuals are defined by some mods. These items have incorrect/non-standard visual slots defined, and cannot be reliably associated to the item you're trying to dye. As a result, EasyDye cannot do live previews of color changes on these items, and while I've still enabled a default color palette for you to apply color changes to, you must SAVE or SAVE ALL to see the color changes on these items. This is not something I can easily work around, and it's best to try to contact the authors of these modded items so they can try to correct the subvisual definitions to have the correct visual slots.
I am not understanding how to select specific articles of clothing to dye. When I open the menu, it says Dyeing:Tav. It shows lots of different options including illithid veins color and such. It auto dyes whatever clothing Tav is wearing with what I assume is taken from their skin tone and hair color. How do I input clothing like in the examples where it shows the item picture and it's in game name? Is there a guide I can look at? Am I doing something wrong? If anyone can explain, please help.
I don't know at which point you are using the menu, but I open the EasyDye menu when I am inside the game and on the map already, I never use it when I am on character editor (mirror) or level up or respec. The menu should look like the first example, and you can move between clothes with the left right arrows or theres another arrow pointing down and with that you can see all your clothes, even if rings or amulets appear, you can't dye those.
So the dye I apply only works in the menu, the changes aren't reflected outside of the men and in cut scenes or the main character menu...there they just have the default color of the armor they're wearing.
This mod doesn't change the colors in cutscenes. I'm not sure about the main character menu though. I SO wish the dyes would persist in cutscenes, but I'll take what I can get xD this mod is honestly so good that I don't care about the cutscenes anymore xD
@TheLambofDeth @Melon0730 The dyes always persist for me just as if I used regular game dyes. The trick is to make all your dyeing tweaks for an item in one go, save all, and then save the new color scheme as a new dye color. This process makes the colors 'stick'.
@Aahz07 Thanks so, so much for carrying on Focus' torch. I have spent countless gaming sessions applying and tweaking color palettes to get everyone's theme just right. I greatly appreciate all the time and effort you take to share your talent and creativity with us. Thank-you! 🩷💚💙
@neverhaveinever, @TheLambofDeth Here are some tips: * If a dyable item isn't displaying its colors (the row of color blocks that appear beneath for each dyable part), try unequipping then re-equipping it until it does. * Before applying a dye to an item, first click on one of the color blocks beneath it, then click outside the color box that pops up without changing the color. This can help to put the 'focus' on dyeing the item. * Every time you want to make even a single color change, do the following in the same dying session:
- First use a dye preset on the item. Hold off saving just yet. - Make any color adjustments you want. - Save all. - In the top left menu, click on the User Presets tab. - Click 'New', rename 'Generic' to something you want, then click the Replace with Current button to overwrite with your current color scheme. OR - Choose an existing preset you want to overwrite, which is what I do for the sole purpose of getting the colors to stick. - I usually save over a preset I've named for that character / clothes set (e.g. 'AstMain' for Astarion's armor, or 'AstCamp' for Astarion's camp clothes).
* Bear in mind that if you try to make a color change without following this process, some or all of the colors will revert to the item's original color scheme. * Best practice is to always keep your current color schemes saved as user presets; that way you can always apply them again to your clothes, save all, then save over that same dye preset to make it all stay.
For some extra clarification, you can also see which colors will "stick" by checking them against your current inventory paperdoll. If they don't match what you're seeing on your character in the game world, then your colors haven't been saved properly yet (either "Save" hasn't been clicked, or it didn't work for some reason). To guard against your freshly tweaked colors going poof entirely, create a user preset, which should directly take the colors you've changed in the UI and save them to file. You can then reapply to the item and hit save all, which seems to work for most people.
The imgui implementation is still fresh in SE, so the UI has some weird bugs that I wasn't able to work out previously when I started working with it about 3-4 SE versions ago. There are a lot of new imgui improvements in SE now that I can take advantage of, to iron out most of the current UI bugs when I get a chance.
Should be possible to dye shields, since it should accept a dye preset UUID the same as any other item. It currently won't show up in EasyDye however, since I've only whitelisted very specific visual slots. I'll add that to the todo list once some other things are more stable.
Do you know why there's a very consistent desync between the inventory and in game? Usually in the inventory screen it will be completely different or unupdated, and usually removing the dyed equipment or switching to camp clothes completely breaks the changes made. Otherwise I love this mod
Yes, if you'll allow a slightly technical explanation, it helps to explain server/client and the general multiplayer environment if you can follow along.
The server is the single source of truth. Every client (including the host client, even in singleplayer) gets synced with the server, so it sees the same thing generally, and every client stays on the same page (NPC locations, spells being cast, etc.).
EasyDye works by first altering materials on your client ONLY; what you're currently seeing.
When you hit "save" or "save all" in the UI, EasyDye will attempt to send those colors to the server.
When the server receives that save request, it creates or updates a dye preset with those customized colors; it essentially creates a custom dye item, and saves it in your save data so it will persist through reloads (as long as EasyDye is installed).
The server applies this custom dye preset to the item you hit "save" on, just the same as it would if you used a normal dye in the vanilla game.
The server then "replicates" this dye change on the item, which syncs it with all clients, as the color customization is considered finalized now.
So if you haven't hit save or it didn't save your colors correctly, you can currently check the EasyDye-tweaked colors against your inventory paperdoll so see if the colors match. If they don't match, then the server didn't correctly apply your colors for some reason, and you should hit "Save/Save All" (or some people have suggested making user presets right now as a workaround -> applying those -> hit "save"). Life has been crazy the past few months, so I haven't been able to mod much and fix those kinds of problems, but clever people have figured out how to work around that and make EasyDye work for them. I'll hopefully have more time soon and get things fully fixed so the dyeing process is more intuitive.
Yes, non-standard parameters aren't saved currently. I wasn't sure they would be safe to add into the dye material presets, so I didn't bother including them initially. Those things like glow/dirt/fuzz color changes won't save for now, maybe a future feature.
Hey, hi. I can't seem to get the mod to show up! MCM is up-to-date, and I have my load order correct (MCM>AahzLib>EasyDye) but nothing shows up. Not in my MCM, and not with the hotkey. I am sure it's a me problem, but if anyone has any ideas, I would sure welcome them.
Just wanted to share my love of this mod. It is essential to me and my girlfriend. We have so much fun making bad ass but also COMPLETELY ridiculous outfits in our game. I swear we spend almost as much time playing dress up to make eachother laugh (or to actually create some pretty cool looks) and this mod is the cornerstone. (and ALSO big thanks to all the dye contriibutors!) I never thought prior to the release of this game that I would spend countless hours customizing my "outfits" lol
Yes, I've been working on a mod for this for a while, but don't have the time to devote to it for now. Essentially I wanted to be able to customize character creation even more in-depth, and also allow saving of presets, so you could basically do things like export/import your customized character into another save.
I've also looked at ways to scrape character customization from old saves that won't load anymore, to see if they could be recovered... I have many characters I'll never see again because it's kinda impossible to get into those saves, because there's no way to figure out the necessary mods/versions, which is sad. It's technically a nightmare, but I did somewhat find a way to dump them... so theoretically it might be possible to carve out the information to know which mods you might need, and potentially recreate your character again on the newest patch. I just don't have the time sadly, and modding isn't a fulltime job 😅
Essentially, the subvisual slot definition should match the equipment slot you're targeting, for example:
You've taken a Cloak visual and changed/added it into a Body slot piece of equipment. The cloak subvisual should be changed to target the "Body" slot, not the "Cloak" slot. The vanilla game doesn't care and will display it just fine, but it's not "standardized" to match the equipment slot the visuals are targeting. EasyDye will get confused by this, because it thinks it's looking at a "Body" piece of equipment, and will miss previewing the color/material changes on the "Cloak" subvisual part of the slotted equipment.
234 comments
Quick Patch 8 hotfix, no major bugfixes. I simply stashed what I was in the middle of working on, reverted to the last public release, and fixed a couple minor lines so it's now Patch 8 compatible.
(Almost) full rewrite, with a shiny revamped UI and a lot of changes under the hood.
2.0.2 Minor hotfix: Fixed Multiplayer ClientControl issue
2.0.3 Minor hotfix: Added a mod blacklist for the Dye Tab, and included Faerun Colors on request by author. This also solves the incompatibility with the current 1.4.2 version of Faerun Colors, if you're running into that issue.
Update 2.0.4
- DyeTab and internal dye manager should behave when it runs into weird material presets now, instead of poofing due to errors
- Default hotkey changed back to ALT+F, although this will only affect new installs of EasyDye. If you're still running into problems trying to open the EasyDye window, try changing the hotkey to something other than just F (no modifiers). It apparently runs into conflict problems with in-game hotkeys if used as default.
- New! Auto apply color harmonies while you're live-previewing changes, instead of having to drag/drop. This was added instead of a pure "randomize" button, since it gives more control. It makes some assumptions about which color regions it should apply colors to, but you can change those out or individually apply each color picker as needed.
Update 2.0.5Importing from Miraculous Dyes (FocusDyes)
General notes:
Thanks for bearing with me on the initial 1.0 release. It was a difficult concept to wrap my head around and took a long time to wrangle the client-side mod code. There's still some cleanup that could be done, especially leading up to SEv21 where I'll have more IMGUI features to play with, but everything should be functional and work mostly as expected.
Feel free to post pictures of your freshly EasyDyed characters, and hope you enjoy 🏳️🌈
Known issues with 2.0.1
- The Paperdoll in the Inventory screen doesn't update color changes according to the Live Preview, only when you finalize changes. It's a separate entity from your real character, and I haven't carried over the changes yet. It's on the to-do list.
- Specifically around the UI's idea of the "selected/active item", ie- which tab you have selected for your equipped items. With the current SEv20 implementation of IMGUI, there's no way to query the selected tab, so I have to make do some guesswork sometimes to figure out which item you have selected. If EasyDye seems confused about which item you're trying to dye, switch to a different item tab and back again, which should mark it as the correct "selected/active item", and you can continue dyeing. This usually only happens initially when equipping/unequipping or changing your armor state (vanity<->armor).
- A very talented modder (thanks Jerinski) did some testing and discovered some problems with the way item visuals are defined by some mods. These items have incorrect/non-standard visual slots defined, and cannot be reliably associated to the item you're trying to dye.
Quick notes:As a result, EasyDye cannot do live previews of color changes on these items, and while I've still enabled a default color palette for you to apply color changes to, you must SAVE or SAVE ALL to see the color changes on these items. This is not something I can easily work around, and it's best to try to contact the authors of these modded items so they can try to correct the subvisual definitions to have the correct visual slots.
The menu should look like the first example, and you can move between clothes with the left right arrows or theres another arrow pointing down and with that you can see all your clothes, even if rings or amulets appear, you can't dye those.
The dyes always persist for me just as if I used regular game dyes. The trick is to make all your dyeing tweaks for an item in one go, save all, and then save the new color scheme as a new dye color. This process makes the colors 'stick'.
@Aahz07
Thanks so, so much for carrying on Focus' torch. I have spent countless gaming sessions applying and tweaking color palettes to get everyone's theme just right. I greatly appreciate all the time and effort you take to share your talent and creativity with us. Thank-you! 🩷💚💙
Here are some tips:
* If a dyable item isn't displaying its colors (the row of color blocks that appear beneath for each dyable part), try unequipping then re-equipping it until it does.
* Before applying a dye to an item, first click on one of the color blocks beneath it, then click outside the color box that pops up without changing the color. This can help to put the 'focus' on dyeing the item.
* Every time you want to make even a single color change, do the following in the same dying session:
- First use a dye preset on the item. Hold off saving just yet.
- Make any color adjustments you want.
- Save all.
- In the top left menu, click on the User Presets tab.
- Click 'New', rename 'Generic' to something you want, then click the Replace with Current button to overwrite with your current color scheme.
OR
- Choose an existing preset you want to overwrite, which is what I do for the sole purpose of getting the colors to stick.
- I usually save over a preset I've named for that character / clothes set (e.g. 'AstMain' for Astarion's armor, or 'AstCamp' for Astarion's camp clothes).
* Bear in mind that if you try to make a color change without following this process, some or all of the colors will revert to the item's original color scheme.
* Best practice is to always keep your current color schemes saved as user presets; that way you can always apply them again to your clothes, save all, then save over that same dye preset to make it all stay.
For some extra clarification, you can also see which colors will "stick" by checking them against your current inventory paperdoll. If they don't match what you're seeing on your character in the game world, then your colors haven't been saved properly yet (either "Save" hasn't been clicked, or it didn't work for some reason). To guard against your freshly tweaked colors going poof entirely, create a user preset, which should directly take the colors you've changed in the UI and save them to file. You can then reapply to the item and hit save all, which seems to work for most people.
The imgui implementation is still fresh in SE, so the UI has some weird bugs that I wasn't able to work out previously when I started working with it about 3-4 SE versions ago. There are a lot of new imgui improvements in SE now that I can take advantage of, to iron out most of the current UI bugs when I get a chance.
I would like the ability to dye my shields and weapons as well. Possibly allow it to work with this mod Dye Support for Shields.
The server is the single source of truth. Every client (including the host client, even in singleplayer) gets synced with the server, so it sees the same thing generally, and every client stays on the same page (NPC locations, spells being cast, etc.).
- EasyDye works by first altering materials on your client ONLY; what you're currently seeing.
- When you hit "save" or "save all" in the UI, EasyDye will attempt to send those colors to the server.
- When the server receives that save request, it creates or updates a dye preset with those customized colors; it essentially creates a custom dye item, and saves it in your save data so it will persist through reloads (as long as EasyDye is installed).
- The server applies this custom dye preset to the item you hit "save" on, just the same as it would if you used a normal dye in the vanilla game.
- The server then "replicates" this dye change on the item, which syncs it with all clients, as the color customization is considered finalized now.
So if you haven't hit save or it didn't save your colors correctly, you can currently check the EasyDye-tweaked colors against your inventory paperdoll so see if the colors match. If they don't match, then the server didn't correctly apply your colors for some reason, and you should hit "Save/Save All" (or some people have suggested making user presets right now as a workaround -> applying those -> hit "save").Life has been crazy the past few months, so I haven't been able to mod much and fix those kinds of problems, but clever people have figured out how to work around that and make EasyDye work for them. I'll hopefully have more time soon and get things fully fixed so the dyeing process is more intuitive.
I am sure it's a me problem, but if anyone has any ideas, I would sure welcome them.
I've also looked at ways to scrape character customization from old saves that won't load anymore, to see if they could be recovered... I have many characters I'll never see again because it's kinda impossible to get into those saves, because there's no way to figure out the necessary mods/versions, which is sad. It's technically a nightmare, but I did somewhat find a way to dump them... so theoretically it might be possible to carve out the information to know which mods you might need, and potentially recreate your character again on the newest patch. I just don't have the time sadly, and modding isn't a fulltime job 😅
You've taken a Cloak visual and changed/added it into a Body slot piece of equipment. The cloak subvisual should be changed to target the "Body" slot, not the "Cloak" slot. The vanilla game doesn't care and will display it just fine, but it's not "standardized" to match the equipment slot the visuals are targeting. EasyDye will get confused by this, because it thinks it's looking at a "Body" piece of equipment, and will miss previewing the color/material changes on the "Cloak" subvisual part of the slotted equipment.