Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Topics - Kiame

#21
Unfinished / [B18] (WIP) ModSync
May 29, 2018, 12:14:32 AM
The mod is now posted in releases: https://ludeon.com/forums/index.php?topic=41634.msg410175#msg410175


It's time to make a decentralized mod synchronization tool

That's the goal of ModSyncRW. It's the spiritual successor of ModSync.ninja

Goal:

  • Create a decentralized way to manage mods
  • Support multiple different repositories / download sites
  • Open Source - this will be hosted on Github for people to add support to other repo/file hosts... Repo: https://github.com/KiameV/rimworld-modsync-rw

My first goal is to have support for Github for hosted mods.

In game a mod author will, from their mod's page where they'd upload the mod to steam, have a button (just like modsync.ninja) Create ModSyncRW file (only shown if one has not already been created.

The window would then have:

  • Where the mod is hosted (initially just Github)
  • The owner's name
  • The project's name
  • Where to download new updates from (Clone or Releases)
  • Branch (initially filled in as master)

Note: Everything under host selection would be dynamic for the host selected

A file would then be created in the mod's About folder:
ModSyncRW.xml

<?xml version="1.0" encoding="utf-8"?>
<ModSyncRW>
<host name="github">
<owner>KiameV</owner>
<project>rimworld-changedresser</project>'
<last-update></last-update>
<download-from>Releases</download-from>
<branch>master</branch>
</host>
</ModSyncRW>

(i wish this game used json, XML is sooo 90's ;D )

The only thing remaining is figuring out how to keep track of the last time the end user has updated the mod. I don't think the local file system is the best route. My current thought is it would be the end-users job to select the mod/s they've update and select [Is Up To Date] at which point their version of ModSyncRW.xml would get a new field entered last update time. That can then be used to compare to the host's last update time.

The end-user would have a screen very similar to ModSync.ninja's where they can see all their non-steam mods and which ones possibly need to be updated.


As for adding support for new hosts, my hope is to have a simple Interface with just a few methods to implement with hopes that as other devs want to host their stuff elsewhere it can be supported.


Please feel free to comment on this idea and share any ideas you may have.

Thanks!
#22
Releases / [1.3] [KV] Change Mirror [ModSync RW]
May 19, 2018, 10:00:27 PM
This is a stand alone version of Change Mirror from the Change Dresser mod.

To Build a Change Mirror:
-20 steel
-20 wood/stone/metal

Allows a pawn to change:

  • Hair Style
  • Hair Color
  • Body Type
  • Body Color
  • Head Type
  • Gender
  • Biological & Chronological Age
  • Apparel Color

Note: Unlike in Change Dresser, apparel color will not persist as pawns change apparel.
As in the apparel itself will stay the color but the new piece of apparel a pawn replaced it with will not change color automatically.

Steam

Direct Download:
1.3

B18
B19
1.0
1.2

Github: https://github.com/KiameV/rimworld-changemirror


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


Like my mods? Consider supporting me!













#23
Releases / [1.3] [KV] Change Dresser [ModSync RW]
May 14, 2018, 01:52:16 AM
Large re-writing of the code behind the original Change Dresser - https://ludeon.com/forums/index.php?topic=35632.msg365747#msg365747
Please consult the original forum thread for more details on Change Dresser.

Important
For anyone using the patch "Change Dresser Mending Patch" you can remove that mod. Change Dresser now includes it by default and will enable it only when Mending is in the mod list.

This is a new thread because it is NOT save game compatible with the previous version (also to not get confused while I support the older version).

I am planning for this version to be the version going into RW's release.

This mod can be added to new games or currently running games that do not use the previous version of Change Dresser.


Major Changes:
1. Added the ability to create Custom Outfits which can be assigned to a specific pawn (see screen shots)
Example:
Pawn 'Yuuka' has an awesome cowboy hat that she wants to wear with power armor. She doesn't care about which power armor, just that she wants to wear the cowboy hat in battle.

Yuuka can create a Custom Outfit with the legendary cowboy hat included and the 'Solder' outfit as the base. When she is drafted she will put on the cowboy hat first then all other apparel like normally (from the previous Change Dresser)
-Note: It is not required to have a base outfit selected. Leaving it as (None) will make it so only the selected apparel will be used.

2. Assigned Outfits will work the same way as they did previously (the underlying logic has been re-written)

3. The Mending Attachements will now first repair apparel that is used for Custom Outfits before moving onto other apparel. I've also decided it was much cleaner if the attachments no longer 'removed' apparel and hogged them while repairing, instead they are mended even if they get worn.

Important
The mod uses the 'force wear' mechanic to manage Custom Outfit apparel. If using Custom Outfits never Clear Forced for those pawns.

I have done testing on my side but with so many avenues in the code I very well might have missed something. Please understand that if you use this mod you may lose apparel. If you do please do your best to explain what happened when you lost the apparel so I can figure out what happened.

Beyond that please submit any and all feedback about these changes.

Thank you!

Steam

Direct Download:
1.3

B18
B19
1.0
1.2

Use ModSync RW to know if/when there's an update

GitHub (do not download from this link for use in game)

Mending Mod: https://ludeon.com/forums/index.php?topic=22894.0

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

Like my mods? Consider supporting me!









#24
This mod allows you to adjust the frequency of trade ships on the fly! Safe for game already in progress.

The 'ships per day' setting is currently not working quite right. Set this value higher than 1 for better chances of seeing more trade ships.

For Randy, he's purely random and the value is the chance something will happen over other things. Default is 1. Setting it to 1000 will cause it to happen a lot more when there is an event.

Thanks to More Trade Ships for the inspiration!

Steam

Direct Download:
1.3

B18
B19
1.0
1.2

Use ModSync RW to know if/when there's an update

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

Translators:
XNoNameX - German






Like my mods? Consider supporting me!
#25
A patch for Mending which allows pawns to remove weapons from Weapon Storage.


Mod load order:
Mending must be before this patch-mod


Steam: B18

Direct Download:
B18


Github


Like my mods? Consider supporting me!






#26
Releases / [1.3] [KV] Infinite Storage [ModSync RW]
December 16, 2017, 07:45:52 PM
Got energy?
Need storage space?
Infinite Storage is right for you!

Infinite Storage
-Build Menu: Misc
-Size: 1x1
-Cost: 100 Metallic + 4 components
-Research: Multi Analyzer & Infinite Storage
-Stores: Everything except food
-Power: 1 W per stored kg  -  this can be adjusted in Options->Mod Settings->Infinite Storage

Textile Storage
-Build Menu: Misc
-Size: 1x1
-Cost: 50 wood/stone/steel
-Stores: Textiles

Body Part Storage
-Build Menu: Misc
-Size: 1x1
-Cost: 50 wood/stone/steel
-Stores: Body Parts & Medicines

Silver Storage
-Build Menu: Misc
-Size: 1x1
-Cost: 50 wood/stone/steel
-Stores: Silver

Infinite Storage requires energy to compress and make available the stored items. The amount of energy required increases linearly as the weight stored increases. If Infinite Storage is not powered, nothing can be added or removed from it. For that reason it may not be a bad idea to keep some extra components, steel, and wood in an out-of-the-way stockpile.

I have decided that Infinite Storage will not break down - in case all components are stored within as that would suck.

There are two 'specialty' storage units: Body Parts and Textiles. These units are capable of storing Body Parts & Medicine and Leather/Wool without energy.

Supports:
This mod should support/hold all items added by other mods.

Unsupported:

  • Architect Sense - When trying to build with stored stuff it'll say no materials were found
  • Smart Medicine - Prevents doctors from getting medicine out of storage before tending to wounds. Operations will work correctly

Known Interesting Behaviors
-Pawns will continue to try to deliver things to Infinite Storage even when it's out of power. I am looking into this.
-At times these storage containers may place items on the ground for no reason. I have hopefully addressed most cases where this happens. Be aware if a pawn tries to start crafting and is interrupted, materials will still pop out of the storage units.


For those coming from Body Part Storage or Textile Storage follow these instructions before enabling this mod.
-Select each Body Part/Textile storage and 'deconstruct' each of them. You'll now have piles of body parts/textiles.
-Save
-Disable/Unsub from Body Part Storage and Textile Storage.
-Enable Infinite Storage
-Restart
-Reload the saved game. There will be some errors given at the beginning which can be ignored as they will not show up again.

Direct Download
1.3

B18
B19
1.0
1.2

Use ModSync RW to know if/when there's an update


Steam

Github (code only)
https://github.com/KiameV/rimworld-infinitestorage/

Translators:
Vaniat - Chinese
Чей-то друг - Russian

(More screenshots on the Steam page)



Like my mods? Consider supporting me!


[attachment deleted by admin: too old]
#27
Ideas / In-Game Mod Tracker
November 30, 2017, 12:02:34 PM
I would like to formally request a Ludeon lead mod tracker.

There have been efforts made in this direction - ModSync - but put against Steam's service it will be very hard for a single person to create a platform which can compete.

Speaking as a modder there are three areas where modding for RimWorld is tedious and cumbersome.

  • Multiple places to upload mods to. Steam is, i believe, where most people get their mods but to make a mod available to everyone a second service is required such as dropbox or github.
  • No mechanism to control releases. Steam forces everyone to get the most recent release and with direct download it's up to the individual to keep checking each of their mod's forum post for the latest update
  • Not all modders have the steam version so cannot post their mods on steam

What RimWorld really needs is a unified approach.

ModSync is a good starting place for the in-game interface. On the Ludeon side I'd like to see a server/db stood up which modders can log into with their forum credentials. The db would have a few fields like:

  • mod_id - unique for each mod, maybe using the steam id for steam mods and a function to create an id for non-steam users
  • mod_name - the name of the mod
  • desc - description of the mod
  • version - version or the game this supports
  • updates - either a text field or ref to multiple time-stamped text fields with updates
  • url - where the mod can be downloaded from.
  • last_updated - date last updated
  • user_id - author id but preferably a reference to a list of authors who can update the mod

When a modder updates their mod they can log into the server/db and hopefully just hit a button saying update last-updated. For beta releases they could update the description saying it's a beta release.

Users would be able to go to the in-game menu and view each mod that's been updated. The user would then have the choice of what mods they want to update.
#28
Help / Mac and certain Ubuntu Crashing with my mods
November 29, 2017, 03:04:03 AM
Wanted to know if anyone might have some insight into what could be cause at least two of my mods causing Macs and certain Ubuntu installs to crash when the game is loading.

The two mods are Change Dresser and Textile Storage

I've tried to reproduce the issue on an old laptop where i installed Ubuntu and was able to load the mods without an issue; i do not have a mac. Users have said on macs they just had Change Dresser enabled and it caused the crash. Change Dresser was working for them in A17.

My first thought was windows new lines in the xml files so i went through and made sure they were using only linux line endings \n but that did not fix it.

Thanks!
#29
Outdated / [B18] [KV] Textile Storage
November 27, 2017, 12:26:28 AM
Please consider Infinite Storage instead of this mod
https://ludeon.com/forums/index.php?topic=37698.msg385779#msg385779



Adds a storage container to store all types of fabrics, leathers, and wool.

As textiles are needed, pawns will automatically remove them from storage.

Textile Storage
-Build Menu: Misc
-Size: 1x1
-Cost: 50 wood/stone/steel
-Stores: Textiles

Should support all mods which add textiles. Let me know if you find any that are missing.

Special Note:
When forming a caravan and the desire is for the caravan to carry stored textiles, select the Textile Storage and press the Empty button. Form the caravan. Once the caravan is fully loaded, select the Textile Storage again and press the Collect button.


Supports:
-Save Storage & Outfit Settings


Steam:
B18

Direct Download:
B18


Github


Thank you to the translators:
-Чей-то друг for Russian


Last Update:
Nov 28, 2017
-Furniture which can be built with different textiles will now have all stored textiles listed
-The list of available materials will include stored textiles
Nov 27, 2017
-Fixed an issue where materials would not be automatically removed when making buildings


Like my mods? Consider supporting me!






#30
Outdated / [B18] [KV] Body Part Storage
November 25, 2017, 07:59:15 PM
Please consider Infinite Storage instead of this mod
https://ludeon.com/forums/index.php?topic=37698.msg385779#msg385779



Adds a storage container to store all those cut-off/created body parts.

Body Part Storage
-Build Menu: Misc
-Size: 1x1
-Cost: 50 wood/stone/steel
-Stores: Body Parts

Special Note:
When forming a caravan and the desire is for the caravan to carry stored body parts, select the Body Part Storage and press the Empty button. Form the caravan. Once the caravan is fully loaded, select the Body Part Storage again and press the Collect button.

Supports:
This mod should support/hold all body part types, i'll add to the support list as I verify/people ask about different mods

Direct Download:
B18

Steam:
B18


Github


Last Update:
Nov 27, 2017
-Fixed an issue where materials would not be automatically removed when making buildings


Like my mods? Consider supporting me!








#31
Releases / [1.3] [KV] Don't Stop the Music [ModSync RW]
November 24, 2017, 04:09:23 PM
Removes the pause between background songs.

All credit goes to the original author erdelf.
Re-posted with permission. I just updated the target version to B18


Direct Download:
1.3

B18
B19
1.0

Use ModSync RW to know if/when there's an update


Steam



#32
A patch for Mending which allows pawns to remove apparel from ChangeDressers.


Mod load order:
Mending must be before this patch-mod


Steam: B18

Direct Download:
A17
B18


Github


Like my mods? Consider supporting me!





#33
Releases / Kiame's Mods
November 11, 2017, 07:32:21 PM
I will keep all my mods on separate posts, this is mainly a central hub for me to link to :D


























Mod NameLudeonSteamDownload
Change Dresser
Post
A17
B18

A17
B18
Weapon Storage
Post

A17
B18

A17
B18
RimFridge
Post

A17
B18

A17
B18
PathAvoid
Post

A17
B18

A17
B18
Refugee Stats
Post

A17
B18

A17
B18
Impassable Map Maker
Post

A17
B18

A17
B18
Change Research Speed
Post

A17
B18

A17
B18
Force Do Job
Post

A17
B18

A17
B18
Show Hair with Hats
Post

A17
B18

A17
B18
Trading Spot
Post

A17
B18

A17
B18
Save Storage & Outfit Settings
Post

A17
B18

A17
B18
ReColor Stockpile & Growing Zones
Post

A17
B18

A17
B18
Animal Costumes
Post

A17
B18

A17
B18
Adjustable Colored Lights
Post

A17
B18

A17
B18
Mending Change Dresser Patch
Post

B18

A17
B18
Body Part Storage (Use Infinite Storage instead)
Post

B18

B18
Textile Storage (Use Infinite Storage instead)
Post

B18

B18
Infinite Storage
Post

B18

B18
Adjustable Trade Ships
Post

B18

B18
Change Mirror
Post

B18

B18

A link to the GitHub page can be found in either the Steam of Ludeon forum posts.
#34
Outdated / [B18] [KV] Adjustable Colored Lights [ModSync]
November 11, 2017, 02:19:52 AM
Change the color of any light once "Colored Lights" is researched.

Legend:
R - Red
G - Green
B - Blue
H - Hue
S - Saturation
L - Luminosity

For modders:
To have this work with your mod, include "CompProperties_Glower" in <comps> and have the defName contain either "Lamp" or "Light" in the string (case-sensitive)


Steam:
A17
A18

Direct Download:
A17
A18


Github



Like my mods? Consider supporting me!








#35
Bugs / [0.18.1717] Mod xPath Patch broken
November 09, 2017, 05:21:05 PM
A Patch that I had for a mod is now breaking. It's worked in the previous unstable A18 builds and in A17.


<?xml version="1.0" encoding="utf-8"?>
<Patch>
<Operation Class="PatchOperationAdd">
<xpath>*/ThingDef[defName = "Bed"]/comps/li[1]/linkableFacilities</xpath>
<value>
<li>ChangeDresser</li>
<li>ChangeMirror</li>
</value>
</Operation>
<Operation Class="PatchOperationAdd">
<xpath>*/ThingDef[defName = "DoubleBed"]/comps/li[1]/linkableFacilities</xpath>
<value>
<li>ChangeDresser</li>
<li>ChangeMirror</li>
</value>
</Operation>
<Operation Class="PatchOperationAdd">
<xpath>*/ThingDef[defName = "RoyalBed"]/comps/li[1]/linkableFacilities</xpath>
<value>
<li>ChangeDresser</li>
<li>ChangeMirror</li>
</value>
</Operation>
<Operation Class="PatchOperationAdd">
<xpath>*/ThingDef[defName = "HospitalBed"]/comps/li[1]/linkableFacilities</xpath>
<value>
<li>ChangeDresser</li>
<li>ChangeMirror</li>
</value>
</Operation>
</Patch>


I've been trouble shooting and I found if i only have 1 Operation it works. As soon as I added a second it breaks again.

The exception is thrown when the game first loads into the main screen and the selected Mods get reset.

Exception:

Caught exception while loading play data but there are active mods other than Core. Resetting mods config and trying again.
The exception was: System.ArgumentOutOfRangeException: Argument is out of range.
Parameter name: index
  at System.Collections.Generic.List`1[Verse.LoadableXmlAsset].get_Item (Int32 index) [0x00000] in <filename unknown>:0
  at Verse.ModContentPack.LoadPatches () [0x00000] in <filename unknown>:0
  at Verse.ModContentPack.get_Patches () [0x00000] in <filename unknown>:0
  at Verse.LoadedModManager.<LoadAllActiveMods>m__0 (Verse.ModContentPack rm) [0x00000] in <filename unknown>:0
  at System.Linq.Enumerable+<CreateSelectManyIterator>c__Iterator12`2[Verse.ModContentPack,Verse.PatchOperation].MoveNext () [0x00000] in <filename unknown>:0
  at Verse.ModContentPack.LoadDefs (IEnumerable`1 patches) [0x00000] in <filename unknown>:0
  at Verse.LoadedModManager.LoadAllActiveMods () [0x00000] in <filename unknown>:0
  at Verse.PlayDataLoader.DoPlayLoad () [0x00000] in <filename unknown>:0
  at Verse.PlayDataLoader.LoadAllPlayData (Boolean recovering) [0x00000] in <filename unknown>:0
Verse.Log:Warning(String)
Verse.PlayDataLoader:LoadAllPlayData(Boolean)
Verse.Root:<Start>m__1()
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.LongEventHandler:<UpdateCurrentAsynchronousEvent>m__1()
#36
Help / Harmony Transpiler Help (Solved)
October 27, 2017, 12:56:00 AM
Solution in post: https://ludeon.com/forums/index.php?topic=36406.msg374910#msg374910

This is my first time getting into the transpiler side of harmony and I think i'm close, just missing something.

Trying to add an if check around some code in PawnRenderer.RenderPawnInternal (part of the code included next w/ the change i want to add (marked with ->>))


if (!portrait || !Prefs.HatsOnlyOnMap)
{
->> if (Settings.HideAllHats)
{
...


Settings.HideAllHats is a property defined as "bool HideAllHats { get; }" I can convert this into a simple field - "bool HideAllHats" if that's easier. (... i really should refactor the settings file as it's a mess from when i first started out modding  :P)

Looking at the IL code for the same call:


IL_0256: ldarg.s portrait
IL_0258: brfalse IL_0267

IL_025d: call bool Verse.Prefs::get_HatsOnlyOnMap()
IL_0262: brtrue IL_03b7


The brtrue is what i want to duplicate with a call so I wrote the transpiler as follows:


public static IEnumerable<CodeInstruction> Transpiler(IEnumerable<CodeInstruction> instructions)
{
List<CodeInstruction> instructionList = instructions.ToList();
for (int i = 0; i < instructionList.Count; ++i)
{
CodeInstruction instruction = instructionList[i];
if (instruction.opcode == OpCodes.Call &&
instruction.operand.ToString().Equals("Boolean get_HatsOnlyOnMap()"))
{
// call Boolean get_HatsOnlyOnMap
yield return instructionList[i];
++i;
// Copy the brtrue instruction
CodeInstruction gotoEndOfForLoopIfTrueInstruction = new CodeInstruction(instructionList[i]);
// brtrue - jump to the end of for loop
yield return instructionList[i];

// Inject SettingsController.HideAllHats check
yield return new CodeInstruction(OpCodes.Call, AccessTools.Method(typeof(SettingsController), "get_HideAllHats"));
yield return gotoEndOfForLoopIfTrueInstruction;
}
else
{
yield return instruction;
}
}
}


Anything pop out to anyone? I did try AccessTools.Property originally but that threw an Error at startup.

I did try replacing the CodeInstruction for setting get_HideAllHats with OpCodes.Ldc_I4_1 so the injected return true will work but it appears not to. I'm beginning to think I cannot copy the brtrue. I have tried doing it manually but it fails at game launch: new CodeInstrcution(OpCodes.brtrue, 0x03b7)
IL_03b7 is the instruction i want to jump to -- i'm concerned about doing this anyway as the instruction points will be off anyway with my added code correct? or does harmony fix that?

In any case, when I run the game it behaves as if there's nothing different. I do know this is being injected as I can add Log messages in pre or postfix and see them.

Thanks!
#37
Outdated / [B18] [KV] Refugee Stats [ModSync]
October 25, 2017, 07:58:27 PM
Adds a bit more detail to the refugee screen.


Direct Download:
A17
A18

Steam:
A17
A18

GitHub: https://github.com/KiameV/RW_RefugeeStats



Like my mods? Consider supporting me!






Original Author: Shirkie01


#38
Releases / [1.3] [KV] Animal Costumes [ModSync RW]
October 23, 2017, 04:27:49 AM
Just in time for Halloween: Animal Costumes!

Included are Ears, Tails, and Hooded Costumes of Tanooki, Cats, and Dogs.

Consider using Change Dresser - https://ludeon.com/forums/index.php?topic=35632.0 - for custom colorations and quick gear switching!

Each accessory/costume imbues the wearer with aspects of the animal.
The Tanooki is sly and wise - bonuses to work-related tasks like research, growing, crafting and negative combat stats.
The cat is agile a fierce - bonus to melee combat and negative ranged combat.
The dog is loyal and ready to retrieve the kill (still working on this description...) - bonus to ranged combat and negative melee combat.

The tails and ears give small bonuses - 1% in most cases - whereas the costume and hood give larger bonuses - 5% in most cases.

4 new research tasks.
-Animal Tails and Ears: Requires Complex Clothing. Allows crafting of Tanooki Ears and Tails.
-Combat Animal Tails and Ears: Requires Machining and Animal Tails and Ears. Allows crafting of Cat/Dog Ears and Tails - these have roughly the same armor as plate helm and plate armor with the addition of small stat bonuses.
-Animal Costumes: Requires Animal Tails and Ears and Microelectronics. Allows crafting of Tanooki Costume and Hood.
-Combat Animal Costumes: Requires Animal Costumes, Combat Animal Tails and Ears, and Powered Armor. Allows crafting of Cat/Dog Ears and Tails - these have roughly the same armor as power helm and power armor with the addition of stat bonuses.

For Cat/Dog armor, cat armor has equal protection from blunt and sharp whereas dog armor has higher sharp protection and lower blunt. In all cases the sum of the two (sharp+blunt) are the same between cat, dog, and the armor which they are comparable to (armored helm/chest or power helm/armor)

Make sure to farm cotton as these do require large amounts of leather/cotton to make.

Undergarment - unlocked with "Animal Costumes" research - is apparel with the slightly better protection than a t-shirt (it covers both shirt and legs). This was added to get more freedom with color combinations.

AI Raiders from Tribal and Outlander groups will uses these.

Do not use with Animal Ears - https://ludeon.com/forums/index.php?topic=34958.0. Please disable that mod prior to loading this one.

P.S. Yes the actual name of the animal is Tanuki (not Tanooki) which is a Japanese raccoon dog. This is homage to SMB3.


Direct Download:
Required Mod: Hediff Apparel

Animal Costumes Download: 1.3

Steam

Other Versions:
A17
B18
B19
1.0
1.2

Use ModSync RW to know if/when there's an update




Like my mods? Consider supporting me!








Thanks to 斯坦石 for the "My Cute Ear" mod from which the ears came from (with permission) - http://steamcommunity.com/sharedfiles/filedetails/?id=931408176


#39
Update for 1.0: https://github.com/KiameV/rimworld-changedresser/releases/download/1.0/ChangeDresser.zip

Use ModSync RW to know if/when there's an update

Please use the new thread for bug postings and discussion: https://ludeon.com/forums/index.php?topic=41483.msg408919#msg408919



There is a newer version available here: https://ludeon.com/forums/index.php?topic=41483.0

The newer version is not save game compatible so only use it on new saves or saves where you have not already built a Change Dresser. Consider that version as the one going forward to release.


Adds a Dresser, Mirror, and Mending Attachment to the Furniture tab.

Change Dresser
-Build Menu: Furniture
-Size: 1x1
-Cost: 40 steel + 40 wood/stone/steel
-Stores: Apparel

Change Mirror
-Build Menu: Furniture
-Size: 1x1
-Cost: 20 steel + 20 woo/stone/steel
-Wall Mounted

Mending Attachment
-Build Menu: Misc
-Size: 1x1
-Cost 250 steal + 6 components + 20 wood/stone/steel
-Energy: 10 W (not in use) or 1000 W (in use)
-Place within 6 squares of a Change Dresser to have apparel automatically mended/repaired
-Research Required: Mending & Multi-Analyzer
-Mending Mod not required (highly recommended though)

If a pawn is told to interact with these - via right click - the pawn can change their Hair Style, Hair Color, or Body. Additional interactions are available with the Change Dresser: Change Apparel Color and Store Apparel.

Selecting the Change Dresser will give some additional functionality:
-Manage Apparel - View what's stored in the selected dresser and drop selected apparel on the ground.
-Assign Outfits - Assign outfits to pawns for both when they are not drafted and when they are drafted. When a pawn has outfits assigned to them, they will be able to instantly switch between outfits when selected - button will appear at the bottom that can be selected by the user.
-Empty - Place all the stored apparel on the ground around the dresser.
-Include Apparel In Trade - Designates whether to include the apparel stored in the dresser in trade deals.


Example for Assigned Outfits
The pawn Mina has outfits Everything, Worker, Light Armor Range, Heavy Armor Melee.
Everything and Worker are civilian outfits (non-combat)
Light Armor Range and Heavy Armor Melee are combat outfits

When Mina is not drafted, she can change between Everything and Worker.
When Mina is drafted, she will change to the last combat outfit she was wearing - we'll say Light Armor Range in this case. She can then switch to Heavy Armor Melee and back to Light Armor Range as needed.
When Mina is done in combat or is incapacitated/killed she will switch back to the last civilian outfit she was wearing.

Note:
The apparel worn prior to an outfit change will be removed from the pawn prior to the change - this allows apparel that was being worn to be put back on if applicable. There must be a change dresser available for the previously-worn apparel to go to otherwise it will be dropped on the ground around the outfit-changing pawn. Consider having an extra change dresser which allows all apparel with a Low Priority setting if the other Change Dressers have restrictive filters.

Forming Caravans
Stored apparel will be available for caravans. Until the pawns in the caravan either exit the map or are told to cancel the caravan, the apparel will remain scattered around the dresser. If something goes wrong and the items are not collected, let me know and click the "Collect" button on the change dresser.

As of now if the Cancel button is used from the Form Caravan window, the apparel will not be collected. This will likely remain the case for the time being due to limitations in modding tools.

This can be fixed by either using the Collect button or forming another caravan and either allow it to leave the map or cancel the caravan

Mending Attachment
Will detect if apparel within attached Change Dressers need to be mended.
Each Mending Attachment can only mend one apparel at a time.
More than one Mending Attachment can be attached to one or more Change Dressers (many-to-many relationship)


Mending mod Patch (not required)
Patch to allow pawns to remove apparel from a ChangeDresser and mend it:
Mending Patch Download:
A17
B18


AlienRaces:
All Outfit Assignmnet/Apparel actions are available to Alien Races
Body and Hair attributes can be modified depending on the alien race. Not all alien races can have hair, different head types, etc.
Species changing is not available (can't change from a human to an alien) (this is a code limitation and not a design decision on my part)



Direct Download:
A17
B18


Steam:
A17
B18

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


Like my mods? Consider supporting me!









[attachment deleted by admin: too old]
#40
Releases / [1.3] [KV] Weapon Storage [ModSync RW]
September 05, 2017, 05:46:47 PM
Stores weapons and allows weapons to be assigned to pawns for use in the field.

Weapon Storage
-Build Menu: Furniture
-Size: 1x1
-Cost: 40 steel + 40 wood/stone/steel
-Stores: Weapons (ranges and melee)

Repair Attachment
-Build Menu: Misc
-Size: 1x1
-Cost: 250 steel + 6 components + 20 wood/stone/steel
-Energy: 10 W (not in use) or 1000 W (in use)
-Place within 6 squares of a Weapon Storage to have weapons automatically repaired
-Research Required: Mending & Multi-Analyzer
-Mending Mod not required (highly recommended though)]

Using Grenades:
To assign grenades select any Weapon Storage then Manage Shared Weapons
-From the new window create a new filter and call it something like "emp frag"
-In the list select the grenades you want available to colonists, like "frag grenade" and " EMP grenade"
-Close the Filter window
-Assign colonists to the "emp frag" group

Now when you select a colonist that's assigned "emp frag" they can equip either frag or emp grenades (if there are any stored in Weapon Storage)

Load Order
-Combat Extended
-Weapon Storage
-Weapon Storage Combat Extended Patch



Compatible with:
Save Storage & Outfit Settings - https://ludeon.com/forums/index.php?topic=34075.0
Change Dresser - https://ludeon.com/forums/index.php?topic=30973.0


Direct Download:
1.3

A17
B18
B19
1.0
1.2

Use ModSync RW to know if/when there's an update


Steam

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


If the storage crate is destroyed all stored weapons will drop on the floor. Assigned weapons will not drop on the floor though and will still be usable by the pawns the weapons are assigned to. To change or access the assigned weapons, use any other weapon storage crate.

Items stored in a weapon storage will not show up in merchant screens. To make them available for sale use the "Empty" button to cause all the items to fall on the floor.

Instructions for assigning weapons:

  • Load one or many Weapon Storage containers with weapons
  • Select a Weapon Storage
  • Select the Assign Weapons button
  • Select the pawn to assign weapons to
  • Select the weapons to assign to the pawn

When a weapon is assigned to a pawn, that weapon is no longer stored in that container. Instead the weapon will exist in a pocket dimension (think bag of holding  ;) ) that is accessible by any other Weapon Storage and by the assigned pawn

The pawn can, when drafted, switch to any assigned weapon by reaching into their pocket of holding and place whatever weapon they were holding into the other dimension.

Some cases/behaviors to consider - these are not hard coded but just how the mod works. If there's strong feedback regarding any of these I will consider changing them.

  • If a pawn drops a weapon which they are assigned to, they are no long assigned to that weapon.
  • If a pawn picks up a weapon, they are now assigned with that weapon.
  • If a drafted pawn is carrying something in their primary equipment slot that is not a weapon, instead of placing the item in their pocket of holding they will place it on the ground.


Forming Caravans
Stored weapons will be available for caravans. Until the pawns in the caravan either exit the map or are told to cancel the caravan, the weapons will remain scattered around the storages. If something goes wrong and the items are not collected, let me know and click the "Collect" button on the weapon storages.

As of now if the Cancel button is used from the Form Caravan window, the weapons will not be collected. This will likely remain the case for the time being due to limitations in modding tools.

This can be fixed by either using the Collect button or forming another caravan and either allow it to leave the map or cancel the caravan

Repair Attachment
Will detect if weapons within attached Weapon Storages need to be repaired.
Each Repair Attachment can only repair one weapon at a time.
More than one Repair Attachment can be attached to one or more Weapon Storages (many-to-many relationship)




Like my mods? Consider supporting me!