Wutname1 / SpartanUI

SpartanUI
http://spartanui.net
Mozilla Public License 2.0
29 stars 11 forks source link

Spartan UI Classic - coloring & portrait issue #167

Closed ghost closed 3 years ago

ghost commented 5 years ago

I've been using Spartan UI Classic for 10 years and I love it.

There are some issues with the artwork coloring and the 3D player portrait:

Stock Spartan UI with issues (red coloring only for contrast): 2

Custom mod with colored textures and no overlapping: 3

Wutname1 commented 5 years ago

If you are making code fixes yourself you are more than welcome to submit a Pull request so that they can be implemented into SUI.

I personally manage all 26,000 lines of code spread across 256 files, and 5 styles and and cannot possibly notice every issue. I rely on the user community to make me aware of when new options have unintended consequences or when new features do not play well with older legacy options.

Wutname1 commented 5 years ago

If you are uncomfortable with a pull request (They can be intimidating) you can always post your edits and i will gladly implement them.

ghost commented 5 years ago

Dear Wutname1,

I apologize for my sligltly elevated tone before, I didn't mean to be rude. You are awesome for putting so much effort into this addon.

The fix I found for the 3D portrait corner issue is the following:

File: \SpartanUI_PlayerFrames\scripts\FrameStyle_Classic.lua

Line 242: artwork:SetFrameLevel(2) -- Original value was 1

I also made the portrait slightly smaller so more can be seen of the character's head but that is only a personal preference:

Line 251: self.Portrait:SetSize(62, 62) -- Original value was 64

Unfortunately I don't know lua programming so I could not solve the coloring issue in the code. I created colored images and changed BLP and TGA files. However here is the list of the elements that are not coloring properly in the Classic layout:

Also I have some insights / ideas:

Unifying the texture extensions:

I noticed that there are both TGA and BLP files in the folders. I don't know if that is some requirement for the addon to function properly. If not, I think it would be easier to create everything as PNGs in Photoshop so there is no need to mess around with the alpha channels and then just convert them to BLP.

Unifying the file names and folder structures:

The textures for the Classic theme are in \SpartanUI_Artwork\Themes\Classic

while the rest of the styles have separate folders SpartanUI_Style_Fel SpartanUI_Style_Minimal SpartanUI_Style_Transparent SpartanUI_Style_War

It would be more minimalistic to include every style in the Themes folder with their respective names such as: \SpartanUI_Artwork\Themes\Classic \SpartanUI_Artwork\Themes\Fel \SpartanUI_Artwork\Themes\Minimal \SpartanUI_Artwork\Themes\Transparent \SpartanUI_Artwork\Themes\War

This way there would be less root folders in the addons, less components in the ingame Addons lists and the files would be in a uniform folder structure. I know that this means these could not be optionally disabled in the ingame Addons menu but I don't know if that would be an impact on the performance that is worth mentioning.

New features and options:

I made some edits in the \SpartanUI_PlayerFrames\scripts\FrameStyle_Classic.lua as I wanted to streamline the classic player frame to be absolute minimalistic. Maybe these could have their own toggles in the options so users can turn them on or off.

Removed the player level as I don't really need to see it, and I can always check it in the Character menu. (As I don't know the programming language, I could only shift it out of the screen.)

self.Level:SetPoint('CENTER', ring, 'CENTER', 5000, 5000) -- Original: 53,12

Same with the following below, as I don't need these informations:

self.LeaderIndicator:SetPoint('CENTER', ring, 'TOP', -5000,-5000) -- Original: ('CENTER', ring, 'TOP')

self.SUI_RaidGroup:SetPoint('CENTER', ring, 'TOPRIGHT', -5000,-5000) -- Original: -6,-6

self.GroupRoleIndicator:SetPoint('CENTER', ring, 'CENTER', -5000,-5000) --Original: -20,-35

self.RestingIndicator:SetPoint('CENTER', self.SUI_ClassIcon, 'CENTER', -5000,-5000) --Original: ('CENTER', self.SUI_ClassIcon, 'CENTER')

I also modified the C:\World of Warcraft\_retail_\Interface\AddOns\SpartanUI\Core\oUF.lua so the RareElit dragon is dark grey to better match the Classic theme:

self.RareElite:SetVertexColor(1,1,1,1); -- Original: 1,0.9,0,1

This could also be included in the Artwork coloring option. For example: there is now the possibility to change the base artwork color but that is not changing the player frames and the EXP & REP bars. The EXP and REP bars should be automatically colored with the rest of the base artwork and then there should be separate checkboxes for:

so they can be either be colored with the base artwork or have individual sliders.

That's all that came to my mind for now regarding your awesome addon. Once again thank you for your work.

Wutname1 commented 5 years ago

Unifying the texture extensions: I noticed that there are both TGA and BLP files in the folders. I don't know if that is some requirement for the addon to function properly. If not, I think it would be easier to create everything as PNGs in Photoshop so there is no need to mess around with the alpha channels and then just convert them to BLP.

BLP is and has always been wow's proprietary format, TGA was the only other option originally. Some (most) images have been converted to BLP as they are smaller. The ones that are not are usually due to them being the last ones i was tweaking or have seen modification off and on. Another reason behind using TGA's is that it allows me when developing to play more with transparency tweaking (texture fades) than a PNG would, in order to only do PNG i would have to maintain a PSD for everything.

Unifying the file names and folder structures:

I agree. When the Theme/Skin system was made (Back in 2015) The reason behind making all the new themes their own addon was to self-document how anyone could make a new theme. Themes are not limited to the main SUI download. However it's been 4 years and the wow community & add-on author pool has been shrinking I think it is safe to say if it has not happened already it likely woun't so I don't think this is needed anymore.