r+=` is a <strong><span class="coral">${SlaveTitle(child)}</span></strong> `;
// r += App.Desc.devotionAndTrust(child); TODO:
r+=App.Desc.ageAndHealth(child);
if (!V.saleDescription){
if (V.clinic&&V.clinicUpgradeScanner){
if (child.chem>15){
r+=`${V.clinicNameCaps}'s scanners score long term carcinogenic buildup in ${his} body at <span class="cyan">${Math.ceil(child.chem/10)}</span>. `;
}else{
r+=`${V.clinicNameCaps}'s scanners confirm that ${he} has good prospects for long term health. `;
}
}
// TODO: this will all need to be changed since children will be born in the arcology
if (V.showSexualHistory&&V.ui!=="start"){
letweeksOwned=V.week-child.weekAcquired;
r+=`${He} has been with you `;
if (child.weekAcquired===0){
r+=`since before you owned the arcology, `;
}elseif (child.weekAcquired===1){
r+=`since you first took control of the arcology `;
}elseif (weeksOwned>1){
r+=`${weeksOwned} weeks, `;
}else{
r+=`one week, `;
}
letoral=child.counter.oral;
letvaginal=child.counter.vaginal;
letanal=child.counter.oral;
letmammary=child.counter.mammary;
letpenetrative=child.counter.penetrative;
lettotal=oral+vaginal+anal+mammary+penetrative;
if (total>0){
r+=`and has been fucked about ${total} times, including `;
if ((vaginal+anal+mammary+penetrative)>0){
if (vaginal>0){
r+=`${vaginal} vanilla, `;
}
if (anal>0){
r+=`${anal} anal, `;
}
if (mammary>0){
r+=`${mammary} mammary `;
}
if (penetrative>0){
r+=`${penetrative} penetrating, `;
}
r+=` and `;
}
r+=`${oral} oral sexual encounters. `;
}else{
if (weeksOwned>=1){
r+=`and `;
}else{
r+=`${He} `;
}
r+=`has had little or no sexual experience `;
if (child.weekAcquired!==0){
r+=`as your slave `;
}else{
r+=`in your new arcology `;
}
r+=`yet. `;
}
letsortedCounts=[];
sortedCounts.push(
{type:"oral",value:oral},
{type:"vaginal",value:vaginal},
{type:"anal",value:anal},
{type:"mammary",value:mammary},
{type:"penetrative",value:penetrative}
);
sortedCounts=sortedCounts.sort(function(a,b){// sorts the counts from largest to smallest
returnb.value-a.value;
});
if (sortedCounts[0].type==="oral"){
if (((weeksOwned*112)/oral)<4){
r+=`Remarkably, this means that ${he}'s sucked something off `;
if (((weeksOwned*112)/oral)<1){
r+=`more than once every hour `;
}elseif (((weeksOwned*112)/oral)<1.5){
r+=`about once every hour `;
}elseif (((weeksOwned*112)/oral)<2.5){
r+=`about once every two hours `;
}elseif (((weeksOwned*112)/oral)<3.5){
r+=`about once every three hours `;
}else{
r+=`about once every four hours `;
}
r+=` ${he}'s spent awake. `;
}
}elseif (sortedCounts[0].type==="vaginal"){
if (((weeksOwned*112)/oral)<4){
r+=`Remarkably, this means that ${his} pussy has been fucked `;
if (((weeksOwned*112)/oral)<1){
r+=`more than once every hour `;
}elseif (((weeksOwned*112)/oral)<1.5){
r+=`about once every hour `;
}elseif (((weeksOwned*112)/oral)<2.5){
r+=`about once every two hours `;
}elseif (((weeksOwned*112)/oral)<3.5){
r+=`about once every three hours `;
}else{
r+=`about once every four hours `;
}
r+=` ${he}'s spent awake. `;
}
}elseif (sortedCounts[0].type==="anal"){
if (((weeksOwned*112)/oral)<4){
r+=`Remarkably, this means that ${he}'s been buttfucked `;
if (((weeksOwned*112)/oral)<1){
r+=`more than once every hour `;
}elseif (((weeksOwned*112)/oral)<1.5){
r+=`about once every hour `;
}elseif (((weeksOwned*112)/oral)<2.5){
r+=`about once every two hours `;
}elseif (((weeksOwned*112)/oral)<3.5){
r+=`about once every three hours `;
}else{
r+=`about once every four hours `;
}
r+=` ${he}'s spent awake. `;
}
}elseif (sortedCounts[0].type==="mammary"){
if (((weeksOwned*112)/oral)<4){
r+=`Remarkably, this means that ${he}'s put ${his} tits to work `;
if (((weeksOwned*112)/oral)<1){
r+=`more than once every hour `;
}elseif (((weeksOwned*112)/oral)<1.5){
r+=`about once every hour `;
}elseif (((weeksOwned*112)/oral)<2.5){
r+=`about once every two hours `;
}elseif (((weeksOwned*112)/oral)<3.5){
r+=`about once every three hours `;
}else{
r+=`about once every four hours `;
}
r+=` ${he}'s spent awake. `;
}
}elseif (sortedCounts[0].type==="penetrative"){
if (((weeksOwned*112)/oral)<4){
r+=`Remarkably, this means that ${he}'s pounded a hole `;
if (((weeksOwned*112)/oral)<1){
r+=`more than once every hour `;
}elseif (((weeksOwned*112)/oral)<1.5){
r+=`about once every hour `;
}elseif (((weeksOwned*112)/oral)<2.5){
r+=`about once every two hours `;
}elseif (((weeksOwned*112)/oral)<3.5){
r+=`about once every three hours `;
}else{
r+=`about once every four hours `;
}
r+=` ${he}'s spent awake. `;
}
}
}
r+=App.Desc.eyes(child);
if (child.fetish==="mindbroken"){
r+=`However, <span class="coral">${his} mind is fundamentally broken;</span> everything ${he} experiences will quickly be forgotten. `;
}
// App.Desc.fetish(child); TODO:
switch (child.behavioralFlaw){
case"arrogant":
if (child.devotion<-20&&child.trust>=-20){
r+=`${He} is still <span class="red">arrogant</span> at heart, but does ${his} best to hide it out of fear. `;
}elseif (child.devotion<-20){
r+=`${He} is <span class="red">arrogant</span> and seems to think slavery beneath ${him}. `;
}elseif (child.devotion<=20){
r+=`Despite being well broken, ${he} seems to retain hints of <span class="red">arrogance.</span> `;
}else{
r+=`${He} is <span class="red">bitchy</span> and insults you every chance ${he} gets. `;
}
break;
case"bitchy":
if (child.devotion<-20&&child.trust>=-20){
r+=`${He} is still <span class="red">bitchy</span> at times, but does ${his} best to keep quiet out of fear. `;
}elseif (child.devotion<-20){
r+=`${He} is <span class="red">bitchy</span> and constantly tries to get a word in edgewise. `;
}elseif (child.devotion<=20){
r+=`Since ${he} is well broken, ${he} tries to confine ${his} <span class="red">bitchy</span> remarks to your other slaves. `;
}else{
r+=`${He} strongly believes that <span class="red">slavery is wrong,</span> and resists it as best ${he} can. `;
}
break;
case"liberated":
if (child.devotion<-20&&child.trust>=-20){
r+=`${He} strongly believes that <span class="red">slavery is wrong,</span> but usually keeps quiet out of fear. `;
}elseif (child.devotion<-20){
r+=`${He} strongly believes that <span class="red">slavery is wrong,</span> and rarely misses a chance to complain about it. `;
}elseif (child.devotion<=20){
r+=`${He} strongly believes that <span class="red">slavery is wrong,</span> but has learned to keep it to ${himself}. `;
}else{
r+=`${He} is <span class="red">devoutly religious,</span> `;
}
break;
case"devout":
if (child.devotion<-20&&child.trust>=-20){
r+=`and uses ${his} faith as a wellspring of resistance. `;
}elseif (child.devotion<-20){
r+=`and uses ${his} faith as a place of refuge. `;
}elseif (child.devotion<=20){
r+=`and uses ${his} faith as a private place within ${himself}. `;
}else{
r+=`but has learned to keep ${his} faith private. `;
}
break;
case"odd":
r+=`${He} behaves <span class="red">oddly,</span> saying and doing random things. `;
break;
case"hates men":
r+=`${He} <span class="red">strongly dislikes</span> being around `;
if (child.attrXY>=85&&child.energy>=40){
r+=`men; since ${he} loves the dick, ${he}'s forced to put up with them. `;
}elseif (child.attrXY>=65&&child.energy>=40){
r+=`men; since ${he} likes the dick, ${he} reluctantly puts up with them. `;
}else{
r+=`men. `;
}
break;
case"hates women":
r+=`${He} <span class="red">strongly dislikes</span> being around `;
if (child.attrXX>=85&&child.energy>=40){
r+=`women; since ${he} loves pussy, ${he}'s forced to put up with them. `;
}elseif (child.attrXX>=65&&child.energy>=40){
r+=`women; since ${he} likes pussy, ${he} reluctantly puts up with them. `;
}else{
r+=`women. `;
}
break;
case"anorexic":
r+=`${He} suffers from <span class="red">anorexia.</span> `;
break;
case"gluttonous":
r+=`${He} <span class="red">tends to overeat</span> whenever ${he} can, reacting to the rigors of sexual slavery with overeating. `;
break;
}
switch (child.behavioralQuirk){
case"confident":
r+=`${He}'s <span class="green">confident,</span> and believes that ${he} has something of value to offer, even as a slave. `;
break;
case"cutting":
r+=`${He} often has a witty or <span class="green">cutting</span> remark ready, but knows when to keep them to ${himself}. `;
break;
case"funny":
r+=`${He}'s <span class="green">funny,</span> often providing a little comic relief. `;
break;
case"adores men":
r+=`${He} <span class="green">adores women,</span> and loves spending time with them. `;
break;
case"adores women":
r+=`${He} <span class="green">adores men,</span> and loves spending time with them. `;
break;
case"fitness":
r+=`${He}'s a <span class="green">fitness fanatic,</span> and almost gets off to a hard workout. `;
break;
case"insecure":
r+=`${He}'s <span class="green">insecure,</span> defining ${his} self worth by how much others want to fuck ${him}. `;
break;
case"sinful":
if (arcology.FSChattelRelionist==="unset"){
r+=`${He}'s delightfully <span class="green">sinful,</span> taking real pleasure in breaking cultural mores. `;
}else{
r+=`${He}'s a devout Chattel Religionist, and is aggressively <span class="green">sinful</span> against old world faiths. ${He} is enthusiastic about slutty religious clothing, and excited by intentional sacrilege like openly using old world religious icons as sex toys or having orgies on altars. `;
}
break;
case"advocate":
r+=`${He}'s an <span class="green">advocate</span> for slavery, and can articulate what it's done for ${him}. `;
break;
}
switch (child.sexualFlaw){
case"hates oral":
r+=`${He} <span class="red">hates</span> oral sex and tries to avoid it. `;
break;
case"hates anal":
r+=`${He} <span class="red">hates</span> anal sex and tries to avoid it. `;
break;
case"hates penetration":
r+=`${He} <span class="red">hates</span> penetration and tries to avoid it. `;
break;
case"repressed":
r+=`${He} is <span class="red">sexually repressed,</span> retaining a fundamental distaste for sex from ${his} upbringing. `;
break;
case"idealistic":
r+=`${He} is <span class="red">sexually idealistic,</span> retaining a belief that sex should be based on love and consent. `;
break;
case"shamefast":
r+=`${He} is <span class="red">shamefast,</span> suffering crippling anxiety when naked. `;
break;
case"apathetic":
r+=`${He} is <span class="red">sexually apathetic,</span> often slipping into inertness during sex. `;
break;
case"crude":
r+=`${He} is <span class="red">sexually crude,</span> and has little sense of what partners find disgusting during sex. `;
break;
case"judgemental":
r+=`${He} is <span class="red">sexually judgemental,</span> and often denigrates ${his} sexual partners' performance. `;
break;
case"cum addict":
r+=`${He}'s a <span class="yellow">cum addict:</span> ${he} has a deep psychological addiction to <<if $PC.dick == 1>>semen<<if $PC.vagina == 1>> and <</if>><</if>><<if $PC.vagina == 1>>pussyjuice<</if>> and becomes anxious if ${he} goes for a few hours without drinking any. `;
break;
case"anal addict":
r+=`${He}'s an <span class="yellow">anal addict:</span> ${he} has a deep psychological need to be fucked in the ass and becomes anxious if ${he} goes for a few hours without anal. `;
break;
case"attention whore":
r+=`${He}'s an <span class="yellow">attention whore:</span> shocking and titillating spectators is more important to ${him} than the actual pleasure of sex. `;
break;
case"breast growth":
r+=`${He} has a <span class="yellow">breast growth obsession:</span> ${he}'s nearly incapable of believing that ${his} breasts are big enough. `;
break;
case"abusive":
r+=`${He}'s sexually <span class="yellow">abusive:</span> ${he} prefers taking sexual pleasure by force to having it offered to ${him}. `;
break;
case"malicious":
r+=`${He}'s sexually <span class="yellow">malicious:</span> ${he} gets off on others' anguish. `;
break;
case"self hating":
r+=`${He}'s filled with <span class="yellow">self hatred,</span> and is disturbingly willing to comply with things that might hurt ${him}. `;
break;
case"neglectful":
r+=`${He}'s sexually <span class="yellow">self neglectful,</span> and often shows no interest in getting off ${himself}. `;
break;
case"breeder":
r+=`${He}'s <span class="yellow">obsessed with being bred</span> to the point of fetishizing pregnancy itself as much as any act that leads to it. `;
break;
}
switch (child.sexualQuirk){
case"gagfuck queen":
r+=`${He}'s a <span class="green">gagfuck queen:</span> ${he}'s able to safely take a rough facefuck. `;
break;
case"painal queen":
r+=`${He}'s a <span class="green">painal queen:</span> ${he} knows exactly how much ${he} can take without getting hurt. `;
break;
case"strugglefuck queen":
r+=`${He}'s a <span class="green">strugglefuck queen:</span> ${he} can gauge exactly how much resistance ${his} partners want. `;
break;
case"tease":
r+=`${He}'s a <span class="green">tease,</span> and often displays a little flash of ${himself} followed by a blush. `;
break;
case"romantic":
r+=`${He}'s a <span class="green">romantic,</span> and persists in innocent pleasure in the closeness of sex. `;
break;
case"perverted":
r+=`${He}'s <span class="green">perverted,</span> and enjoys breaking sexual boundaries. `;
break;
case"caring":
r+=`${He}'s <span class="green">caring,</span> and enjoys bringing partners pleasure more than getting off ${himself}. `;
break;
case"unflinching":
r+=`${He}'s <span class="green">unflinching,</span> willing to do anything, even by the standards of sex slaves. `;
break;
case"size queen":
r+=`${He}'s <span class="green">a size queen;</span> preferring big cock is almost ${his} trademark. `;
break;
}
if (child.fetishKnown){
switch (child.fetish){
case"submissive":
if (child.sexualFlaw==="apathetic"){
r+=`This sexual apathy plays into ${his} preference for <span class="lightcoral">submission.</span> `;
}elseif (child.behavioralFlaw==="arrogant"){
r+=`${His} arrogance is really just a thin shell to protect ${his} true need to <span class="lightcoral">submit.</span> `;
}elseif (child.fetishStrength>95){
r+=`${He}'s an extreme <span class="lightcoral">submissive,</span> and relishes the strictures of slavery. `;
}elseif (child.fetishStrength>60){
r+=`${He}'s a confirmed <span class="lightcoral">submissive,</span> and enjoys the strictures of slavery. `;
}else{
r+=`${He} has <span class="lightcoral">submissive</span> tendencies, and likes the strictures of slavery. `;
}
break;
case"cumslut":
if (child.sexualFlaw==="hates oral"){
r+=`${He}'s torn between ${his} <span class="lightcoral">love of semen</span> and ${his} dislike of having cocks in ${his} mouth. `;
}elseif (child.fetishStrength>95){
r+=`${He}'s a <span class="lightcoral">cumslut,</span> and loves giving blowjobs and receiving facials. `;
}elseif (child.fetishStrength>60){
r+=`${He} <span class="lightcoral">prefers giving oral,</span> and enjoys sucking dick and receiving facials. `;
}else{
r+=`${He} has an <span class="lightcoral">oral fixation,</span> and likes giving blowjobs and receiving facials. `;
}
break;
case"humiliation":
if (child.behavioralFlaw==="bitchy"){
r+=`${His} bitchiness is really just an expression of ${his} deep need to be <span class="lightcoral">humiliated</span> ${himself}. `;
}elseif (child.sexualFlaw==="shamefast"){
r+=`${His} shame is genuine, and it is with real self-loathing that ${he} <span class="lightcoral">gets off on humiliation.</span> `;
}elseif (child.fetishStrength>95){
r+=`${He}'s a slut for <span class="lightcoral">humiliation,</span> and gets off on having others see ${his} enslavement. `;
r+=`${His} hatred is just pretense to cover ${his} shame about how much ${he} really loves getting <span class="lightcoral">fucked in the butt.</span> `;
}elseif (child.fetishStrength>95){
r+=`${He}'s a <span class="lightcoral">buttslut,</span> happy to have anyone put anything up ${his} ass. `;
r+=`${He} has an <span class="lightcoral">anal fixation.</span> `;
}
break;
case"boobs":
if (child.fetishStrength>95){
r+=`${He} <span class="lightcoral">prefers mammary intercourse</span> to any other kind of sex, and readily climaxes to nipple stimulation. `;
}elseif (child.fetishStrength>60){
r+=`${He} enjoys <span class="lightcoral">breast play,</span> and is rapidly aroused by nipple stimulation. `;
}else{
r+=`${He} <span class="lightcoral">really likes boobs,</span> ${hers} and others. `;
}
break;
case"pregnancy":
if (child.fetishStrength>95){
r+=`${He} has a <span class="lightcoral">pregnancy fetish,</span> and finds anything related to reproduction sexy. `;
}elseif (child.fetishStrength>60){
r+=`${He} has an <span class="lightcoral">impregnation fantasy,</span> and enjoys bareback sex. `;
}else{
r+=`${He} has a recurring <span class="lightcoral">impregnation fantasy.</span> `;
}
break;
case"dom":
if (child.sexualFlaw==="apathetic"){
r+=`${He} is at war with ${himself}, since ${his} habitual apathy during sex barely masks a desire to <span class="lightcoral">dominate.</span> `;
}elseif (child.fetishStrength>95){
r+=`${He} is a <span class="lightcoral">complete dom;</span> with other slaves this is expressed as a strong preference to top, and with ${his} betters ${he}'s an almost competitive lover. `;
}elseif (child.fetishStrength>60){
r+=`${He} likes to take an active, powerful role in sex; with other slaves this is expressed as <span class="lightcoral">dominance,</span> and with ${his} betters ${he}'s a very energetic lover. `;
}else{
r+=`${He} prefers to take a <span class="lightcoral">dominant</span> sexual role. `;
}
break;
case"sadist":
if (child.fetishStrength>95){
r+=`${He} is an <span class="lightcoral">aggressive sadist;</span> ${he}'s constantly plotting to control, abuse, and hurt other slaves. `;
}elseif (child.fetishStrength>60){
r+=`${He} has <span class="lightcoral">sadistic tendencies;</span> ${he} enjoys watching other slaves in pain, but truly loves causing pain ${himself}. `;
}else{
r+=`${He} gets off on <span class="lightcoral">the suffering of others;</span> ${he} enjoys watching other slaves in pain. `;
}
break;
case"masochist":
if (child.fetishStrength>95){
r+=`${He} is a <span class="lightcoral">pain slut.</span> `;
}elseif (child.fetishStrength>60){
r+=`${He} <span class="lightcoral">gets off on pain,</span> showing strong masochistic tendencies. `;
}else{
r+=`${He} <span class="lightcoral">doesn't mind pain,</span> and shows some masochistic tendencies. `;
}
break;
default:
r+=`${His} sexual tastes are <span class="pink">quite normal.</span> `;
break;
}
}else{
r+=`${His} fetishes, if any, are not known to you. `;
}
if (child.attrKnown){
if (child.energy>95){
r+=`${He}'s a <span class="green">nymphomaniac.</span> `;
}elseif (child.energy>80){
r+=`${He}'s a <span class="green">sex addict.</span> `;
}elseif (child.energy>60){
r+=`${He} has a <span class="green">powerful appetite for sex.</span> `;
}elseif (child.energy>40){
r+=`${He} has a <span class="yellow">healthy sex drive.</span> `;
}elseif (child.energy>20){
r+=`${He} has a <span class="red">weak sex drive.</span> `;
}else{
r+=`${He}'s <span class="red">frigid,</span> with little interest in sex. `;
}
if (child.attrXY<=5){
if (child.attrXX<=5){
r+=`${He}'s a <span class="green">nymphomaniac.</span> `;
}else{
r+=`${He}'s a <span class="green">sex addict.</span> `;
if (child.attrXX<=15){
r+=`${He} has a <span class="green">powerful appetite for sex.</span> `;
}elseif (child.attrXX<=35){
r+=`${He} has a <span class="yellow">healthy sex drive.</span> `;
}elseif (child.attrXX<=65){
r+=`${He} has a <span class="red">weak sex drive.</span> `;
}elseif (child.attrXX<=85){
r+=`${He}'s <span class="red">frigid,</span> with little interest in sex. `;
}elseif (child.attrXX<=95){
r+=`${He} <span class="red">finds both men's and women's intimate areas quite repulsive,</span> an unfortunate state of affairs! `;
}else{
r+=`${He} <span class="red">finds men sexually disgusting,</span> `;
}
}
}elseif (child.attrXY<=15){
r+=`${He} <span class="red">considers men's bodies a turnoff,</span> `;
if (child.attrXX<=5){
r+=`and is <span class="red">actually disgusted by women's.</span> `;
}elseif (child.attrXX<=15){
r+=`and <span class="red">feels the same about women's.</span> `;
}elseif (child.attrXX<=35){
r+=`and is <span class="red">unenthusiastic about women.</span> `;
}elseif (child.attrXX<=65){
r+=`and ${he} is indifferent to women. `;
}elseif (child.attrXX<=85){
r+=`but <span class="green">is attracted to women.</span> `;