[A17] Change Dresser

Started by Kiame, March 07, 2017, 03:10:16 PM

Previous topic - Next topic

Kiame

Please consider using the newer version of this mod: Change Dresser - BETA  at https://ludeon.com/forums/index.php?topic=35632.0
The new one will not work with saves from this version so please be aware of that (why it's a new release).
This version of the mod will no longer be supported and will not be advanced to newer releases.

Adds a dresser and wall mirror which allows a pawn to change their apparels' color, hair color, skin color, hair style, body type, head type, gender, and age (use these at your own risk).

The dresser can also store apparel.

Both the dresser and the mirror can be found in the Furniture menu.

Dresser costs to build is 40 wood/stone/metal and 40 steel.
Mirror costs to build is  20 wood/stone/metal and 20 steel.

Will work with current saves (no new game required)

Warning for those who use Humanoid Alien Races:
Only humans should use this dresser. If a non-human uses the dresser they will turn into a human (dresser's Reset does not revert them back). If this happens, the game will need to be loaded from a previous save to fix the problem.

Compatibility with Facial Stuff:
It does appear to be working though each time a modification is made to a pawn the entire dresser UI window will flicker. This appears to be due to how Facial Stuff changes the pawn's refresh.
I would recommend backing up the save before using this mod. Verify it does what you want and doesn't cause something to break. If something does break please let me know.

Apparel Items
-The dresser is a storage zone. Multiple dressers can be setup to store different apparel items if desired.
-If the dresser is destroyed, all stored apparel will be placed on the floor around where the dresser was.
-Items stored in the dresser are not included in Apparel Groups. Items placed in the dresser's storage can be selected when creating Apparel Groups and apparel can be moved from Groups to the dresser's storage.

Apparel Groups
The goal is to allow a quick and easy way to switch between two sets of apparel (worker -> soldier -> worker).
Once an apparel group is made, right clicking on the dresser will bring up "Wear <group name>". Selecting this will cause the pawn to swap out all their clothing for the clothing in the set. Right clicking the dresser again will display "Unwear <group name>". Selecting this will cause the pawn to swap out all their cloths again to the original set.
-A pawn can only wear one group at a time. So once they're wearing a set, only "Unwear" will be displayed for the set that's being worn.
-A pawn can claim another pawn's private Apparel Set via the Storage window. This is in case the original pawn dies or for some other reason the set needs to be made public or private to another pawn.
-When a pawn performs the Wear or Unwear command, the swapping of cloths is very naive. It literally just swaps the apparel assuming everything's the same. This has a benefit in that if a pawn changes an underlying apparel - like a button shirt to a t-shirt - the Unwear will still work. The drawback is if the pawn changes too many apparel items - like remove their shield or armor - the apparel set will not have that until it's re-added by the pawn manually.
-Apparel that are a part of an Apparel Group are not displayed in the dresser's storage

Change When Drafted
-There can only be one "Change when Drafted" apparel group per pawn. If a second group is marked as "Change when Drafted" for the same pawn, then the original group is unmarked but is still private to the pawn.
-The pawn will instantly change between what they were wearing to the battle gear. When undrafted they will instantly change from their battle gear to their original apparel.

Mod Settings
There are three mod settings:
-"Allow Body Change" - Checked (default) means the "Edit Body" selection will be available to pawns. Unchecked will hide the option and the window
-"Allow Gender and Age Change" - Checked (default) means on the "Edit Body" window the option to change a pawn's Age and Gender is available. Unchecked will hide these options. If "Allow Body Change" in unchecked this option will be hidden since its parent window is not accessible by a pawn.
-"Link Storage Groups to Dresser" - When Unchecked (default), storage groups behave the same as previous version of Change Dresser. When Checked, storage groups are accessible by all dressers. Also, any/all dressers are destroyed no apparel in storage groups will be dropped and if any were checked as "Change for Battle" then the pawns can still use those apparel when drafted. Once a new storage dresser is built the storage groups can be accessed again.

Manage Apparel
This is a new action button accessed by left clicking on a dresser. Clciking on this button will open the Dresser's window and allow you to see what apparel is stored in the dresser and remove any items. From this window you can also view and modify any storage groups that are stored in the dressers. If the "Link Storage Groups to Dresser" option is unchecked, every storage group can be modified from any dresser with this button.



Steam Workshop: http://steamcommunity.com/sharedfiles/filedetails/?id=878965937

GitHub: https://github.com/KiameV/rimworld-changedresser

Direct Download: https://github.com/KiameV/rimworld-changedresser/releases/download/20170809/ChangeDresser.zip


Like my mods? Consider supporting me!



Translators
Feel free to use either github or contact me directly (either here by friending me or Ludeon Studios forums) to discuss or give me the translation file. I will add your name/username and a thanks in the mod's description for your assistance.

Thank you translators!
Vaniat for adding Chinese Simplified and Traditional
Proxyer for adding Japanese
Ɲơɴɑɱɛ for adding German
Gidreess for adding Russian
Boundir for adding French


Most recent updates:
Aug 9, 2017
-Hats are now hidden while a pawn is using the Change Dresser or Change Mirror and in the Change Hair screen.
-Added new color picker sliders for RGB+HSL. Since this is not as user friendly it's disabled by default. To turn it on go to Mod Settings->Change Dresser and check "Use RGB + HSL Sliders".

Aug 8, 2017
-Male hair that is shared between both genders should now be listed.
-Added a new way to select hair using a list of hairs. Mouse over to see the preview. Click to select.
To revert back to the old way with the <- [Selection] -> there's a Mod Setting to change back.






[attachment deleted by admin due to age]

Trigon

Woah. This is impressive. I'll have to check it out when I get the chance to play again.

AngleWyrm

#2
Nice! The clothing recolor tool I had been using didn't have a scroll bar, so it wasn't possible to do everything they were wearing.
Works as advertised, thanks for a great mod

*applause*

My 5-point rating system: Yay, Kay, Meh, Erm, Bleh

Kiame

#3
Update:

  • Fixed an issue with the apparel scroll bar. I had originally hard coded the max height... It is now dynamically calculated based on how many apparel items the pawn has.
  • Removed the color preview box over the color picker as it was just taking up space since the results are shown on the pawn's portrait in real time - the preview box was originally for debugging.
  • Changed the dresser's in-game texture. The previous texture was not isometric, the new one is and will look correct next to the other furniture.

katherineironfist

I like this a lot better than Dye Vat mod, with all those unecessary fabrics it clutters the game.

Kiame

Many updates since the last time i responded.

Many pages have been condensed. Can no longer change gender.

Added a Change Mirror. Planning to slowly migrate most 'changing' things to that.

Dresser can now store items. Can also create Apparel Groups which pawns can quickly switch back and forth from (see first post for more details)

AngleWyrm

The gender change feature seems more like a medical procedure anyway.

I've been using the More Furniture mod for a while, and I usually disable the storage of weapons and clothing in the dressers and nightstands. This is because the items don't show up in the game for me see and get a pawn to to force-wear or arm up a new addition. They just disappear into the background somewhere, and I'd much rather see them on screen.

Looking forward to checking out the outfit swap feature.
My 5-point rating system: Yay, Kay, Meh, Erm, Bleh

Ruisuki

Any chance of a later release focused more on realism? I love that you managed to get out a mod like this, but I find the change gender and skin color to be a bit much for me. I know I can just ignore but just wondering if thats in the cards? I'm in it solely for storing my uniforms. Surprised there arent more mods like that

AngleWyrm

#8
Gender change has already been moved out of the mod, probably to be addressed by a medical mod. Changing skin color and body type are a pleasant way to eliminate some of the randomness and get my characters looking the way I like them. Maybe if someone else creates a medical mod that addresses all three of these parameters, but for now I'm enjoying the ability for artistic expression.

Feedback on the dresser
  • The outfit groups are separate from the pre-existing outfit management in Rimworld. I usually create a Summer Wear outfit of pants, button-down shirt and jacket, and a Winter Wear outfit of pants, button-down shirt and parka. It would be great if these dressers were a place where haulers would store the clothing necessary to fulfill such uniforms, and colonists could come and get a full set without wandering about.
  • When I went to assemble a group of clothing into an outfit group, my guy was wearing an infused shirt, and I wondered if only that shirt would qualify for the group, or if any button-down shirt would do.
  • I also wanted to specify outfits without wearing them first.


Also, there seems to be an issue with clothes showing up. I got a visitor to join my colony, and sent her to the mirror for a makeover. The 'fat' body type was missing below the head in the preview, and when I changed her from 'thin' to 'female' her clothing didn't show up. When I changed her back to thin, the duster she was wearing re-appeared. So I took it off, changed body type to 'female,' and put it back on: Again naked on-screen but the game reports she's wearing the duster.

(click to enlarge)


Like the direction you're taking this mod, good stuff man.
My 5-point rating system: Yay, Kay, Meh, Erm, Bleh

Kiame

#9
Hmm I'll have to take a look at what's going on there with the clothing disappearing.

Quote from: AngleWyrm on March 12, 2017, 10:21:24 PM
Feedback on the dresser
  • The outfit groups are separate from the pre-existing outfit management in Rimworld. I usually create a Summer Wear outfit of pants, button-down shirt and jacket, and a Winter Wear outfit of pants, button-down shirt and parka. It would be great if these dressers were a place where haulers would store the clothing necessary to fulfill such uniforms, and colonists could come and get a full set without wandering about.
  • When I went to assemble a group of clothing into an outfit group, my guy was wearing an infused shirt, and I wondered if only that shirt would qualify for the group, or if any button-down shirt would do.
  • I also wanted to specify outfits without wearing them first.

Currently the apparel groups go off a very dumb switch. When a pawn performs a "Wear <group>" action, everything they're wearing gets stored and everything in the apparel group gets put on the pawn. The same happens when the pawn performs the "Unwear" action - everything they were wearing gets put in (assuming) it's the same stuff. This has the benefit effect of easier use because a pawn may change an underlying shirt to something else in the mean time.

To your points... I think it would require a different approach. Maybe the Dresser can have a toggle - Storage Zone [ ]
If it's not checked it behaves like it currently does. If checked it will behave as another storage zone where haulers can put clothing. When a pawn creates a new Apparel Group, instead of the current editor window, they get a list of all possible apparel and the user selects which to include in the set. OR maybe shows the pre-defined roles, user selects a role, is shown the apparel and asked to narrow down until a pawn would be able to wear all the pieces. I'll brainstorm this some more... (and input is welcome ;D)

Thank you for the feedback!

As for gender, I got some feedback on the steam page and people wanted it back. For the time being I've added gender swapping back in. I am considering making a medical change object (still open to suggestions!) but in the meantime I'll leave it in. (for any programmers that will get this analogy) I've come the conclusion mods are like REST services. Once a version is specified, you cannot remove attributes.

Kiame

Quote from: Ruisuki on March 12, 2017, 09:54:27 PM
Any chance of a later release focused more on realism? I love that you managed to get out a mod like this, but I find the change gender and skin color to be a bit much for me. I know I can just ignore but just wondering if thats in the cards? I'm in it solely for storing my uniforms. Surprised there arent more mods like that

I've create a "Changing Mirror" (in Furniture) which covers Apparel Colors, Hair changes, and Body changes. Eventually I plan to take everything except apparel color changing out of the dresser. So that would cover your concerns I think. As for a medical object for covering the gender and skin color, that's probably somewhere down the road  :)

Kiame

Quote from: AngleWyrm on March 12, 2017, 10:21:24 PM
Also, there seems to be an issue with clothes showing up. I got a visitor to join my colony, and sent her to the mirror for a makeover. The 'fat' body type was missing below the head in the preview, and when I changed her from 'thin' to 'female' her clothing didn't show up. When I changed her back to thin, the duster she was wearing re-appeared. So I took it off, changed body type to 'female,' and put it back on: Again naked on-screen but the game reports she's wearing the duster.

I'll keep trying to reproduce this issue but as of yet have not been able to. I do vaguely remember earlier in this mod's development I saw something similar to this so there is probably some screwy course through the code that gets to this point. Let me know if this happens again.

BTW thanks for including the steps that you had done leading up to it as well as possible solutions you tried. Just curious, if you had the modified pawn put on another item did that work/show up?

AngleWyrm

#12
Quote from: Kiame on March 13, 2017, 04:13:32 PM
BTW thanks for including the steps that you had done leading up to it as well as possible solutions you tried. Just curious, if you had the modified pawn put on another item did that work/show up?
I haven't seen it again, and wonder if it had anything to do with the way I got there, through the right/left arrows in the interface to choose a different option. But it's pretty vague memory at this point.

I tend to restart rather a lot; most of my games don't last a year. The one I'm currently on is doing quite well though, eleven peeps and herds of wild boar and chickens. I've had to dis-allow the fishing pier because my Galactic Chef was pumping out more food than I can store. Soon as I get to deep-core mining steel, I'll be sending it all off to that orbital trade freighter, so he can supply some other colony.

Yep I'm liking this one so much that I've save/restored after a tragic incident with a poison ship.
My 5-point rating system: Yay, Kay, Meh, Erm, Bleh

BlueWinds

Quote from: Kiame on March 13, 2017, 05:08:09 AM
As for gender, I got some feedback on the steam page and people wanted it back. For the time being I've added gender swapping back in. I am considering making a medical change object (still open to suggestions!) but in the meantime I'll leave it in. (for any programmers that will get this analogy) I've come the conclusion mods are like REST services. Once a version is specified, you cannot remove attributes.

Also like APIs, once defined, mods only grow, never shrink. Which is why I'm a fan on minimalist mods. ;) Thanks for adding back gender change though, I was just about to ask for that. This is way more convenient than manual save-editing, which is what I've been using until now to tweak appearance.

Kiame

Quote from: BlueWinds on March 14, 2017, 11:09:28 AMAlso like APIs, once defined, mods only grow, never shrink. Which is why I'm a fan on minimalist mods. ;)

This is my first mod and at this point i'm of the same mindset. I've kind of hit a wall where I have ideas - like automatically have pawns switch out gear from the dresser when they're toggled for battle - but I don't want to start injecting code left and right causing this mod to clash with other mods and such.

I'm considering maybe at most make a medical object for body/gender modifications then call this mod done. For additional stuff release another mod which requires this mod and just builds off it.