[Mod Request] Slaver mod

Started by Falconer, December 21, 2014, 09:20:01 PM

Previous topic - Next topic

Falconer

I would appreciate a simple mod to remove the unhappiness from selling a prisoner to the slavers.  I think it would be rather fun to make a slaver style society consisting of killing/selling invaders to the ships.  However the unhappiness gain is too great to really enjoy doing so.

FridayBiology

Yes another god damn youtuber.
 https://www.youtube.com/user/FridayBiology

1BadPanda

#2
You could change the value yourself.  Navigate to the file below and search for "KnowPrisonerSold" and change the value to 0.

Mods\Core\Defs\ThoughtDefs\Thoughts_Memories.xml

Edit: I should probably say change the "baseMoodEffect" value.

Igabod

#3
You can easily make a new Slaver trait which removes the penalties for selling slaves and not the rest of the things Psychopath does. All you need to do is create a new xml file and call it SlaveTrait.xml or something. It would contain the following code:


<TraitDefs>

  <TraitDef>
    <defName>Slaver</defName>
    <commonality>0.2</commonality>
    <degreeDatas>
      <li>
        <label>Slaver</label>
        <description>NAME has no moral qualms about slavery. It is a vital part of survival on this harsh world to HIM.</description>
      </li>
    </degreeDatas>
  </TraitDef>

</TraitDefs>


To make the trait appear more often, just change the commonality part from 0.2 to something like 0.5 or somewhere around there. Small increments please while adjusting this number. Greenthumb is the most common trait at 0.7 just to get an idea.

Then copy the Thoughts_Memories.xml file and put it in the correct spot in your mod (assuming you know the basics of modding, if you don't then just ask for more clarification) and in the part for KnowPrisonerSold just add Slaver in under Psychopath in the <nullifyingTraits> portion. It will look like the following bit of code:


  <ThoughtDef>
    <defName>KnowPrisonerSold</defName>
    <duration>100000</duration>
    <stackLimit>5</stackLimit>
    <nullifyingTraits>
      <li>Psychopath</li>
  <li>Slaver</li>
    </nullifyingTraits>
    <stages>
      <li>
        <label>a prisoner was sold</label>
        <description>This colony sold a prisoner into slavery. That's a worrying thought.</description>
        <baseMoodEffect>-8</baseMoodEffect>
      </li>
    </stages>
  </ThoughtDef>


This however means your colonists will need to actually have the Slaver trait for them not to be upset about it. But if you use EdB's Prepare Carefully mod that shouldn't be a problem for your starting colonists. I would recommend you only buy slaves or recruit prisoners who have either Psychopath or Slaver as traits. But this way you have a higher chance of finding someone who won't mind slavery. double the chance actually.

[edit to add] This same principle can be applied for other traits too. I can see an OrganFarmer trait which nullifies the penalty from removing prisoner organs. Or an Executioner trait which nullifies the penalty from executing prisoners. Or an Outdoorsman trait which nullifies the penalty for sleeping outside. and even an Undertaker trait which nullifies the penalty from seeing dead bodies. I'm currently at my limit of modding projects to take on though so I won't be doing a traits mod just yet. But I figured I'd provide my thoughts on it in case someone else wants to take it on. It's really a pretty simple mod to do, so it doesn't require anybody with a ton of skill to do. This would be the perfect project for a beginner at modding to try.