Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
MikiMirai authored Aug 7, 2022
1 parent 38bbe4b commit 6aa738a
Showing 1 changed file with 16 additions and 9 deletions.
25 changes: 16 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,20 @@
# SaiThemeColorChanger
Recolors Sai2.exe to have a faux-dark theme
INSTRUCTIONS:
!!!!(It is recommended to back up your sai folder first just in case anything goes wrong, just save it to your desktop or something. Just copy it and paste it somewhere else to do this.)!!!!

Drag the sai2.exe file into the executable to change the UI colors. Be sure to run it from somewhere with the appropriate permissions. If you want to make your own custom colors, just edit the hex list in the source code.
1. Open "SaiThemeColorChanger.exe".
2. Go into SAI's folder and drag the file "sai.exe" into the window you just opened (Be sure to run it from somewhere with the appropriate permissions)
3. Press enter.

ALSO MAKE SURE YOU BACK UP YOUR SAI FOLDER JUST TO BE SAFE LOL. I haven't noticed any issues using a modified version for a couple months now, but still.
If you want to make your own custom colors, just edit the hex list in the source code given.

Fork:
Abused pixel hex value inspection to find even more areas to be changed into a proper darkmode, not just pale gray
(CHANGES)
- NotBoogie's original project had very light colors, so Nyamhk and BusteanHAN changed the UI hex codes into others similar to Clip Studio's dark mode.
- BusteanHAN wrote a for loop to fix the light gray pixels around the color wheel. This only works in 100% interface scaling though.
- Miki and Nyamhk changed the remaining hex codes
- Miki and Nyamhk fixed a bug in which the layer blending mode panel and the resize canvas panel would not open and cause a bunch of errors.

Text blacks and button whites are #000000 and #ffffff respectively, which cannot be changed in the binary without completely breaking the program.
Address filtering could be applied to filter which #0s and #fs are changed, but the locations themselves are discovered manually through brute force.
That takes time; I do not have that much of it.
(NOTES)
- Because this works on the compiled program, every hex code has been found manually and any other changes require brute forcing of memory addresses that would make this color changer incompatible with potential newer versions of the program.
- Trying to change pure black (#000000) and pure white (#ffffff) breaks the program.
- All hex codes that start with 20 can only be changed with other hex codes that start with 20 or the blending modes break due to the memory address issue mentioned earlier.
- Some hex codes get flipped by the program for some reason (#204080 becomes #804020), for some reason.

0 comments on commit 6aa738a

Please sign in to comment.