VAM Evolutionary Character Creation

Other VAM Evolutionary Character Creation

Hmm, the app is designed for 1080p.
Thanks for your prompt reply. First attempt result is already amazing. What a awesome app for VAM. I am 100% sure to uninstall Honey Select 2, because the merge load was the only thing i like compare to VAM. Thanks for helping to save my PC space also ;)
1657241459.jpg
Vam Screenshot 2022.07.08 - 08.45.48.64.png
 
Ok looks awesome but how do I create .vap files ? "Save Look" is creating a .json file and I don't see any option to save an appearance. What am I missing ?

EDIT: Ok I found out. For anyone looking for this, go to "Appearance Presets", then change the preset name then click "Create New Preset"
 
Last edited:
Bash:
Exception in Tkinter callback
Traceback (most recent call last):
  File "tkinter\__init__.py", line 1892, in __call__
  File "VAM Evolutionary Character Creation.py", line 755, in <lambda>
  File "VAM Evolutionary Character Creation.py", line 1252, in generate_next_population
  File "VAM Evolutionary Character Creation.py", line 1570, in crossover_initialize_population
  File "VAM Evolutionary Character Creation.py", line 2128, in fuse_characters
  File "VAM Evolutionary Character Creation.py", line 1898, in pad_morphnames_to_morphlists
  File "VAM Evolutionary Character Creation.py", line 1883, in get_uid_from_morphname
KeyError: 'uid'

I have this error when clicking "Initialize Population"

1657734852160.png
 
I know I'm late with replying (I missed these messages, sorry). But can you maybe send me a zip file with some of the appearance presets you tried this with? And what specific settings you used in the app? From a fresh start. I'll try to reproduce your error that way and I need to know as detailed as possible how/what goes wrong.

@BigBoobCoomBlast69

Hey so I'm late too! But I came back to VaM and debugged this some more with the python file from github.

It seems that \Custom\Atom\UIButton\VAM Evolutionary Character Creation\Preset_Python2VAMRatingBlocker.vap and Custom\Atom\UIText\VAM Evolutionary Character Creation\Preset_Python2VAMText.vap sometimes get corrupted. The file size doubles from 2K to 4K, and according to my text editor, there are a whole bunch of invalid characters appended to the end of the file, hence I get the json parsing error from before.

I've confirmed that the standalone python app can corrupt the file, even without VAM open at all.

I'm having trouble tracing *why* this is happening, but I seem to have fixed it on my end with a simple addition right above line 1460 in your main file:
Python:
os.remove(path)

This simply deletes any file before opening it for writing. This makes no sense to me, as it shouldn't be necessary, and I've only tested it for a short time, but I haven't gotten a single json parsing error since adding that.
 
Last edited:
@BigBoobCoomBlast69

Hey so I'm late too! But I came back to VaM and debugged this some more with the python file from github.

It seems that \Custom\Atom\UIButton\VAM Evolutionary Character Creation\Preset_Python2VAMRatingBlocker.vap and Custom\Atom\UIText\VAM Evolutionary Character Creation\Preset_Python2VAMText.vap sometimes get corrupted. The file size doubles from 2K to 4K, and according to my text editor, there are a whole bunch of invalid characters appended to the end of the file, hence I get the json parsing error from before.

I've confirmed that the standalone python app can corrupt the file, even without VAM open at all.

I'm having trouble tracing *why* this is happening, but I seem to have fixed it on my end with a simple addition right above line 1460 in your main file:
Python:
os.remove(path)

This simply deletes any file before opening it for writing. This makes no sense to me, as it shouldn't be necessary, and I've only tested it for a short time, but I haven't gotten a single json parsing error since adding that.
Wow, great work. I am puzzled as well why that would be needed, but if it works, it works.
Thanks!
 
Bash:
Exception in Tkinter callback
Traceback (most recent call last):
  File "tkinter\__init__.py", line 1892, in __call__
  File "VAM Evolutionary Character Creation.py", line 755, in <lambda>
  File "VAM Evolutionary Character Creation.py", line 1252, in generate_next_population
  File "VAM Evolutionary Character Creation.py", line 1570, in crossover_initialize_population
  File "VAM Evolutionary Character Creation.py", line 2128, in fuse_characters
  File "VAM Evolutionary Character Creation.py", line 1898, in pad_morphnames_to_morphlists
  File "VAM Evolutionary Character Creation.py", line 1883, in get_uid_from_morphname
KeyError: 'uid'

I have this error when clicking "Initialize Population"

This is an error in your appearance file. Try to find out which of your .vap’s is causing this. I know this is not a great answer, but if a .vap file has some problems this breaks the app.
 
Great app!
I'm just wondering, in my favorite folder i have 40 models, is the app take all the models or is there limit to 20 models?
 
Great app!
I'm just wondering, in my favorite folder i have 40 models, is the app take all the models or is there limit to 20 models?
if you choose “select files” as an option, the limit is 20. If you choose“all” or “all favorites” you will get everything available. If you set min morph count to 150 (which you should!) it might be that some appearances are not shown, because they have less than 150 morphs.
 
if you choose “select files” as an option, the limit is 20. If you choose“all” or “all favorites” you will get everything available. If you set min morph count to 150 (which you should!) it might be that some appearances are not shown, because they have less than 150 morphs.
Great thanks!
 
Hi @pinosante,
I really love this tool.
I dont know if i just use it wrong but could it be possible to add a text in the map showing the template and probably the relative path?

in python I guess the function will look like:

Python:
def broadcast_child_template_to_VAM(self, child_template):
        """ Updates the file
            PATH_TO_VAM\Custom\\Atom\\UIText\\VAM Evolutionary Character Creation\\Preset_Python2VAMChildTemplate.vap
            with the child name, so the Vam Evoluationary Character Creation Companion can display the
            proper name. """
        # try to save file
        path = self.get_VAM_path(
            r'Custom\Atom\UIText\VAM Evolutionary Character Creation\Preset_Python2VAMChildTemplate.vap')
        if not path:
            return False
        self.write_value_to_VAM_file(path, "Text", "text", "Name: " + child_template)

and somewhere at the connection or reset:
Python:
broadcast_child_template_to_VAM (self.settings['child template'] )

After that I think we will just have to place the label somewhere nice in the map ?
For me the name help me overwrite or name version of some iteration.

Telle me what you think of it.
 
Hi @pinosante,
I really love this tool.
I dont know if i just use it wrong but could it be possible to add a text in the map showing the template and probably the relative path?

in python I guess the function will look like:

Python:
def broadcast_child_template_to_VAM(self, child_template):
        """ Updates the file
            PATH_TO_VAM\Custom\\Atom\\UIText\\VAM Evolutionary Character Creation\\Preset_Python2VAMChildTemplate.vap
            with the child name, so the Vam Evoluationary Character Creation Companion can display the
            proper name. """
        # try to save file
        path = self.get_VAM_path(
            r'Custom\Atom\UIText\VAM Evolutionary Character Creation\Preset_Python2VAMChildTemplate.vap')
        if not path:
            return False
        self.write_value_to_VAM_file(path, "Text", "text", "Name: " + child_template)

and somewhere at the connection or reset:
Python:
broadcast_child_template_to_VAM (self.settings['child template'] )

After that I think we will just have to place the label somewhere nice in the map ?
For me the name help me overwrite or name version of some iteration.

Telle me what you think of it.
I really appreciate you thinking with me and suggesting code, but I am not sure I understand what you are proposing. Is there a problem you encountered, for which you offer this solution? What is the problem? What does your code solve?
 
I really appreciate you thinking with me and suggesting code, but I am not sure I understand what you are proposing. Is there a problem you encountered, for which you offer this solution? What is the problem? What does your code solve?


Yeah not sure if I use your tool correctly but normally I select one of my "correct" appearances.
Run a couple of cycles in your tool to produce an amazing! result and overwrite the old appearance.

To do the overwrite step I need to alt-tab and look at the name of the template I used and after that I need to fill the save appearance correctly in vam.
It would be nice if I could only have to look at a label inside the scene to avoid alt-tab.
 
Yeah not sure if I use your tool correctly but normally I select one of my "correct" appearances.
Run a couple of cycles in your tool to produce an amazing! result and overwrite the old appearance.

To do the overwrite step I need to alt-tab and look at the name of the template I used and after that I need to fill the save appearance correctly in vam.
It would be nice if I could only have to look at a label inside the scene to avoid alt-tab.
Whenever I like the appearance I created, I go to save appearance, and choose a new name. Or you can click on "quicksave" to save it in your quicksave folder. Both of these, would not require you to alt-tab?
 
Fun plugin. Is it possible to randomize skin textures aswell?
Thanks! In theory that could be done. In practice the only thing close to what you want is to use the Variate Population button and make sure that the Appearances in your appearance folder have different skin textures. But that way you have no way to filter the appearances, so it will pick one randomly from all appearances in that folder.
 
Thanks! In theory that could be done. In practice the only thing close to what you want is to use the Variate Population button and make sure that the Appearances in your appearance folder have different skin textures. But that way you have no way to filter the appearances, so it will pick one randomly from all appearances in that folder.
I think your solution is better. It would be a nightmare if skin textures got randomized and caused seams, for example. I really didn't think it through.
 
Hey, it's me again! =)

I noticed my favorite looks are 'single morphed'. Is there any way to 'decompose' those morphs into multiple ones to make the tool work better?
 
Hey, it's me again! =)

I noticed my favorite looks are 'single morphed'. Is there any way to 'decompose' those morphs into multiple ones to make the tool work better?
No, unfortunately not. A distant future project for me might be to have a neural network “guess” the morph values based on a snapshot of the picture, but that’s a huge project. Long story short, right now this is impossible.
 
The Windows .exe file stopped working soon after the 1.21 update. But it worked a few times, so I'm unsure if the update is why. Now it tells me "not enough lines in the file" every time I press "initialize population". Can you help me with this? When I try to connect on the VaM side, it tells me, "updating. Please wait" ,and it just stops from there. I used to have it working beautifully...
 

Attachments

  • errorscreen.jpg
    errorscreen.jpg
    181.6 KB · Views: 0
The Windows .exe file stopped working soon after the 1.21 update. But it worked a few times, so I'm unsure if the update is why. Now it tells me "not enough lines in the file" every time I press "initialize population". Can you help me with this? When I try to connect on the VaM side, it tells me, "updating. Please wait" ,and it just stops from there. I used to have it working beautifully...
What 1.21 update do you mean? You could always just download it again from the hub and install it somewhere new?

You can also try selecting a few presets which work. And then see if the program works. It might be the case that one of the presets/templates file in your appearance dir is not working/corrupted/unreadable. So try handpicking just a few and do an evolution on those and see if that works.

I will look into the “Not enough lines in the file” later today.
 
I meant 1.21.1 update of VaM app. I used the updater.exe to downgrade to previous versions but still no luck. Created a new folder and installed it fresh, copied all my addons and presets but didn't work. Got rid of all my presets, then created some from the default gal, using the randomizer plugin I got from the hub, just to see if it worked but it still won't work. I'm pretty sure I have all the dependencies, and I also opened the var save data, which is required to create prerequisite files/folders, beforehand, and I have approved all the add-ons requested by VaM. I'm using Windows 11 64bit in Japanese, but I also tried changing the locale. That didn't help either. After all those tries, the app tells me the same "Not enough lines in the file" error. I really love your work. VaM is pretty much useless without it...
 
I meant 1.21.1 update of VaM app. I used the updater.exe to downgrade to previous versions but still no luck. Created a new folder and installed it fresh, copied all my addons and presets but didn't work. Got rid of all my presets, then created some from the default gal, using the randomizer plugin I got from the hub, just to see if it worked but it still won't work. I'm pretty sure I have all the dependencies, and I also opened the var save data, which is required to create prerequisite files/folders, beforehand, and I have approved all the add-ons requested by VaM. I'm using Windows 11 64bit in Japanese, but I also tried changing the locale. That didn't help either. After all those tries, the app tells me the same "Not enough lines in the file" error. I really love your work. VaM is pretty much useless without it...
Thanks for your warning, I just checked myself and I got the same problems as you have! I also received the "Not enough lines in the file" message.

Good news: I solved the problem. I will upload a fix for this problem as soon as I can (hopefully within the hour).

Thanks for letting me know about this problem.

ありがとうございます。
 
pinosante updated VAM Evolutionary Character Creation with a new update entry:

Critical bug fix for users with VaM 1.21+ (!) Please download this new version (!)

It turns out that the new VirtaMate update to 1.21 broke the VAM Evolutionary Character Creation App. This is now fixed. It should also be backwards compatible with the older versions of VirtaMate, but to be sure, I'd update to the latest version of VirtaMate anyway.

I also changed the default "min morph count" from 0 to 150, to avoid generating monsters due to having a lot of single-morph appearances. This is also mentioned in the documentation, but in case users don't read them, the...

Read the rest of this update entry...
 
Back
Top Bottom