Need help knowing where to create save game logic of colour changes in customization system

is anyone able to help me understand where Im going to do this in my current setup system for customization for my game, ive tried to figure it out for 3 days going on 4 now but i just cant figure it out, im extremely new to blueprinting , but ive started understanding basic logic (events, UI, event dispatcher etc) , the problem is , i have no clue how im going to save the camo changes i make using MIDs which apply a 2d texture onto a parameter, the only thing i can think about how it needs to work is that my character bp needs to know what camo option was selected and then create an MID within its own blueprint of the target mesh , telling itself to create an MID and change the 2d texture parameter to the one selected in the customization level. i know since you cant save an MID and MIDs are dynamic the bp player needs to store the camo texture selected from the customization level and load that to logic in bp custom player to create a MID and use that 2d texture save, i just dont know where im going to start this create save game logic

So basically i already have camo change working, but this is all happening in a customization level, where you select a part (shirt) and then a scrollbox gets populated with shirt options (shirt1,shirt2 etc) when i select one, a spawned instance of the character bp has its mesh changed via events and grabbing mesh IDs from data assets , then saving logic is applied so the characters newly selected mesh is persistent through levels by then telling its own mesh to change , and it does this by grabbing info from the level blueprint and shirt data assets to know which shirt was selected and apply it , so basically to summarize:

customization level → edits spawned instance → save game logic created for the change → loads into character bp → character bp changes its own shirtmesh skeletal meshcomponent.

so now i also have setup up the ability for camo changes by: shirt1 selected in customization level → mesh changes and camo options populate scroll box → select camo option → tells bp character to create MID from selected mesh and apply 2d texture of camo to the parameter camo within the MID.

the only direction i can think of how this will work is by telling character bp to make MIDs and apply 2d camo textures into the Camo parameter for 2d textures for the specific mesh component from info recieved from the customization level where MIDs are Created, it needs to be told to do this every time it loads in game, and recieve new 2d textures to apply everytime a new camo is selected in the customization level. any advice is greatly appreciated , as i said im completely new to unreal blueprinting . ill post some screen shots so you can see how camo changes happen , all i need to do is add save game logic for it, i already have save game logic for mesh swapping etc


(function in BP custom player to create MIDs from selected Camo)


(blueprinting in UI widget blueprint for customization level to use dynamically created camo options to change camo, its calling the function from bp custom player)

any help is greatly appreciated!! thanks !!

1 Like

You basically need to just remember ( save ) which texture was applied to the shirt.

If you make sure you have all the possible shirt textures in an array, all you need to know is the index in that array

Lets say you have a variable in your save game, an int called ‘shirt texture’

When they select 3 from the array, you just save ‘shirt texture’ = 3 in the save game.

Next time the character loads, it still has the array of shirt textures, reads the save game, see 3 was the shirt texture, and assigns that texture to the shirt MID

I just solved it ! I changed a few node variables to names and removed nodes that i thought were needed

I added appropriate blueprinting by gaining an idea of what you’ve just told me for a save game function and debugged the crap out of that and a load camo function with print strings , then i just messed around with function flow , it took 4 days now to figure out this tiny little function , unbelievable! THANKS!!!

1 Like