Jump to content

RimJobWorld [RJW]


semigimp

Recommended Posts

Posted

 

This is at least partly correct. A female that ends up with a penis somehow can impregnate other women. And themselves, even if they lack a vagina.

 

And this is with C&P? Interesting... no idea how that can happen. I assume the latter instance is still a result of sex with another pawn, not some bizarre spontaneous solo thing?

 

If that's the case, then I assume adding the dong is setting a fertility stat on the pawn - one that's shared by C&P. Then, rather than checking for the existence of the organs, it's simply rolling a check against the fertility of any pawn in the current pair, and if successful, randomly impregnates a female pawn in that pair with the checked pawn's baby.

 

Sounds like a strange approach, but given that C&P's authors had no reason to account for pairings other than male/female, it might have just been simpler to do it this way.

Posted

 

 

This is at least partly correct. A female that ends up with a penis somehow can impregnate other women. And themselves, even if they lack a vagina.

 

And this is with C&P? Interesting... no idea how that can happen. I assume the latter instance is still a result of sex with another pawn, not some bizarre spontaneous solo thing?

 

If that's the case, then I assume adding the dong is setting a fertility stat on the pawn - one that's shared by C&P. Then, rather than checking for the existence of the organs, it's simply rolling a check against the fertility of any pawn in the current pair, and if successful, randomly impregnates a female pawn in that pair with the checked pawn's baby.

 

Sounds like a strange approach, but given that C&P's authors had no reason to account for pairings other than male/female, it might have just been simpler to do it this way.

 

I couldn't tell if it was before or after a pregnancy check, but RJW checks for parts not gender when determining parents. In my game, which bypasses the RJW pregnancy by calling C&P's. I had one pawn as a female with a dick, no vagina and another was a normal female. They would both become pregnant. at about the same time. I think RJW only checks for the presence of a female to determine if there is a pregnancy chance, and then searches for who has what parts to determine the parents.

 

Posted

 

I couldn't tell if it was before or after a pregnancy check, but RJW checks for parts not gender when determining parents. In my game, which bypasses the RJW pregnancy by calling C&P's. I had one pawn as a female with a dick, no vagina and another was a normal female. They would both become pregnant. at about the same time. I think RJW only checks for the presence of a female to determine if there is a pregnancy chance, and then searches for who has what parts to determine the parents.

 

Ah, alright. That does lead back to my earlier statement to StarlightG though - that throwing out RJW's pregnancy code in favor of C&P's might not be the best idea, since C&P was never designed to handle situations that RJW can allow.

 

Plus obviously it means no interspecies pregnancies, which is always a shame :P

Posted

hello,

 

never seen that happen Clrperp, and I've had an extensive game with all herms, going through the code though RJW and C&P don't check for any genitalia, but check for the pawns gender and uses this to determine if they can get pregnant and if pregnancy should be rolled, I've tried messing with this and got the behavior you saw where a herm can get herself pregnant after sex with a woman, but it was unstable so I (meant to, think I may have forgotten >.<) reverted the change. Perhaps you have a different version to what I'm building off of, perhaps you could post it if so, would love to look at that code.

(this is the relevant code I think -  located in xxx.cs very near the end, Pawn and Part seems to refer to if they were the user or comfort prisoner

public static void impregnate(Pawn pawn, Pawn part) {
            if (pawn == null || part == null) return;
            Log.Message("xxx::impregnate( " + pawn.NameStringShort + ", " + part.NameStringShort + " ) called");
 
            Pawn male, female;
            if (pawn.gender == Gender.Male && part.gender == Gender.Female) {
                male = pawn;
                female = part;
            } else if (part.gender == Gender.Male) {
                male = part;
                female = pawn;
            }
            else if (part.gender == (Gender.Male & Gender.Female))
            {
                male = part;
                female = pawn;
            } else {
                Log.Message("[RJW] Same sex pregnancies not currently supported...");
                return;
            }
)

Centerflag, The code that determines if the child is an animal or human for hybrids is a single line of code, I was thinking of adding this to C&P and removing the check that there isn't an animal in the pairing to preserve the ability for hybrid pregnancies. Should be pretty simple once I figure out how to patch it in. which is this:

if (father != null && HugsLibInj.pregnancy_use_parent_method && (100 * Rand.Value) > HugsLibInj.pregnancy_weight_parent) {

                    spawn_parent = father;
located in harmony >patches_pregnancy
Posted

1.4.6 B Works pretty damn good so far, only a few problems such as animals moving around rather than doing an animation when animal lovin is happening, im guessing animals work on a different system so it might be tricky to fix that, and maybe normal lovin in bed could use an animation. Traits like Necrophiliac or Zoophiliac are contradicted by negative thoughts like "observed a corpse" and rape seems to leave the "i was raped" and "name allowed me to be raped" negative thought/opinion on both the victim and the rapist. I basically disabled std related stuff because it's just extra junk to deal with when your entire colony is recovering in beds from a raid then your last one gets an std and cant even treat themselves or some shit lol 

Posted

So does the non B version updates have it's own pregnancy system?  Or is the only way to get pregnant pawns is to use C&P?  I read through the update history and it makes it sound like you need both, but reading through the forum makes it sound like that's not true.

Posted

 

hello,

 

never seen that happen Clrperp, and I've had an extensive game with all herms, going through the code though RJW and C&P don't check for any genitalia, but check for the pawns gender and uses this to determine if they can get pregnant and if pregnancy should be rolled, I've tried messing with this and got the behavior you saw where a herm can get herself pregnant after sex with a woman, but it was unstable so I (meant to, think I may have forgotten >.<) reverted the change. Perhaps you have a different version to what I'm building off of, perhaps you could post it if so, would love to look at that code.

(this is the relevant code I think -  located in xxx.cs very near the end, Pawn and Part seems to refer to if they were the user or comfort prisoner

public static void impregnate(Pawn pawn, Pawn part) {
            if (pawn == null || part == null) return;
            Log.Message("xxx::impregnate( " + pawn.NameStringShort + ", " + part.NameStringShort + " ) called");
 
            Pawn male, female;
            if (pawn.gender == Gender.Male && part.gender == Gender.Female) {
                male = pawn;
                female = part;
            } else if (part.gender == Gender.Male) {
                male = part;
                female = pawn;
            }
            else if (part.gender == (Gender.Male & Gender.Female))
            {
                male = part;
                female = pawn;
            } else {
                Log.Message("[RJW] Same sex pregnancies not currently supported...");
                return;
            }
)

Centerflag, The code that determines if the child is an animal or human for hybrids is a single line of code, I was thinking of adding this to C&P and removing the check that there isn't an animal in the pairing to preserve the ability for hybrid pregnancies. Should be pretty simple once I figure out how to patch it in. which is this:

if (father != null && HugsLibInj.pregnancy_use_parent_method && (100 * Rand.Value) > HugsLibInj.pregnancy_weight_parent) {

                    spawn_parent = father;
located in harmony >patches_pregnancy

 

 

Should be realatively simple to replace gender check with body part check. Alas, I don't know the syntax

 

Posted

So does the non B version updates have it's own pregnancy system?  Or is the only way to get pregnant pawns is to use C&P?  I read through the update history and it makes it sound like you need both, but reading through the forum makes it sound like that's not true.

 

The 'Normal' version has it's own internal pregnancy check and an override for vanilla pregnancy, as such does not require C&P, but does mean that human children from rape don't follow the C&P rules for trait inheritance at all. This is why I made the "b" version as a temporary fix while I work on a better solution.

 

For those asking if using C&P as the basis for all pregnancies, it should work, the code for this (hybrids) is literally 1 line which should be able to be inserted with no issues, would just have to remove the check C&P makes to make sure there isn't an animal in the pairing, Thirite has made a lot of code to stop us doing this type of thing, he even at one point made C&P check for RJW and cause a CTD if it found it in the mod list, getting rid of this malicious code will probably be the biggest hurdle once I've learnt the coding I need for this.

Posted

So this actually adds the genitals defined the privates variable:

 

pawn.health.AddHediff(privates, genitalPart);

 

 

So...

       public static BodyPartRecord has_peenus(Pawn pawn)
        {
            BodyPartRecord Peenus = pawn.RaceProps.body.AllParts.Find((BodyPartRecord bpr) => String.Equals(bpr.def.defName, "Penis"));

            if (Peenus == null) {
                return null;
            }

            return has_peenus;
        }

Or something.

 

So "pawn" (initatior) and "part" (target) have to be checked for both penis and vagina and then re-defined as either male, female or herm

 

Female or male in this case are VARIABLES that simply hold the specific pawn identifier, so it could very well be Pawn1 and Pawn2. Just variables/pointers.

 

 

This is the actual xxx code

            // fertility check
            float fertility = 1.0f;
            float pregnancy_threshold = fertility * Math.Max(1 - (Math.Max(female.ageTracker.AgeBiologicalYearsFloat - 25, 0) / 25), 0) * 0.33f;
            float pregnancy_chance = Rand.Value;

            if (pregnancy_chance > pregnancy_threshold)
            {
                Log.Message("[RJW] Impregnation failed. Chance was " + pregnancy_chance + " vs " + pregnancy_threshold);
                return;
            }

            Hediff_Pregnant hediff_pregnant = (Hediff_Pregnant)HediffMaker.MakeHediff(HediffDef.Named("Pregnant"), female);
            hediff_pregnant.father = male;
            female.health.AddHediff(hediff_pregnant);
            Log.Message("[RJW] Impregnation succeeded. Chance was " + pregnancy_chance + " vs " + pregnancy_threshold);

        }

        public static void TryImpregnate_RimWorldChildren(Pawn female, Pawn male)
        {
            // fertility check
            float fertility = 1.0f;
            float pregnancy_threshold = fertility * Math.Max(1 - (Math.Max(female.ageTracker.AgeBiologicalYearsFloat - 25, 0) / 25), 0) * 0.33f;
            float pregnancy_chance = Rand.Value;

            BodyPartRecord torso = female.RaceProps.body.AllParts.Find(x => x.def == BodyPartDefOf.Torso);
            var human_pregnancy = DefDatabase<HediffDef>.GetNamed("HumanPregnancy", false);
            if (female.health.hediffSet.HasHediff(HediffDefOf.Pregnant) || female.health.hediffSet.HasHediff(human_pregnancy, torso))
            {
                Log.Message("[RJW] C&P target is already pregnant, bailing");
                return;
            }

            var contraceptive = DefDatabase<HediffDef>.GetNamed("Contraceptive", false);
            if (female.health.hediffSet.HasHediff(contraceptive, null) || male.health.hediffSet.HasHediff(contraceptive, null))
            {
                pregnancy_threshold = 0.0f;
            }

            if (pregnancy_chance > pregnancy_threshold)
            {
                Log.Message("[RJW] C&P impregnation failed. Chance was " + pregnancy_chance + " vs " + pregnancy_threshold);
                return;
            }

            Hediff_HumanPregnancy hediff_Pregnant = (Hediff_HumanPregnancy)HediffMaker.MakeHediff(HediffDef.Named("HumanPregnancy"), female, torso);
            hediff_Pregnant.father = male;
            female.health.AddHediff(hediff_Pregnant, torso, null);
            Log.Message("[RJW] C&P impregnation succeeded. Chance was " + pregnancy_chance + " vs " + pregnancy_threshold);

        }
Posted

 

So does the non B version updates have it's own pregnancy system?  Or is the only way to get pregnant pawns is to use C&P?  I read through the update history and it makes it sound like you need both, but reading through the forum makes it sound like that's not true.

 

The 'Normal' version has it's own internal pregnancy check and an override for vanilla pregnancy, as such does not require C&P, but does mean that human children from rape don't follow the C&P rules for trait inheritance at all. This is why I made the "b" version as a temporary fix while I work on a better solution.

 

For those asking if using C&P as the basis for all pregnancies, it should work, the code for this (hybrids) is literally 1 line which should be able to be inserted with no issues, would just have to remove the check C&P makes to make sure there isn't an animal in the pairing, Thirite has made a lot of code to stop us doing this type of thing, he even at one point made C&P check for RJW and cause a CTD if it found it in the mod list, getting rid of this malicious code will probably be the biggest hurdle once I've learnt the coding I need for this.

 

 

Thanks for the reply.  So if I use the B version with C&P will C&P recognize the sex events caused by RJWb as possible pregnancy triggers?  Or will C&P be totally separate using only the vanilla actions and RJWb would be just for fun?

Posted

 

 

So does the non B version updates have it's own pregnancy system?  Or is the only way to get pregnant pawns is to use C&P?  I read through the update history and it makes it sound like you need both, but reading through the forum makes it sound like that's not true.

 

The 'Normal' version has it's own internal pregnancy check and an override for vanilla pregnancy, as such does not require C&P, but does mean that human children from rape don't follow the C&P rules for trait inheritance at all. This is why I made the "b" version as a temporary fix while I work on a better solution.

 

For those asking if using C&P as the basis for all pregnancies, it should work, the code for this (hybrids) is literally 1 line which should be able to be inserted with no issues, would just have to remove the check C&P makes to make sure there isn't an animal in the pairing, Thirite has made a lot of code to stop us doing this type of thing, he even at one point made C&P check for RJW and cause a CTD if it found it in the mod list, getting rid of this malicious code will probably be the biggest hurdle once I've learnt the coding I need for this.

 

 

Thanks for the reply.  So if I use the B version with C&P will C&P recognize the sex events caused by RJWb as possible pregnancy triggers?  Or will C&P be totally separate using only the vanilla actions and RJWb would be just for fun?

 

 

C&P would only call for pregnancy within it's own operation if you are using the "B" version, so when couples are getting it on, or a random hookup if you are using romance diversified, though as RJW adds more ways for them to satisfy themselves, it'll happen less often.

 

@Soronarr, I considered adding a herm definition as a third gender, but on consideration I think this would require a lot more code to be overridden both in vanilla and C&P to add a third gender, considering the important part is who is assigned the female gender and who has been assigned male, it would be better and easier imo, to set up the 7 configurations possible based on part and pawn, male > female, female > male, herm > male, herm > female, male > herm, female > herm and herm > herm, and configure who is the bottom (female in the code) on all of the possibilities, this is how I was planning on solving this myself. again, this could just be added to the C&P code with an override allowing herms to make babies in consensual sex as well as the RJW events.

Posted

I've been running into a rather annoying thing with RJW, and that sometimes when peeps engage in sex their clothes get removed then consumed. Basically when they take of their clothes, have sex, and the game just deletes their clothes. It's not constant but still annoying as it's constantly making my tailor working on clothes and not progressing.

 

Also, even after removing/nullifying genitals they are having sex and getting pregnant. Is that supposed to be a thing? (Not sure if this needed to be here or on the pregnancy mod thread).

Posted

 

 

@Soronarr, I considered adding a herm definition as a third gender, but on consideration I think this would require a lot more code to be overridden both in vanilla and C&P to add a third gender, considering the important part is who is assigned the female gender and who has been assigned male, it would be better and easier imo, to set up the 7 configurations possible based on part and pawn, male > female, female > male, herm > male, herm > female, male > herm, female > herm and herm > herm, and configure who is the bottom (female in the code) on all of the possibilities, this is how I was planning on solving this myself. again, this could just be added to the C&P code with an override allowing herms to make babies in consensual sex as well as the RJW events.

 

 

I think you're overthinking it. Why 7 combinations?

 

Pawn A - has penis (yes/no), has vagina (yes/no)

Pawn B - has penis (yes/no), has vagina (yes/no)

 

In pseudo-code

PawnA - initiator
PawnB - target

IF has_penis(PawnA) = true THEN
	{
	IF has_vagina (PawnB) = true THEN do_pregnancy_calc (PawnA, PawnB)
	}
ELSE
	IF has_vagina (PawnA) = true THEN
		{
		IF has_penis (PawnB) = true THEN do_pregnancy_calc (PawnB, PawnA)
		}
	ELSE
		{RETURN "no valid genitals!"}
	/IF
/IF	

 

Posted

This might be better: (Not actual code, just a logic example)

PawnA - initiator
PawnB - target


IF (has_penis(PawnA) = true) AND (has_vagina(PawnA) = true)  //check if Pawn A is herm
{
	IF (has_penis(PawnB) = true) AND (has_vagina(PawnB) = true)  //is Pawn B a herm?
		{
		// 50% chance to do do_preg_check (PawnB, PawnA), 50% to do do_preg_check (PawnA, PawnB)
		}
		ELSEIF (has_penis(PawnB) = true)        //Pawn A herm, Pawn B male
			{do_preg_check (PawnB, PawnA)}		
		ELSEIF (has_vagina(PawnB) = true)       //Pawn A herm, Pawn B female	
			{do_preg_check (PawnA, PawnB)}
		ELSE
			{RETURN: "No valid genitals!"}
	/IF		
}

ELSEIF (has_penis(PawnA) = true)   //Pawn A is only male
{
	IF (has_vagina(PawnB) = true)  //check if Pawn B has a vagina, we don't care for other scenarios
	   {do_preg_check (PawnA, PawnB)}
	ELSE
	    {RETURN: "No valid genitals!"}
	/IF
}

ELSEIF (has_vagina(PawnA) = true)  //Pawn A is only female
{
	IF (has_penis(PawnB) = true)    //check if Pawn B has a penis, we don't care for other scenarios
	   {do_preg_check (PawnB, PawnA)}
	ELSE
	   {RETURN: "No valid genitals!"}
	/IF
}

/IF
Posted

 

Thirite has made a lot of code to stop us doing this type of thing, he even at one point made C&P check for RJW and cause a CTD if it found it in the mod list

 

What a fucking dick... who does that? I can see an actual developer trying to prevent mods like this for legal reasons, but one modder attempting to fuck over others? Seriously?

Posted

Well if thats true, best maybe would be to develope RimJobWorld independent from C&P with its contents, if possible?

No idea why a modder goes against another. Didnt happen for a long time as far as i noticed.

Posted

For those who didn't know the maker of C&P has some shall we say strong views on sex and basically called everyone wanting sex with monster girls or furries in the game deviants He said other things as well but that's the gist.

Posted

 

 

Thirite has made a lot of code to stop us doing this type of thing, he even at one point made C&P check for RJW and cause a CTD if it found it in the mod list

 

What a fucking dick... who does that? I can see an actual developer trying to prevent mods like this for legal reasons, but one modder attempting to fuck over others? Seriously?

 

 

 

For those who didn't know the maker of C&P has some shall we say strong views on sex and basically called everyone wanting sex with monster girls or furries in the game deviants He said other things as well but that's the gist.

 

If I recall right, while he was upset at such things the main reason he coded a check for RJW was because people over at a different forum made a version of the mod that removed the hardcoded minimum age. He unsurprisingly was unhappy that people were using his mod (which I'll remind you adds babies, toddlers, and children to the game) to do fairly worrisome things when mixed with the modified version of RJW.

 

He knows fairly well that people can modify C&P to work with RJW again and even copy code and art from his mod and implement it directly into RJW with a bit of work. It was more of a way of telling people that he did not approve of these actions and I can't blame him for such; after all he felt his creation was being poisoned.

Posted

 

 

Thirite has made a lot of code to stop us doing this type of thing, he even at one point made C&P check for RJW and cause a CTD if it found it in the mod list

What a fucking dick... who does that? I can see an actual developer trying to prevent mods like this for legal reasons, but one modder attempting to fuck over others? Seriously?

IIRC, he did remove this code from his mod. Don't judge Thirite too harsh. At first i was with the critisizing part of crowd, now i kinda can get his point:

1. He made mod which adds children in game. Inbefore, it has no children.

2. He was informed by someone (i don't know who), that some user of 4ch had made a mod which adds sex in game. That is correct. Also, he was informed that when mods are together, it can allow the child abuse.

3. He can't connect to this anonymous user (RJW author) and somehow make sure that this is incorrect, and no one will get to this very questionable behaviour.

4. He decides to simply block RimWorld loading when mods are both present so he won't be in any way blamed in that topic. Laws, rules, you know, it's all different around the world. Can't tell when you're safe.

5. After many users told him that RJW has age checks, so there is no point to have disabling function in the release, he removed it.

Also he includes the sources of his mod, so one could make his own builds.

Not saying that he is all-nice person (you can read his posts, some of them are rather rude), but still.

Why bother with separate handling of pregnancies if here is C&P which worked fine? Isn't it better to polish RJW's own flaws/add related content than re-making parts of game which are already implemented in other mods?

Posted

I agree with your point here to Nether, the worry of child abuse meant he had to be careful so I no longer judge him especially now that he has adjusted his mod since learning about the age checks.  Anyway, he's released an update, to C&P.  also before I grabbed the update I was getting some harmony issues with RJW and C&P.  Though it just is with C&P on its own I'm going to test it in a different load order to see f it's specifically these two causing issues or just bad placement.

Posted

yeah, the child abuse is new news to me, and mollifies my opinion on his actions quite a bit, that's pretty sickening when you think of it. Possibly could have explained his reasoning a bit rather then just hiding a landmine in the code though, malicious code is never acceptable in my books, even if it just forces a shutdown. Perhaps a better way would be to have a child die if they're a victim with a very large mood debuff for a long time for everyone, and all faction relations set to the minimum possible. Might add the code myself, once animal ages are fixed.

 

And Soonar, I have no idea how to code that >.< the logic is sound, but my syntax needs a lot of work

Posted

yeah, the child abuse is new news to me, and mollifies my opinion on his actions quite a bit, that's pretty sickening when you think of it. Possibly could have explained his reasoning a bit rather then just hiding a landmine in the code though, malicious code is never acceptable in my books, even if it just forces a shutdown. Perhaps a better way would be to have a child die if they're a victim with a very large mood debuff for a long time for everyone, and all faction relations set to the minimum possible. Might add the code myself, once animal ages are fixed.

 

And Soonar, I have no idea how to code that >.< the logic is sound, but my syntax needs a lot of work

 

I don't think there's much of a point since RJW already has a hardcoded minimum age. Might as well just ensure that said hardcode is still there and move on. I forget the specific name of a forum, but they again modified RJW to remove said hardcoded age. If they can do that, it'll be no more difficult to remove some kind of debuff death.

 

Sadly, any block you place can be taken away for people with the time. The positive, however, is that for every update of RJW released they are going to have to again make a new branch without the hardcoded minimum age. Meaning that it'll at least be a bit annoying for them to have to wait for someone a bit savvy to keep doing this.

 

So yeah, my opinion is continue development of RJW normally since anything you put in place can be modded out and the hardcoded minimum age is as good as anything else.

Posted

Yeah i like the mod specially because it's hard coded to protect from child abuse.  Also not sure what i did but i got the harmony patch issue to fix it's self i think it has something to do with the combat extended mod i was using which surprised me.

Posted

Could someone list the dependencies of the mod? would be nice to have those in the first post itself, if that's doable.

Because right now, i'm trying to set up a new game with rjw and this thread is a mess. I can't see which version is the most recent, what i need to run with it to run it without errors for hours and what i should run, to get the maximum out of it.

 

And a special question: do i get to milk pregnant (lactating) people? Would make feeding kids easier and making cheese a lot kinkier ;)

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...