From b60e0d20cfc373ac3a8dc22abcf9100bba49c83f Mon Sep 17 00:00:00 2001 From: lowercasedonkey <lowercasedonkey@gmail.com> Date: Mon, 23 Nov 2020 20:10:59 -0500 Subject: [PATCH] cleanup --- src/npc/acquisition.js | 1675 ++++++++++++++++++++-------------------- 1 file changed, 844 insertions(+), 831 deletions(-) diff --git a/src/npc/acquisition.js b/src/npc/acquisition.js index 5ea8840290a..fc8798cc09d 100644 --- a/src/npc/acquisition.js +++ b/src/npc/acquisition.js @@ -2,197 +2,16 @@ App.StartingGirls.acquisition = function() { const el = new DocumentFragment(); const valueOwed = (V.saveImported === 1) ? 5000 : 50000; - let r; + const r = []; delete V.showSGNationalities; if (V.freshPC === 1 || V.saveImported === 0) { - V.PC.birthName = V.PC.slaveName; - if (V.PC.slaveSurname) { - V.PC.birthSurname = V.PC.slaveSurname; - } - if (V.PC.title === 1) { - V.PC.muscles = 50; - } else { - V.PC.hLength = 15; - V.PC.waist = -20; - V.PC.voice = 2; - V.PC.shoulders = -1; - V.PC.hips = 1; - V.PC.muscles = 30; - } - if (V.PC.career === "escort") { - V.PC.anus = 1; - V.PC.clothes = "a slutty outfit"; - V.PC.intelligenceImplant = 15; - } else if (V.PC.career === "servant") { - V.PC.geneticQuirks.fertility = 1; - V.PC.clothes = "a nice maid outfit"; - V.PC.intelligenceImplant = 0; - } - if (V.PC.vagina === -1) { - V.PC.ovaries = 0; - } else if (V.PC.vagina > 0) { - V.PC.vaginaLube = 1; - V.PC.counter.birthsTotal = 0; - if (V.PC.career === "servant") { - if (V.PC.pregType !== 8) { - if (V.PC.actualAge >= 50) { - V.PC.counter.birthsTotal = 9; - V.PC.counter.birthMaster = 9; - } else if (V.PC.actualAge >= 35) { - V.PC.counter.birthsTotal = 6; - V.PC.counter.birthMaster = 6; - } else { - V.PC.counter.birthsTotal = 3; - V.PC.counter.birthMaster = 3; - } - } else { - // Master kept you pregged up - if (V.PC.actualAge >= 50) { - V.PC.counter.birthsTotal = 70; - V.PC.counter.birthMaster = 70; - } else if (V.PC.actualAge >= 35) { - V.PC.counter.birthsTotal = 40; - V.PC.counter.birthMaster = 40; - } else { - V.PC.counter.birthsTotal = 16; - V.PC.counter.birthMaster = 16; - } - } - V.PC.geneticQuirks.fertility = 2; - for (const slave of V.slaves) { - if (slave.mother === -1) { - V.PC.counter.birthsTotal += 1; - if (slave.father === -1) { - V.PC.counter.birthSelf += 1; - } else { - slave.father = -3; - V.PC.counter.birthMaster += 1; - } - } - } - } else if (V.PC.career === "escort") { - for (const slave of V.slaves) { - if (slave.mother === -1) { - V.PC.counter.birthsTotal += 1; - if (slave.father === -1) { - V.PC.counter.birthSelf += 1; - } else { - slave.father = -5; - V.PC.counter.birthClient += 1; - } - } else if (slave.father === -1) { - slave.mother = -5; - } - } - } else { - for (const slave of V.slaves) { - if (slave.mother === -1) { - V.PC.counter.birthsTotal += 1; - if (slave.father === -1) { - V.PC.counter.birthSelf += 1; - } else { - V.PC.counter.birthOther += 1; - } - } - } - } - if (V.PC.preg > 0) { - V.PC.pregWeek = V.PC.preg; - if (V.PC.pregType !== 8) { - V.PC.pregType = 1; - } else { - V.PC.geneticQuirks.hyperFertility = 2; - } - if (V.PC.career === "servant") { - V.PC.pregSource = -3; - if (V.PC.pregType !== 8) { - V.PC.pregType += either(0, 0, 1); - } - } else if (V.PC.career === "escort") { - V.PC.pregSource = -5; - } - V.PC.pregKnown = 1; - V.PC.belly = getPregBellySize(V.PC); - WombImpregnate(V.PC, V.PC.pregType, V.PC.pregSource, V.PC.preg); - } - } - if (V.PC.dick !== 0) { - V.PC.geneticQuirks.wellHung = 2; - } else { - V.PC.balls = 0; - V.PC.scrotum = 0; - V.PC.prostate = 0; - } - V.PC.ovaryAge = V.PC.physicalAge; - } - - const pcMomFound = getSlave(V.PC.mother); - if (!pcMomFound && V.PC.mother > 0) { - const lostMom = V.PC.mother; - V.PC.mother = V.missingParentId; - for (const slave of V.slaves) { - if (slave.mother === lostMom) { - slave.mother = V.missingParentId; - } - } - V.missingParentId--; - } - - const pcDadFound = getSlave(V.PC.father); - if (!pcDadFound && V.PC.father > 0) { - const lostDad = V.PC.father; - V.PC.father = V.missingParentId; - for (const slave of V.slaves) { - if (slave.father === lostDad) { - slave.father = V.missingParentId; - } - } - V.missingParentId--; + PCsetup(); } - for (const slave of V.slaves) { - const slaveMomFound = getSlave(slave.mother); - const slaveDadFound = getSlave(slave.father); - if (!pcMomFound && V.PC.mother > 0) { - lostMom = V.PC.mother; - V.PC.mother = V.missingParentID; - for (const slave of V.slaves) { - if (slave.mother === lostMom) { - slave.mother = V.missingParentID; - } - } - V.missingParentID--; - } - if (!pcDadFound && V.PC.father > 0) { - lostDad = V.PC.father; - V.PC.father = V.missingParentID; - for (const slave of V.slaves) { - if (slave.father === lostDad) { - slave.father = V.missingParentID; - } - } - V.missingParentID--; - } - } - const coeffSlaves = []; - const genePoolMap = {}; - for (const slave of V.genePool) { - genePoolMap[slave.ID] = slave; - } - for (const slave of V.slaves) { - if (slave.newGamePlus === 0) { - slave.inbreedingCoeff = -1; - genePoolMap[slave.ID].inbreedingCoeff = -1; - coeffSlaves.push(slave); - } - } - const ibcoeffs = ibc.coeff_slaves(coeffSlaves); - for (const slave of coeffSlaves) { - slave.inbreedingCoeff = ibcoeffs[slave.ID]; - genePoolMap[slave.ID].inbreedingCoeff = ibcoeffs[slave.ID]; - } + parentSetup(); + genepoolSetup(); if (V.plot === 1 && V.neighboringArcologies > 0) { let bestProsperity = 0; let bestProsperityIndex = 1; @@ -213,7 +32,6 @@ App.StartingGirls.acquisition = function() { App.UI.DOM.appendNewElement("p", el, `You arrive at your new arcology, ${V.arcologies[0].name}, and head straight to the penthouse to enter the access codes that will tell the ${V.arcologies[0].name} systems to recognize you as their owner. The penthouse office is ready to receive the codes, and they authenticate. A voice activates in your earpiece.`); App.UI.DOM.appendNewElement("p", el, `Congratulations. I am a personal assistant program, and it is my pleasure to assist you, ${PlayerName()} the new owner of ${V.arcologies[0].name}. I will offer useful information whenever possible in italics. Your new arcology has some unusual equipment. The previous owner kept a small stable of sex slaves. The penthouse therefore has a body modification studio for tattooing, bleaching and piercing, and an auto salon for more prosaic things like hair care. It also has a remote surgery, a small surgical theater that can be operated remotely by a qualified surgeon if you can pay the fee. Finally, it has a slave nutrition system connected to the arcology's hydroponics bays. This system produces a tasty protein-rich drink that provides the physically active female body all its necessary nutrients while leaving the lower digestive tract extremely clean. It even causes a mild increase in sex drive.`, "note"); - r = []; r.push(`The previous owner seems to have left in something of a hurry.`); let valueGiven = 0; const heroSlaves = App.Utils.buildHeroArray().shuffle(); @@ -224,652 +42,10 @@ App.StartingGirls.acquisition = function() { r.push(`Since it took some time for you to ensure that your existing stable of slaves were safely moved to ${V.arcologies[0].name}, the previous owner had the time to get most of their things away.`); } else if ((V.targetArcology.fs !== "New") && (V.targetArcology.fs !== "Multiculturalist")) { for (let j = 0; j < 5; j++) { - let slave; if (valueOwed - valueGiven <= 5000) { break; } - switch (V.targetArcology.fs) { - case "Supremacist": - V.oneTimeDisableDisability = 1; - slave = GenerateNewSlave("XX", {race: V.arcologies[0].FSSupremacistRace}); - slave.devotion = random(25, 45); - slave.trust = random(-25, -45); - setHealth(slave, jsRandom(0, 20), 0, 0, 0, 0); - slave.face = random(15, 100); - slave.skill.oral = random(15, 35); - slave.skill.anal = random(15, 35); - if (slave.vagina > -1) { - if (slave.vagina === 0) { - slave.vagina++; - } - slave.skill.vaginal = random(15, 35); - } - slave.skill.entertainment = random(15, 35); - slave.clothes = "uncomfortable straps"; - slave.collar = "uncomfortable leather"; - slave.shoes = "flats"; - slave.assignment = "please you"; - break; - case "Subjugationist": - V.oneTimeDisableDisability = 1; - slave = GenerateNewSlave("XX", {race: V.arcologies[0].FSSubjugationistRace}); - slave.devotion = random(25, 45); - slave.trust = random(-25, -45); - setHealth(slave, jsRandom(0, 20), 0, 0, 0, 0); - slave.face = random(15, 100); - slave.skill.oral = random(15, 35); - slave.skill.anal = random(15, 35); - if (slave.vagina > -1) { - if (slave.vagina === 0) { - slave.vagina++; - } - slave.skill.vaginal = random(15, 35); - } - slave.skill.whoring = random(15, 35); - slave.clothes = "uncomfortable straps"; - slave.collar = "uncomfortable leather"; - slave.shoes = "flats"; - slave.assignment = "whore"; - break; - case "GenderRadicalist": - slave = GenerateNewSlave("XY", {disableDisability: 1, maxAge: 25}); - slave.devotion = random(25, 45); - slave.trust = random(15, -15); - setHealth(slave, 100, 0, 0, 0, jsRandom(0, 20)); - slave.face = random(0, 55); - slave.boobs += 100 * random(2, 4); - slave.butt += random(1, 2); - slave.attrXY = random(70, 90); - slave.attrXX = 0; - slave.skill.oral = random(35, 65); - slave.skill.anal = random(35, 65); - slave.skill.whoring = random(35, 65); - SoftenSexualFlaw(slave); - slave.clothes = "uncomfortable straps"; - slave.collar = "stylish leather"; - slave.shoes = "heels"; - slave.assignment = "whore"; - break; - case "GenderFundamentalist": - slave = GenerateNewSlave("XX", {minAge: V.fertilityAge, maxAge: 25, disableDisability: 1}); - slave.devotion = random(25, 45); - slave.trust = random(-25, -45); - setHealth(slave, jsRandom(55, 65), 0, 0, 0, 0); - slave.face = random(15, 100); - slave.preg = random(1, 40); - slave.lactation = 1; - slave.lactationDuration = 2; - SetBellySize(slave); - if (slave.vagina > -1) { - if (slave.vagina === 0) { - slave.vagina++; - } - slave.skill.vaginal = random(15, 35); - } - slave.clothes = "a nice maid outfit"; - slave.collar = "tight steel"; - slave.shoes = "flats"; - slave.assignment = "be a servant"; - break; - case "Paternalist": - slave = GenerateNewSlave("XX", {disableDisability: 1}); - slave.devotion = random(25, 45); - slave.trust = random(55, 65); - setHealth(slave, jsRandom(55, 65), 0, 0, 0, 0); - slave.face = random(15, 100); - slave.intelligence = random(0, 100); - slave.intelligenceImplant = 30; - slave.skill.entertainment = random(15, 35); - slave.clothes = "conservative clothing"; - slave.collar = "none"; - slave.shoes = "flats"; - slave.assignment = "be a servant"; - break; - case "Degradationist": - slave = GenerateNewSlave("XX"); - slave.devotion = 25; - slave.trust = -25; - setHealth(slave, jsRandom(0, 15), 0, 0, 0, 0); - slave.fuckdoll = 100; - slave.career = "a Fuckdoll"; - slave.fetish = "mindbroken"; - slave.boobs += 100 * random(10, 20); - slave.butt += random(2, 3); - slave.lips = random(2, 4); - slave.weight = random(-15, 15); - slave.skill.oral = 0; - slave.skill.anal = 0; - slave.skill.vaginal = 0; - slave.skill.entertainment = 0; - slave.skill.whoring = 0; - slave.behavioralFlaw = "none"; - slave.sexualFlaw = "none"; - slave.clothes = "a Fuckdoll suit"; - slave.assignment = "please you"; - break; - case "AssetExpansionist": - slave = GenerateNewSlave("XX", {disableDisability: 1}); - slave.devotion = random(25, 45); - slave.trust = random(-15, 15); - setHealth(slave, jsRandom(25, 45), 0, 0, 0, 0); - slave.chem = 50; - slave.face = random(15, 100); - slave.boobs += 100 * random(10, 20); - slave.butt += random(2, 3); - slave.lips += random(0, 1); - if (slave.balls > 0) { - slave.balls++; - } - if (slave.dick > 0) { - slave.dick++; - } - slave.weight = random(15, 90); - slave.skill.oral = random(15, 35); - slave.skill.anal = 0; - slave.anus = 0; - if (slave.vagina > -1) { - if (slave.vagina === 0) { - slave.vagina++; - } - slave.skill.vaginal = random(15, 35); - } - slave.skill.entertainment = random(15, 35); - slave.clothes = "slutty jewelry"; - slave.collar = "pretty jewelry"; - slave.shoes = "heels"; - slave.assignment = "please you"; - break; - case "SlimnessEnthusiast": - slave = GenerateNewSlave("XX", {disableDisability: 1}); - slave.devotion = random(25, 45); - slave.trust = random(55, 65); - setHealth(slave, jsRandom(55, 65), 0, 0, 0, 0); - slave.face = random(15, 100); - slave.boobs = 100 * random(1, 4); - slave.butt = random(1, 2); - slave.weight = random(-25, -15); - slave.skill.oral = random(15, 35); - slave.skill.anal = 0; - slave.anus = 0; - if (slave.vagina > -1) { - if (slave.vagina === 0) { - slave.vagina++; - } - slave.skill.vaginal = random(15, 35); - } - slave.skill.entertainment = random(15, 35); - slave.clothes = "a leotard"; - slave.collar = "pretty jewelry"; - slave.shoes = "flats"; - slave.assignment = "please you"; - break; - case "TransformationFetishist": - slave = GenerateNewSlave("XX", {disableDisability: 1}); - slave.devotion = random(25, 45); - slave.trust = random(-15, 15); - setHealth(slave, jsRandom(-15, 0), Math.max(normalRandInt(5, 3), 0), Math.max(normalRandInt(5, 3), 0), 0, 0); - slave.faceImplant = random(40, 70); - slave.face = Math.clamp(Math.trunc(slave.face + slave.faceImplant / 2), -100, 100); - slave.boobsImplant = 200 * random(4, 8); - slave.boobs += slave.boobsImplant; - slave.boobsImplantType = "normal"; - slave.buttImplant = random(2, 4); - slave.butt += slave.buttImplant; - slave.buttImplantType = "normal"; - slave.lipsImplant = random(1, 2); - slave.lips = Math.clamp(Math.trunc(slave.lipsImplant + 2), -3, 3); - slave.weight = random(-25, -15); - slave.skill.oral = random(15, 35); - slave.skill.anal = random(15, 35); - if (slave.vagina > -1) { - if (slave.vagina === 0) { - slave.vagina++; - } - slave.skill.vaginal = random(15, 35); - } - slave.clothes = "a string bikini"; - slave.collar = "shock punishment"; - slave.shoes = "extreme heels"; - slave.assignment = "whore"; - break; - case "BodyPurist": - slave = GenerateNewSlave("XX", {disableDisability: 1}); - slave.devotion = random(55, 65); - slave.trust = random(25, 45); - setHealth(slave, 100, 0, 0, 0, jsRandom(0, 20)); - slave.face = random(15, 100); - slave.weight = random(-5, 5); - slave.muscles = random(10, 25); - slave.skill.oral = random(15, 35); - slave.skill.anal = random(15, 35); - if (slave.vagina > -1) { - if (slave.vagina === 0) { - slave.vagina++; - } - slave.skill.vaginal = random(15, 35); - } - slave.clothes = "a nice maid outfit"; - slave.collar = "pretty jewelry"; - slave.shoes = "heels"; - slave.assignment = "be a servant"; - break; - case "MaturityPreferentialist": - slave = GenerateNewSlave("XX", { - minAge: 36, maxAge: 39, ageOverridesPedoMode: 1, disableDisability: 1 - }); - slave.devotion = random(55, 65); - slave.trust = random(-15, 15); - setHealth(slave, jsRandom(25, 45), 0, 0, 0, 0); - slave.face = random(15, 100); - slave.boobs += 100 * random(1, 4); - slave.butt += random(1, 2); - slave.weight = random(-5, 90); - slave.skill.oral = random(15, 35); - slave.skill.anal = random(15, 35); - if (slave.vagina > -1) { - if (slave.vagina === 0) { - slave.vagina++; - } - slave.skill.vaginal = random(15, 35); - } - SoftenBehavioralFlaw(slave); - slave.clothes = "a slutty maid outfit"; - slave.collar = "pretty jewelry"; - slave.shoes = "heels"; - slave.assignment = "be a servant"; - break; - case "YouthPreferentialist": - slave = GenerateNewSlave("XX", {maxAge: 19, disableDisability: 1}); - slave.devotion = random(25, 45); - slave.trust = random(55, 65); - setHealth(slave, jsRandom(25, 45), 0, 0, 0, 0); - slave.face = random(15, 100); - slave.boobs = 100 * random(1, 4); - slave.butt = random(1, 3); - slave.weight = random(-25, 25); - slave.skill.oral = random(15, 35); - slave.skill.anal = 0; - slave.anus = 0; - if (slave.vagina > -1) { - slave.skill.vaginal = 0; - slave.vagina = 0; - } - slave.skill.entertainment = random(15, 35); - slave.clothes = "a schoolgirl outfit"; - slave.collar = "pretty jewelry"; - slave.shoes = "heels"; - slave.assignment = "be a servant"; - break; - case "Pastoralist": - slave = GenerateNewSlave("XX", {disableDisability: 1}); - slave.devotion = random(25, 45); - slave.trust = random(-25, -45); - setHealth(slave, jsRandom(25, 45), 0, 0, 0, 0); - slave.boobs += 100 * random(10, 20); - if (slave.balls > 0) { - slave.balls++; - } - slave.lactation = 2; - slave.lactationDuration = 2; - slave.clothes = "Western clothing"; - slave.collar = "leather with cowbell"; - slave.shoes = "flats"; - slave.assignment = "get milked"; - break; - case "PhysicalIdealist": - slave = GenerateNewSlave("XX", {disableDisability: 1}); - slave.devotion = random(25, 45); - slave.trust = random(25, 45); - setHealth(slave, 100, 0, 0, 0, jsRandom(10, 40)); - slave.muscles = random(50, 100); - slave.skill.oral = random(15, 35); - slave.skill.anal = random(15, 35); - if (slave.vagina > -1) { - if (slave.vagina === 0) { - slave.vagina++; - } - slave.skill.vaginal = random(15, 35); - } - slave.skill.whoring = random(15, 35); - slave.clothes = "body oil"; - slave.collar = "none"; - slave.shoes = "none"; - slave.assignment = "whore"; - break; - case "ChattelReligionist": - slave = GenerateNewSlave("XX", {disableDisability: 1}); - slave.devotion = random(55, 65); - slave.trust = random(55, 65); - setHealth(slave, jsRandom(0, 15), 0, 0, 0, 0); - if (slave.vagina === 0) { - slave.vagina++; - } - slave.skill.whoring = random(10, 20); - slave.behavioralFlaw = "none"; - slave.behavioralQuirk = "sinful"; - slave.clothes = "a chattel habit"; - slave.collar = "heavy gold"; - slave.shoes = "flats"; - slave.assignment = "whore"; - break; - case "RomanRevivalist": - slave = GenerateNewSlave("XX", {maxAge: 19, disableDisability: 1}); - slave.devotion = 100; - slave.trust = random(55, 65); - setHealth(slave, 100, 0, 0, 0, jsRandom(10, 30)); - slave.face = random(0, 55); - slave.muscles = random(25, 50); - slave.skill.combat = 1; - slave.behavioralFlaw = "none"; - slave.behavioralQuirk = "fitness"; - slave.behavioralFlaw = "none"; - slave.clothes = "a toga"; - slave.collar = "pretty jewelry"; - slave.shoes = "flats"; - slave.assignment = "guard you"; - V.BodyguardID = slave.ID; - break; - case "NeoImperialist": - slave = GenerateNewSlave("XX", { - minAge: 16, maxAge: 28, race: "white", disableDisability: 1 - }); - slave.devotion = 100; - slave.trust = random(55, 65); - setHealth(slave, 100, 0, 0, 0, jsRandom(10, 30)); - slave.face = random(20, 75); - slave.muscles = random(25, 60); - slave.skill.combat = 1; - slave.behavioralFlaw = "none"; - slave.behavioralQuirk = "fitness"; - slave.behavioralFlaw = "none"; - slave.skill.entertainment = random(15, 35); - slave.clothes = "a tight Imperial bodysuit"; - slave.shoes = "flats"; - slave.assignment = "guard you"; - V.BodyguardID = slave.ID; - break; - case "AztecRevivalist": - slave = GenerateNewSlave(null, {race: "latina", nationality: "Mexican", disableDisability: 1}); - slave.accent = 0; - slave.devotion = 75; - slave.trust = 75; - setHealth(slave, jsRandom(-20, 20), 0, 0, 0, 0); - slave.muscles = random(50, 75); - slave.skill.combat = 1; - slave.behavioralFlaw = "malicious"; - slave.behavioralQuirk = "none"; - slave.clothes = "a huipil"; - slave.collar = "pretty jewelry"; - slave.shoes = "none"; - slave.assignment = "be your Head Girl"; - V.HeadGirlID = slave.ID; - break; - case "EgyptianRevivalist": - slave = GenerateNewSlave("XX", {disableDisability: 1}); - slave.devotion = random(25, 45); - slave.trust = random(25, 45); - setHealth(slave, jsRandom(25, 45), 0, 0, 0, 0); - slave.face = random(15, 100); - slave.skill.oral = random(15, 35); - slave.skill.anal = random(15, 35); - if (slave.vagina > -1) { - if (slave.vagina === 0) { - slave.vagina++; - } - slave.skill.vaginal = random(15, 35); - } - slave.skill.entertainment = random(15, 35); - SoftenSexualFlaw(slave); - slave.clothes = "slutty jewelry"; - slave.collar = "ancient Egyptian"; - slave.shoes = "flats"; - slave.assignment = "please you"; - break; - case "EdoRevivalist": - slave = GenerateNewSlave(null, {race: "asian", nationality: "Japanese", disableDisability: 1}); - slave.accent = 0; - slave.devotion = random(25, 45); - slave.trust = random(25, 45); - setHealth(slave, jsRandom(25, 45), 0, 0, 0, 0); - slave.face = random(15, 100); - slave.intelligence = random(0, 100); - slave.intelligenceImplant = 30; - slave.skill.entertainment = 100; - slave.clothes = "a kimono"; - slave.collar = "satin choker"; - slave.shoes = "heels"; - slave.assignment = "serve the public"; - break; - case "ArabianRevivalist": - slave = GenerateNewSlave("XX", {disableDisability: 1}); - slave.devotion = random(25, 45); - slave.trust = random(-15, 15); - setHealth(slave, jsRandom(25, 45), 0, 0, 0, 0); - slave.face = random(15, 100); - slave.intelligence = random(-15, 80); - slave.intelligenceImplant = 0; - slave.clothes = "harem gauze"; - slave.collar = "uncomfortable leather"; - slave.shoes = "flats"; - slave.assignment = "take classes"; - break; - case "ChineseRevivalist": - slave = GenerateNewSlave(null, { - race: "asian", nationality: "Chinese", minAge: 36, maxAge: 38, ageOverridesPedoMode: 1, disableDisability: 1 - }); - slave.devotion = random(55, 65); - slave.trust = random(25, 45); - setHealth(slave, jsRandom(25, 45), 0, 0, 0, 0); - slave.face = random(0, 55); - slave.accent = 0; - slave.intelligence = 100; - slave.intelligenceImplant = 30; - slave.skill.oral = 100; - slave.skill.anal = 100; - if (slave.vagina > -1) { - if (slave.vagina === 0) { - slave.vagina++; - } - slave.skill.vaginal = 100; - } - slave.skill.entertainment = 100; - slave.skill.whoring = 100; - SoftenBehavioralFlaw(slave); - SoftenSexualFlaw(slave); - slave.clothes = "a slutty qipao"; - slave.collar = "pretty jewelry"; - slave.shoes = "heels"; - slave.assignment = "be your Head Girl"; - V.HeadGirlID = slave.ID; - break; - case "Eugenics": - slave = GenerateNewSlave("XX", {disableDisability: 1}); - slave.devotion = -100; - slave.trust = -100; - setHealth(slave, jsRandom(80, 90), 0, 0, 0, 0); - slave.intelligence = 100; - slave.intelligenceImplant = 30; - slave.face = 100; - slave.faceShape = "sensual"; - slave.skill.oral = random(35, 75); - slave.skill.anal = random(35, 75); - if (slave.vagina > -1) { - if (slave.vagina === 0) { - slave.vagina++; - } - slave.skill.vaginal = random(35, 75); - } - slave.skill.entertainment = random(15, 35); - slave.skill.whoring = 0; - SoftenSexualFlaw(slave); - slave.clothes = "a ball gown"; - slave.shoes = "flats"; - slave.assignment = "rest"; - break; - case "Repopulationist": - slave = GenerateNewSlave("XX", { - minAge: V.fertilityAge + 3, maxAge: 25, ageOverridesPedoMode: 1, disableDisability: 1 - }); - slave.devotion = random(25, 45); - slave.trust = random(-25, -45); - setHealth(slave, jsRandom(55, 65), 0, 0, 0, 0); - slave.face = random(15, 100); - slave.preg = random(10, 40); - slave.pregType = random(3, 8); - slave.lactation = 1; - slave.lactationDuration = 2; - SetBellySize(slave); - slave.counter.birthsTotal = 5; - slave.bellySag = 20; - slave.bellySagPreg = 20; - if (slave.vagina > -1) { - slave.vagina = 4; - slave.skill.vaginal = random(15, 35); - } - slave.clothes = "a nice maid outfit"; - slave.shoes = "flats"; - slave.assignment = "please you"; - break; - case "HedonisticDecadence": - slave = GenerateNewSlave("XX", {maxAge: 25, disableDisability: 1}); - slave.devotion = random(25, 45); - slave.trust = random(-25, -45); - setHealth(slave, jsRandom(-20, 20), 0, 0, 0, 0); - slave.face = random(15, 40); - slave.boobs += 100 * random(3, 6); - slave.butt += random(2, 5); - slave.weight = random(100, 200); - slave.skill.oral = random(15, 35); - slave.skill.anal = random(15, 35); - slave.anus = 2; - if (slave.vagina > -1) { - slave.skill.vaginal = random(15, 35); - slave.vagina = 3; - } - slave.skill.entertainment = 0; - slave.energy = random(60, 80); - slave.behavioralFlaw = "gluttonous"; - slave.clothes = "attractive lingerie"; - slave.shoes = "flats"; - slave.diet = "fattening"; - slave.rules.living = "luxurious"; - slave.assignment = "rest"; - break; - case "IntellectualDependency": - slave = GenerateNewSlave("XX", {minAge: 14, maxAge: 18, disableDisability: 1}); - setHealth(slave, jsRandom(55, 65), 0, 0, 0, 0); - slave.devotion = random(45, 65); - slave.trust = random(-15, 45); - slave.face = random(30, 100); - slave.energy = 100; - slave.weight = random(-25, -15); - slave.skill.oral = 0; - slave.skill.anal = 0; - slave.skill.vaginal = 0; - slave.skill.entertainment = 0; - slave.skill.whoring = 0; - slave.intelligence = -100; - slave.intelligenceImplant = 0; - if (slave.vagina === 0) { - slave.vagina++; - } - slave.anus++; - break; - case "SlaveProfessionalism": - slave = GenerateNewSlave("XX", {minAge: 18, maxAge: 25, disableDisability: 1}); - slave.devotion = 100; - slave.trust = 20; - setHealth(slave, 80, 0, 0, 0, jsRandom(10, 30)); - slave.face = random(30, 100); - slave.energy = 10; - slave.weight = random(-15, 5); - slave.skill.oral = 100; - slave.skill.anal = 100; - slave.skill.vaginal = 100; - slave.skill.entertainment = 100; - slave.skill.whoring = 100; - slave.intelligence = 100; - slave.intelligenceImplant = 30; - slave.accent = 0; - SoftenBehavioralFlaw(slave); - SoftenSexualFlaw(slave); - slave.clothes = "a nice maid outfit"; - slave.collar = "pretty jewelry"; - slave.assignment = "be your Head Girl"; - V.HeadGirlID = slave.ID; - break; - case "PetiteAdmiration": - slave = GenerateNewSlave("XX", {minAge: 14, maxAge: 18, disableDisability: 1}); - slave.devotion = random(55, 65); - slave.trust = random(-15, 15); - setHealth(slave, jsRandom(25, 45), 0, 0, 0, 0); - slave.face = random(15, 100); - if (slave.height >= 150) { - slave.height = Math.trunc(Height.random(slave, {limitMult: [-3, -1]})); - if (slave.height >= 150) { - slave.height = Math.trunc(Height.random(slave, {limitMult: [-4, -2]})); - if (slave.height >= 150) { - slave.height = random(90, 130); - slave.geneticQuirks.dwarfism = 2; - } - } - } - slave.skill.oral = random(35, 65); - slave.skill.anal = random(15, 35); - if (slave.vagina > -1) { - if (slave.vagina === 0) { - slave.vagina++; - } - slave.skill.vaginal = random(15, 35); - } - slave.clothes = "a succubus outfit"; - slave.legAccessory = "long stockings"; - slave.assignment = "please you"; - break; - case "StatuesqueGlorification": - slave = GenerateNewSlave("XX", { - minAge: 18, maxAge: 30, ageOverridesPedoMode: 1, disableDisability: 1 - }); - slave.devotion = random(55, 65); - slave.trust = random(-15, 15); - setHealth(slave, jsRandom(25, 45), 0, 0, 0, 0); - slave.face = random(15, 100); - slave.weight = random(-5, 5); - slave.muscles = random(20, 40); - if (slave.height < 185) { - slave.height = Math.trunc(Height.random(slave, {limitMult: [1, 3]})); - if (slave.height < 185) { - slave.height = Math.trunc(Height.random(slave, {limitMult: [2, 4]})); - if (slave.height < 185) { - slave.height = random(200, 264); - slave.geneticQuirks.gigantism = 2; - } - } - } - slave.skill.oral = random(15, 35); - slave.skill.anal = random(15, 35); - if (slave.vagina > -1) { - if (slave.vagina === 0) { - slave.vagina++; - } - slave.skill.vaginal = random(15, 35); - } - slave.clothes = "slutty business attire"; - slave.shoes = "heels"; - slave.assignment = "please you"; - break; - default: - r.push(`ERROR: bad arcology type`); - } - slave.origin = "You acquired $him along with the arcology."; - slave.career = "a slave"; - let slaveCostValue = slaveCost(slave); - if (["AztecRevivalist", "ChineseRevivalist", "NeoImperialist", "Eugenics", "SlaveProfessionalism"].includes(V.targetArcology.fs)) { - valueGiven += slaveCostValue * 4; - } else { - valueGiven += slaveCostValue; - } - newSlave(slave); + generateFSslave(V.targetArcology.fs); } const {He, his, girl} = getPronouns(getSlave(random(V.slaves.length))); switch (V.targetArcology.fs) { @@ -1017,8 +193,7 @@ App.StartingGirls.acquisition = function() { r.push(`happy to meet you.`); } } - } else if (slave.belly >= 5000) { - /* had to be placed after pregnancy or it would intercept*/ + } else if (slave.belly >= 5000) { // had to be placed after pregnancy or it would intercept r.push(`is currently in the dormitory massaging ${his} greatly distended belly.`); } else if (slave.fetish === "buttslut") { r.push(`is currently in the dormitory masturbating anally, and I believe ${he} will be happy to meet you.`); @@ -1103,4 +278,842 @@ App.StartingGirls.acquisition = function() { ) ); return el; + + function PCsetup() { + V.PC.birthName = V.PC.slaveName; + if (V.PC.slaveSurname) { + V.PC.birthSurname = V.PC.slaveSurname; + } + if (V.PC.title === 1) { + V.PC.muscles = 50; + } else { + V.PC.hLength = 15; + V.PC.waist = -20; + V.PC.voice = 2; + V.PC.shoulders = -1; + V.PC.hips = 1; + V.PC.muscles = 30; + } + if (V.PC.career === "escort") { + V.PC.anus = 1; + V.PC.clothes = "a slutty outfit"; + V.PC.intelligenceImplant = 15; + } else if (V.PC.career === "servant") { + V.PC.geneticQuirks.fertility = 1; + V.PC.clothes = "a nice maid outfit"; + V.PC.intelligenceImplant = 0; + } + if (V.PC.vagina === -1) { + V.PC.ovaries = 0; + } else if (V.PC.vagina > 0) { + V.PC.vaginaLube = 1; + V.PC.counter.birthsTotal = 0; + if (V.PC.career === "servant") { + if (V.PC.pregType !== 8) { + if (V.PC.actualAge >= 50) { + V.PC.counter.birthsTotal = 9; + V.PC.counter.birthMaster = 9; + } else if (V.PC.actualAge >= 35) { + V.PC.counter.birthsTotal = 6; + V.PC.counter.birthMaster = 6; + } else { + V.PC.counter.birthsTotal = 3; + V.PC.counter.birthMaster = 3; + } + } else { // Master kept you pregged up + if (V.PC.actualAge >= 50) { + V.PC.counter.birthsTotal = 70; + V.PC.counter.birthMaster = 70; + } else if (V.PC.actualAge >= 35) { + V.PC.counter.birthsTotal = 40; + V.PC.counter.birthMaster = 40; + } else { + V.PC.counter.birthsTotal = 16; + V.PC.counter.birthMaster = 16; + } + } + V.PC.geneticQuirks.fertility = 2; + for (const slave of V.slaves) { + if (slave.mother === -1) { + V.PC.counter.birthsTotal += 1; + if (slave.father === -1) { + V.PC.counter.birthSelf += 1; + } else { + slave.father = -3; + V.PC.counter.birthMaster += 1; + } + } + } + } else if (V.PC.career === "escort") { + for (const slave of V.slaves) { + if (slave.mother === -1) { + V.PC.counter.birthsTotal += 1; + if (slave.father === -1) { + V.PC.counter.birthSelf += 1; + } else { + slave.father = -5; + V.PC.counter.birthClient += 1; + } + } else if (slave.father === -1) { + slave.mother = -5; + } + } + } else { + for (const slave of V.slaves) { + if (slave.mother === -1) { + V.PC.counter.birthsTotal += 1; + if (slave.father === -1) { + V.PC.counter.birthSelf += 1; + } else { + V.PC.counter.birthOther += 1; + } + } + } + } + if (V.PC.preg > 0) { + V.PC.pregWeek = V.PC.preg; + if (V.PC.pregType !== 8) { + V.PC.pregType = 1; + } else { + V.PC.geneticQuirks.hyperFertility = 2; + } + if (V.PC.career === "servant") { + V.PC.pregSource = -3; + if (V.PC.pregType !== 8) { + V.PC.pregType += either(0, 0, 1); + } + } else if (V.PC.career === "escort") { + V.PC.pregSource = -5; + } + V.PC.pregKnown = 1; + V.PC.belly = getPregBellySize(V.PC); + WombImpregnate(V.PC, V.PC.pregType, V.PC.pregSource, V.PC.preg); + } + } + if (V.PC.dick !== 0) { + V.PC.geneticQuirks.wellHung = 2; + } else { + V.PC.balls = 0; + V.PC.scrotum = 0; + V.PC.prostate = 0; + } + V.PC.ovaryAge = V.PC.physicalAge; + } + + function parentSetup() { + const pcMomFound = getSlave(V.PC.mother); + if (!pcMomFound && V.PC.mother > 0) { + const lostMom = V.PC.mother; + V.PC.mother = V.missingParentId; + for (const slave of V.slaves) { + if (slave.mother === lostMom) { + slave.mother = V.missingParentId; + } + } + V.missingParentId--; + } + + const pcDadFound = getSlave(V.PC.father); + if (!pcDadFound && V.PC.father > 0) { + const lostDad = V.PC.father; + V.PC.father = V.missingParentId; + for (const slave of V.slaves) { + if (slave.father === lostDad) { + slave.father = V.missingParentId; + } + } + V.missingParentId--; + } + + for (const slave of V.slaves) { + const slaveMomFound = getSlave(slave.mother); + const slaveDadFound = getSlave(slave.father); + if (!pcMomFound && V.PC.mother > 0) { + lostMom = V.PC.mother; + V.PC.mother = V.missingParentID; + for (const slave of V.slaves) { + if (slave.mother === lostMom) { + slave.mother = V.missingParentID; + } + } + V.missingParentID--; + } + if (!pcDadFound && V.PC.father > 0) { + lostDad = V.PC.father; + V.PC.father = V.missingParentID; + for (const slave of V.slaves) { + if (slave.father === lostDad) { + slave.father = V.missingParentID; + } + } + V.missingParentID--; + } + } + } + + function genepoolSetup() { + const coeffSlaves = []; + const genePoolMap = {}; + for (const slave of V.genePool) { + genePoolMap[slave.ID] = slave; + } + for (const slave of V.slaves) { + if (slave.newGamePlus === 0) { + slave.inbreedingCoeff = -1; + genePoolMap[slave.ID].inbreedingCoeff = -1; + coeffSlaves.push(slave); + } + } + const ibcoeffs = ibc.coeff_slaves(coeffSlaves); + for (const slave of coeffSlaves) { + slave.inbreedingCoeff = ibcoeffs[slave.ID]; + genePoolMap[slave.ID].inbreedingCoeff = ibcoeffs[slave.ID]; + } + } + + function generateFSslave(FS) { + let slave; + switch (FS) { + case "Supremacist": + V.oneTimeDisableDisability = 1; + slave = GenerateNewSlave("XX", {race: V.arcologies[0].FSSupremacistRace}); + slave.devotion = random(25, 45); + slave.trust = random(-25, -45); + setHealth(slave, jsRandom(0, 20), 0, 0, 0, 0); + slave.face = random(15, 100); + slave.skill.oral = random(15, 35); + slave.skill.anal = random(15, 35); + if (slave.vagina > -1) { + if (slave.vagina === 0) { + slave.vagina++; + } + slave.skill.vaginal = random(15, 35); + } + slave.skill.entertainment = random(15, 35); + slave.clothes = "uncomfortable straps"; + slave.collar = "uncomfortable leather"; + slave.shoes = "flats"; + slave.assignment = "please you"; + break; + case "Subjugationist": + V.oneTimeDisableDisability = 1; + slave = GenerateNewSlave("XX", {race: V.arcologies[0].FSSubjugationistRace}); + slave.devotion = random(25, 45); + slave.trust = random(-25, -45); + setHealth(slave, jsRandom(0, 20), 0, 0, 0, 0); + slave.face = random(15, 100); + slave.skill.oral = random(15, 35); + slave.skill.anal = random(15, 35); + if (slave.vagina > -1) { + if (slave.vagina === 0) { + slave.vagina++; + } + slave.skill.vaginal = random(15, 35); + } + slave.skill.whoring = random(15, 35); + slave.clothes = "uncomfortable straps"; + slave.collar = "uncomfortable leather"; + slave.shoes = "flats"; + slave.assignment = "whore"; + break; + case "GenderRadicalist": + slave = GenerateNewSlave("XY", {disableDisability: 1, maxAge: 25}); + slave.devotion = random(25, 45); + slave.trust = random(15, -15); + setHealth(slave, 100, 0, 0, 0, jsRandom(0, 20)); + slave.face = random(0, 55); + slave.boobs += 100 * random(2, 4); + slave.butt += random(1, 2); + slave.attrXY = random(70, 90); + slave.attrXX = 0; + slave.skill.oral = random(35, 65); + slave.skill.anal = random(35, 65); + slave.skill.whoring = random(35, 65); + SoftenSexualFlaw(slave); + slave.clothes = "uncomfortable straps"; + slave.collar = "stylish leather"; + slave.shoes = "heels"; + slave.assignment = "whore"; + break; + case "GenderFundamentalist": + slave = GenerateNewSlave("XX", {minAge: V.fertilityAge, maxAge: 25, disableDisability: 1}); + slave.devotion = random(25, 45); + slave.trust = random(-25, -45); + setHealth(slave, jsRandom(55, 65), 0, 0, 0, 0); + slave.face = random(15, 100); + slave.preg = random(1, 40); + slave.lactation = 1; + slave.lactationDuration = 2; + SetBellySize(slave); + if (slave.vagina > -1) { + if (slave.vagina === 0) { + slave.vagina++; + } + slave.skill.vaginal = random(15, 35); + } + slave.clothes = "a nice maid outfit"; + slave.collar = "tight steel"; + slave.shoes = "flats"; + slave.assignment = "be a servant"; + break; + case "Paternalist": + slave = GenerateNewSlave("XX", {disableDisability: 1}); + slave.devotion = random(25, 45); + slave.trust = random(55, 65); + setHealth(slave, jsRandom(55, 65), 0, 0, 0, 0); + slave.face = random(15, 100); + slave.intelligence = random(0, 100); + slave.intelligenceImplant = 30; + slave.skill.entertainment = random(15, 35); + slave.clothes = "conservative clothing"; + slave.collar = "none"; + slave.shoes = "flats"; + slave.assignment = "be a servant"; + break; + case "Degradationist": + slave = GenerateNewSlave("XX"); + slave.devotion = 25; + slave.trust = -25; + setHealth(slave, jsRandom(0, 15), 0, 0, 0, 0); + slave.fuckdoll = 100; + slave.career = "a Fuckdoll"; + slave.fetish = "mindbroken"; + slave.boobs += 100 * random(10, 20); + slave.butt += random(2, 3); + slave.lips = random(2, 4); + slave.weight = random(-15, 15); + slave.skill.oral = 0; + slave.skill.anal = 0; + slave.skill.vaginal = 0; + slave.skill.entertainment = 0; + slave.skill.whoring = 0; + slave.behavioralFlaw = "none"; + slave.sexualFlaw = "none"; + slave.clothes = "a Fuckdoll suit"; + slave.assignment = "please you"; + break; + case "AssetExpansionist": + slave = GenerateNewSlave("XX", {disableDisability: 1}); + slave.devotion = random(25, 45); + slave.trust = random(-15, 15); + setHealth(slave, jsRandom(25, 45), 0, 0, 0, 0); + slave.chem = 50; + slave.face = random(15, 100); + slave.boobs += 100 * random(10, 20); + slave.butt += random(2, 3); + slave.lips += random(0, 1); + if (slave.balls > 0) { + slave.balls++; + } + if (slave.dick > 0) { + slave.dick++; + } + slave.weight = random(15, 90); + slave.skill.oral = random(15, 35); + slave.skill.anal = 0; + slave.anus = 0; + if (slave.vagina > -1) { + if (slave.vagina === 0) { + slave.vagina++; + } + slave.skill.vaginal = random(15, 35); + } + slave.skill.entertainment = random(15, 35); + slave.clothes = "slutty jewelry"; + slave.collar = "pretty jewelry"; + slave.shoes = "heels"; + slave.assignment = "please you"; + break; + case "SlimnessEnthusiast": + slave = GenerateNewSlave("XX", {disableDisability: 1}); + slave.devotion = random(25, 45); + slave.trust = random(55, 65); + setHealth(slave, jsRandom(55, 65), 0, 0, 0, 0); + slave.face = random(15, 100); + slave.boobs = 100 * random(1, 4); + slave.butt = random(1, 2); + slave.weight = random(-25, -15); + slave.skill.oral = random(15, 35); + slave.skill.anal = 0; + slave.anus = 0; + if (slave.vagina > -1) { + if (slave.vagina === 0) { + slave.vagina++; + } + slave.skill.vaginal = random(15, 35); + } + slave.skill.entertainment = random(15, 35); + slave.clothes = "a leotard"; + slave.collar = "pretty jewelry"; + slave.shoes = "flats"; + slave.assignment = "please you"; + break; + case "TransformationFetishist": + slave = GenerateNewSlave("XX", {disableDisability: 1}); + slave.devotion = random(25, 45); + slave.trust = random(-15, 15); + setHealth(slave, jsRandom(-15, 0), Math.max(normalRandInt(5, 3), 0), Math.max(normalRandInt(5, 3), 0), 0, 0); + slave.faceImplant = random(40, 70); + slave.face = Math.clamp(Math.trunc(slave.face + slave.faceImplant / 2), -100, 100); + slave.boobsImplant = 200 * random(4, 8); + slave.boobs += slave.boobsImplant; + slave.boobsImplantType = "normal"; + slave.buttImplant = random(2, 4); + slave.butt += slave.buttImplant; + slave.buttImplantType = "normal"; + slave.lipsImplant = random(1, 2); + slave.lips = Math.clamp(Math.trunc(slave.lipsImplant + 2), -3, 3); + slave.weight = random(-25, -15); + slave.skill.oral = random(15, 35); + slave.skill.anal = random(15, 35); + if (slave.vagina > -1) { + if (slave.vagina === 0) { + slave.vagina++; + } + slave.skill.vaginal = random(15, 35); + } + slave.clothes = "a string bikini"; + slave.collar = "shock punishment"; + slave.shoes = "extreme heels"; + slave.assignment = "whore"; + break; + case "BodyPurist": + slave = GenerateNewSlave("XX", {disableDisability: 1}); + slave.devotion = random(55, 65); + slave.trust = random(25, 45); + setHealth(slave, 100, 0, 0, 0, jsRandom(0, 20)); + slave.face = random(15, 100); + slave.weight = random(-5, 5); + slave.muscles = random(10, 25); + slave.skill.oral = random(15, 35); + slave.skill.anal = random(15, 35); + if (slave.vagina > -1) { + if (slave.vagina === 0) { + slave.vagina++; + } + slave.skill.vaginal = random(15, 35); + } + slave.clothes = "a nice maid outfit"; + slave.collar = "pretty jewelry"; + slave.shoes = "heels"; + slave.assignment = "be a servant"; + break; + case "MaturityPreferentialist": + slave = GenerateNewSlave("XX", { + minAge: 36, maxAge: 39, ageOverridesPedoMode: 1, disableDisability: 1 + }); + slave.devotion = random(55, 65); + slave.trust = random(-15, 15); + setHealth(slave, jsRandom(25, 45), 0, 0, 0, 0); + slave.face = random(15, 100); + slave.boobs += 100 * random(1, 4); + slave.butt += random(1, 2); + slave.weight = random(-5, 90); + slave.skill.oral = random(15, 35); + slave.skill.anal = random(15, 35); + if (slave.vagina > -1) { + if (slave.vagina === 0) { + slave.vagina++; + } + slave.skill.vaginal = random(15, 35); + } + SoftenBehavioralFlaw(slave); + slave.clothes = "a slutty maid outfit"; + slave.collar = "pretty jewelry"; + slave.shoes = "heels"; + slave.assignment = "be a servant"; + break; + case "YouthPreferentialist": + slave = GenerateNewSlave("XX", {maxAge: 19, disableDisability: 1}); + slave.devotion = random(25, 45); + slave.trust = random(55, 65); + setHealth(slave, jsRandom(25, 45), 0, 0, 0, 0); + slave.face = random(15, 100); + slave.boobs = 100 * random(1, 4); + slave.butt = random(1, 3); + slave.weight = random(-25, 25); + slave.skill.oral = random(15, 35); + slave.skill.anal = 0; + slave.anus = 0; + if (slave.vagina > -1) { + slave.skill.vaginal = 0; + slave.vagina = 0; + } + slave.skill.entertainment = random(15, 35); + slave.clothes = "a schoolgirl outfit"; + slave.collar = "pretty jewelry"; + slave.shoes = "heels"; + slave.assignment = "be a servant"; + break; + case "Pastoralist": + slave = GenerateNewSlave("XX", {disableDisability: 1}); + slave.devotion = random(25, 45); + slave.trust = random(-25, -45); + setHealth(slave, jsRandom(25, 45), 0, 0, 0, 0); + slave.boobs += 100 * random(10, 20); + if (slave.balls > 0) { + slave.balls++; + } + slave.lactation = 2; + slave.lactationDuration = 2; + slave.clothes = "Western clothing"; + slave.collar = "leather with cowbell"; + slave.shoes = "flats"; + slave.assignment = "get milked"; + break; + case "PhysicalIdealist": + slave = GenerateNewSlave("XX", {disableDisability: 1}); + slave.devotion = random(25, 45); + slave.trust = random(25, 45); + setHealth(slave, 100, 0, 0, 0, jsRandom(10, 40)); + slave.muscles = random(50, 100); + slave.skill.oral = random(15, 35); + slave.skill.anal = random(15, 35); + if (slave.vagina > -1) { + if (slave.vagina === 0) { + slave.vagina++; + } + slave.skill.vaginal = random(15, 35); + } + slave.skill.whoring = random(15, 35); + slave.clothes = "body oil"; + slave.collar = "none"; + slave.shoes = "none"; + slave.assignment = "whore"; + break; + case "ChattelReligionist": + slave = GenerateNewSlave("XX", {disableDisability: 1}); + slave.devotion = random(55, 65); + slave.trust = random(55, 65); + setHealth(slave, jsRandom(0, 15), 0, 0, 0, 0); + if (slave.vagina === 0) { + slave.vagina++; + } + slave.skill.whoring = random(10, 20); + slave.behavioralFlaw = "none"; + slave.behavioralQuirk = "sinful"; + slave.clothes = "a chattel habit"; + slave.collar = "heavy gold"; + slave.shoes = "flats"; + slave.assignment = "whore"; + break; + case "RomanRevivalist": + slave = GenerateNewSlave("XX", {maxAge: 19, disableDisability: 1}); + slave.devotion = 100; + slave.trust = random(55, 65); + setHealth(slave, 100, 0, 0, 0, jsRandom(10, 30)); + slave.face = random(0, 55); + slave.muscles = random(25, 50); + slave.skill.combat = 1; + slave.behavioralFlaw = "none"; + slave.behavioralQuirk = "fitness"; + slave.behavioralFlaw = "none"; + slave.clothes = "a toga"; + slave.collar = "pretty jewelry"; + slave.shoes = "flats"; + slave.assignment = "guard you"; + V.BodyguardID = slave.ID; + break; + case "NeoImperialist": + slave = GenerateNewSlave("XX", { + minAge: 16, maxAge: 28, race: "white", disableDisability: 1 + }); + slave.devotion = 100; + slave.trust = random(55, 65); + setHealth(slave, 100, 0, 0, 0, jsRandom(10, 30)); + slave.face = random(20, 75); + slave.muscles = random(25, 60); + slave.skill.combat = 1; + slave.behavioralFlaw = "none"; + slave.behavioralQuirk = "fitness"; + slave.behavioralFlaw = "none"; + slave.skill.entertainment = random(15, 35); + slave.clothes = "a tight Imperial bodysuit"; + slave.shoes = "flats"; + slave.assignment = "guard you"; + V.BodyguardID = slave.ID; + break; + case "AztecRevivalist": + slave = GenerateNewSlave(null, {race: "latina", nationality: "Mexican", disableDisability: 1}); + slave.accent = 0; + slave.devotion = 75; + slave.trust = 75; + setHealth(slave, jsRandom(-20, 20), 0, 0, 0, 0); + slave.muscles = random(50, 75); + slave.skill.combat = 1; + slave.behavioralFlaw = "malicious"; + slave.behavioralQuirk = "none"; + slave.clothes = "a huipil"; + slave.collar = "pretty jewelry"; + slave.shoes = "none"; + slave.assignment = "be your Head Girl"; + V.HeadGirlID = slave.ID; + break; + case "EgyptianRevivalist": + slave = GenerateNewSlave("XX", {disableDisability: 1}); + slave.devotion = random(25, 45); + slave.trust = random(25, 45); + setHealth(slave, jsRandom(25, 45), 0, 0, 0, 0); + slave.face = random(15, 100); + slave.skill.oral = random(15, 35); + slave.skill.anal = random(15, 35); + if (slave.vagina > -1) { + if (slave.vagina === 0) { + slave.vagina++; + } + slave.skill.vaginal = random(15, 35); + } + slave.skill.entertainment = random(15, 35); + SoftenSexualFlaw(slave); + slave.clothes = "slutty jewelry"; + slave.collar = "ancient Egyptian"; + slave.shoes = "flats"; + slave.assignment = "please you"; + break; + case "EdoRevivalist": + slave = GenerateNewSlave(null, {race: "asian", nationality: "Japanese", disableDisability: 1}); + slave.accent = 0; + slave.devotion = random(25, 45); + slave.trust = random(25, 45); + setHealth(slave, jsRandom(25, 45), 0, 0, 0, 0); + slave.face = random(15, 100); + slave.intelligence = random(0, 100); + slave.intelligenceImplant = 30; + slave.skill.entertainment = 100; + slave.clothes = "a kimono"; + slave.collar = "satin choker"; + slave.shoes = "heels"; + slave.assignment = "serve the public"; + break; + case "ArabianRevivalist": + slave = GenerateNewSlave("XX", {disableDisability: 1}); + slave.devotion = random(25, 45); + slave.trust = random(-15, 15); + setHealth(slave, jsRandom(25, 45), 0, 0, 0, 0); + slave.face = random(15, 100); + slave.intelligence = random(-15, 80); + slave.intelligenceImplant = 0; + slave.clothes = "harem gauze"; + slave.collar = "uncomfortable leather"; + slave.shoes = "flats"; + slave.assignment = "take classes"; + break; + case "ChineseRevivalist": + slave = GenerateNewSlave(null, { + race: "asian", nationality: "Chinese", minAge: 36, maxAge: 38, ageOverridesPedoMode: 1, disableDisability: 1 + }); + slave.devotion = random(55, 65); + slave.trust = random(25, 45); + setHealth(slave, jsRandom(25, 45), 0, 0, 0, 0); + slave.face = random(0, 55); + slave.accent = 0; + slave.intelligence = 100; + slave.intelligenceImplant = 30; + slave.skill.oral = 100; + slave.skill.anal = 100; + if (slave.vagina > -1) { + if (slave.vagina === 0) { + slave.vagina++; + } + slave.skill.vaginal = 100; + } + slave.skill.entertainment = 100; + slave.skill.whoring = 100; + SoftenBehavioralFlaw(slave); + SoftenSexualFlaw(slave); + slave.clothes = "a slutty qipao"; + slave.collar = "pretty jewelry"; + slave.shoes = "heels"; + slave.assignment = "be your Head Girl"; + V.HeadGirlID = slave.ID; + break; + case "Eugenics": + slave = GenerateNewSlave("XX", {disableDisability: 1}); + slave.devotion = -100; + slave.trust = -100; + setHealth(slave, jsRandom(80, 90), 0, 0, 0, 0); + slave.intelligence = 100; + slave.intelligenceImplant = 30; + slave.face = 100; + slave.faceShape = "sensual"; + slave.skill.oral = random(35, 75); + slave.skill.anal = random(35, 75); + if (slave.vagina > -1) { + if (slave.vagina === 0) { + slave.vagina++; + } + slave.skill.vaginal = random(35, 75); + } + slave.skill.entertainment = random(15, 35); + slave.skill.whoring = 0; + SoftenSexualFlaw(slave); + slave.clothes = "a ball gown"; + slave.shoes = "flats"; + slave.assignment = "rest"; + break; + case "Repopulationist": + slave = GenerateNewSlave("XX", { + minAge: V.fertilityAge + 3, maxAge: 25, ageOverridesPedoMode: 1, disableDisability: 1 + }); + slave.devotion = random(25, 45); + slave.trust = random(-25, -45); + setHealth(slave, jsRandom(55, 65), 0, 0, 0, 0); + slave.face = random(15, 100); + slave.preg = random(10, 40); + slave.pregType = random(3, 8); + slave.lactation = 1; + slave.lactationDuration = 2; + SetBellySize(slave); + slave.counter.birthsTotal = 5; + slave.bellySag = 20; + slave.bellySagPreg = 20; + if (slave.vagina > -1) { + slave.vagina = 4; + slave.skill.vaginal = random(15, 35); + } + slave.clothes = "a nice maid outfit"; + slave.shoes = "flats"; + slave.assignment = "please you"; + break; + case "HedonisticDecadence": + slave = GenerateNewSlave("XX", {maxAge: 25, disableDisability: 1}); + slave.devotion = random(25, 45); + slave.trust = random(-25, -45); + setHealth(slave, jsRandom(-20, 20), 0, 0, 0, 0); + slave.face = random(15, 40); + slave.boobs += 100 * random(3, 6); + slave.butt += random(2, 5); + slave.weight = random(100, 200); + slave.skill.oral = random(15, 35); + slave.skill.anal = random(15, 35); + slave.anus = 2; + if (slave.vagina > -1) { + slave.skill.vaginal = random(15, 35); + slave.vagina = 3; + } + slave.skill.entertainment = 0; + slave.energy = random(60, 80); + slave.behavioralFlaw = "gluttonous"; + slave.clothes = "attractive lingerie"; + slave.shoes = "flats"; + slave.diet = "fattening"; + slave.rules.living = "luxurious"; + slave.assignment = "rest"; + break; + case "IntellectualDependency": + slave = GenerateNewSlave("XX", {minAge: 14, maxAge: 18, disableDisability: 1}); + setHealth(slave, jsRandom(55, 65), 0, 0, 0, 0); + slave.devotion = random(45, 65); + slave.trust = random(-15, 45); + slave.face = random(30, 100); + slave.energy = 100; + slave.weight = random(-25, -15); + slave.skill.oral = 0; + slave.skill.anal = 0; + slave.skill.vaginal = 0; + slave.skill.entertainment = 0; + slave.skill.whoring = 0; + slave.intelligence = -100; + slave.intelligenceImplant = 0; + if (slave.vagina === 0) { + slave.vagina++; + } + slave.anus++; + break; + case "SlaveProfessionalism": + slave = GenerateNewSlave("XX", {minAge: 18, maxAge: 25, disableDisability: 1}); + slave.devotion = 100; + slave.trust = 20; + setHealth(slave, 80, 0, 0, 0, jsRandom(10, 30)); + slave.face = random(30, 100); + slave.energy = 10; + slave.weight = random(-15, 5); + slave.skill.oral = 100; + slave.skill.anal = 100; + slave.skill.vaginal = 100; + slave.skill.entertainment = 100; + slave.skill.whoring = 100; + slave.intelligence = 100; + slave.intelligenceImplant = 30; + slave.accent = 0; + SoftenBehavioralFlaw(slave); + SoftenSexualFlaw(slave); + slave.clothes = "a nice maid outfit"; + slave.collar = "pretty jewelry"; + slave.assignment = "be your Head Girl"; + V.HeadGirlID = slave.ID; + break; + case "PetiteAdmiration": + slave = GenerateNewSlave("XX", {minAge: 14, maxAge: 18, disableDisability: 1}); + slave.devotion = random(55, 65); + slave.trust = random(-15, 15); + setHealth(slave, jsRandom(25, 45), 0, 0, 0, 0); + slave.face = random(15, 100); + if (slave.height >= 150) { + slave.height = Math.trunc(Height.random(slave, {limitMult: [-3, -1]})); + if (slave.height >= 150) { + slave.height = Math.trunc(Height.random(slave, {limitMult: [-4, -2]})); + if (slave.height >= 150) { + slave.height = random(90, 130); + slave.geneticQuirks.dwarfism = 2; + } + } + } + slave.skill.oral = random(35, 65); + slave.skill.anal = random(15, 35); + if (slave.vagina > -1) { + if (slave.vagina === 0) { + slave.vagina++; + } + slave.skill.vaginal = random(15, 35); + } + slave.clothes = "a succubus outfit"; + slave.legAccessory = "long stockings"; + slave.assignment = "please you"; + break; + case "StatuesqueGlorification": + slave = GenerateNewSlave("XX", { + minAge: 18, maxAge: 30, ageOverridesPedoMode: 1, disableDisability: 1 + }); + slave.devotion = random(55, 65); + slave.trust = random(-15, 15); + setHealth(slave, jsRandom(25, 45), 0, 0, 0, 0); + slave.face = random(15, 100); + slave.weight = random(-5, 5); + slave.muscles = random(20, 40); + if (slave.height < 185) { + slave.height = Math.trunc(Height.random(slave, {limitMult: [1, 3]})); + if (slave.height < 185) { + slave.height = Math.trunc(Height.random(slave, {limitMult: [2, 4]})); + if (slave.height < 185) { + slave.height = random(200, 264); + slave.geneticQuirks.gigantism = 2; + } + } + } + slave.skill.oral = random(15, 35); + slave.skill.anal = random(15, 35); + if (slave.vagina > -1) { + if (slave.vagina === 0) { + slave.vagina++; + } + slave.skill.vaginal = random(15, 35); + } + slave.clothes = "slutty business attire"; + slave.shoes = "heels"; + slave.assignment = "please you"; + break; + default: + r.push(`ERROR: bad arcology type`); + } + slave.origin = "You acquired $him along with the arcology."; + slave.career = "a slave"; + let slaveCostValue = slaveCost(slave); + if (["AztecRevivalist", "ChineseRevivalist", "NeoImperialist", "Eugenics", "SlaveProfessionalism"].includes(V.targetArcology.fs)) { + valueGiven += slaveCostValue * 4; + } else { + valueGiven += slaveCostValue; + } + newSlave(slave); + } }; -- GitLab