Tool Unity [BepInEx][plugin] Texture Replacer v1.0.8.0

kumarin

Well-Known Member
Feb 19, 2022
1,970
2,831
This is an one of plugin of BepInEx.
This plugin will help replace texture of game without asset file replace. It changes textures on runtime.
It needed uncensored images(asset or png). Or do dump and make it uncensored.
It is do not touching asset file, So whatever game is updated, there is no problem. (when uses MD5)

New Added Feature : Select textures set
You can prepare many textures matches to 1 texture. There can be many variation of modded images. likes "black" and "blonde" hair.
prepare 2 textures and can change it run-time.

Example.
Make the folder named "Select". It's reserved name.
Game - BepInEx - plugins - ModImages - Select

... ModImages folder.
  • Select
    • Black Hair <- this will be "select texture"'s item name
      • hair_.png
      • leg_.png
    • Blonde Hair
      • hair_.png
      • leg_.png
    • Green body
      • hair_.png
      • leg_.png
  • UI
    • button1_.png
    • and so on....
  • Others
    • some files...
If texture named "hair" is found, plugin will change it with "hair_.png". but there are 3 duplicated "hair_.png". First one is used on game run.(sort by name). You can add number to folder name.
Press the F12, "hair_.png" is replaced with the texture which on "Blonde Hair" folder. Press F12 again? changed with "Green body"'s one. Rotating selection.
Of course you can prepare many textures on "select texture"'s folder.


Important !!
no duplicated names are don't needed use the MD5. (duplaicate names ex. texture_00)
Non duplicated name are just add "_" at tail of name. like below
  • acstill_101_2_.png : OK. It's a simple.
  • acstill_101_NO-MD5.png : location of MD5's string, there are "NO-MD5". It's OK. characters count is not 32.
  • acstill_102_2_I-Hate-MD5.png : OK. "MD5" is not keyword. just check character's count is 32 or not.
  • acstill_103_2_anonymouse edited.png : OK.
  • acstill_103_4_This file needs more edit.png : OK. used as comments. beware of 32 characters.
  • acstill_202_2_I-Want-good_game.png : In this case, texture keyword is "acstill_202_2_I-Want-good"
  • acstill_502_3_cf5432a5a6b110e8b4d1fb1f1d101004.png : It is an unique name, but force check the MD5.
even unique name, but want to make it distinct, add MD5 value after "_". Then plugin will check the MD5. If not match with image, Do NOT replaced.

You can check the version of plugin with right click to dll file -> properties -> Details tab on file browser.
1659939070126.png


Files
Texture Replacer plugin v1.0.8.0

Contents:
  • Texture_Replacer_BE_il2cpp.dll - for il2cpp #6xx over
  • Texture_Replacer_BE5.dll - mono
Additional Tools. (python)
Contents:
  • ImageCompareForTextureReplacer v1.41.py : Matching similar image files.
  • selected_files_rename.py : Renames files what you selected from results folder.
  • UABEA_rename_with_MD5.py

Restrictions
This is a plugin of BepInEx. Running under BepInEx.
Plugin use some Unity's function. So belong to Unity version. But may be runs on many unity ver.

Installation
first, install BepInEx to game folder.
copy "Texture_Replacer_BE5.dll" file to "BepInEx\plugins\" folder. (IL2CPP exe type need "Texture_Replacer_BE_il2cpp.dll". ex: Holy knight Ricca)
If you had uncesored png files, copy it all to "BepInEx\plugins\ModImages\" folder. (Matching with texture name)
Run game and enjoy.

About IL2CPP version of BepInEx
if game client type is IL2CPP, use latest .
is useless now. unhollow is no longer supported.

How to dump images
Hotkey is ALT-F11. Toggled.
You don't have permission to view the spoiler content. Log in or register now.

Uncensored asset files and game update
If you had a uncensored asset files(*.assets), But game is updated, Those files will be useless.
'cause texture was moved another asset file or pathID was changed, and so on.
In this case, You can use this plugin and tool(ImageCompareForTextureReplacer), can makes uncensored easier.

How to
  1. If have a modded images, copy files to "ORG" and jump to step 5.
  2. Install old game what uncensored(modded). and install BepInEx and plugin.
  3. Run game and turn on dumping(ALT-F11). view gallery or play game.
  4. Close game and move folder (BepInEx\plugins\ModImagesDump\) to proper folder(where you works. ex:"ORG")
  5. Install updated game.
  6. Do as 2-3
  7. Copy or move dumped folder to modded folder as step 4. (ex : "MOD")
You don't have permission to view the spoiler content. Log in or register now.

You can use it for image translations too.


Issues
This plugin has a design flaw.
'Get data from textures data on run-time.'
If can read texture's data with CPU, there is no problem.
But many textures are can't read directly with CPU. (if "IsReadable" property of texture is setted with "true", can be read)
Bypassing this problem, The result is an image that is different from the original, depending on the GPU.
I shouldn't have used MD5.
Each GPU is dealing with slightly different colors, I tried to out same MD5, but it's failed.
Don't use the MD5 if possible.

File compare example. (sagashimono)
1659938088988.png



You don't have permission to view the spoiler content. Log in or register now.

Changes Log
You don't have permission to view the spoiler content. Log in or register now.
You don't have permission to view the spoiler content. Log in or register now.
 
Last edited:

bwebrwkerw

Active Member
Sep 23, 2017
739
2,381
buddy finally you made my wish!!!!
THE UNIVERSAL TEXTURE REPLACER FOR ALL UNITY GAMES!!!!!!
i am very thankfully for this....the days of autotranslator texture nightmare finnally are overs yay!!!!
ok time to read all the documantation and making some test.........
 

kumarin

Well-Known Member
Feb 19, 2022
1,970
2,831
buddy finally you made my wish!!!!
THE UNIVERSAL TEXTURE REPLACER FOR ALL UNITY GAMES!!!!!!
i am very thankfully for this....the days of autotranslator texture nightmare finnally are overs yay!!!!
ok time to read all the documantation and making some test.........
I Found You woked SuccubusReborn.
Sorry for the lack of explanation.
If you used ImageCompareForTextureReplacer.exe, Result folder will be like this.
...
...
texture_00_510e05edcb0e3377850870e6e08d0177.png
texture_00_510e05edcb0e3377850870e6e08d0177.png (300.00) texture_00_7cd5e0ff1863ced8482b49c4593dd4ba.png
...
texture_00_5e265a815b4f8c7d3bf267e459604c53.png
texture_00_5e265a815b4f8c7d3bf267e459604c53.png
(245.48) texture_00_20963dc196fe7532564f7700b2e89883.png
...
Set candidate max count to 2, more files will be shown, I deleted some files.
Similarity is 300.00? May be same file.
similarity:
  • same size texture : 200~300
  • different size texture : 0 ~299

texture_00_5e265a815b4f8c7d3bf267e459604c53.png file is Original and censored file.
and texture_00_20963dc196fe7532564f7700b2e89883.png file is most similar file with texture_00_5e265a815b4f8c7d3bf267e459604c53.png and It had uncensored.

Plugin read texture name and get hash from what had loaded. And find owned same name&hash file. This time find key is "original texture name_contents's hash" so. like a texture_00_5e265a815b4f8c7d3bf267e459604c53.
If found, replace it with owned.
So, prepared file name is according to original name_original content's hash. You must rename "texture_00_20963dc196fe7532564f7700b2e89883.png" to "texture_00_5e265a815b4f8c7d3bf267e459604c53.png".
texture_00_20963dc196fe7532564f7700b2e89883 is useless filenane.

I tested. and filenames are likes below.
  • texture_00_510e05edcb0e3377850870e6e08d0177.png
  • texture_00_5e265a815b4f8c7d3bf267e459604c53.png
  • texture_00_7c1eb7f465acfe805b8fe34d7636e386.png
  • texture_00_dc60dec74d22693b26726514d7a58f15.png
  • texture_00_df610b622ca331ecb32cd8d713c28786.png

testing scene as below.
1654402335441.png
1654402348092.png
It works fine. And working on new version(20220509p) too.
 

bwebrwkerw

Active Member
Sep 23, 2017
739
2,381
I Found You woked SuccubusReborn.
Sorry for the lack of explanation.
If you used ImageCompareForTextureReplacer.exe, Result folder will be like this.
...
...
texture_00_510e05edcb0e3377850870e6e08d0177.png
texture_00_510e05edcb0e3377850870e6e08d0177.png (300.00) texture_00_7cd5e0ff1863ced8482b49c4593dd4ba.png
...
texture_00_5e265a815b4f8c7d3bf267e459604c53.png
texture_00_5e265a815b4f8c7d3bf267e459604c53.png
(245.48) texture_00_20963dc196fe7532564f7700b2e89883.png
...
Set candidate max count to 2, more files will be shown, I deleted some files.
Similarity is 300.00? May be same file.
similarity:
  • same size texture : 200~300
  • different size texture : 0 ~299

texture_00_5e265a815b4f8c7d3bf267e459604c53.png file is Original and censored file.
and texture_00_20963dc196fe7532564f7700b2e89883.png file is most similar file with texture_00_5e265a815b4f8c7d3bf267e459604c53.png and It had uncensored.

Plugin read texture name and get hash from what had loaded. And find owned same name&hash file. This time find key is "original texture name_contents's hash" so. like a texture_00_5e265a815b4f8c7d3bf267e459604c53.
If found, replace it with owned.
So, prepared file name is according to original name_original content's hash. You must rename "texture_00_20963dc196fe7532564f7700b2e89883.png" to "texture_00_5e265a815b4f8c7d3bf267e459604c53.png".
texture_00_20963dc196fe7532564f7700b2e89883 is useless filenane.

I tested. and filenames are likes below.
  • texture_00_510e05edcb0e3377850870e6e08d0177.png
  • texture_00_5e265a815b4f8c7d3bf267e459604c53.png
  • texture_00_7c1eb7f465acfe805b8fe34d7636e386.png
  • texture_00_dc60dec74d22693b26726514d7a58f15.png
  • texture_00_df610b622ca331ecb32cd8d713c28786.png

testing scene as below.
View attachment 1851174
View attachment 1851175
It works fine. And working on new version(20220509p) too.
yeah buddy i started working on this...so i can learn new ways to do stuffs and have pratice on the dumping method....
i have see than enabling dump eats all you ram on your system wow!!!!

for the filename i still use manual visual comparison i never like a program than do a job only human can do better.....

so maybe was a mistake/typos i will check it thanks for the head up.....

so is better try and learn this ImageCompareForTextureReplacer.exe....
maybe in future for now i need to be more manually pratical lol.....

also wen you said texture_00_20963dc196fe7532564f7700b2e89883 is useless filenane.

it mean than i use a wrong hash and then the load fail?
or
the file load but it's not the perfect choice on a plugin code level.....?

it's working or not this file........just to be clear about it...

Snap1.jpg
everyfiles was with wrong filenames WTF........

last test i made everything loaded mhhhh maybe i mixed filesnames.........
then who cares if still working or is not????

yeah this part is still confusing need more pratice to understand fully......

thanks for your time.....see you around.....!!!!

edit: are you from japan??? or can you really read japanese???
cuz why did you use a non translated version for the test if you cannot read the buttons??? or you just know the path/buttons for the scene?
nope your from korea eheheh found it lol
 
Last edited:

kumarin

Well-Known Member
Feb 19, 2022
1,970
2,831
yeah buddy i started working on this...so i can learn new ways to do stuffs and have pratice on the dumping method....
i have see than enabling dump eats all you ram on your system wow!!!!

for the filename i still use manual visual comparison i never like a program than do a job only human can do better.....

so maybe was a mistake/typos i will check it thanks for the head up.....

so is better try and learn this ImageCompareForTextureReplacer.exe....
maybe in future for now i need to be more manually pratical lol.....

also wen you said texture_00_20963dc196fe7532564f7700b2e89883 is useless filenane.

it mean than i use a wrong hash and then the load fail?
or
the file load but it's not the perfect choice on a plugin code level.....?

it's working or not this file........just to be clear about it...

View attachment 1851796
everyfiles was with wrong filenames WTF........

last test i made everything loaded mhhhh maybe i mixed filesnames.........
then who cares if still working or is not????

yeah this part is still confusing need more pratice to understand fully......

thanks for your time.....see you around.....!!!!
Let's step by step.
Before start, empty to "BepInEx\plugins\ModImages\" folder. For not use replaced images.
You will dump all files from game. run game, title screen is on.. Press ALT-F11.
when you move to another scene, dump will start. and texture filename displays on top.
Repeat some go around scene, close game.
Make a folder where to work. like a "Works" folder on root.
Make a folder "MOD" for modded files.
Make a folder "ORG". and move all "Dump" files and folders to ORG folder.
1654432185336.png
or
1654432238746.png
Doesn't matter.

If you have a modded asset files, replace original asset files with modded asset files.(U may backup original files)
Run game and dump as first do. and move to "MOD" folder with dumped folder.
Or don't have asset files, but have a modded image files, move modded files to "MOD" folder. This time, important point is "file name is same as texture name"
example. texture_00_7cd5e0ff1863ced8482b49c4593dd4ba.png
Texture name is must same with "texture name". after "_" characters are useless. no matter what comes. It is also good to erase. so, "texture_00.png" is ok too. but same filename "texture_00" are many exists. so leave to it is good idea.

Make "Result" folder on "Works".
Run ImageCompareForTextureReplacer.exe and set folders. Candidate max count to "2". If set to "1", auto rename is working. so you can't find what file is replaced and can't be sure result is correct.
1654433682539.png

Start Compare. and result is.
1654434847617.png

scroll down to texture_00...
1654435153224.png
first testure_00 file is "texture_00_0b87.....png". this file is original file. after 2 file names are so long. but include "(119.3", "(126.5"
Candidate max count to "2". so cadidate files are 2.
1xx.x means texture size(WxH) is different. if same size(WxH), similarity is over 200.

1654437487299.png
Selected two files are looks like very similar.
  • texture_00_5e265a815b4f8c7d3bf267e459604c53.png (5,715,243 bytes)
  • texture_00_5e265a815b4f8c7d3bf267e459604c53.png (245.48) texture_00_20963dc196fe7532564f7700b2e89883.png (4,115,489 bytes)
If filename includes similarity, It's a modded file. filename rule is likes below.
Original filename (similarity) Modded filename.
The modded filename has similarity.

If you use this modded file, copy or move it(texture_00_5e265a815b4f8c7d3bf267e459604c53.png (245.48) texture_00_20963dc196fe7532564f7700b2e89883.png) to another folder. then rename it like below.
"texture_00_5e265a815b4f8c7d3bf267e459604c53.png (245.48) texture_00_20963dc196fe7532564f7700b2e89883.png" -> "texture_00_5e265a815b4f8c7d3bf267e459604c53.png"

Repeat works, collect files. And puts it all to "BepInEx\plugins\ModImages\".
 
Last edited:
  • Thinking Face
Reactions: bwebrwkerw

bwebrwkerw

Active Member
Sep 23, 2017
739
2,381
you always mention a method using that program for this...... finally i start getting it....



1xx.x means texture size(Width x Height) is different. if same size(Width x Height), similarity is over 200.

Selected two files are looks like very similar.

  • texture_00_5e265a815b4f8c7d3bf267e459604c53.png (5,715,243 bytes) THE BIG ONE is the CHOSEN ONE!
  • texture_00_5e265a815b4f8c7d3bf267e459604c53.png (245.48) texture_00_20963dc196fe7532564f7700b2e89883.png (4,115,489 bytes) THE SMALL ONE is CRAP THEN?????
If filename includes similarity, It's a modded file. filename rule is likes below.
Original filename (similarity) Modded filename.
The modded filename has similarity.

If you use this modded file, copy or move it(texture_00_5e265a815b4f8c7d3bf267e459604c53.png (245.48) texture_00_20963dc196fe7532564f7700b2e89883.png) to another folder. then rename it like below.
"texture_00_5e265a815b4f8c7d3bf267e459604c53.png (245.48) texture_00_20963dc196fe7532564f7700b2e89883.png" -> "texture_00_5e265a815b4f8c7d3bf267e459604c53.png"

Repeat works, collect files. And puts it all to "BepInEx\plugins\ModImages\".



ok ok so i need to USE that program for better and more precise result.....

BUT i got some questions.....

1)what happen if i use one of "The modded filename than has similarity."(The CRAP one?) instead ????

2)why i have to use speciafically use the original and not ANY file than i just found inside dump folder
using manual comparison/search.......????

3)why then i have to use only one (the biggest one) and not all of them than looks similar???

4)why these files with modded filename with small dymension appear at all???? ???WTF???

5)what are the consequences if i use the wrong file "The modded filename than has similarity" (The CRAP one?)
BUT the game looks OK on pratical & visual test???? will anyone notice ANY differences or is it all THEORY?????

6)yeah I know what you are thinking.......why all these stupid question then????
because I have to consider all the options and all the variables first to make me convinced......

thanks for the above guide!!! really easy to follow!!!!
 
Last edited:

kumarin

Well-Known Member
Feb 19, 2022
1,970
2,831
ImageCompareForTextureReplacer.exe is tool of find similar files pair. One is original, and another is modded files.(according to candidate max count's value)
for example. Object Control. (already had modded assets files).
It has modded texture_00 35 files. Count of compare original with modded files in unlucky condition:
34+33+32+...+3+2 = 560
Maximum count is 560. May be 400 times takes it.
Manual comparing is Must needed. 'cause PC is not smart.
So I made this tool. It helps finding.

1)what happen if i use one of "The modded filename than has similarity."(The CRAP one?) instead ????
I said.
If filename includes similarity, It's a modded file. filename rule is likes below.
Original filename (similarity) Modded filename.
Original filename is come from "ORG" folder. It's a pure file.(extracted with Unity's function)
(similarity) calculated result. (compare method. I defined)
Modded filename is from "MOD" folder. So..
"Original filename (similarity) Modded filename" is one of copied file of modded files.

Why? Why filename is according to this rule?
'cause "easy work".
Finding most similar file work.. And result is ? "Replace Original file with Modded one".
Result of ImageCompareForTextureReplacer.exe, files of folder are like this.
Original 1
Cadidate 1 Modded
Cadidate 2 Modded

... (as candidate max count)
Original 2
Cadidate 2-1 Modded
Cadidate 2-2 Modded

... (as candidate max count)

This order(sorted by name) makes easy to work.
Working Original 1, If you found Cadidate 2 Modded is correct match with original, Cadidate 1 Modded is no need.

In my case, I'm work with total commander. I delete Cadidate 1 Modded and rename Cadidate 2 Modded to Original 1.(delete atfer of Original 1 part) This case, Windows will ask to me, "File exists. Overwrite it ?" "YES". Then Original 1 is replaced with Cadidate 2 Modded job is completed.

Other case, As I explained way. Copy or move Cadidate 2 Modded to another folder and rename it as original. It's not to bad way.
And renaming. Just delete all after Original 1 part.
example.
  • "texture_00_5e265a815b4f8c7d3bf267e459604c53.png" (Original 1)
  • "texture_00_5e265a815b4f8c7d3bf267e459604c53.png (245.48) texture_00_20963dc196fe7532564f7700b2e89883.png" (Cadidate 2 Modded)
texture_00_5e265a815b4f8c7d3bf267e459604c53.png part makes easy to rename.
(245.48) part means similarity for reference (not mean real correct match).
texture_00_20963dc196fe7532564f7700b2e89883.png part is useless. Just show "filename of modded".

Comparing need manual works. Must be compared with eyes. If you found Cadidate 1 Modded is more similar with Original 1 than Cadidate 2 Modded, Use Cadidate 1 Modded.

Plugin check all texture names on scene loaded. if Original 1 is exits in loaded textures and exists in "ModImages" folder, replace texture with Original 1 filenamed file.
So if you wrong file rename to Original 1, result is.. may be hell.
If you same files put to "ModImages", There is no change. Just slows a game.(scene loading)

2)why i have to use speciafically use the original and not ANY file than i just found using manual comparison/search.......????
Original filename. As above example.
"texture_00_5e265a815b4f8c7d3bf267e459604c53.png"
It's made by plugin.
texture_00 : It's a name of texture. Textures are loaded at scene loaded. This is one of name of texture.
5e265a815b4f8c7d3bf267e459604c53 : Made by plugin. Make MD5 from texture's contents. But not same with original contents MD5. It's a modified(size(W*H) / 16) contents's MD5. But can used as unique.

Target is "Replacing Original with Modded one".
This processing, Need "KEY" of original. Name of texture as KEY? There are many same names "texture_00".
So add unique value to "KEY". I used it "MD5".
Key is "texture_00_5e265a815b4f8c7d3bf267e459604c53"

Loaded scene, plugin find all texture's name. This time texture name is just like "texture_00".
Find filename(removed last "_" after parts) on "ModImages" folder. If find "texture_00" name over 1 times, calculate MD5 of texture's contents(/16). and make a KEY.
Now find KEY in dictionary(made on plugin loaded). If found, replace texture with modded file.

So. KEY is important. If can't find "KEY" on dictionary, plugin won't work.

3)why then i have to use only one (the biggest one) and not all of them than looks similar???
May be talk about similarity. It's a just reference.
example: Spending a Month with My Sister
I confused with 2 files. result is like below.
mozaiku_75b043efbf5d393686bcabadbbe0eda4.png
mozaiku_75b043efbf5d393686bcabadbbe0eda4.png (247.91) mozaiku_a3e1e626c90d6fc7821c71d0dfc33750.png
mozaiku_75b043efbf5d393686bcabadbbe0eda4.png (250.36) mozaiku_a6d3902e82433d059a6ece8e820ac3a8.png
mozaiku_ffd1e6e6f8b564fdfd6978683c6e89d4.png
mozaiku_ffd1e6e6f8b564fdfd6978683c6e89d4.png (247.91) mozaiku_a3e1e626c90d6fc7821c71d0dfc33750.png
mozaiku_ffd1e6e6f8b564fdfd6978683c6e89d4.png (250.36) mozaiku_a6d3902e82433d059a6ece8e820ac3a8.png

As you see, mozaiku_75b043efbf5d393686bcabadbbe0eda4.png and mozaiku_ffd1e6e6f8b564fdfd6978683c6e89d4.png are originals.
But candidates... different original, same candidates. and same similarity. modded filenames are same.
If you view images, can't find differences.. Original files are same... I can't distinguish.
But candidate files are... there is little bit difference.
I can't solve it.

You don't have to use (the biggest one). similarity is just reference. Use your eyes.

4)why these files with modded filename with small dymension appear at all???? ???WTF???
Caclulate MD5, texture's contents size(W*H) divided by 16.
If Width is smaller than 16 or Height is smaller than 16, Can't make MD5.
So, textures of small sized are ignored.

5)what are the consequences if i use the wrong file "The modded filename than has similarity" (The CRAP one?)
BUT the game looks OK on pratical & visual test???? will anyone notice ANY differences or is it all THEORY?????
If use wrong matched file, I don't have idea.
'cause, texture files is can be just one texture of model. This case, just strange model will be created.
If texture what have a many texture of images, Result will be hell.

6)yeah I know what you are thinking.......why all these stupid question then????
because I have to consider all the options and all the variables first to make me convinced......
It's good to be certain.

Beside, modded texture size is not must same as original one. example, Holyknight Ricca has a 4k textures.
I think even size of texture is different, may be works ok. This part needs a test.
 
Last edited:
  • Wow
Reactions: bwebrwkerw

bwebrwkerw

Active Member
Sep 23, 2017
739
2,381
my release of uncensor is incomplete without your hash results
https://f95zone.to/threads/succubus-reborn-20220428b-supporter-sda-lab.62028/post-8263484
this will work only for non unicode user.....
so i need your files or just the name with the DYMENSION of it .....
with just this....
1654588694737.png
i cannot do nothing!!!!

or you just can post it on here
https://f95zone.to/threads/succubus-reborn-20220428b-supporter-sda-lab.62028/post-4209900
and get credited for that i don't care what's your choice......
just do something about......

see you around.....
 
Last edited:

kumarin

Well-Known Member
Feb 19, 2022
1,970
2,831
my release of uncensor is incomplete without your hash results
https://f95zone.to/threads/succubus-reborn-20220428b-supporter-sda-lab.62028/post-8263484
this will work only for non unicode user.....
so i need your files or just the name with the DYMENSION of it .....
with just this....
View attachment 1856226
i cannot do nothing!!!!

or you just can post it on here
https://f95zone.to/threads/succubus-reborn-20220428b-supporter-sda-lab.62028/post-4209900
and get credited for that i don't care what's your choice......
just do something about......

see you around.....
I updated imouto plugin to 1.0.6. Using same algorithm with this plugin. So I write to here.
I changed Windows system to English mode.
1654590568879.png
And Extract to your uploaded file. ([Yakumo milk] Spending a month with my sister v2022.06_KumarinSpecial.7z)
Run test. Not working uncensor with anime2_6617d49337c5b4d66d98e4ad1f0aa230.png.
Put the anime2_223e2d80348058c5f1cff6547080ef67.png to ModImages folder and test. Uncensored working.

Delete ModImages folder and imouto_with_month_resource.dll file.
Extract imouto plugin file to BepInEx\plugins\ folder. run test.
Uncensor working with anime2_3c529b5b9343981e2c2466a6873805c4.png file.

Unicode is nothing to do with MD5.

Talk about Succubus Reborn.
I used and Working OK below scene.

Of course It was worked at Korean system.
 

bwebrwkerw

Active Member
Sep 23, 2017
739
2,381
mhhh so is not that????
Defenitely. The uncenscored plugin, gallery unlock and translation plugin.
so i was just confused by this picture.......

1875371_sister_5.jpg
mine is english 1+1=2
I updated imouto plugin to 1.0.6. Using same algorithm with this plugin. So I write to here.
I changed Windows system to English mode.
View attachment 1856260
And Extract to your uploaded file. ([Yakumo milk] Spending a month with my sister v2022.06_KumarinSpecial.7z)
Run test. Not working uncensor with anime2_6617d49337c5b4d66d98e4ad1f0aa230.png.
Put the anime2_223e2d80348058c5f1cff6547080ef67.png to ModImages folder and test. Uncensored working.

Delete ModImages folder and imouto_with_month_resource.dll file.
Extract imouto plugin file to BepInEx\plugins\ folder. run test.
Uncensor working with anime2_3c529b5b9343981e2c2466a6873805c4.png file.

Unicode is nothing to do with MD5.

Talk about Succubus Reborn.
I used and Working OK below scene.



Of course It was worked at Korean system.
nothing new still incompaible but this time i have adden dymension and value is different also!!!!!!
Snap4.jpg
check the files maybe you found something....than will fix the situation.......
 

kumarin

Well-Known Member
Feb 19, 2022
1,970
2,831
mhhh so is not that????

so i was just confused by this picture.......

View attachment 1856302
mine is english 1+1=2

nothing new still incompaible but this time i have adden dymension and value is different also!!!!!!
View attachment 1856315
check the files maybe you found something....than will fix the situation.......
Download anime2_aca49a558e8eafc789d93294052f02b2.png file and compare with my anime2_3c529b5b9343981e2c2466a6873805c4.png files. two file are same. byte compared.
I found there is some issue on dumping.
Do you deleted all files ModImages folder before dumping?
IF there is a files...
Title screen -> gallery. this time anime2 is loaded. If plugin is not dumping mode, anime2 is replaced with ModImages folder.
Press ALT-F11. now starting dumping. but anime2 is already loaded.
Enter fera scene. plugin starting dumping with replaced one.
So I got result (v1.0.6)
  • anime2_3c529b5b9343981e2c2466a6873805c4 Starting dump on title
  • anime2_3a73c649fbd9ac4c21c759eb1c015f8e Starting dump on gallery
Of course if there is no files on ModImages, result is just one any condition.
  • anime2_3c529b5b9343981e2c2466a6873805c4
 

bwebrwkerw

Active Member
Sep 23, 2017
739
2,381
Download anime2_aca49a558e8eafc789d93294052f02b2.png file and compare with my anime2_3c529b5b9343981e2c2466a6873805c4.png files. two file are same. byte compared.
I found there is some issue on dumping.
Do you deleted all files ModImages folder before dumping?
IF there is a files...
Title screen -> gallery. this time anime2 is loaded. If plugin is not dumping mode, anime2 is replaced with ModImages folder.
Press ALT-F11. now starting dumping. but anime2 is already loaded.
Enter fera scene. plugin starting dumping with replaced one.
So I got result (v1.0.6)
  • anime2_3c529b5b9343981e2c2466a6873805c4 Starting dump on title
  • anime2_3a73c649fbd9ac4c21c759eb1c015f8e Starting dump on gallery
Of course if there is no files on ModImages, result is just one any condition.
  • anime2_3c529b5b9343981e2c2466a6873805c4
i cannot understand what have you writed.....
but made a nice discover using my portable hd on my old win 10 pc than my parents are using:

[Yakumo milk] Spending a month with my sister v2022.06_KumarinSpecial
with
anime2_3c529b5b9343981e2c2466a6873805c4 is UNCEN fera......wow!!!!

[Yakumo milk] Spending a month with my sister v2022.06+Uncen+Gallery (is the version i have on my backup)
with
anime2_6617d49337c5b4d66d98e4ad1f0aa230 is CENSORED !!!!!!LOL!!!!!!!

so the problem is is my new system pc......
this version only works here and not in others pc......
[Yakumo milk] Spending a month with my sister v2022.06+Uncen+Gallery

but what is the cause.......i dunno any clue!?
 
Last edited:

kumarin

Well-Known Member
Feb 19, 2022
1,970
2,831
i cannot understand what have you writed.....
but made a nice discover using my portable hd on my old win 10 pc than my parents are using:

[Yakumo milk] Spending a month with my sister v2022.06_KumarinSpecial
with
anime2_3c529b5b9343981e2c2466a6873805c4 is UNCEN fera......wow!!!!

[Yakumo milk] Spending a month with my sister v2022.06+Uncen+Gallery (is the version i have on my backup)
with
anime2_6617d49337c5b4d66d98e4ad1f0aa230 is CENSORED !!!!!!LOL!!!!!!!

so the problem is is my new system pc......
this version only works here and not in others pc......
[Yakumo milk] Spending a month with my sister v2022.06+Uncen+Gallery

but what is the cause.......i dunno any clue!?

edit1
View attachment 1856373
i see different numbers mhhhhh
edit2
View attachment 1856374
a complete list of programs i have inside this crappy pc!!!!
1654599531321.png
anime2_3c529b5b9343981e2c2466a6873805c4.png I dumped my pc.
anime2_aca49a558e8eafc789d93294052f02b2.png You uploaded.
Two file are all same. byte compared.
And. Your anime2_3c529b5b9343981e2c2466a6873805c4.png file is may be uncensored. (if downloaded from plugin v1.0.6)
attached file is original. dump from original with v1.0.6.
 

bwebrwkerw

Active Member
Sep 23, 2017
739
2,381
so why my pc want this code for working????
anime2_aca49a558e8eafc789d93294052f02b2 is this an bugged md5 calculation right?
instead of
anime2_3c529b5b9343981e2c2466a6873805c4 the correct md5 for this file....??????

here a is a list of the stuff inside my pc anything suspicious than can alter md5 calculation!?
useless then ok!
 
Last edited:

kumarin

Well-Known Member
Feb 19, 2022
1,970
2,831
so why my pc want this code for working????
anime2_aca49a558e8eafc789d93294052f02b2 is this an bugged md5 calculation right?
instead of
anime2_3c529b5b9343981e2c2466a6873805c4 the correct md5 for this file....??????

here a is a list of the stuff inside my pc anything suspicious than can alter md5 calculation!?
View attachment 1856468
Your PC is calculating anime2 texture to aca49a558e8eafc789d93294052f02b2.
Read texuture -> resize to divide by 16. and get new texture(just for calculation for MD5. Not save).
Calculate MD5 with new small sized texture. That is KEY.(MD5)
Texture reading is using UnityEngine.Texture2D class. (Unity)
MD5 making is using System.Security.Cryptography class. (.net framework)
imouto v1.0.5 was using Hash128() in UnityEngine.

Your installed programs can't touch texture reading and calculate MD5.
If .net's System.Security.Cryptography was changed? result must changed. But It's used by long long ago. Can't change.
Texture reading and save to PNG file is working same on You and My PC.
Resizer? texture is stored in asset file. before scene loaded, some programs is touch texture?
Even vaccine is not working like that.

Recently, There was .net update was comes. (Win10 update)
I test on not updated PC. But uncensor works OK.
 

bwebrwkerw

Active Member
Sep 23, 2017
739
2,381
Your PC is calculating anime2 texture to aca49a558e8eafc789d93294052f02b2.
Read texuture -> resize to divide by 16. and get new texture(just for calculation for MD5. Not save).
Calculate MD5 with new small sized texture. That is KEY.(MD5)
Texture reading is using UnityEngine.Texture2D class. (Unity)
MD5 making is using System.Security.Cryptography class. (.net framework)
imouto v1.0.5 was using Hash128() in UnityEngine.

Your installed programs can't touch texture reading and calculate MD5.
If .net's System.Security.Cryptography was changed? result must changed. But It's used by long long ago. Can't change.
Texture reading and save to PNG file is working same on You and My PC.
Resizer? texture is stored in asset file. before scene loaded, some programs is touch texture?
Even vaccine is not working like that.

Recently, There was .net update was comes. (Win10 update)
I test on not updated PC. But uncensor works OK.
so all this damn problems are starting from 1.0.6 then?

imouto v1.0.5 was using Hash128() in UnityEngine.

can you force 1.0.6 to use THAT instead.....!?

or can you elaborate something simple than can calculate hashes & works on both pc WITHOUT (.net framework)??????