This commit is contained in:
moreoreganostodump 2021-08-22 01:29:59 +09:00
parent b709cab584
commit 33d8d9b855
69 changed files with 859 additions and 452 deletions

View file

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Manifest>
<identifier>RJW Sexperience</identifier>
<version>1.0.1.8</version>
<version>1.0.1.9</version>
<dependencies>
</dependencies>
<incompatibleWith />

Binary file not shown.

View file

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<LanguageData>
<Cum.label>정액</Cum.label>
</LanguageData>

View file

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<LanguageData>
<CumTolerance.label>정액 중독성</CumTolerance.label>
<CumTolerance.description>정액 중독성.</CumTolerance.description>
<CumAddiction.label>정액 중독</CumAddiction.label>
<CumAddiction.description>정액 중독.</CumAddiction.description>
<CumAddiction.stages.1.label>금단증상</CumAddiction.stages.1.label>
</LanguageData>

View file

@ -11,4 +11,5 @@
<MiscSex.label>섹스</MiscSex.label>
<PromiscuousSex.label>문란한 섹스</PromiscuousSex.label>
<Incestuos_Marriage.label>근친혼</Incestuos_Marriage.label>
<SexWithCorpse.label>시체에 박음</SexWithCorpse.label>
</LanguageData>

View file

@ -5,4 +5,7 @@
<Bestiality.label>수간</Bestiality.label>
<Incestuos.label>근친상간</Incestuos.label>
<Submissive.label>순종적인 성별</Submissive.label>
<Necrophilia.label>시간</Necrophilia.label>
<SocialAffection.label>사회적 관심</SocialAffection.label>
<BabyFaction.label>아기 소속</BabyFaction.label>
</LanguageData>

View file

@ -51,7 +51,7 @@
<Rapist.generalRules.rulesStrings.4>memeHyphenPrefix->변태</Rapist.generalRules.rulesStrings.4>
<Rapist.generalRules.rulesStrings.5>memeConcept->강간</Rapist.generalRules.rulesStrings.5>
<Rapist.generalRules.rulesStrings.6>memeConcept->겁탈</Rapist.generalRules.rulesStrings.6>
<Rapist.generalRules.rulesStrings.7>memeGod->슬라네쉬</Rapist.generalRules.rulesStrings.7>
<Rapist.generalRules.rulesStrings.7>r_deityName->슬라네쉬</Rapist.generalRules.rulesStrings.7>
<Rapist.generalRules.rulesStrings.8>memeLeaderNoun->종마</Rapist.generalRules.rulesStrings.8>
<Rapist.generalRules.rulesStrings.9>memeLeaderNoun->위대한 강간범</Rapist.generalRules.rulesStrings.9>
<Rapist.symbolPacks.0.ideoName>강간범들</Rapist.symbolPacks.0.ideoName>
@ -62,4 +62,35 @@
<Rapist.symbolPacks.1.theme>쾌락</Rapist.symbolPacks.1.theme>
<Rapist.symbolPacks.1.adjective>타락한</Rapist.symbolPacks.1.adjective>
<Rapist.symbolPacks.1.member>이교도</Rapist.symbolPacks.1.member>
<Lewd.label>음탕함</Lewd.label>
<Lewd.description>변태들.</Lewd.description>
<Lewd.generalRules.rulesStrings.0>memeAdjective->발정난</Lewd.generalRules.rulesStrings.0>
<Lewd.generalRules.rulesStrings.1>memeAdjective->음탕한</Lewd.generalRules.rulesStrings.1>
<Lewd.generalRules.rulesStrings.2>memeAdjective->야한</Lewd.generalRules.rulesStrings.2>
<Lewd.generalRules.rulesStrings.3>memeAdjective->섹시한</Lewd.generalRules.rulesStrings.3>
<Lewd.generalRules.rulesStrings.4>memeAdjective->발정기의</Lewd.generalRules.rulesStrings.4>
<Lewd.generalRules.rulesStrings.5>memeAdjective->타락한</Lewd.generalRules.rulesStrings.5>
<Lewd.generalRules.rulesStrings.6>memeConcept->겁</Lewd.generalRules.rulesStrings.6>
<Lewd.generalRules.rulesStrings.7>memeHyphenPrefix->발정</Lewd.generalRules.rulesStrings.7>
<Lewd.generalRules.rulesStrings.8>memeHyphenPrefix->성욕</Lewd.generalRules.rulesStrings.8>
<Lewd.generalRules.rulesStrings.9>memeConcept->음란함</Lewd.generalRules.rulesStrings.9>
<Lewd.generalRules.rulesStrings.10>memeConcept->성욕</Lewd.generalRules.rulesStrings.10>
<Lewd.generalRules.rulesStrings.11>memeConcept->발정기</Lewd.generalRules.rulesStrings.11>
<Lewd.generalRules.rulesStrings.12>memeConcept->흥분</Lewd.generalRules.rulesStrings.12>
<Lewd.generalRules.rulesStrings.13>memeConcept->욕망</Lewd.generalRules.rulesStrings.13>
<Lewd.generalRules.rulesStrings.14>memeConcept->섹스</Lewd.generalRules.rulesStrings.14>
<Lewd.generalRules.rulesStrings.15>memeConcept->음탕함</Lewd.generalRules.rulesStrings.15>
<Lewd.generalRules.rulesStrings.16>r_deityName->슬라네쉬</Lewd.generalRules.rulesStrings.16>
<Rapist.symbolPacks.0.ideoName>슬라네쉬 교단</Rapist.symbolPacks.0.ideoName>
<Rapist.symbolPacks.0.theme>쾌락</Rapist.symbolPacks.0.theme>
<Rapist.symbolPacks.0.adjective>타락한</Rapist.symbolPacks.0.adjective>
<Rapist.symbolPacks.0.member>이교도</Rapist.symbolPacks.0.member>
<Necrophile.label>시간</Necrophile.label>
<Necrophile.description>시체박이들.</Necrophile.description>
<Necrophile.generalRules.rulesStrings.0>r_deityName->소닉</Necrophile.generalRules.rulesStrings.0>
<Necrophile.generalRules.rulesStrings.1>r_deityName->록맨</Necrophile.generalRules.rulesStrings.1>
<Necrophile.generalRules.rulesStrings.2>memeConcept->시체</Necrophile.generalRules.rulesStrings.2>
<Necrophile.generalRules.rulesStrings.3>memeConcept->죽음</Necrophile.generalRules.rulesStrings.3>
</LanguageData>

View file

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<LanguageData>
<Cum.label>정액</Cum.label>
<Cum.description>정액에 중독됐습니다.</Cum.description>
</LanguageData>

View file

@ -66,5 +66,40 @@
<Submissive_Male.description>남성들은 순종적입니다. 심지어 강간당하더라도 받아들일 것입니다.</Submissive_Male.description>
<Submissive_Female.label>순종적인 여성</Submissive_Female.label>
<Submissive_Female.description>여성들은 순종적입니다. 심지어 강간당하더라도 받아들일 것입니다.</Submissive_Female.description>
<Necrophilia_Abhorrent.label>혐오스러움</Necrophilia_Abhorrent.label>
<Necrophilia_Abhorrent.description>시체를 범하는것은 절대 용납될수 없는 행위입니다.</Necrophilia_Abhorrent.description>
<Necrophilia_Horrible.label>끔찍함</Necrophilia_Horrible.label>
<Necrophilia_Horrible.description>시체를 범하는것은 끔찍한 짓입니다.</Necrophilia_Horrible.description>
<Necrophilia_Disapproved.label>싫어함</Necrophilia_Disapproved.label>
<Necrophilia_Disapproved.description>시체를 범하는것을 싫어합니다.</Necrophilia_Disapproved.description>
<Necrophilia_Acceptable.label>수용가능</Necrophilia_Acceptable.label>
<Necrophilia_Acceptable.description>시간은 일상적입니다.</Necrophilia_Acceptable.description>
<Necrophilia_Approved.label>좋아함</Necrophilia_Approved.label>
<Necrophilia_Approved.description>시체에 박는것을 좋아합니다.</Necrophilia_Approved.description>
<SocialAffection_Normal.label>평범함(바닐라)</SocialAffection_Normal.label>
<SocialAffection_Normal.description>평범합니다.</SocialAffection_Normal.description>
<SocialAffection_Small.label>직계가족만</SocialAffection_Small.label>
<SocialAffection_Small.description>오직 직계가족만 상관합니다.</SocialAffection_Small.description>
<SocialAffection_OnlyFamily.label>친족만</SocialAffection_OnlyFamily.label>
<SocialAffection_OnlyFamily.description>친족이 아닌 남의 비극에 신경쓰지 않습니다.</SocialAffection_OnlyFamily.description>
<SocialAffection_Dry.label>친족 제외</SocialAffection_Dry.label>
<SocialAffection_Dry.description>친족의 비극에 신경쓰지 않습니다.</SocialAffection_Dry.description>
<SocialAffection_Psychopath.label>사이코패스</SocialAffection_Psychopath.label>
<SocialAffection_Psychopath.description>남을 신경쓰지 않습니다.</SocialAffection_Psychopath.description>
<BabyFaction_AlwaysMother.label>항상 엄마를 따름(기본)</BabyFaction_AlwaysMother.label>
<BabyFaction_AlwaysMother.description>새로 태어난 아기는 엄마의 소속과 이념을 따릅니다.</BabyFaction_AlwaysMother.description>
<BabyFaction_AlwaysFather.label>항상 아빠를 따름</BabyFaction_AlwaysFather.label>
<BabyFaction_AlwaysFather.description>새로 태어난 아기는 아빠의 소속과 이념을 따릅니다.</BabyFaction_AlwaysFather.description>
<BabyFaction_AlwaysColony.label>항상 정착지를 따름</BabyFaction_AlwaysColony.label>
<BabyFaction_AlwaysColony.description>새로 태어난 아기는 정착지의 소속과 이념을 따릅니다.</BabyFaction_AlwaysColony.description>
<GangbangCeremony.label>윤간</GangbangCeremony.label>
<GangbangCeremony.description>개시자가 참여자들과 함께 희생자를 강간하는 의례적 윤간입니다.</GangbangCeremony.description>
<AnimalGangbangCeremony.label>동물에의한 윤간</AnimalGangbangCeremony.label>
<AnimalGangbangCeremony.description>동물이 희생자를 윤간하는 의례적 윤간입니다.</AnimalGangbangCeremony.description>
<DrugOrgyCeremony.label>마약난교</DrugOrgyCeremony.label>
<DrugOrgyCeremony.description>엄청난 양의 최음제를 사용하는 난교입니다.</DrugOrgyCeremony.description>
</LanguageData>

View file

@ -2,17 +2,20 @@
<LanguageData>
<Gangbang.description>의식의 품질에 따라, 참여자들은 {MINMOOD} ~ {MAXMOOD} 기분을 {MOODDAYS}일동안 얻게 됩니다.</Gangbang.description>
<Gangbang.extraPredictedOutcomeDescriptions.0>만약 {0}이 훌륭히 진행된다면 참여자중 한명이 영감을 얻을 수 있습니다.</Gangbang.extraPredictedOutcomeDescriptions.0>
<Gangbang.comps.0.label>종교 지도자 참여</Gangbang.comps.0.label>
<Gangbang.comps.2.label>제단에서 시작</Gangbang.comps.2.label>
<Gangbang.comps.3.label>희생양 무너짐</Gangbang.comps.3.label>
<Gangbang.comps.4.label>희생양 극도로 무너짐</Gangbang.comps.4.label>
<Gangbang.comps.5.label>희생양 완전히 무너짐</Gangbang.comps.5.label>
<Gangbang.comps.6.label>만족한 참</Gangbang.comps.6.label>
<Gangbang.comps.6.label>만족한 참</Gangbang.comps.6.label>
<Gangbang.outcomeChances.0.label>끔찍한</Gangbang.outcomeChances.0.label>
<Gangbang.outcomeChances.1.label>지루한</Gangbang.outcomeChances.1.label>
<Gangbang.outcomeChances.2.label>즐거운</Gangbang.outcomeChances.2.label>
<Gangbang.outcomeChances.3.label>인상적인</Gangbang.outcomeChances.3.label>
<BestialGangbang.description>의식의 품질에 따라, 참여자들은 {MINMOOD} ~ {MAXMOOD} 기분을 {MOODDAYS}일동안 얻게 됩니다.</BestialGangbang.description>
<BestialGangbang.extraPredictedOutcomeDescriptions.0>만약 {0}이 훌륭히 진행된다면 참여자중 한명이 영감을 얻을 수 있습니다.</BestialGangbang.extraPredictedOutcomeDescriptions.0>
<BestialGangbang.comps.0.label>종교 지도자 참여</BestialGangbang.comps.0.label>
<BestialGangbang.comps.2.label>제단에서 시작</BestialGangbang.comps.2.label>
<BestialGangbang.comps.3.label>교배대상 무너짐</BestialGangbang.comps.3.label>
<BestialGangbang.comps.4.label>교배대상 극도로 무너짐</BestialGangbang.comps.4.label>
@ -21,5 +24,14 @@
<BestialGangbang.outcomeChances.1.label>지루한</BestialGangbang.outcomeChances.1.label>
<BestialGangbang.outcomeChances.2.label>즐거운</BestialGangbang.outcomeChances.2.label>
<BestialGangbang.outcomeChances.3.label>인상적인</BestialGangbang.outcomeChances.3.label>
<DrugOrgy.description>의식의 품질에 따라, 참여자들은 {MINMOOD} ~ {MAXMOOD} 기분을 {MOODDAYS}일동안 얻게 됩니다.</DrugOrgy.description>
<DrugOrgy.extraPredictedOutcomeDescriptions.0>만약 {0}이 훌륭히 진행된다면 참여자중 한명이 영감을 얻을 수 있습니다.</DrugOrgy.extraPredictedOutcomeDescriptions.0>
<DrugOrgy.comps.2.label>방 인상</DrugOrgy.comps.2.label>
<DrugOrgy.comps.3.label>만족한 참여자</DrugOrgy.comps.3.label>
<DrugOrgy.outcomeChances.0.label>끔찍한</DrugOrgy.outcomeChances.0.label>
<DrugOrgy.outcomeChances.1.label>지루한</DrugOrgy.outcomeChances.1.label>
<DrugOrgy.outcomeChances.2.label>즐거운</DrugOrgy.outcomeChances.2.label>
<DrugOrgy.outcomeChances.3.label>인상적인</DrugOrgy.outcomeChances.3.label>
</LanguageData>

View file

@ -4,5 +4,7 @@
<Gangbang.descOverride>의례적 윤간입니다. 지도자가 연설을 한 후, 희생양을 강간합니다. 지도자가 희생양을 강간하지 못하면 취소됩니다.</Gangbang.descOverride>
<GangbangByAnimal.shortDescOverride>동물에 의한 윤간</GangbangByAnimal.shortDescOverride>
<GangbangByAnimal.descOverride>동물들을 이용한 의례적 윤간입니다. 지도자가 연설을 마치면, 동물들이 교배대상을 윤간합니다.</GangbangByAnimal.descOverride>
<DrugOrgy.shortDescOverride>마약난교</DrugOrgy.shortDescOverride>
<DrugOrgy.descOverride>최음제를 다량으로 사용하는 난교입니다. 참여자들이 연통 주위에 모인 뒤, 불을 붙이고 난교를 시작합니다.</DrugOrgy.descOverride>
</LanguageData>

View file

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="utf-8"?>
<LanguageData>
<GatheredCum.label>정액</GatheredCum.label>
<GatheredCum.description>정액입니다.</GatheredCum.description>
<UsedCondom.label>사용한 콘돔</UsedCondom.label>
<UsedCondom.description>콘돔이 정액으로 가득합니다.</UsedCondom.description>
<CumBucket.label>정액통</CumBucket.label>
<CumBucket.description>정액을 모으기위한 통입니다.</CumBucket.description>
<Burnbong_Aphrodisiac.label>러스트봉</Burnbong_Aphrodisiac.label>
<Burnbong_Aphrodisiac.description>최음버섯이 들어있는 목재 구조물입니다. 불을 붙이면 완전히 불타 없어질 때 까지 엄청난 양의 최음향을 내뿜습니다.</Burnbong_Aphrodisiac.description>
<Autobong_Aphrodisiac.label>발정기계</Autobong_Aphrodisiac.label>
<Autobong_Aphrodisiac.description>주위에 최음 구름을 형성하는 자동 최음버섯 연소 기계입니다. 최음 구름 속에서 사람들은 서서히 발정날 것입니다.</Autobong_Aphrodisiac.description>
</LanguageData>

View file

@ -10,6 +10,7 @@
<Rape_Disapproved.stages.0.description>그랬으면 안됐는데.</Rape_Disapproved.stages.0.description>
<Rape_Know_Disapproved.stages.0.label>누군가를 강간함</Rape_Know_Disapproved.stages.0.label>
<Rape_Know_Honorable.stages.0.label>누군가를 강간함</Rape_Know_Honorable.stages.0.label>
<Sex_Promiscuous.stages.0.label>문란한 섹스</Sex_Promiscuous.stages.0.label>
<Sex_Promiscuous.stages.0.description>배덕감에 흥분돼...</Sex_Promiscuous.stages.0.description>
<Sex_NonPromiscuous.stages.0.label>평범한 섹스</Sex_NonPromiscuous.stages.0.label>
@ -17,6 +18,7 @@
<Sex_Know_Promiscuous.stages.0.label>문란함</Sex_Know_Promiscuous.stages.0.label>
<Sex_Know_Promiscuous_Approval.stages.0.label>문란함</Sex_Know_Promiscuous_Approval.stages.0.label>
<Sex_Know_NonPromiscuous.stages.0.label>시시함</Sex_Know_NonPromiscuous.stages.0.label>
<Bestiality_Abhorrent.stages.0.label>수간</Bestiality_Abhorrent.stages.0.label>
<Bestiality_Abhorrent.stages.0.description>수간을 하다니... 죽고싶다...</Bestiality_Abhorrent.stages.0.description>
<Bestiality_Know_Abhorrent.stages.0.label>수간</Bestiality_Know_Abhorrent.stages.0.label>
@ -32,19 +34,38 @@
<Bestiality_Honorable.stages.0.label>수간</Bestiality_Honorable.stages.0.label>
<Bestiality_Honorable.stages.0.description>동물과 교미했어.</Bestiality_Honorable.stages.0.description>
<Bestiality_Know_Honorable.stages.0.label>수간</Bestiality_Know_Honorable.stages.0.label>
<IncestuosMarriage_Forbidden.stages.0.label>사회적 규탄</IncestuosMarriage_Forbidden.stages.0.label>
<IncestuosMarriage_Forbidden.stages.0.description>아무도 우리를 축복해주지 않아.</IncestuosMarriage_Forbidden.stages.0.description>
<IncestuosMarriage_Disapproved.stages.0.label>가십거리가 됨</IncestuosMarriage_Disapproved.stages.0.label>
<IncestuosMarriage_Disapproved.stages.0.description>남들이 우리의 뒷담을 하고있어.</IncestuosMarriage_Disapproved.stages.0.description>
<Sex_Know_Incest_Disapproved.stages.0.label>근친</Sex_Know_Incest_Disapproved.stages.0.label>
<Sex_Know_Incest_Forbidden.stages.0.label>근친</Sex_Know_Incest_Forbidden.stages.0.label>
<Sex_Know_IncestMarriage_Disapproved.stages.0.label>근친</Sex_Know_IncestMarriage_Disapproved.stages.0.label>
<Sex_Know_IncestMarriage_Forbidden.stages.0.label>근친</Sex_Know_IncestMarriage_Forbidden.stages.0.label>
<Sex_Know_Incest_Violated.stages.0.label>혈족이 아닌사람과 성관계</Sex_Know_Incest_Violated.stages.0.label>
<BeenRaped_Submissive.stages.0.label>강간당함</BeenRaped_Submissive.stages.0.label>
<BeenRaped_Submissive.stages.0.description>받아들여야해. 하지만 기분이 안좋아.</BeenRaped_Submissive.stages.0.description>
<BeenRaped_NotSubmissive.stages.0.label>{0}에게 강간당함</BeenRaped_NotSubmissive.stages.0.label>
<BeenRaped_NotSubmissive.stages.0.description>어떻게 감히...</BeenRaped_NotSubmissive.stages.0.description>
<Raped_Know_NotBeingSubmissive.stages.0.label>순종적이지 않음</Raped_Know_NotBeingSubmissive.stages.0.label>
<Necrophilia_Abhorrent.stages.0.label>시체를 따먹음</Necrophilia_Abhorrent.stages.0.label>
<Necrophilia_Abhorrent.stages.0.description>시체를 따먹었어</Necrophilia_Abhorrent.stages.0.description>
<Necrophilia_Know_Abhorrent.stages.0.label>시체박이</Necrophilia_Know_Abhorrent.stages.0.label>
<Necrophilia_Horrible.stages.0.label>시체를 따먹음</Necrophilia_Horrible.stages.0.label>
<Necrophilia_Horrible.stages.0.description>시체를 따먹었어</Necrophilia_Horrible.stages.0.description>
<Necrophilia_Know_Horrible.stages.0.label>시체박이</Necrophilia_Know_Horrible.stages.0.label>
<Necrophilia_Disapproved.stages.0.label>시체를 따먹음</Necrophilia_Disapproved.stages.0.label>
<Necrophilia_Disapproved.stages.0.description>시체를 따먹었어</Necrophilia_Disapproved.stages.0.description>
<Necrophilia_Know_Disapproved.stages.0.label>시체박이</Necrophilia_Know_Disapproved.stages.0.label>
<Necrophilia_Approved.stages.0.label>시체를 따먹음</Necrophilia_Approved.stages.0.label>
<Necrophilia_Approved.stages.0.description>시체를 따먹었어</Necrophilia_Approved.stages.0.description>
<Necrophilia_Know_Approved.stages.0.label>시체박이</Necrophilia_Know_Approved.stages.0.label>
<CumWithdrawal.stages.1.label>정액 금단증상</CumWithdrawal.stages.1.label>
<CumWithdrawal.stages.1.description>정액이 필요해.</CumWithdrawal.stages.1.description>
</LanguageData>

View file

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<loadFolders>
<v1.3>
<li>\</li>
<li>/</li>
<li IfModActive="Ludeon.RimWorld.Ideology">RJWSexperience_Ideology</li>
</v1.3>
</loadFolders>

View file

@ -1,6 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<Patch>
<Operation Class="PatchOperationReplace">
<xpath>Defs/StatDef[defName="SexAbility"]/capacityFactors</xpath>
<value>
<capacityFactors>
</capacityFactors>
</value>
</Operation>
<Operation Class="PatchOperationAdd">
<xpath>Defs/StatDef[defName="SexAbility"]</xpath>
<value>

View file

@ -0,0 +1,23 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Reflection;
using HarmonyLib;
using Verse;
namespace RJWSexperience.Ideology
{
[StaticConstructorOnStartup]
internal static class First
{
static First()
{
var har = new Harmony("RJW_Sexperience.Ideology");
har.PatchAll(Assembly.GetExecutingAssembly());
}
}
}

View file

@ -7,7 +7,7 @@ using RimWorld;
using Verse;
namespace RJWSexperience
namespace RJWSexperience.Ideology
{
public class GoodwillSituationWorker_OneWayReceive : GoodwillSituationWorker_MemeCompatibility
{

View file

@ -6,7 +6,7 @@ using System.Threading.Tasks;
using RimWorld;
using Verse;
namespace RJWSexperience
namespace RJWSexperience.Ideology
{
public static class HistoryEventArgsNamesCustom
{

View file

@ -8,10 +8,46 @@ using rjw;
using RimWorld;
using Verse;
using UnityEngine;
using SexperienceDefOf = RJWSexperience.VariousDefOf;
namespace RJWSexperience.Ideology
{
public static class RJWUtility_Ideo
{
public static HistoryEvent TaggedEvent(this HistoryEventDef def, Pawn pawn, string tag, Pawn partner)
{
return new HistoryEvent(def, pawn.Named(HistoryEventArgsNames.Doer), tag.Named(HistoryEventArgsNamesCustom.Tag), partner.Named(HistoryEventArgsNamesCustom.Partner));
}
public static Faction GetFactionUsingPrecept(this Pawn baby, out Ideo ideo)
{
Faction playerfaction = Find.FactionManager.OfPlayer;
Ideo mainideo = playerfaction.ideos.PrimaryIdeo;
if (mainideo != null)
{
if (mainideo.HasPrecept(VariousDefOf.BabyFaction_AlwaysFather))
{
Pawn parent = baby.GetFather();
if (parent == null) baby.GetMother();
ideo = parent.Ideo;
return parent.Faction;
}
else if (mainideo.HasPrecept(VariousDefOf.BabyFaction_AlwaysColony))
{
ideo = mainideo;
return playerfaction;
}
}
Pawn mother = baby.GetMother();
ideo = mother?.Ideo;
return mother?.Faction ?? baby.Faction;
}
}
[HarmonyPatch(typeof(ThinkNode_ChancePerHour_Bestiality), "MtbHours")]
public static class RJW_Patch_ChancePerHour_Bestiality
{
@ -162,11 +198,11 @@ namespace RJWSexperience.Ideology
{
Find.HistoryEventsManager.RecordEvent(sexevent.TaggedEvent(human, tag + HETag.Gender(human), partner));
Find.HistoryEventsManager.RecordEvent(sexevent.TaggedEvent(partner, tag + HETag.Gender(partner), human));
if (sexevent == VariousDefOf.PromiscuousSex)
{
human.records.AddTo(VariousDefOf.Lust, 1.0f);
partner.records.AddTo(VariousDefOf.Lust, 1.0f);
}
//if (sexevent == VariousDefOf.PromiscuousSex)
//{
// human.records.AddTo(SexperienceDefOf.Lust, 1.0f* RJWUtility.LustIncrementFactor(human.records.GetValue(SexperienceDefOf.Lust)));
// partner.records.AddTo(SexperienceDefOf.Lust, 1.0f * RJWUtility.LustIncrementFactor(partner.records.GetValue(SexperienceDefOf.Lust)));
//}
}
}
@ -334,8 +370,8 @@ namespace RJWSexperience.Ideology
{
//baby.SetFactionDirect(baby.GetFactionUsingPrecept());
baby.SetFaction(baby.GetFactionUsingPrecept(out Ideo ideo));
baby.ideo.SetIdeo(ideo);
if (baby.Faction == Find.FactionManager.OfPlayer && !baby.IsSlave) baby.guest.SetGuestStatus(null, GuestStatus.Guest);
baby.ideo?.SetIdeo(ideo);
if (baby.Faction == Find.FactionManager.OfPlayer && !baby.IsSlave) baby.guest?.SetGuestStatus(null, GuestStatus.Guest);
}
}
}

View file

@ -0,0 +1,59 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using HarmonyLib;
using RimWorld;
using Verse;
using rjw;
namespace RJWSexperience.Ideology
{
[HarmonyPatch(typeof(MarriageCeremonyUtility), "Married")]
public static class Rimworld_Patch_Marriage
{
public static void Postfix(Pawn firstPawn, Pawn secondPawn)
{
if (firstPawn.IsIncest(secondPawn))
{
Find.HistoryEventsManager.RecordEvent(new HistoryEvent(VariousDefOf.Incestuos_Marriage, firstPawn.Named(HistoryEventArgsNames.Doer)));
Find.HistoryEventsManager.RecordEvent(new HistoryEvent(VariousDefOf.Incestuos_Marriage, secondPawn.Named(HistoryEventArgsNames.Doer)));
}
}
}
[HarmonyPatch(typeof(Pawn_RelationsTracker), "SecondaryRomanceChanceFactor")]
public static class Rimworld_Patch_SecondaryRomanceChanceFactor
{
public static void Postfix(Pawn otherPawn, Pawn ___pawn, ref float __result)
{
Ideo ideo = ___pawn.Ideo;
if (ideo != null)
{
if (ideo.HasPrecept(VariousDefOf.Incestuos_IncestOnly) && ___pawn.IsIncest(otherPawn))
{
__result *= 8f;
}
}
}
}
[HarmonyPatch(typeof(RitualOutcomeEffectWorker_FromQuality), "GiveMemoryToPawn")]
public static class Rimworld_Patch_GiveMemoryToPawn
{
public static bool Prefix(Pawn pawn, ThoughtDef memory, LordJob_Ritual jobRitual)
{
if (pawn.IsAnimal()) return false;
return true;
}
}
}

View file

@ -9,7 +9,7 @@ using Verse.AI;
using RimWorld;
namespace RJWSexperience
namespace RJWSexperience.Ideology
{
public class JobGiver_DrugOrgy : ThinkNode_JobGiver
{

View file

@ -10,7 +10,7 @@ using RimWorld;
using rjw;
namespace RJWSexperience
namespace RJWSexperience.Ideology
{
public class JobGiver_GangbangVictim : ThinkNode_JobGiver
{

View file

@ -0,0 +1,30 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Verse;
using Verse.AI;
using RimWorld;
namespace RJWSexperience.Ideology
{
public class LordJob_Ritual_Gangbang : LordJob_Ritual
{
public LordJob_Ritual_Gangbang() { }
public LordJob_Ritual_Gangbang(TargetInfo selectedTarget, Precept_Ritual ritual, RitualObligation obligation, List<RitualStage> allStages, RitualRoleAssignments assignments, Pawn organizer = null) : base(selectedTarget, ritual, obligation, allStages, assignments, organizer)
{
foreach (RitualRole ritualRole in assignments.AllRolesForReading)
{
if (ritualRole != null && ritualRole.id.Contains("victim"))
{
Pawn item = assignments.FirstAssignedPawn(ritualRole);
pawnsDeathIgnored.Add(item);
}
}
}
}
}

View file

@ -5,10 +5,9 @@ using System.Text;
using System.Threading.Tasks;
using RimWorld;
using Verse;
using Verse.AI.Group;
namespace RJWSexperience
namespace RJWSexperience.Ideology
{
public class RitualBehaviorWorker_Gangbang : RitualBehaviorWorker
{
@ -27,7 +26,13 @@ namespace RJWSexperience
}
}
}
protected override LordJob CreateLordJob(TargetInfo target, Pawn organizer, Precept_Ritual ritual, RitualObligation obligation, RitualRoleAssignments assignments)
{
return new LordJob_Ritual_Gangbang(target, ritual, obligation, def.stages, assignments, organizer);
}
}
public class RitualStage_InteractWithVictim : RitualStage
{
@ -44,4 +49,5 @@ namespace RJWSexperience
return ritual.assignments.AssignedPawns("victim").FirstOrDefault();
}
}
}

View file

@ -8,7 +8,7 @@ using Verse;
using rjw;
namespace RJWSexperience
namespace RJWSexperience.Ideology
{
public class RitualOutcomeComp_HediffBased : RitualOutcomeComp_QualitySingleOffset
{

View file

@ -7,7 +7,7 @@ using RimWorld;
using Verse;
using rjw;
namespace RJWSexperience
namespace RJWSexperience.Ideology
{
public class RitualRole_RapeVictim : RitualRole
{
@ -16,7 +16,7 @@ namespace RJWSexperience
reason = null;
return false;
}
public override bool AppliesToPawn(Pawn p, out string reason, LordJob_Ritual ritual = null, RitualRoleAssignments assignments = null, Precept_Ritual precept = null, bool skipReason = false)
{
reason = null;
@ -31,8 +31,9 @@ namespace RJWSexperience
public static bool CanBeVictim(Pawn pawn)
{
if (pawn.IsPrisonerOfColony || pawn.IsSlaveOfColony) return true;
if (pawn.Ideo?.HasMeme(MemeDefOf.FemaleSupremacy) ?? false && pawn.gender != Gender.Female) return true;
else if (pawn.Ideo?.HasMeme(MemeDefOf.MaleSupremacy) ?? false && pawn.gender != Gender.Male) return true;
if (pawn.IsSubmissive()) return true;
//if ((pawn.Ideo?.HasMeme(MemeDefOf.FemaleSupremacy) ?? false) && pawn.gender != Gender.Female) return true;
//else if ((pawn.Ideo?.HasMeme(MemeDefOf.MaleSupremacy) ?? false) && pawn.gender != Gender.Male) return true;
if (pawn.IsDesignatedComfort() || (pawn.guilt != null && pawn.guilt.IsGuilty) || (pawn.apparel != null && pawn.apparel.PsychologicallyNude)) return true;
return false;
}
@ -48,6 +49,7 @@ namespace RJWSexperience
public override bool AppliesToPawn(Pawn p, out string reason, LordJob_Ritual ritual = null, RitualRoleAssignments assignments = null, Precept_Ritual precept = null, bool skipReason = false)
{
reason = null;
if (!xxx.is_human(p))
{

View file

@ -0,0 +1,66 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using rjw;
using RimWorld;
using Verse;
namespace RJWSexperience.Ideology
{
public class StatPart_GenderPrimacy : StatPart
{
public float modifier;
public override string ExplanationPart(StatRequest req)
{
Pawn pawn = req.Thing as Pawn;
Ideo ideo = null;
if (pawn != null) ideo = pawn.Ideo;
float fact = 1f;
if (ideo != null && !ideo.memes.NullOrEmpty()) for (int i = 0; i < ideo.memes.Count; i++)
{
if (ideo.memes[i] == MemeDefOf.MaleSupremacy)
{
if (pawn.gender == Gender.Male) fact = modifier;
else if (pawn.gender == Gender.Female) fact = 1/modifier;
break;
}
else if (ideo.memes[i] == MemeDefOf.FemaleSupremacy)
{
if (pawn.gender == Gender.Male) fact = 1/modifier;
else if (pawn.gender == Gender.Female) fact = modifier;
break;
}
}
return Keyed.MemeStatFactor(String.Format("{0:0.##}", fact * 100));
}
public override void TransformValue(StatRequest req, ref float val)
{
Pawn pawn = req.Thing as Pawn;
Ideo ideo = null;
if (pawn != null) ideo = pawn.Ideo;
if (ideo != null && !ideo.memes.NullOrEmpty()) for(int i=0; i< ideo.memes.Count; i++)
{
if (ideo.memes[i] == MemeDefOf.MaleSupremacy)
{
if (pawn.gender == Gender.Male) val *= modifier;
else if (pawn.gender == Gender.Female) val /= modifier;
break;
}
else if(ideo.memes[i] == MemeDefOf.FemaleSupremacy)
{
if (pawn.gender == Gender.Male) val /= modifier;
else if (pawn.gender == Gender.Female) val *= modifier;
break;
}
}
}
}
}

View file

@ -0,0 +1,46 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using RimWorld;
using Verse;
using rjw;
using UnityEngine;
namespace RJWSexperience.Ideology
{
public static class Utility
{
public static bool IsIncest(this Pawn pawn, Pawn partner)
{
IEnumerable<PawnRelationDef> relations = pawn.GetRelations(partner);
Ideo ideo = pawn.Ideo;
bool wide = false;
if (ideo != null) wide = ideo.HasPrecept(VariousDefOf.Incestuos_Disapproved_CloseOnly);
if (!relations.EnumerableNullOrEmpty()) foreach (PawnRelationDef relation in relations)
{
if (wide)
{
if (relation.incestOpinionOffset < 0) return true;
}
else if (relation.familyByBloodRelation) return true;
}
return false;
}
public static bool IsSubmissive(this Pawn pawn)
{
Ideo ideo = pawn.Ideo;
if (ideo != null)
{
if (ideo.HasPrecept(VariousDefOf.Submissive_Female) && pawn.gender == Gender.Female) return true;
else if (ideo.HasPrecept(VariousDefOf.Submissive_Male) && pawn.gender == Gender.Male) return true;
}
return false;
}
}
}

View file

@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{B4481C38-31B1-422D-B5AA-0059FE7CCA1C}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>RJWSexperience.Ideology</RootNamespace>
<AssemblyName>RJWSexperience.Ideology</AssemblyName>
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<Deterministic>true</Deterministic>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>..\..\RJWSexperience_Ideology\Assemblies\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>..\..\RJWSexperience_Ideology\Assemblies\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="0Harmony">
<HintPath>D:\잉어\Lib\Harmony.2.0.4.0\net472\0Harmony.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="Assembly-CSharp">
<HintPath>..\..\..\..\RimWorldWin64_Data\Managed\Assembly-CSharp.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="RJW">
<HintPath>..\..\..\RJW\1.3\Assemblies\RJW.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Xml" />
<Reference Include="UnityEngine">
<HintPath>..\..\..\..\RimWorldWin64_Data\Managed\UnityEngine.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="UnityEngine.CoreModule">
<HintPath>..\..\..\..\RimWorldWin64_Data\Managed\UnityEngine.CoreModule.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="UnityEngine.IMGUIModule">
<HintPath>..\..\..\..\RimWorldWin64_Data\Managed\UnityEngine.IMGUIModule.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="UnityEngine.InputLegacyModule">
<HintPath>..\..\..\..\RimWorldWin64_Data\Managed\UnityEngine.InputLegacyModule.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="UnityEngine.InputModule">
<HintPath>..\..\..\..\RimWorldWin64_Data\Managed\UnityEngine.InputModule.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="UnityEngine.TextCoreModule">
<HintPath>..\..\..\..\RimWorldWin64_Data\Managed\UnityEngine.TextCoreModule.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="UnityEngine.TextRenderingModule">
<HintPath>..\..\..\..\RimWorldWin64_Data\Managed\UnityEngine.TextRenderingModule.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="UnityEngine.UI">
<HintPath>..\..\..\..\RimWorldWin64_Data\Managed\UnityEngine.UI.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="UnityEngine.UIElementsModule">
<HintPath>..\..\..\..\RimWorldWin64_Data\Managed\UnityEngine.UIElementsModule.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="UnityEngine.UIModule">
<HintPath>..\..\..\..\RimWorldWin64_Data\Managed\UnityEngine.UIModule.dll</HintPath>
<Private>False</Private>
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="Ideology\GoodwillSituationWorker_MemeCompatibility.cs" />
<Compile Include="Harmony.cs" />
<Compile Include="Ideology\Rituals\LordJob_Rituals.cs" />
<Compile Include="Ideology\RJW_Patch_Ideo.cs" />
<Compile Include="Ideology\PreceptComp_SelftTookThoughtExtended.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Ideology\Rimworld_Patch.cs" />
<Compile Include="Ideology\Rituals\JobGiver_DrugOrgy.cs" />
<Compile Include="Ideology\Rituals\JobGiver_GangbangVictim.cs" />
<Compile Include="Ideology\Rituals\RitualBehaviorWorkers.cs" />
<Compile Include="Ideology\Rituals\RitualOutcomeComps.cs" />
<Compile Include="Ideology\Rituals\RitualRoles.cs" />
<Compile Include="Ideology\StatParts.cs" />
<Compile Include="Ideology\Utility.cs" />
<Compile Include="VariousDefOf.cs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\RJWSexperience\RJWSexperience.csproj">
<Project>{9c728e06-573b-4b04-a07f-acbf60cb424d}</Project>
<Name>RJWSexperience</Name>
<Private>False</Private>
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

View file

@ -0,0 +1,36 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// 어셈블리에 대한 일반 정보는 다음 특성 집합을 통해
// 제어됩니다. 어셈블리와 관련된 정보를 수정하려면
// 이러한 특성 값을 변경하세요.
[assembly: AssemblyTitle("IdeologyAddon")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("IdeologyAddon")]
[assembly: AssemblyCopyright("Copyright © 2021")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// ComVisible을 false로 설정하면 이 어셈블리의 형식이 COM 구성 요소에
// 표시되지 않습니다. COM에서 이 어셈블리의 형식에 액세스하려면
// 해당 형식에 대해 ComVisible 특성을 true로 설정하세요.
[assembly: ComVisible(false)]
// 이 프로젝트가 COM에 노출되는 경우 다음 GUID는 typelib의 ID를 나타냅니다.
[assembly: Guid("b4481c38-31b1-422d-b5aa-0059fe7cca1c")]
// 어셈블리의 버전 정보는 다음 네 가지 값으로 구성됩니다.
//
// 주 버전
// 부 버전
// 빌드 번호
// 수정 버전
//
// 모든 값을 지정하거나 아래와 같이 '*'를 사용하여 빌드 번호 및 수정 번호를
// 기본값으로 할 수 있습니다.
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View file

@ -0,0 +1,70 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Verse;
using RimWorld;
namespace RJWSexperience.Ideology
{
public static class VariousDefOf
{
public static readonly JobDef RapeVictim = DefDatabase<JobDef>.GetNamed("RapeVictim");
public static readonly JobDef DrugSex = DefDatabase<JobDef>.GetNamed("DrugSex");
public static readonly JobDef GettinDrugSex = DefDatabase<JobDef>.GetNamed("GettinDrugSex");
public static readonly JobDef DrugMasturbate = DefDatabase<JobDef>.GetNamed("DrugMasturbate");
[MayRequireIdeology] public static readonly MemeDef Zoophile = DefDatabase<MemeDef>.GetNamed("Zoophile");
[MayRequireIdeology] public static readonly MemeDef Rapist = DefDatabase<MemeDef>.GetNamed("Rapist");
[MayRequireIdeology] public static readonly MemeDef Lewd = DefDatabase<MemeDef>.GetNamed("Lewd");
[MayRequireIdeology] public static readonly MemeDef Necrophile = DefDatabase<MemeDef>.GetNamed("Necrophile");
[MayRequireIdeology] public static readonly HistoryEventDef SexWithAnimal = DefDatabase<HistoryEventDef>.GetNamed("SexWithAnimal");
[MayRequireIdeology] public static readonly HistoryEventDef SexWithVeneratedAnimal = DefDatabase<HistoryEventDef>.GetNamed("SexWithVeneratedAnimal");
[MayRequireIdeology] public static readonly HistoryEventDef Raped = DefDatabase<HistoryEventDef>.GetNamed("Raped");
[MayRequireIdeology] public static readonly HistoryEventDef RapedSlave = DefDatabase<HistoryEventDef>.GetNamed("RapedSlave");
[MayRequireIdeology] public static readonly HistoryEventDef RapedPrisoner = DefDatabase<HistoryEventDef>.GetNamed("RapedPrisoner");
[MayRequireIdeology] public static readonly HistoryEventDef WasRaped = DefDatabase<HistoryEventDef>.GetNamed("WasRaped");
[MayRequireIdeology] public static readonly HistoryEventDef WasRapedSlave = DefDatabase<HistoryEventDef>.GetNamed("WasRapedSlave");
[MayRequireIdeology] public static readonly HistoryEventDef WasRapedPrisoner = DefDatabase<HistoryEventDef>.GetNamed("WasRapedPrisoner");
[MayRequireIdeology] public static readonly HistoryEventDef VaginalSex = DefDatabase<HistoryEventDef>.GetNamed("VaginalSex");
[MayRequireIdeology] public static readonly HistoryEventDef AnalSex = DefDatabase<HistoryEventDef>.GetNamed("AnalSex");
[MayRequireIdeology] public static readonly HistoryEventDef OralSex = DefDatabase<HistoryEventDef>.GetNamed("OralSex");
[MayRequireIdeology] public static readonly HistoryEventDef MiscSex = DefDatabase<HistoryEventDef>.GetNamed("MiscSex");
[MayRequireIdeology] public static readonly HistoryEventDef PromiscuousSex = DefDatabase<HistoryEventDef>.GetNamed("PromiscuousSex");
[MayRequireIdeology] public static readonly HistoryEventDef Incestuos_Marriage = DefDatabase<HistoryEventDef>.GetNamed("Incestuos_Marriage");
[MayRequireIdeology] public static readonly HistoryEventDef SexWithCorpse = DefDatabase<HistoryEventDef>.GetNamed("SexWithCorpse");
[MayRequireIdeology] public static readonly PreceptDef Bestiality_Abhorrent = DefDatabase<PreceptDef>.GetNamed("Bestiality_Abhorrent");
[MayRequireIdeology] public static readonly PreceptDef Bestiality_Horrible = DefDatabase<PreceptDef>.GetNamed("Bestiality_Horrible");
[MayRequireIdeology] public static readonly PreceptDef Bestiality_Disapproved = DefDatabase<PreceptDef>.GetNamed("Bestiality_Disapproved");
[MayRequireIdeology] public static readonly PreceptDef Bestiality_Acceptable = DefDatabase<PreceptDef>.GetNamed("Bestiality_Acceptable");
[MayRequireIdeology] public static readonly PreceptDef Bestiality_OnlyVenerated = DefDatabase<PreceptDef>.GetNamed("Bestiality_OnlyVenerated");
[MayRequireIdeology] public static readonly PreceptDef Bestiality_Honorable = DefDatabase<PreceptDef>.GetNamed("Bestiality_Honorable");
[MayRequireIdeology] public static readonly PreceptDef Rape_Abhorrent = DefDatabase<PreceptDef>.GetNamed("Rape_Abhorrent");
[MayRequireIdeology] public static readonly PreceptDef Rape_Horrible = DefDatabase<PreceptDef>.GetNamed("Rape_Horrible");
[MayRequireIdeology] public static readonly PreceptDef Rape_Disapproved = DefDatabase<PreceptDef>.GetNamed("Rape_Disapproved");
[MayRequireIdeology] public static readonly PreceptDef Rape_Acceptable = DefDatabase<PreceptDef>.GetNamed("Rape_Acceptable");
[MayRequireIdeology] public static readonly PreceptDef Rape_Honorable = DefDatabase<PreceptDef>.GetNamed("Rape_Honorable");
[MayRequireIdeology] public static readonly PreceptDef Sex_Free = DefDatabase<PreceptDef>.GetNamed("Sex_Free");
[MayRequireIdeology] public static readonly PreceptDef Sex_VaginalOnly = DefDatabase<PreceptDef>.GetNamed("Sex_VaginalOnly");
[MayRequireIdeology] public static readonly PreceptDef Sex_AnalOnly = DefDatabase<PreceptDef>.GetNamed("Sex_AnalOnly");
[MayRequireIdeology] public static readonly PreceptDef Sex_OralOnly = DefDatabase<PreceptDef>.GetNamed("Sex_OralOnly");
[MayRequireIdeology] public static readonly PreceptDef Sex_Promiscuous = DefDatabase<PreceptDef>.GetNamed("Sex_Promiscuous");
[MayRequireIdeology] public static readonly PreceptDef Incestuos_Free = DefDatabase<PreceptDef>.GetNamed("Incestuos_Free");
[MayRequireIdeology] public static readonly PreceptDef Incestuos_Disapproved = DefDatabase<PreceptDef>.GetNamed("Incestuos_Disapproved");
[MayRequireIdeology] public static readonly PreceptDef Incestuos_Forbidden = DefDatabase<PreceptDef>.GetNamed("Incestuos_Forbidden");
[MayRequireIdeology] public static readonly PreceptDef Incestuos_IncestOnly = DefDatabase<PreceptDef>.GetNamed("Incestuos_IncestOnly");
[MayRequireIdeology] public static readonly PreceptDef Incestuos_Disapproved_CloseOnly = DefDatabase<PreceptDef>.GetNamed("Incestuos_Disapproved_CloseOnly");
[MayRequireIdeology] public static readonly PreceptDef BabyFaction_AlwaysMother = DefDatabase<PreceptDef>.GetNamed("BabyFaction_AlwaysMother");
[MayRequireIdeology] public static readonly PreceptDef BabyFaction_AlwaysFather = DefDatabase<PreceptDef>.GetNamed("BabyFaction_AlwaysFather");
[MayRequireIdeology] public static readonly PreceptDef BabyFaction_AlwaysColony = DefDatabase<PreceptDef>.GetNamed("BabyFaction_AlwaysColony");
[MayRequireIdeology] public static readonly PreceptDef Submissive_None = DefDatabase<PreceptDef>.GetNamed("Submissive_None");
[MayRequireIdeology] public static readonly PreceptDef Submissive_Male = DefDatabase<PreceptDef>.GetNamed("Submissive_Male");
[MayRequireIdeology] public static readonly PreceptDef Submissive_Female = DefDatabase<PreceptDef>.GetNamed("Submissive_Female");
[MayRequireIdeology] public static readonly PreceptDef Necrophilia_Abhorrent = DefDatabase<PreceptDef>.GetNamed("Necrophilia_Abhorrent");
[MayRequireIdeology] public static readonly PreceptDef Necrophilia_Horrible = DefDatabase<PreceptDef>.GetNamed("Necrophilia_Horrible");
[MayRequireIdeology] public static readonly PreceptDef Necrophilia_Disapproved = DefDatabase<PreceptDef>.GetNamed("Necrophilia_Disapproved");
[MayRequireIdeology] public static readonly PreceptDef Necrophilia_Acceptable = DefDatabase<PreceptDef>.GetNamed("Necrophilia_Acceptable");
[MayRequireIdeology] public static readonly PreceptDef Necrophilia_Approved = DefDatabase<PreceptDef>.GetNamed("Necrophilia_Approved");
}
}

View file

@ -5,6 +5,8 @@ VisualStudioVersion = 16.0.31424.327
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RJWSexperience", "RJWSexperience\RJWSexperience.csproj", "{9C728E06-573B-4B04-A07F-ACBF60CB424D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IdeologyAddon", "IdeologyAddon\IdeologyAddon.csproj", "{B4481C38-31B1-422D-B5AA-0059FE7CCA1C}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@ -15,6 +17,10 @@ Global
{9C728E06-573B-4B04-A07F-ACBF60CB424D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{9C728E06-573B-4B04-A07F-ACBF60CB424D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{9C728E06-573B-4B04-A07F-ACBF60CB424D}.Release|Any CPU.Build.0 = Release|Any CPU
{B4481C38-31B1-422D-B5AA-0059FE7CCA1C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{B4481C38-31B1-422D-B5AA-0059FE7CCA1C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{B4481C38-31B1-422D-B5AA-0059FE7CCA1C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{B4481C38-31B1-422D-B5AA-0059FE7CCA1C}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

View file

@ -80,18 +80,10 @@
<Compile Include="Buildings.cs" />
<Compile Include="Configurations.cs" />
<Compile Include="DebugAction.cs" />
<Compile Include="GoodwillSituationWorker_MemeCompatibility.cs" />
<Compile Include="Harmony.cs" />
<Compile Include="Ideology\RJW_Patch_Ideo.cs" />
<Compile Include="PawnRelationWorkers.cs" />
<Compile Include="Rituals\JobGiver_DrugOrgy.cs" />
<Compile Include="Rituals\JobGiver_GangbangVictim.cs" />
<Compile Include="Keyed.cs" />
<Compile Include="PreceptComp_SelftTookThoughtExtended.cs" />
<Compile Include="Rimworld_Patch.cs" />
<Compile Include="Rituals\RitualBehaviorWorkers.cs" />
<Compile Include="Rituals\RitualOutcomeComps.cs" />
<Compile Include="Rituals\RitualRoles.cs" />
<Compile Include="RJW_Patch.cs" />
<Compile Include="StatParts.cs" />
<Compile Include="Thought_Recordbased.cs" />

View file

@ -23,37 +23,11 @@ namespace RJWSexperience
else return 1.0f;
}
public static HistoryEvent TaggedEvent(this HistoryEventDef def ,Pawn pawn, string tag, Pawn partner)
public static float LustIncrementFactor(float lust)
{
return new HistoryEvent(def, pawn.Named(HistoryEventArgsNames.Doer), tag.Named(HistoryEventArgsNamesCustom.Tag), partner.Named(HistoryEventArgsNamesCustom.Partner));
return Mathf.Exp(-Mathf.Pow(lust / Configurations.LustLimit, 2));
}
public static Faction GetFactionUsingPrecept(this Pawn baby, out Ideo ideo)
{
Faction playerfaction = Find.FactionManager.OfPlayer;
Ideo mainideo = playerfaction.ideos.PrimaryIdeo;
if (mainideo != null)
{
if (mainideo.HasPrecept(VariousDefOf.BabyFaction_AlwaysFather))
{
Pawn parent = baby.GetFather();
if (parent == null) baby.GetMother();
ideo = parent.Ideo;
return parent.Faction;
}
else if (mainideo.HasPrecept(VariousDefOf.BabyFaction_AlwaysColony))
{
ideo = mainideo;
return playerfaction;
}
}
Pawn mother = baby.GetMother();
ideo = mother?.Ideo;
return mother?.Faction ?? baby.Faction;
}
}
@ -102,7 +76,7 @@ namespace RJWSexperience
public static void Prefix(Pawn pawn, Pawn partner, xxx.rjwSextype sextype, bool violent, bool pawn_is_raping, ref float satisfaction)
{
satisfaction *= partner.GetSexStat();
satisfaction *= Mathf.Max(base_sat_per_fuck, partner.GetSexStat());
}
public static void Postfix(Pawn pawn, Pawn partner, xxx.rjwSextype sextype, bool violent, bool pawn_is_raping, float satisfaction)
@ -110,8 +84,8 @@ namespace RJWSexperience
float? lust = pawn.records?.GetValue(VariousDefOf.Lust);
if (lust != null)
{
if (sextype != xxx.rjwSextype.Masturbation || partner != null) pawn.records.AddTo(VariousDefOf.Lust, Mathf.Clamp((satisfaction - base_sat_per_fuck) * LustIncrementFactor(lust ?? 0), -0.5f, 0.5f)); // If the sex is satisfactory, lust grows up. Declines at the opposite.
else pawn.records.AddTo(VariousDefOf.Lust, Mathf.Clamp(satisfaction * satisfaction * LustIncrementFactor(lust ?? 0), 0, 0.5f)); // Masturbation always increases lust.
if (sextype != xxx.rjwSextype.Masturbation || partner != null) pawn.records.AddTo(VariousDefOf.Lust, Mathf.Clamp((satisfaction - base_sat_per_fuck) * RJWUtility.LustIncrementFactor(lust ?? 0), -0.5f, 0.5f)); // If the sex is satisfactory, lust grows up. Declines at the opposite.
else pawn.records.AddTo(VariousDefOf.Lust, Mathf.Clamp(satisfaction * satisfaction * RJWUtility.LustIncrementFactor(lust ?? 0), 0, 0.5f)); // Masturbation always increases lust.
}
if (sextype == xxx.rjwSextype.Masturbation || partner == null)
@ -124,10 +98,6 @@ namespace RJWSexperience
}
}
public static float LustIncrementFactor(float lust)
{
return Mathf.Exp(-Mathf.Pow(lust / Configurations.LustLimit, 2));
}

View file

@ -13,37 +13,6 @@ using rjw;
namespace RJWSexperience
{
[HarmonyPatch(typeof(MarriageCeremonyUtility), "Married")]
public static class Rimworld_Patch_Marriage
{
public static void Postfix(Pawn firstPawn, Pawn secondPawn)
{
if (firstPawn.IsIncest(secondPawn))
{
Find.HistoryEventsManager.RecordEvent(new HistoryEvent(VariousDefOf.Incestuos_Marriage, firstPawn.Named(HistoryEventArgsNames.Doer)));
Find.HistoryEventsManager.RecordEvent(new HistoryEvent(VariousDefOf.Incestuos_Marriage, secondPawn.Named(HistoryEventArgsNames.Doer)));
}
}
}
[HarmonyPatch(typeof(Pawn_RelationsTracker), "SecondaryRomanceChanceFactor")]
public static class Rimworld_Patch_SecondaryRomanceChanceFactor
{
public static void Postfix(Pawn otherPawn, Pawn ___pawn, ref float __result)
{
Ideo ideo = ___pawn.Ideo;
if (ideo != null)
{
if (ideo.HasPrecept(VariousDefOf.Incestuos_IncestOnly) && ___pawn.IsIncest(otherPawn))
{
__result *= 8f;
}
}
}
}
[HarmonyPatch(typeof(PawnGenerator), "GeneratePawn", new Type[] { typeof(PawnGenerationRequest) })]
public static class Rimworld_Patch_GeneratePawn
{
@ -114,16 +83,5 @@ namespace RJWSexperience
}
}
[HarmonyPatch(typeof(RitualOutcomeEffectWorker_FromQuality), "GiveMemoryToPawn")]
public static class Rimworld_Patch_GiveMemoryToPawn
{
public static bool Prefix(Pawn pawn, ThoughtDef memory, LordJob_Ritual jobRitual)
{
if (pawn.IsAnimal()) return false;
return true;
}
}
}

View file

@ -29,57 +29,6 @@ namespace RJWSexperience
}
public class StatPart_GenderPrimacy : StatPart
{
public float modifier;
public override string ExplanationPart(StatRequest req)
{
Pawn pawn = req.Thing as Pawn;
Ideo ideo = null;
if (pawn != null) ideo = pawn.Ideo;
float fact = 1f;
if (ideo != null && !ideo.memes.NullOrEmpty()) for (int i = 0; i < ideo.memes.Count; i++)
{
if (ideo.memes[i] == MemeDefOf.MaleSupremacy)
{
if (pawn.gender == Gender.Male) fact = modifier;
else if (pawn.gender == Gender.Female) fact = 1/modifier;
break;
}
else if (ideo.memes[i] == MemeDefOf.FemaleSupremacy)
{
if (pawn.gender == Gender.Male) fact = 1/modifier;
else if (pawn.gender == Gender.Female) fact = modifier;
break;
}
}
return Keyed.MemeStatFactor(String.Format("{0:0.##}", fact * 100));
}
public override void TransformValue(StatRequest req, ref float val)
{
Pawn pawn = req.Thing as Pawn;
Ideo ideo = null;
if (pawn != null) ideo = pawn.Ideo;
if (ideo != null && !ideo.memes.NullOrEmpty()) for(int i=0; i< ideo.memes.Count; i++)
{
if (ideo.memes[i] == MemeDefOf.MaleSupremacy)
{
if (pawn.gender == Gender.Male) val *= modifier;
else if (pawn.gender == Gender.Female) val /= modifier;
break;
}
else if(ideo.memes[i] == MemeDefOf.FemaleSupremacy)
{
if (pawn.gender == Gender.Male) val /= modifier;
else if (pawn.gender == Gender.Female) val *= modifier;
break;
}
}
}
}
public class StatPart_Slave : StatPart
{

View file

@ -33,7 +33,7 @@ namespace RJWSexperience
{
get
{
float value = pawn.records.GetValue(recordDef);
float value = pawn?.records?.GetValue(recordDef) ?? 0f;
for (int i = minimumValueforStage.Count - 1; i > 0; i--)
{
if (minimumValueforStage[i] < value) return i + 1;
@ -52,7 +52,7 @@ namespace RJWSexperience
{
get
{
if (pawn.health.hediffSet.HasHediff(VariousDefOf.CumAddiction)) return minimumValueforStage.Count;
if (pawn?.health?.hediffSet?.HasHediff(VariousDefOf.CumAddiction) ?? false) return minimumValueforStage.Count;
return base.CurStageIndex;
}
}

View file

@ -32,22 +32,6 @@ namespace RJWSexperience
records.AddTo(record, value - recordval);
}
public static bool IsIncest(this Pawn pawn, Pawn partner)
{
IEnumerable<PawnRelationDef> relations = pawn.GetRelations(partner);
Ideo ideo = pawn.Ideo;
bool wide = false;
if (ideo != null) wide = ideo.HasPrecept(VariousDefOf.Incestuos_Disapproved_CloseOnly);
if (!relations.EnumerableNullOrEmpty()) foreach(PawnRelationDef relation in relations)
{
if(wide)
{
if (relation.incestOpinionOffset < 0) return true;
}
else if (relation.familyByBloodRelation) return true;
}
return false;
}
public static float RecordRandomizer(this Pawn pawn, RecordDef record, float avg, float dist, float min = 0, float max = float.MaxValue)
{
@ -84,17 +68,6 @@ namespace RJWSexperience
return 1 + lust / 100f;
}
public static bool IsSubmissive(this Pawn pawn)
{
Ideo ideo = pawn.Ideo;
if (ideo != null)
{
if (ideo.HasPrecept(VariousDefOf.Submissive_Female) && pawn.gender == Gender.Female) return true;
else if (ideo.HasPrecept(VariousDefOf.Submissive_Male) && pawn.gender == Gender.Male) return true;
}
return false;
}
public static Building GetAdjacentBuilding<T>(this Pawn pawn) where T : Building
{

View file

@ -8,16 +8,12 @@ using RimWorld;
namespace RJWSexperience
{
public class VariousDefOf
public static class VariousDefOf
{
public static readonly RecordDef NumofEatenCum = DefDatabase<RecordDef>.GetNamed("NumofEatenCum");
public static readonly RecordDef Lust = DefDatabase<RecordDef>.GetNamed("Lust");
public static readonly SkillDef SexSkill = DefDatabase<SkillDef>.GetNamed("Sex");
public static readonly ThoughtDef_Recordbased AteCum = DefDatabase<ThoughtDef_Recordbased>.GetNamed("AteCum");
public static readonly JobDef RapeVictim = DefDatabase<JobDef>.GetNamed("RapeVictim");
public static readonly JobDef DrugSex = DefDatabase<JobDef>.GetNamed("DrugSex");
public static readonly JobDef GettinDrugSex = DefDatabase<JobDef>.GetNamed("GettinDrugSex");
public static readonly JobDef DrugMasturbate = DefDatabase<JobDef>.GetNamed("DrugMasturbate");
public static readonly PawnRelationDef Bastard = DefDatabase<PawnRelationDef>.GetNamed("Bastard");
public static readonly ThingDef GatheredCum = DefDatabase<ThingDef>.GetNamed("GatheredCum");
public static readonly HediffDef CumAddiction = DefDatabase<HediffDef>.GetNamed("CumAddiction");
@ -56,59 +52,7 @@ namespace RJWSexperience
}
protected static float? cumneedLevelOffsetcache = null;
protected static float? cumexistingAddictionSeverityOffsetcache = null;
[MayRequireIdeology] public static readonly MemeDef Zoophile = DefDatabase<MemeDef>.GetNamed("Zoophile");
[MayRequireIdeology] public static readonly MemeDef Rapist = DefDatabase<MemeDef>.GetNamed("Rapist");
[MayRequireIdeology] public static readonly MemeDef Lewd = DefDatabase<MemeDef>.GetNamed("Lewd");
[MayRequireIdeology] public static readonly MemeDef Necrophile = DefDatabase<MemeDef>.GetNamed("Necrophile");
[MayRequireIdeology] public static readonly HistoryEventDef SexWithAnimal = DefDatabase<HistoryEventDef>.GetNamed("SexWithAnimal");
[MayRequireIdeology] public static readonly HistoryEventDef SexWithVeneratedAnimal = DefDatabase<HistoryEventDef>.GetNamed("SexWithVeneratedAnimal");
[MayRequireIdeology] public static readonly HistoryEventDef Raped = DefDatabase<HistoryEventDef>.GetNamed("Raped");
[MayRequireIdeology] public static readonly HistoryEventDef RapedSlave = DefDatabase<HistoryEventDef>.GetNamed("RapedSlave");
[MayRequireIdeology] public static readonly HistoryEventDef RapedPrisoner = DefDatabase<HistoryEventDef>.GetNamed("RapedPrisoner");
[MayRequireIdeology] public static readonly HistoryEventDef WasRaped = DefDatabase<HistoryEventDef>.GetNamed("WasRaped");
[MayRequireIdeology] public static readonly HistoryEventDef WasRapedSlave = DefDatabase<HistoryEventDef>.GetNamed("WasRapedSlave");
[MayRequireIdeology] public static readonly HistoryEventDef WasRapedPrisoner = DefDatabase<HistoryEventDef>.GetNamed("WasRapedPrisoner");
[MayRequireIdeology] public static readonly HistoryEventDef VaginalSex = DefDatabase<HistoryEventDef>.GetNamed("VaginalSex");
[MayRequireIdeology] public static readonly HistoryEventDef AnalSex = DefDatabase<HistoryEventDef>.GetNamed("AnalSex");
[MayRequireIdeology] public static readonly HistoryEventDef OralSex = DefDatabase<HistoryEventDef>.GetNamed("OralSex");
[MayRequireIdeology] public static readonly HistoryEventDef MiscSex = DefDatabase<HistoryEventDef>.GetNamed("MiscSex");
[MayRequireIdeology] public static readonly HistoryEventDef PromiscuousSex = DefDatabase<HistoryEventDef>.GetNamed("PromiscuousSex");
[MayRequireIdeology] public static readonly HistoryEventDef Incestuos_Marriage = DefDatabase<HistoryEventDef>.GetNamed("Incestuos_Marriage");
[MayRequireIdeology] public static readonly HistoryEventDef SexWithCorpse = DefDatabase<HistoryEventDef>.GetNamed("SexWithCorpse");
[MayRequireIdeology] public static readonly PreceptDef Bestiality_Abhorrent = DefDatabase<PreceptDef>.GetNamed("Bestiality_Abhorrent");
[MayRequireIdeology] public static readonly PreceptDef Bestiality_Horrible = DefDatabase<PreceptDef>.GetNamed("Bestiality_Horrible");
[MayRequireIdeology] public static readonly PreceptDef Bestiality_Disapproved = DefDatabase<PreceptDef>.GetNamed("Bestiality_Disapproved");
[MayRequireIdeology] public static readonly PreceptDef Bestiality_Acceptable = DefDatabase<PreceptDef>.GetNamed("Bestiality_Acceptable");
[MayRequireIdeology] public static readonly PreceptDef Bestiality_OnlyVenerated = DefDatabase<PreceptDef>.GetNamed("Bestiality_OnlyVenerated");
[MayRequireIdeology] public static readonly PreceptDef Bestiality_Honorable = DefDatabase<PreceptDef>.GetNamed("Bestiality_Honorable");
[MayRequireIdeology] public static readonly PreceptDef Rape_Abhorrent = DefDatabase<PreceptDef>.GetNamed("Rape_Abhorrent");
[MayRequireIdeology] public static readonly PreceptDef Rape_Horrible = DefDatabase<PreceptDef>.GetNamed("Rape_Horrible");
[MayRequireIdeology] public static readonly PreceptDef Rape_Disapproved = DefDatabase<PreceptDef>.GetNamed("Rape_Disapproved");
[MayRequireIdeology] public static readonly PreceptDef Rape_Acceptable = DefDatabase<PreceptDef>.GetNamed("Rape_Acceptable");
[MayRequireIdeology] public static readonly PreceptDef Rape_Honorable = DefDatabase<PreceptDef>.GetNamed("Rape_Honorable");
[MayRequireIdeology] public static readonly PreceptDef Sex_Free = DefDatabase<PreceptDef>.GetNamed("Sex_Free");
[MayRequireIdeology] public static readonly PreceptDef Sex_VaginalOnly = DefDatabase<PreceptDef>.GetNamed("Sex_VaginalOnly");
[MayRequireIdeology] public static readonly PreceptDef Sex_AnalOnly = DefDatabase<PreceptDef>.GetNamed("Sex_AnalOnly");
[MayRequireIdeology] public static readonly PreceptDef Sex_OralOnly = DefDatabase<PreceptDef>.GetNamed("Sex_OralOnly");
[MayRequireIdeology] public static readonly PreceptDef Sex_Promiscuous = DefDatabase<PreceptDef>.GetNamed("Sex_Promiscuous");
[MayRequireIdeology] public static readonly PreceptDef Incestuos_Free = DefDatabase<PreceptDef>.GetNamed("Incestuos_Free");
[MayRequireIdeology] public static readonly PreceptDef Incestuos_Disapproved = DefDatabase<PreceptDef>.GetNamed("Incestuos_Disapproved");
[MayRequireIdeology] public static readonly PreceptDef Incestuos_Forbidden = DefDatabase<PreceptDef>.GetNamed("Incestuos_Forbidden");
[MayRequireIdeology] public static readonly PreceptDef Incestuos_IncestOnly = DefDatabase<PreceptDef>.GetNamed("Incestuos_IncestOnly");
[MayRequireIdeology] public static readonly PreceptDef Incestuos_Disapproved_CloseOnly = DefDatabase<PreceptDef>.GetNamed("Incestuos_Disapproved_CloseOnly");
[MayRequireIdeology] public static readonly PreceptDef BabyFaction_AlwaysMother = DefDatabase<PreceptDef>.GetNamed("BabyFaction_AlwaysMother");
[MayRequireIdeology] public static readonly PreceptDef BabyFaction_AlwaysFather = DefDatabase<PreceptDef>.GetNamed("BabyFaction_AlwaysFather");
[MayRequireIdeology] public static readonly PreceptDef BabyFaction_AlwaysColony = DefDatabase<PreceptDef>.GetNamed("BabyFaction_AlwaysColony");
[MayRequireIdeology] public static readonly PreceptDef Submissive_None = DefDatabase<PreceptDef>.GetNamed("Submissive_None");
[MayRequireIdeology] public static readonly PreceptDef Submissive_Male = DefDatabase<PreceptDef>.GetNamed("Submissive_Male");
[MayRequireIdeology] public static readonly PreceptDef Submissive_Female = DefDatabase<PreceptDef>.GetNamed("Submissive_Female");
[MayRequireIdeology] public static readonly PreceptDef Necrophilia_Abhorrent = DefDatabase<PreceptDef>.GetNamed("Necrophilia_Abhorrent");
[MayRequireIdeology] public static readonly PreceptDef Necrophilia_Horrible = DefDatabase<PreceptDef>.GetNamed("Necrophilia_Horrible");
[MayRequireIdeology] public static readonly PreceptDef Necrophilia_Disapproved = DefDatabase<PreceptDef>.GetNamed("Necrophilia_Disapproved");
[MayRequireIdeology] public static readonly PreceptDef Necrophilia_Acceptable = DefDatabase<PreceptDef>.GetNamed("Necrophilia_Acceptable");
[MayRequireIdeology] public static readonly PreceptDef Necrophilia_Approved = DefDatabase<PreceptDef>.GetNamed("Necrophilia_Approved");
private static float? cumneedLevelOffsetcache = null;
private static float? cumexistingAddictionSeverityOffsetcache = null;
}
}

View file

@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8"?>
<ModMetaData>
<name>RJW Sexperience Ideology Standalone</name>
<author>a</author>
<supportedVersions>
<li>1.3</li>
</supportedVersions>
<modDependencies>
<li>
<packageId>Ludeon.RimWorld.Ideology</packageId>
<displayName>Ideology</displayName>
</li>
<li>
<packageId>brrainz.harmony</packageId>
<displayName>Harmony</displayName>
<steamWorkshopUrl>steam://url/CommunityFilePage/2009463077</steamWorkshopUrl>
<downloadUrl>https://github.com/pardeike/HarmonyRimWorld/releases/latest</downloadUrl>
</li>
<li>
<packageId>rim.job.world</packageId>
<displayName>RimJobWorld</displayName>
<downloadUrl>https://gitgud.io/Ed86/rjw</downloadUrl>
</li>
</modDependencies>
<loadAfter>
<li>Ludeon.RimWorld.Ideology</li>
<li>brrainz.harmony</li>
<li>rim.job.world</li>
</loadAfter>
<packageId>rjw.sexperience.ideo</packageId>
<description>EXPERIMENTAL yes yes</description>
</ModMetaData>

View file

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Manifest>
<identifier>RJW Sexperience Ideology Standalone</identifier>
<version>1.0.1.9</version>
<dependencies>
</dependencies>
<incompatibleWith />
<loadAfter>
</loadAfter>
<suggests>
</suggests>
<manifestUri>https://raw.githubusercontent.com/moreoreganostodump/RJW-Sexperience/master/About/Manifest.xml</manifestUri>
<downloadUri>https://github.com/moreoreganostodump/RJW-Sexperience</downloadUri>
</Manifest>

View file

@ -12,7 +12,7 @@
<li Class="ThinkNode_ConditionalRandom">
<chance>0.25</chance>
<subNodes>
<li Class="RJWSexperience.JobGiver_GangbangVictim"/>
<li Class="RJWSexperience.Ideology.JobGiver_GangbangVictim"/>
</subNodes>
</li>
</subNodes>
@ -32,7 +32,7 @@
<socialModeMax>Off</socialModeMax>
<thinkNode Class="ThinkNode_Priority">
<subNodes>
<li Class="RJWSexperience.JobGiver_GangbangVictim"/>
<li Class="RJWSexperience.Ideology.JobGiver_GangbangVictim"/>
</subNodes>
</thinkNode>
</DutyDef>
@ -48,7 +48,7 @@
<li Class="ThinkNode_ConditionalRandom">
<chance>0.15</chance>
<subNodes>
<li Class="RJWSexperience.JobGiver_DrugOrgy"/>
<li Class="RJWSexperience.Ideology.JobGiver_DrugOrgy"/>
</subNodes>
</li>
</subNodes>

View file

@ -24,7 +24,7 @@
<GoodwillSituationDef>
<defName>Zoophile_All</defName>
<label>zoophile</label>
<workerClass>RJWSexperience.GoodwillSituationWorker_OneWayReceive</workerClass>
<workerClass>RJWSexperience.Ideology.GoodwillSituationWorker_OneWayReceive</workerClass>
<meme>Zoophile</meme>
<versusAll>true</versusAll>
<naturalGoodwillOffset>-50</naturalGoodwillOffset>
@ -33,7 +33,7 @@
<GoodwillSituationDef>
<defName>Rapist_All</defName>
<label>rapist</label>
<workerClass>RJWSexperience.GoodwillSituationWorker_OneWayReceive</workerClass>
<workerClass>RJWSexperience.Ideology.GoodwillSituationWorker_OneWayReceive</workerClass>
<meme>Rapist</meme>
<versusAll>true</versusAll>
<naturalGoodwillOffset>-20</naturalGoodwillOffset>
@ -42,7 +42,7 @@
<GoodwillSituationDef>
<defName>Necrophile_All</defName>
<label>necrophile</label>
<workerClass>RJWSexperience.GoodwillSituationWorker_OneWayReceive</workerClass>
<workerClass>RJWSexperience.Ideology.GoodwillSituationWorker_OneWayReceive</workerClass>
<meme>Necrophile</meme>
<versusAll>true</versusAll>
<naturalGoodwillOffset>-50</naturalGoodwillOffset>

View file

@ -3,28 +3,28 @@
<Defs>
<JobDef>
<defName>RapeVictim</defName>
<driverClass>RJWSexperience.JobDriver_RapeVictim</driverClass>
<driverClass>RJWSexperience.Ideology.JobDriver_RapeVictim</driverClass>
<reportString>rapin' victim</reportString>
<casualInterruptible>false</casualInterruptible>
</JobDef>
<JobDef>
<defName>DrugSex</defName>
<driverClass>RJWSexperience.JobDriver_SexDrugOrgy</driverClass>
<driverClass>RJWSexperience.Ideology.JobDriver_SexDrugOrgy</driverClass>
<reportString>lovin'.</reportString>
<casualInterruptible>false</casualInterruptible>
</JobDef>
<JobDef>
<defName>GettinDrugSex</defName>
<driverClass>RJWSexperience.JobDriver_DrugSexReceiver</driverClass>
<driverClass>RJWSexperience.Ideology.JobDriver_DrugSexReceiver</driverClass>
<reportString>lovin'.</reportString>
<casualInterruptible>false</casualInterruptible>
</JobDef>
<JobDef>
<defName>DrugMasturbate</defName>
<driverClass>RJWSexperience.JobDriver_DrugMasturabate</driverClass>
<driverClass>RJWSexperience.Ideology.JobDriver_DrugMasturabate</driverClass>
<reportString>masturbatin'.</reportString>
<casualInterruptible>false</casualInterruptible>
</JobDef>

View file

@ -104,7 +104,7 @@
<li>memeHyphenPrefix->pervert</li>
<li>memeConcept->rapist</li>
<li>memeConcept->pervert</li>
<li>memeGod->slaanesh</li>
<li>r_deityName->slaanesh</li>
<li>memeLeaderNoun->stallion</li>
<li>memeLeaderNoun->grand rapist</li>
</rulesStrings>
@ -196,7 +196,7 @@
<li>memeConcept->desire</li>
<li>memeConcept->sex</li>
<li>memeConcept->perversion</li>
<li>memeGod->slaanesh</li>
<li>r_deityName->slaanesh</li>
</rulesStrings>
</generalRules>
<symbolPacks>
@ -232,8 +232,10 @@
</requireOne>
<generalRules>
<rulesStrings>
<li>memeGod->sonic</li>
<li>memeGod->mega man</li>
<li>r_deityName->sonic</li>
<li>r_deityName->mega man</li>
<li>memeConcept->corpse</li>
<li>memeConcept->dead</li>
</rulesStrings>
</generalRules>
<agreeableTraits>

View file

@ -40,7 +40,7 @@
<eventDef>SexWithVeneratedAnimal</eventDef>
<thought>Bestiality_Abhorrent</thought>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>SexWithVeneratedAnimal</eventDef>
<thought>Bestiality_Know_Abhorrent</thought>
<tag>BeenRaped</tag>
@ -50,7 +50,7 @@
<eventDef>SexWithAnimal</eventDef>
<thought>Bestiality_Abhorrent</thought>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>SexWithAnimal</eventDef>
<thought>Bestiality_Know_Abhorrent</thought>
<tag>BeenRaped</tag>
@ -79,7 +79,7 @@
<eventDef>SexWithVeneratedAnimal</eventDef>
<thought>Bestiality_Horrible</thought>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>SexWithVeneratedAnimal</eventDef>
<thought>Bestiality_Know_Horrible</thought>
<tag>BeenRaped</tag>
@ -89,7 +89,7 @@
<eventDef>SexWithAnimal</eventDef>
<thought>Bestiality_Horrible</thought>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>SexWithAnimal</eventDef>
<thought>Bestiality_Know_Horrible</thought>
<tag>BeenRaped</tag>
@ -118,7 +118,7 @@
<eventDef>SexWithVeneratedAnimal</eventDef>
<thought>Bestiality_Disapproved</thought>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>SexWithVeneratedAnimal</eventDef>
<thought>Bestiality_Know_Disapproved</thought>
<tag>BeenRaped</tag>
@ -128,7 +128,7 @@
<eventDef>SexWithAnimal</eventDef>
<thought>Bestiality_Disapproved</thought>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>SexWithAnimal</eventDef>
<thought>Bestiality_Know_Disapproved</thought>
<tag>BeenRaped</tag>

View file

@ -1,85 +0,0 @@
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<!-- Issue -->
<IssueDef>
<defName>IdeoBuilding</defName>
<label>building</label>
<allowMultiplePrecepts>true</allowMultiplePrecepts>
</IssueDef>
<!-- Precepts -->
<PreceptDef>
<defName>IdeoBuilding</defName>
<label>building</label>
<description>A building of ideoligious significance. Only those who follow this ideoligion can build it. It may be used as a focus for rituals.</description>
<issue>IdeoBuilding</issue>
<preceptClass>Precept_Building</preceptClass>
<workerClass>PreceptWorker_Building</workerClass>
<nameMaker>NamerIdeoBuilding</nameMaker>
<impact>Medium</impact>
<buildingDefChances>
<Altar_Small>1</Altar_Small>
<Altar_Medium>1</Altar_Medium>
<Altar_Large>1</Altar_Large>
<Altar_Grand>1</Altar_Grand>
<Ideogram>4</Ideogram>
<SculptureSmall>1</SculptureSmall>
<SculptureLarge>1</SculptureLarge>
<SculptureGrand>1</SculptureGrand>
<ChristmasTree>0</ChristmasTree>
</buildingDefChances>
<useChoicesFromBuildingDefs>true</useChoicesFromBuildingDefs>
<allowDuplicates>true</allowDuplicates>
<countsTowardsPreceptLimit>false</countsTowardsPreceptLimit>
<maxCount>5</maxCount>
<buildingMinExpectations>
<li>Moderate</li>
<li>High</li>
</buildingMinExpectations>
<preceptInstanceCountCurve>
<points>
<li>(0.5, 1)</li>
<li>(1.0, 2)</li>
</points>
</preceptInstanceCountCurve>
<roomRequirementCountCurve>
<points>
<li>(0.5, 1)</li>
<li>(1.0, 2)</li>
</points>
</roomRequirementCountCurve>
<buildingRoomRequirements>
<li Class="RoomRequirement_Area">
<area>25</area>
</li>
<li Class="RoomRequirement_TerrainWithTags">
<labelKey>RoomRequirementAllFloored</labelKey>
<tags>
<li>Floor</li>
<li>FineFloor</li>
</tags>
</li>
<li Class="RoomRequirement_Impressiveness">
<impressiveness>60</impressiveness>
</li>
<li Class="RoomRequirement_ThingCount">
<thingDef>Column</thingDef>
<count>4</count>
</li>
</buildingRoomRequirements>
<buildingRoomRequirementsFixed>
<li Class="RoomRequirement_ForbiddenBuildings">
<labelKey>RoomRequirementNoBeds</labelKey>
<buildingTags><li>Bed</li></buildingTags>
</li>
<li Class="RoomRequirement_ForbiddenBuildings">
<labelKey>RoomRequirementNoProductionFacilities</labelKey>
<buildingTags><li>Production</li></buildingTags>
</li>
</buildingRoomRequirementsFixed>
</PreceptDef>
</Defs>

View file

@ -41,27 +41,27 @@
<eventDef>Incestuos_Marriage</eventDef>
<thought>IncestuosMarriage_Disapproved</thought>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>VaginalSex</eventDef>
<thought>Sex_Know_Incest_Disapproved</thought>
<tag>Incestuos</tag>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>AnalSex</eventDef>
<thought>Sex_Know_Incest_Disapproved</thought>
<tag>Incestuos</tag>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>OralSex</eventDef>
<thought>Sex_Know_Incest_Disapproved</thought>
<tag>Incestuos</tag>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>MiscSex</eventDef>
<thought>Sex_Know_Incest_Disapproved</thought>
<tag>Incestuos</tag>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>PromiscuousSex</eventDef>
<thought>Sex_Know_Incest_Disapproved</thought>
<tag>Incestuos</tag>
@ -83,31 +83,31 @@
<eventDef>Incestuos_Marriage</eventDef>
<thought>IncestuosMarriage_Disapproved</thought>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>Incestuos_Marriage</eventDef>
<thought>Sex_Know_IncestMarriage_Disapproved</thought>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>VaginalSex</eventDef>
<thought>Sex_Know_Incest_Disapproved</thought>
<tag>Incestuos</tag>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>AnalSex</eventDef>
<thought>Sex_Know_Incest_Disapproved</thought>
<tag>Incestuos</tag>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>OralSex</eventDef>
<thought>Sex_Know_Incest_Disapproved</thought>
<tag>Incestuos</tag>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>MiscSex</eventDef>
<thought>Sex_Know_Incest_Disapproved</thought>
<tag>Incestuos</tag>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>PromiscuousSex</eventDef>
<thought>Sex_Know_Incest_Disapproved</thought>
<tag>Incestuos</tag>
@ -129,31 +129,31 @@
<eventDef>Incestuos_Marriage</eventDef>
<thought>IncestuosMarriage_Forbidden</thought>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>Incestuos_Marriage</eventDef>
<thought>Sex_Know_IncestMarriage_Forbidden</thought>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>VaginalSex</eventDef>
<thought>Sex_Know_Incest_Forbidden</thought>
<tag>Incestuos</tag>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>AnalSex</eventDef>
<thought>Sex_Know_Incest_Forbidden</thought>
<tag>Incestuos</tag>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>OralSex</eventDef>
<thought>Sex_Know_Incest_Forbidden</thought>
<tag>Incestuos</tag>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>MiscSex</eventDef>
<thought>Sex_Know_Incest_Forbidden</thought>
<tag>Incestuos</tag>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>PromiscuousSex</eventDef>
<thought>Sex_Know_Incest_Forbidden</thought>
<tag>Incestuos</tag>
@ -173,37 +173,37 @@
<li>Zoophile</li>
</conflictingMemes>
<comps>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>GotMarried_SpouseCount_OneOrFewer</eventDef>
<thought>Sex_Know_IncestMarriage_Violated</thought>
<tag>Incestuos</tag>
<exclusive>true</exclusive>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>VaginalSex</eventDef>
<thought>Sex_Know_Incest_Violated</thought>
<tag>Incestuos</tag>
<exclusive>true</exclusive>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>AnalSex</eventDef>
<thought>Sex_Know_Incest_Violated</thought>
<tag>Incestuos</tag>
<exclusive>true</exclusive>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>OralSex</eventDef>
<thought>Sex_Know_Incest_Violated</thought>
<tag>Incestuos</tag>
<exclusive>true</exclusive>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>MiscSex</eventDef>
<thought>Sex_Know_Incest_Violated</thought>
<tag>Incestuos</tag>
<exclusive>true</exclusive>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>PromiscuousSex</eventDef>
<thought>Sex_Know_Incest_Violated</thought>
<tag>Incestuos</tag>

View file

@ -197,7 +197,7 @@
<thought>BloodlustStoleSomeLovin</thought>
<onlyForNonSlaves>true</onlyForNonSlaves>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>Raped</eventDef>
<thought>Rape_Know_Honorable</thought>
<description>Someone raped other</description>

View file

@ -55,43 +55,43 @@
<displayOrderInImpact>1000</displayOrderInImpact>
<defaultSelectionWeight>100</defaultSelectionWeight>
<comps>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>AnalSex</eventDef>
<thought>Sex_Promiscuous</thought>
<recordDef>Lust</recordDef>
<recordoffset>2.0</recordoffset>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>AnalSex</eventDef>
<thought>Sex_Know_Promiscuous</thought>
</li>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>OralSex</eventDef>
<thought>Sex_Promiscuous</thought>
<recordDef>Lust</recordDef>
<recordoffset>2.0</recordoffset>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>OralSex</eventDef>
<thought>Sex_Know_Promiscuous</thought>
</li>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>MiscSex</eventDef>
<thought>Sex_Promiscuous</thought>
<recordDef>Lust</recordDef>
<recordoffset>2.0</recordoffset>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>MiscSex</eventDef>
<thought>Sex_Know_Promiscuous</thought>
</li>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>PromiscuousSex</eventDef>
<thought>Sex_Promiscuous</thought>
<recordDef>Lust</recordDef>
<recordoffset>3.0</recordoffset>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>PromiscuousSex</eventDef>
<thought>Sex_Know_Promiscuous</thought>
</li>
@ -108,43 +108,43 @@
<displayOrderInImpact>1000</displayOrderInImpact>
<defaultSelectionWeight>10</defaultSelectionWeight>
<comps>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>VaginalSex</eventDef>
<thought>Sex_Promiscuous</thought>
<recordDef>Lust</recordDef>
<recordoffset>2.0</recordoffset>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>VaginalSex</eventDef>
<thought>Sex_Know_Promiscuous</thought>
</li>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>OralSex</eventDef>
<thought>Sex_Promiscuous</thought>
<recordDef>Lust</recordDef>
<recordoffset>2.0</recordoffset>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>OralSex</eventDef>
<thought>Sex_Know_Promiscuous</thought>
</li>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>MiscSex</eventDef>
<thought>Sex_Promiscuous</thought>
<recordDef>Lust</recordDef>
<recordoffset>2.0</recordoffset>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>MiscSex</eventDef>
<thought>Sex_Know_Promiscuous</thought>
</li>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>PromiscuousSex</eventDef>
<thought>Sex_Promiscuous</thought>
<recordDef>Lust</recordDef>
<recordoffset>3.0</recordoffset>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>PromiscuousSex</eventDef>
<thought>Sex_Know_Promiscuous</thought>
</li>
@ -161,43 +161,43 @@
<displayOrderInImpact>1000</displayOrderInImpact>
<defaultSelectionWeight>5</defaultSelectionWeight>
<comps>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>VaginalSex</eventDef>
<thought>Sex_Promiscuous</thought>
<recordDef>Lust</recordDef>
<recordoffset>2.0</recordoffset>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>VaginalSex</eventDef>
<thought>Sex_Know_Promiscuous</thought>
</li>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>AnalSex</eventDef>
<thought>Sex_Promiscuous</thought>
<recordDef>Lust</recordDef>
<recordoffset>2.0</recordoffset>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>AnalSex</eventDef>
<thought>Sex_Know_Promiscuous</thought>
</li>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>MiscSex</eventDef>
<thought>Sex_Promiscuous</thought>
<recordDef>Lust</recordDef>
<recordoffset>2.0</recordoffset>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>MiscSex</eventDef>
<thought>Sex_Know_Promiscuous</thought>
</li>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>PromiscuousSex</eventDef>
<thought>Sex_Promiscuous</thought>
<recordDef>Lust</recordDef>
<recordoffset>3.0</recordoffset>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>PromiscuousSex</eventDef>
<thought>Sex_Know_Promiscuous</thought>
</li>

View file

@ -32,49 +32,49 @@
<li>FemaleSupremacy</li>
</requiredMemes>
<comps>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>WasRaped</eventDef>
<thought>BeenRaped_Submissive</thought>
<tag>Male, BeenRaped</tag>
</li>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>WasRaped</eventDef>
<thought>BeenRaped_NotSubmissive</thought>
<tag>Female, BeenRaped</tag>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>Raped</eventDef>
<thought>Raped_Know_NotBeingSubmissive</thought>
<description>not obedient</description>
<tag>Female, Raped</tag>
</li>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>WasRapedPrisoner</eventDef>
<thought>BeenRaped_Submissive</thought>
<tag>Male, BeenRaped</tag>
</li>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>WasRapedPrisoner</eventDef>
<thought>BeenRaped_NotSubmissive</thought>
<tag>Female, BeenRaped</tag>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>RapedPrisoner</eventDef>
<thought>Raped_Know_NotBeingSubmissive</thought>
<description>not obedient</description>
<tag>Female, Raped</tag>
</li>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>WasRapedSlave</eventDef>
<thought>BeenRaped_Submissive</thought>
<tag>Male, BeenRaped</tag>
</li>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>WasRapedSlave</eventDef>
<thought>BeenRaped_NotSubmissive</thought>
<tag>Female, BeenRaped</tag>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>RapedSlave</eventDef>
<thought>Raped_Know_NotBeingSubmissive</thought>
<description>not obedient</description>
@ -95,49 +95,49 @@
<li>MaleSupremacy</li>
</requiredMemes>
<comps>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>WasRaped</eventDef>
<thought>BeenRaped_Submissive</thought>
<tag>Female, BeenRaped</tag>
</li>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>WasRaped</eventDef>
<thought>BeenRaped_NotSubmissive</thought>
<tag>Male, BeenRaped</tag>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>Raped</eventDef>
<thought>Raped_Know_NotBeingSubmissive</thought>
<description>not obedient</description>
<tag>Male, Raped</tag>
</li>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>WasRapedPrisoner</eventDef>
<thought>BeenRaped_Submissive</thought>
<tag>Female, BeenRaped</tag>
</li>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>WasRapedPrisoner</eventDef>
<thought>BeenRaped_NotSubmissive</thought>
<tag>Male, BeenRaped</tag>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>RapedPrisoner</eventDef>
<thought>Raped_Know_NotBeingSubmissive</thought>
<description>not obedient</description>
<tag>Male, Raped</tag>
</li>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>WasRapedSlave</eventDef>
<thought>BeenRaped_Submissive</thought>
<tag>Female, BeenRaped</tag>
</li>
<li Class="RJWSexperience.PreceptComp_SelfTookThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_SelfTookThoughtTagged">
<eventDef>WasRapedSlave</eventDef>
<thought>BeenRaped_NotSubmissive</thought>
<tag>Male, BeenRaped</tag>
</li>
<li Class="RJWSexperience.PreceptComp_KnowsMemoryThoughtTagged">
<li Class="RJWSexperience.Ideology.PreceptComp_KnowsMemoryThoughtTagged">
<eventDef>RapedSlave</eventDef>
<thought>Raped_Know_NotBeingSubmissive</thought>
<description>not obedient</description>

View file

@ -35,7 +35,7 @@
<RitualPatternDef ParentName="CelebrationConsumable">
<defName>DrugOrgy</defName>
<shortDescOverride>drug orgy</shortDescOverride>
<descOverride>An orgy with large amounts of aphrodisiac. Participants will gather around a burnbong or incense shrine, light it on fire, and fuck each other while inhaling the fumes.</descOverride>
<descOverride>An orgy with large amounts of aphrodisiac. Participants will gather around a lustbong, light it on fire, and fuck each other while inhaling the fumes.</descOverride>
<iconPathOverride>UI/Icons/Rituals/SmokeCircle</iconPathOverride>
<ritualOnlyForIdeoMembers>false</ritualOnlyForIdeoMembers>
<ritualObligationTargetFilter>DrugOrgy</ritualObligationTargetFilter>

View file

@ -20,20 +20,22 @@
<RitualBehaviorDef ParentName="GangbangBehaviorBase">
<defName>Gangbang</defName>
<workerClass>RJWSexperience.RitualBehaviorWorker_Gangbang</workerClass>
<workerClass>RJWSexperience.Ideology.RitualBehaviorWorker_Gangbang</workerClass>
<roles>
<li Class="RJWSexperience.RitualRole_RapeVictim">
<li Class="RJWSexperience.Ideology.RitualRole_RapeVictim">
<label>victim</label>
<missingDesc>a victim</missingDesc>
<id>victim</id>
<maxCount>1</maxCount>
<required>True</required>
<required>true</required>
<countsAsParticipant>False</countsAsParticipant>
<ignoreBleeding>true</ignoreBleeding>
<allowNonAggroMentalState>true</allowNonAggroMentalState>
<allowOtherIdeos>true</allowOtherIdeos>
</li>
</roles>
<stages Inherit="False">
<li Class="RJWSexperience.RitualStage_InteractWithVictim">
<li Class="RJWSexperience.Ideology.RitualStage_InteractWithVictim">
<defaultDuty>Spectate</defaultDuty>
<endTriggers>
<li Class="StageEndTrigger_PawnDeliveredOrNotValid"/>
@ -81,7 +83,7 @@
</li>
</roleBehaviors>
</li>
<li Class="RJWSexperience.RitualStage_InteractWithVictim">
<li Class="RJWSexperience.Ideology.RitualStage_InteractWithVictim">
<defaultDuty>Gangbang</defaultDuty>
<essential>True</essential>
<endTriggers>
@ -97,13 +99,9 @@
<li Class="RitualPosition_OnInteractionCell" />
</customPositions>
</li>
<li>
<roleId>victim</roleId>
<dutyDef>LayDownAwake</dutyDef>
</li>
</roleBehaviors>
</li>
<li Class="RJWSexperience.RitualStage_InteractWithVictim">
<li Class="RJWSexperience.Ideology.RitualStage_InteractWithVictim">
<defaultDuty>Gangbang</defaultDuty>
<endTriggers>
<li Class="StageEndTrigger_DurationPercentage">
@ -119,10 +117,6 @@
<li Class="RitualPosition_OnInteractionCell" />
</customPositions>
</li>
<li>
<roleId>victim</roleId>
<dutyDef>LayDownAwake</dutyDef>
</li>
</roleBehaviors>
</li>
</stages>
@ -132,8 +126,9 @@
<RitualBehaviorDef ParentName="GangbangBehaviorBase">
<defName>GangbangByAnimal</defName>
<workerClass>RJWSexperience.Ideology.RitualBehaviorWorker_Gangbang</workerClass>
<roles>
<li Class="RJWSexperience.RitualRole_HumanBreedee">
<li Class="RJWSexperience.Ideology.RitualRole_HumanBreedee">
<label>breedee</label>
<missingDesc>a breedee who will be fucked by animal</missingDesc>
<id>victim</id>
@ -142,11 +137,11 @@
<countsAsParticipant>False</countsAsParticipant>
<ignoreBleeding>true</ignoreBleeding>
</li>
<li Class="RJWSexperience.RitualRole_AnimalBreeder">
<li Class="RJWSexperience.Ideology.RitualRole_AnimalBreeder">
<label>breeder</label>
<id>animal</id>
<maxCount>10</maxCount>
<required>True</required>
<maxCount>30</maxCount>
<required>false</required>
<missingDesc>a breedable animal</missingDesc>
<countsAsParticipant>false</countsAsParticipant>
</li>
@ -222,7 +217,7 @@
</li>
</roleBehaviors>
</li>
<li Class="RJWSexperience.RitualStage_InteractWithVictim_All">
<li Class="RJWSexperience.Ideology.RitualStage_InteractWithVictim_All">
<defaultDuty>Spectate</defaultDuty>
<essential>True</essential>
<endTriggers>

View file

@ -30,28 +30,28 @@
<qualityOffset>0.2</qualityOffset>
<expectedThingLabelTip>an altar</expectedThingLabelTip>
</li>
<li Class="RJWSexperience.RitualOutcomeComp_HediffBased">
<li Class="RJWSexperience.Ideology.RitualOutcomeComp_HediffBased">
<label>victim broken</label>
<qualityOffset>0.2</qualityOffset>
<hediffDef>FeelingBroken</hediffDef>
<minSeverity>0.3</minSeverity>
<roleId>victim</roleId>
</li>
<li Class="RJWSexperience.RitualOutcomeComp_HediffBased">
<li Class="RJWSexperience.Ideology.RitualOutcomeComp_HediffBased">
<label>victim extremly broken</label>
<qualityOffset>0.2</qualityOffset>
<hediffDef>FeelingBroken</hediffDef>
<minSeverity>0.5</minSeverity>
<roleId>victim</roleId>
</li>
<li Class="RJWSexperience.RitualOutcomeComp_HediffBased">
<li Class="RJWSexperience.Ideology.RitualOutcomeComp_HediffBased">
<label>victim completely broken</label>
<qualityOffset>0.4</qualityOffset>
<hediffDef>FeelingBroken</hediffDef>
<minSeverity>0.9</minSeverity>
<roleId>victim</roleId>
</li>
<li Class="RJWSexperience.RitualOutcomeComp_NeedBased">
<li Class="RJWSexperience.Ideology.RitualOutcomeComp_NeedBased">
<label>statisfied participants</label>
<qualityOffset>0.2</qualityOffset>
<needDef>Sex</needDef>
@ -123,21 +123,21 @@
<qualityOffset>0.2</qualityOffset>
<expectedThingLabelTip>an altar</expectedThingLabelTip>
</li>
<li Class="RJWSexperience.RitualOutcomeComp_HediffBased">
<li Class="RJWSexperience.Ideology.RitualOutcomeComp_HediffBased">
<label>breedee broken</label>
<qualityOffset>0.3</qualityOffset>
<hediffDef>FeelingBroken</hediffDef>
<minSeverity>0.3</minSeverity>
<roleId>victim</roleId>
</li>
<li Class="RJWSexperience.RitualOutcomeComp_HediffBased">
<li Class="RJWSexperience.Ideology.RitualOutcomeComp_HediffBased">
<label>breedee extremly broken</label>
<qualityOffset>0.3</qualityOffset>
<hediffDef>FeelingBroken</hediffDef>
<minSeverity>0.5</minSeverity>
<roleId>victim</roleId>
</li>
<li Class="RJWSexperience.RitualOutcomeComp_HediffBased">
<li Class="RJWSexperience.Ideology.RitualOutcomeComp_HediffBased">
<label>breedee completely broken</label>
<qualityOffset>0.6</qualityOffset>
<hediffDef>FeelingBroken</hediffDef>
@ -211,7 +211,7 @@
</points>
</curve>
</li>
<li Class="RJWSexperience.RitualOutcomeComp_NeedBased">
<li Class="RJWSexperience.Ideology.RitualOutcomeComp_NeedBased">
<label>statisfied participants</label>
<qualityOffset>0.7</qualityOffset>
<needDef>Sex</needDef>

View file

@ -4,7 +4,7 @@
<Operation Class="PatchOperationAdd">
<xpath>Defs/StatDef[defName="Vulnerability"]/parts</xpath>
<value>
<li Class="RJWSexperience.StatPart_GenderPrimacy">
<li Class="RJWSexperience.Ideology.StatPart_GenderPrimacy">
<modifier>0.5</modifier>
</li>
</value>

View file

@ -24,9 +24,9 @@
</Operation>
<Operation Class="PatchOperationConditional">
<xpath>Defs/ThoughtDef[defName="MyMotherDied" or defName="MyFatherDied" or defName="MyGrandchildDied" or defName="MySisterDied" or defName="MyBrotherDied" or defName="MyDaughterDied" or defName="MySonDied" or defName="WitnessedDeathFamily" ]/nullifyingPrecepts</xpath>
<xpath>Defs/ThoughtDef[defName="MyMotherDied" or defName="MyFatherDied" or defName="MyGrandchildDied" or defName="MySisterDied" or defName="MyBrotherDied" or defName="MyDaughterDied" or defName="MySonDied" or defName="WitnessedDeathFamily" or defName="MyPupDied" or defName="MyPupDiedFemale" or defName="KilledMyPup" or defName="KilledMyPupFemale" or defName="SoldMyPup" ]/nullifyingPrecepts</xpath>
<nomatch Class="PatchOperationAdd">
<xpath>Defs/ThoughtDef[defName="MyMotherDied" or defName="MyFatherDied" or defName="MyGrandchildDied" or defName="MySisterDied" or defName="MyBrotherDied" or defName="MyDaughterDied" or defName="MySonDied" or defName="WitnessedDeathFamily" ]</xpath>
<xpath>Defs/ThoughtDef[defName="MyMotherDied" or defName="MyFatherDied" or defName="MyGrandchildDied" or defName="MySisterDied" or defName="MyBrotherDied" or defName="MyDaughterDied" or defName="MySonDied" or defName="WitnessedDeathFamily" or defName="MyPupDied" or defName="MyPupDiedFemale" or defName="KilledMyPup" or defName="KilledMyPupFemale" or defName="SoldMyPup"]</xpath>
<value>
<nullifyingPrecepts>
<li>SocialAffection_Psychopath</li>
@ -35,7 +35,7 @@
</value>
</nomatch>
<match Class="PatchOperationAdd">
<xpath>Defs/ThoughtDef[defName="MyMotherDied" or defName="MyFatherDied" or defName="MyGrandchildDied" or defName="MySisterDied" or defName="MyBrotherDied" or defName="MyDaughterDied" or defName="MySonDied" or defName="WitnessedDeathFamily" ]/nullifyingPrecepts</xpath>
<xpath>Defs/ThoughtDef[defName="MyMotherDied" or defName="MyFatherDied" or defName="MyGrandchildDied" or defName="MySisterDied" or defName="MyBrotherDied" or defName="MyDaughterDied" or defName="MySonDied" or defName="WitnessedDeathFamily" or defName="MyPupDied" or defName="MyPupDiedFemale" or defName="KilledMyPup" or defName="KilledMyPupFemale" or defName="SoldMyPup"]/nullifyingPrecepts</xpath>
<value>
<li>SocialAffection_Psychopath</li>
<li>SocialAffection_Dry</li>

View file

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 5.6 KiB

View file

Before

Width:  |  Height:  |  Size: 402 B

After

Width:  |  Height:  |  Size: 402 B

View file

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View file

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

View file

Before

Width:  |  Height:  |  Size: 8.4 KiB

After

Width:  |  Height:  |  Size: 8.4 KiB

View file

Before

Width:  |  Height:  |  Size: 9.7 KiB

After

Width:  |  Height:  |  Size: 9.7 KiB

View file

Before

Width:  |  Height:  |  Size: 7.3 KiB

After

Width:  |  Height:  |  Size: 7.3 KiB

View file

Before

Width:  |  Height:  |  Size: 5.2 KiB

After

Width:  |  Height:  |  Size: 5.2 KiB

View file

Before

Width:  |  Height:  |  Size: 8.8 KiB

After

Width:  |  Height:  |  Size: 8.8 KiB

View file

Before

Width:  |  Height:  |  Size: 9.4 KiB

After

Width:  |  Height:  |  Size: 9.4 KiB

View file

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 5.6 KiB

View file

@ -1,3 +1,11 @@
Version Beta 1.0.1.9
- removed consciousness and manipulation factors from sex ability stat
- fixed rituals get canceled after the victim being incapacitated
- does not apply on your save. (you should remove and add rituals again using debug mod)
- fixed victim's requirement
- fixed wrong rulepack
- fixed VTE confliction
Version Beta 1.0.1.8
- fixed animal gangbang doesn't work properly
- fixed bastard relation was not removed after marriage