diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt index 15191464b415c287a848378a664c28d5b02d2f7f..d5b3b972508205050e3e7a1ead733627177ea2e0 100644 --- a/devNotes/VersionChangeLog-Premod+LoliMod.txt +++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt @@ -1,7 +1,21 @@ Pregmod +0.10.7.1-0.9.x + +9/28/2018 + + 1 + -Security Force Mod overhaul + -fixes + -pronoun work + 0.10.7.1-0.8.x +9/26/2018 + + 2 + -fixes + 9/25/2018 1 diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt index aae3348af0bf6ce81a0c1a9698a1bdba9a61998a..9e544123b389ba8e6d3aa4bc8e1678b24732c54c 100644 --- a/devNotes/twine JS.txt +++ b/devNotes/twine JS.txt @@ -2129,11 +2129,15 @@ window.getCost = function(array) { } } +if(State.variables.SF.Toggle && State.variables.SF.Active >= 1 && State.variables.SF.Subsidy) { + costs += Math.ceil((10000*(State.variables.SFUnit.Troops/10))*1+(State.variables.arcologies[0].prosperity/100)*1+(State.variables.SF.Units/100)); +} + // clean up if(costs < 0) { costs = 0; } else { - costs = Math.trunc(costs); + costs = Math.ceil(costs); } return costs; @@ -2391,7 +2395,7 @@ window.getSlaveCost = function(s) { cost += drugsCost * 5; break; case 'sag-B-gone': - cost += drugsCost * .1; + cost += Math.trunc(drugsCost * .1); break; case 'no drugs': case 'none': break; @@ -2403,16 +2407,16 @@ window.getSlaveCost = function(s) { cost += drugsCost * s.curatives; } if(s.aphrodisiacs !== 0) { - cost += drugsCost * Math.abs(s.aphrodisiacs); + cost += Math.trunc(drugsCost * Math.abs(s.aphrodisiacs)); } if(s.hormones !== 0) { - cost += (drugsCost * Math.abs(s.hormones) * 0.5); + cost += Math.trunc((drugsCost * Math.abs(s.hormones) * 0.5)); } if(s.bodySwap > 0) { - cost += (drugsCost * s.bodySwap * 10); + cost += Math.trunc((drugsCost * s.bodySwap * 10)); } if(s.preg === -1 && isFertile(s)) { - cost += (drugsCost * 0.5); + cost += Math.trunc((drugsCost * 0.5)); } // Promotion costs @@ -15548,7 +15552,7 @@ window.rulesAssistantOptions = (function() { if (V.masterSuite > 0) items.push("Master Suite"); if (V.schoolroom > 0) items.push("Schoolroom"); if (V.spa > 0) items.push("Spa"); - if (V.nursery > 0) item.push("Nursery"); + if (V.nursery > 0) items.push("Nursery"); if (V.clinic > 0) items.push("Clinic"); if (V.cellblock > 0) items.push("Cellblock"); items.forEach( @@ -30678,3 +30682,445 @@ window.disabilityRoll = function disabilityRoll(slave) { } V.oneTimeDisableDisability = 0; }; + +/*SecForceEX JS*/ +window.SFC = function() { + const V = State.variables; + if (V.SFTradeShow.CanAttend === -1) {return `The Colonel`;} + else { + if (V.LieutenantColonel > 0) {return `Lieutenant Colonel <<= SlaveFullName($LieutenantColonel)>>`;} + else {return `a designated soldier`;}} +}; + +window.SFCR = function() { + const V = State.variables, C = V.SFColonel; + if (C.Status <= 19) {return `boss`;} + else if (C.Status <= 39) {return `friend`;} + else {return `fuckbuddy`;} +}; + +window.TroopDec = function() { + const V = State.variables, commom = "the <<print commaNum($SFUnit.Troops)>> members of $SF.Lower", S = V.SFUnit; + if (S.Troops < 100) {return `sparsely occupied, ${commom} residing within them concentrating together in a corner. The hundreds of empty beds and lockers visibly herald the future`;} + else if (S.Troops < 400) {return `lightly occupied, with ${commom} starting to spread out across them`;} + else if (S.Troops < 800) {return `moderately occupied, though ${commom} residing within have a considerable amount of extra room`;} + else if (S.Troops < 1500) {return `well-occupied, and ${commom} residing within have started to form small cliques based on section and row`;} + else {return `near capacity, and ${commom} often barter their personal loot, whether it be monetary or human, for the choicest bunks`;} +}; + +window.HSM = function() { + const V = State.variables; + if (V.PC.hacking <= -100) {return 1.5;} + else if (V.PC.hacking <= -75) {return 1.35;} + else if (V.PC.hacking <= -50) {return 1.25;} + else if (V.PC.hacking <= -25) {return 1.15;} + else if (V.PC.hacking < 0) {return 1.10;} + else if (V.PC.hacking === 0) {return 1;} + else if (V.PC.hacking <= 10) {return 0.97;} + else if (V.PC.hacking <= 25) {return 0.95;} + else if (V.PC.hacking <= 50) {return 0.90;} + else if (V.PC.hacking <= 75) {return 0.85;} + else if (V.PC.hacking <= 100) {return 0.80;} + else {return 0.75;} +}; + +window.Count = function() { + const V = State.variables, T = State.temporary, C = Math.clamp, S = V.SFUnit, E = V.economy; + T.FU = 10,S.Firebase = C(S.Firebase, 0, T.FU); + T.AU = 10,S.Armoury = C(S.Armoury, 0, T.AU); + T.DrugsU = 10,S.Drugs = C(S.Drugs, 0, T.DrugsU); + T.DU = 10,S.Drones = C(S.Drones, 0, T.DU); + T.AVU = 10,S.AV = C(S.AV, 0, T.AVU); + T.TVU = 10,S.TV = C(S.TV, 0, T.TVU); + T.AAU = 10,S.AA = C(S.AA, 0, T.AAU); + T.TAU = 10,S.TA = C(S.TA, 0, T.TAU); + if (V.PC.warfare >= 75) {T.PGTU = 10,T.SPU = 10,T.GunSU = 10,T.SatU = 10,T.GRU = 10,T.MSU = 10,T.ACU = 10,T.SubU = 10,T.HATU = 10;} + else if (V.PC.warfare >= 50) {T.PGTU = 9,T.SPU = 9,T.GunSU = 9,T.SatU = 9,T.GRU = 9,T.MSU = 9,T.ACU = 9,T.SubU = 9,T.HATU = 9;} + else {T.PGTU = 8,T.SPU = 8,T.GunSU = 8,T.SatU = 8,T.GRU = 8,T.MSU = 8,T.ACU = 8,T.SubU = 8,T.HATU = 8;} + S.PGT = C(S.PGT, 0, T.PGTU); + S.SpacePlane = C(S.SpacePlane, 0, T.SPU), S.GunS = C(S.GunS, 0, T.GunSU); + S.Satellite = C(S.Satellite, 0, T.SatU), S.GiantRobot = C(S.GiantRobot, 0, T.GRU), S.MissileSilo = C(S.MissileSilo, 0, T.MSU); + S.AircraftCarrier = C(S.AircraftCarrier, 0, T.ACU),S.Sub = C(S.Sub, 0, T.SubU),S.HAT = C(S.HAT, 0, T.HATU); + T.GU = T.AVU+T.TVU+T.PGTU, T.G = S.AV+S.TV+S.PGT; + T.H = S.AA+S.TA+S.SpacePlane+S.GunS, T.HU = T.AAU+T.TAU+T.SPU+T.GunSU; + T.LBU = T.SatU + T.MSU, T.LB = S.Satellite + S.MissileSilo; + T.Base = S.Firebase + S.Armoury + S.Drugs + S.Drones + T.H; + T.BaseU = T.FU + T.AU + T.DrugsU + T.DU + T.HU; + if (V.terrain !== "oceanic") T.LBU += T.GRU, T.LB += S.GiantRobot, T.Base += T.G, T.BaseU += T.GU; + T.max = T.BaseU + T.LBU, V.SF.Units = T.Base + T.LB; + if (V.terrain === "oceanic" || V.terrain === "marine") { + T.NY = S.AircraftCarrier + S.Sub + S.HAT, V.SF.Units += T.NY; + T.NYU = T.ACU + T.SubU + T.HATU, T.max += T.NYU;} + V.SF.Units = C(V.SF.Units, 0, T.max); + if (E < 1) {T.Env = 4;} + else if (E < 1.5) {T.Env = 3;} + else {T.Env = 2;} +}; + +window.Firebase = function() { + const V = State.variables, S = V.SFUnit; + var appear = `is currently constructed in a haphazard fashion.`, barracks = `Soldiers' cots are mixed in with weapons crates and ammunition.`, slave = `Cages for processing slaves lie off to one side,`, common = `and in the center is a common area with tables for soldiers to gather around for meals or rowdy conversations.`, garage = ``, drone = ``, hangar = ``, launch = ``, artillery = ``, comms = ``, training = ``; + + if (S.Firebase >= 1) {appear = `has had some organization put into it.`, barracks = `The majority of weapons, armor, and ammunition have been separated from the soldiers' cots into their own armory.`, garage = `A section near the outer wall of the arcology has been converted to a garage with an adjoining vehicle maintenance bay`, drone = `.`; + if (V.terrain === "oceanic") garage += ` for inter-arcology travel`;} + if (S.Firebase >= 2) barracks = `A barracks has been constructed near the armory, allowing soldiers a quieter place to sleep and store their personal spoils.`, drone = `, as well as a facility for the storage, maintenance, and deployment of armed combat drones.`; + if (S.Firebase >= 3) appear = `has become more permanent.`, barracks = `A command center has been constructed near the barracks and armory, allowing for additional support personnel.`; + if (S.Firebase >= 4) hangar = `Hangar space for storing and repairing aircraft has been converted from unused space on the other side of the garage.`; + if (S.Firebase >= 5) { + appear = `is nearing the appearance of a military base.`, launch = `The rest of the firebase has been designated for special projects.`, artillery = `Artillery batteries are set around the base of the arcology.`; + if (V.terrain === "oceanic" || V.terrain === "marine") launch += ` A Naval Yard has been constructed in the waters near the arcology.`;} + if (S.Firebase >= 6) common = `and in the center is a common area for recreation, including a small movie theater and a mess hall.`; + if (S.Firebase >= 7) {slave = `A slave detention facility has been sectioned off to one side`; + if (V.SF.Depravity > 1.5) slave += ` emanating the sounds of rape and torture`; + slave += `,`;} + if (S.Firebase >= 8) appear = `has become a fully fledged military base.`, comms = `A Free City-wide communication network for $SF.Lower has been constructed to faciltate faster responses and efficent monitoring of the surrounding area.`; + if (S.Firebase >= 9) training = `A high-tech killhouse has been constructed to aid in soldier training.`; + if (S.Firebase >= 10) artillery = `Railgun artillery batteries are set around the base of the arcology, capable of accurately destroying enemies an absurd distance away.`; + + return `The firebase ${appear} ${barracks} ${comms} ${training} ${slave} ${common} ${garage}${drone} ${hangar} ${launch} ${artillery}`; +}; + +window.Armoury = function() { + const V = State.variables, S = V.SFUnit; + var weapons = `The weapons are mostly worn rifles that have already seen years of service before $SF.Lower aquired them.`, armor = `The body armor is enough to stop smaller calibers, but nothing serious.`, comms = ``, helmets = ``, ammo = ``, uniforms = ``, special = ``, exo = ``; + + if (S.Armoury >= 1) comms = `Radios have been wired into the soldiers helmets`, helmets = `.`; + if (S.Armoury >= 2) helmets = ` and a HUD has been integrated into the soldier's eyewear.`; + if (S.Armoury >= 3) ammo = `Tactical vests have been provided, allowing soldiers to carry additional ammo.`; + if (S.Armoury >= 4) armor = `The body armor is a newer variant, able to stop small arms fire and protect against shrapnel.`; + if (S.Armoury >= 5) weapons = `The weapons are modern rifles and sidearms, putting $SF.Lower on par with rival mercenary outfits.`; + if (S.Armoury >= 6) uniforms = `New uniforms have been distributed that are more comfortable and made of breatheable fabric to keep soldiers from overheating.`; + if (S.Armoury >= 7) special = `Specialized weaponry is available for various roles, allowing more flexibility in planning.`; + if (S.Armoury >= 8) helmets = `and a HUD and camera display have been integrated into soldiers' eyewear, enabling accurate aim around corners or from behind cover`; + if (S.Armoury >= 9) exo = `An exosuit has been developed to reduce the amount of weight soldiers carry, increase lifting strength, and move faster in combat.`; + if (S.Armoury >= 10) weapons = `Cutting-edge weaponry is available to $SF.Lower, far outpacing the ability of rival mercenary outfits.`; + + return `The armory holds soldiers' weapons and gear while not in training or combat. ${weapons} ${special} ${armor} ${comms}${helmets} ${ammo} ${uniforms} ${exo}`; +}; + +window.Drugs = function() { + const V = State.variables, S = V.SFUnit; + var amphet = ``, phen = ``, steroid = ``, downer = ``, concen = ``, stimpack = ``, stabilizer = ``; + + if (S.Drugs >= 1) amphet = `Amphetamines have been added to the cocktail at a low dosage to act as a stimulant, physical performance enhancer, cognition control enhancer. Some side-effects exist.`; + if (S.Drugs >= 2) phen = `Phencyclidine has been added to the cocktail at a low dosage as a dissociative psychotropic for soldiers in battle to introduce feelings of detachment, strength and invincibility, and aggression. Some side-effects reduce the tolerable dosage before soldiers go on uncontrollable violent outbreaks.`; + if (S.Drugs >= 3) steroid = `Testosterone is being produced for soldiers in training as a natural muscle growth stimulant and to invoke aggression.`; + if (S.Drugs >= 4) downer = `Zaleplon is being produced as a downer to counteract the battle cocktail and encourage rest before combat.`; + if (S.Drugs >= 5) concen = `Methylphenidate has been added to the cocktail as a stimulant and to improve soldier concentration.`; + if (S.Drugs >= 6) phen = `A phencyclidine-based drug has been added to the cocktail as a dissociative psychotropic for soldiers in battle to introduce controllable feelings of detachment, strength and invincibility, and aggression.`; + if (S.Drugs >= 7) steroid = `Low levels of anabolic steroids are being produced for soldiers in training to stimulate muscle growth and invoke aggression.`; + if (S.Drugs >= 8) amphet = `Diphenylmethylsulfinylacetamide has been added to the cocktail to counteract the effects of sleep deprivation and promote alertness.`; + if (S.Drugs >= 9) stimpack = `A stimpack of the battle cocktail is being given to soldiers in battle to take if the original dose wears off before the battle is over.`; + if (S.Drugs >= 10) stabilizer = `A stabilizer has been added to the battle cocktail that helps tie effects together while reducing side-effects, leading to an effectively safe supersoldier drug.`; + + return `A drug lab has been established to increase the effectiveness of $SF.Lower's soldiers. Many of these chemicals are mixed into a single 'battle cocktail' to be taken before combat. ${amphet} ${phen} ${concen} ${steroid} ${downer} ${stimpack} ${stabilizer}`; +}; + +window.LUAV = function() { + const V = State.variables, S = V.SFUnit; + var a = `have been recommissioned for use by $SF.Lower`, b = `.`, c = ``, d = ``, e = ``, f = ``, g = ``, h = ``, i = ``, j = ``, k = ``; + + if (S.Drones >= 2) a = `equipped with missiles are resting on one side of the drone bay`, b = `, as well as destroying the occasional target.`; + if (S.Drones >= 3) c = `A fleet of`, d = `large delivery quadcopters have been converted for military service to support ground forces as combat drones.`; + if (S.Drones >= 4) d = `combat drones take up the rest of the space in the drone bay. They have a`, e = `small automatic rifle`, f = `mounted to the underside.`; + if (S.Drones >= 5) g = `Armor has been added to protect vulnerable components from small arms fire.`; + if (S.Drones >= 6) h = `The fleet's batteries have been replaced with higher capacity models, increasing the functional time spent in combat.`; + if (S.Drones >= 7) i = `The propellers and motors have been upgraded, increasing maneuverability and speed.`; + if (S.Drones >= 8) j = `The drone control signal has been boosted and encrypted, giving the drones a greater range and protecting against electronic warfare.`; + if (S.Drones >= 9) e = `light machine gun`; + if (S.Drones >= 10) k = `A drone-to-drone network has been installed, allowing drones to swarm, maneuver, and attack targets autonomously.`; + + return `Surveillance drones ${a}. During combat, they supply aerial intel to commanders and act as the communications network for ground forces${b} ${c} ${d} ${e} ${f} ${g} ${h} ${i} ${j} ${k}`; +}; + +window.AV = function() { + const V = State.variables, S = V.SFUnit; + var b = `has been recommissioned for use by $SF.Lower. They`, c = `; mechanics are methodically checking the recent purchases for battle-readiness`, MG = `120 mm main gun is enough to handle the majority of opponents around the Free Cities.`, engine = ``, armor = ``, armor2 = ``, ammo = ``, mg = ``, fireC0 = ``, fireC1 = ``, fireC2 = ``, fireC3 = ``, turret = ``; + + if (S.AV >= 2) engine = `The engine has been overhauled, allowing much faster maneuvering around the battlefield.`, b = ``, c = ``; + if (S.AV >= 3) armor = `A composite ceramic armor has replaced the original, offering much greater protection from attacks.`; + if (S.AV >= 4) ammo = `The tanks have been outfitted with additional types of ammo for situational use.`; + if (S.AV >= 5) mg = `A remote-controlled .50 cal machine gun has been mounted on the turret to handle infantry and low-flying aircraft.`; + if (S.AV >= 6) fireC0 = `A fire-control system`, fireC3 = `been installed, guaranteeing`, fireC2 = `has`, fireC1 = `accurate fire.`; + if (S.AV >= 7) fireC2 = `and an autoloader have`, fireC1 = `rapid, accurate fire while separating the crew from the stored ammunition in the event the ammo cooks off.`; + if (S.AV >= 8) armor2 = `A reactive armor system has been added, giving the tank an additional, if temporary, layer of protection.`; + if (S.AV >= 9) turret = `The turret has been massively redesigned, lowering the tank profile and increasing the efficiency of the mechanisms within.`; + if (S.AV >= 10) MG = `140 mm main gun can quash anything even the greatest Old World nations could muster.`; + + return `A fleet of main battle tanks ${b} are parked in the garage${c}. ${turret} The ${MG} ${ammo} ${mg} ${fireC0} ${fireC2} ${fireC3} ${fireC1} ${engine} ${armor} ${armor2}`; +}; + +window.TV = function() { + const V = State.variables, S = V.SFUnit; + var B = `has been recommissioned for use by $SF.Lower. They`, C = `; mechanics are giving the new purchases a final tuneup`, squad = `a squad`, G1 = `20`, G2 = `in a firefight`, e0 = `The engine has been`, engine = ``, armor = ``, tires = ``, m1 = ``, m2 = ``, pod1 = ``, pod2 = ``; + + if (S.TV >= 2) engine = `${e0} overhauled, allowing for higher mobility.`, C = ``, B = ``; + if (S.TV >= 3) armor = `Composite armor has been bolted to the exterior, increasing the survivability of an explosive attack for the crew and passengers.`; + if (S.TV >= 4) tires = `The tires have been replaced with a much more durable version that can support a heavier vehicle.`; + if (S.TV >= 5) m1 = `An automatic missile defense system has been installed,`, m2 = `targeting any guided missiles with laser dazzlers and deploying a smokescreen.`; + if (S.TV >= 6) pod1 = `An anti-tank missle pod`, pod2 = `has been installed on the side of the turret.`; + if (S.TV >= 7) G1 = `25`, G2 = `by attacking enemies through cover and destroying light armor`; + if (S.TV >= 8) pod2 = `and an anti-aircraft missile pod have been installed on either side of the turret.`; + if (S.TV >= 9) squad = `two squads`, armor = ``, m2 = `destroying any incoming missiles with a high-powered laser. Some of the now redundant composite armor has been removed, and the reclaimed space allows for more passengers.`; + if (S.TV >= 10) engine = `${e0} replaced with the newest model, allowing the vehicle to get in and out of the conflict extremely quickly.`; + + return `A fleet of infantry fighting vehicles ${B} are parked in the garage${C}. The IFVs can carry ${squad} of 6 to a firezone. The ${G1} mm autocannon supports infantry ${G2}. ${pod1} ${pod2} ${engine} ${armor} ${tires} ${m1} ${m2}`; +}; + +window.PGT = function() { + const V = State.variables, S = V.SFUnit; + var b = `has been sold to $SF.Lower through back channels to support a failing Old World nation. The tank is so large it cannot fit inside the garage, and has`, c = ``, engines = `. Two engines power the left and right sides of the tank separately, leaving it underpowered and slow`, gun0 = ``, gun1 = ``, gun2 = `an undersized main gun and makeshift firing system from a standard battle tank`, armor1 = ``, armor0 = ``, cannon = ``, laser = ``, PGTframe = ``; + + if (S.PGT >= 2) c = `rests in`, b = ``, engines = ` and powered by their own engine, allowing the tank to travel with an unsettling speed for its massive bulk`; + if (S.PGT >= 3) gun0 = `a railgun capable of`, gun1 = `firing steel slugs`, gun2 = `through one tank and into another`; + if (S.PGT >= 4) armor0 = `reinforced, increasing survivability for the crew inside.`, armor1 = `The armor has been`; + if (S.PGT >= 5) cannon = `A coaxial 30mm autocannon has been installed in the turret, along with automated .50 cal machine guns mounted over the front treads.`; + if (S.PGT >= 6) laser = `Laser anti-missile countermeasures have been installed, destroying any subsonic ordinance fired at the Goliath.`; + if (S.PGT >= 7) PGTframe = `The frame has been reinforced, allowing the Goliath to carry more armor and gun.`; + if (S.PGT >= 8) armor0 = `redesigned with sloping and state-of-the-art materials, allowing the Goliath to shrug off even the most advanced armor-piercing tank rounds.`; + if (S.PGT >= 9) gun1 = `firing guided projectiles`; + if (S.PGT >= 10) gun0 = `a twin-barreled railgun capable of rapidly`; + + return `A prototype Goliath tank ${b}${c} its own garage housing built outside the arcology. The massive bulk is spread out over 8 tracks, two for each corner of the tank${engines}. The turret is equipped with ${gun0} ${gun1} ${gun2}. ${cannon} ${armor1} ${armor0} ${laser} ${PGTframe}`; +}; + +window.AA = function() { + const V = State.variables, S = V.SFUnit; + var W1 = `only armed`, W2 = `,`, W3 = `a poor weapon against flying targets, but enough to handle ground forces`, group = `A small group of attack VTOL have been recommissioned for use by $SF.Lower, enough to make up a squadron`, engines = ``, TAI = ``, lock = ``, support = ``, stealth = ``, scramble = ``, PAI = ``; + + if (S.AA >= 2) W1 = `armed`, W2 = ` and air-to-air missiles,`, W3 = `a combination that can defend the arcology from enemy aircraft, as well as`, support = ` support ground troops`; + if (S.AA >= 3) engines = `The engines have been tuned, allowing faster flight with greater acceleration.`; + if (S.AA >= 4) TAI = `An advanced targeting AI has been installed to handle all control of weapons, allowing much more efficent use of ammunition and anti-countermeasure targeting.`; + if (S.AA >= 5) lock = `Installed multispectrum countermeasures protect against all types of missile locks.`; + if (S.AA >= 6) group = `A respectable number of attack VTOL protect your arcology, split into a few squadrons`; + if (S.AA >= 7) support = ` attack ground targets`, W2 = `, rocket pods, and air-to-air missiles,`; + if (S.AA >= 8) stealth = `The old skin has been replaced with a radar-absorbent material, making the aircraft difficult to pick up on radar.`; + if (S.AA >= 9) scramble = `The VTOLs can scramble to react to any threat in under three minutes.`; + if (S.AA >= 10) PAI = `A piloting AI has been installed, allowing the VTOLs to perform impossible maneuvers that cannot be done by a human pilot. This removes the need for a human in the aircraft altogether.`; + + return `${group}. Several of the landing pads around $arcologies[0].name host groups of four fighters, ready to defend the arcology. ${scramble} The attack VTOL are currently ${W1} with a Gatling cannon${W2} ${W3}${support}. ${TAI} ${PAI} ${engines} ${lock} ${stealth}`; +}; + +window.TA = function() { + const V = State.variables, S = V.SFUnit; + var Num = `number`, type = `tiltrotor`, capacity = `small platoon or 15`, engines = ``, engines2 = ``, Radar = ``, Armor = ``, landing = ``, miniguns = ``, counter = ``; + + if (S.TA >= 2) engines = `The tiltrotor engines have been replaced with a more powerful engine, allowing faster travel times.`; + if (S.TA >= 3) counter = `Multispectrum countermeasures have been added to protect against guided missiles.`; + if (S.TA >= 4) miniguns = `Mounted miniguns have been installed to cover soldiers disembarking in dangerous areas.`; + if (S.TA >= 5) Num = `large number`; + if (S.TA >= 6) landing = `The landing equipment has been overhauled, protecting personel and cargo in the event of a hard landing or crash.`; + if (S.TA >= 7) Armor = `Armor has been added to protect passengers from small arms fire from below.`; + if (S.TA >= 8) capacity = `large platoon or 20`, engines2 = `Further tweaks to the engine allow for greater lifting capacity.`; + if (S.TA >= 9) Radar = `Radar-absorbent materials have replaced the old skin, making it difficult to pick up the VTOL on radar.`; + if (S.TA >= 10) type = `tiltjet`, engines2 = ``, engines = `The tiltrotors have been replaced with tiltjets, allowing for much greater airspeed and acceleration.`; + + return `A ${Num} of transport ${type} VTOL have been recommissioned for use by $SF.Lower. The VTOLs are resting on large pads near the base to load either a ${capacity} tons of materiel. ${engines} ${engines2} ${Armor} ${landing} ${counter} ${Radar} ${miniguns}`; +}; + +window.SP = function() { + const V = State.variables, S = V.SFUnit; + var engine = `ramjet engines in the atmosphere that can reach Mach 10`, b = `has been purchased from an insolvent Old World nation. It `, shield = ``, camera = ``, efficiency = ``, camera2 = ``, drag = ``, crew = ``, engine2 = ``, skin = ``; + + if (S.SpacePlane >= 2) b = ``, shield = `The current heat shielding has been upgraded, reducing the likelihood of heat damage during reentry.`; + if (S.SpacePlane >= 3) engine2 = ` and liquid rocket engines in orbit that can reach an equivalent Mach 18`; + if (S.SpacePlane >= 4) camera = `A state-of-the-art camera has been installed in the underbelly that takes incredibly high resolution photos, but requires the frictionless environment of space to focus.`; + if (S.SpacePlane >= 5) efficiency = `Tweaks to the engines have increased fuel efficency to the point where midflight refueling is no longer necessary.`; + if (S.SpacePlane >= 6) camera2 = `The camera sensor is capable of taking IR shots.`; + if (S.SpacePlane >= 7) drag = `Miraculous advances in aerodynamics and materials allow frictionless flight, even while in the atmosphere.`; + if (S.SpacePlane >= 8) crew = `Increased the crew comfort and life support systems to increase operational time.`; + if (S.SpacePlane >= 9) skin = `Replaced the underbelly skin with an chameleon kit, matching the color to the sky above it.`; + if (S.SpacePlane >= 10) engine = `experimental scramjet engines in the atmosphere that can reach Mach 15`, engine2 = ` and liquid rocket engines in orbit that can reach an equivalent Mach 25`; + + return `A prototype spaceplane ${b} rests in the hangar, its black fuselage gleaming. The craft is powered by ${engine}${engine2}. ${efficiency} ${shield} ${camera} ${camera2} ${drag} ${crew} ${skin}`; +}; + +window.GunS = function() { + const V = State.variables, S = V.SFUnit; + var a = `has been recommissioned for use by $SF.Lower. Currently, it `, b = ``, c = ``, d = ``, e = `Miniguns and Gatling cannons line`, f = `, though the distance to ground targets renders the smaller calibers somewhat less useful`, g = ``, h = ``, i = ``, j = ``, k = ``; + + if (S.GunS >= 2) b = `Infrared sensors have been added for the gunners to better pick targets.`, a = ``; + if (S.GunS >= 3) c = `The underside of the aircraft has been better armored against small-arms fire`, h = `.`; + if (S.GunS >= 4) d = `Larger fuel tanks have been installed in the wings and fuselage, allowing the gunship to provide aerial support for longer periods before refueling.`; + if (S.GunS >= 5) e = `25 mm Gatling cannons`, f = `, allowing the gunship to eliminate infantry`, j = ` and light vehicles from above`, k = ` and a 40 mm autocannon are mounted on`; + if (S.GunS >= 6) g = `The engines have been replaced, allowing both faster travel to a target, and slower travel around a target.`; + if (S.GunS >= 7) h = `, and multi-spectrum countermeasures have been installed to protect against guided missiles.`; + if (S.GunS >= 8) b = `Upgraded multi-spectrum sensors can clearly depict targets even with IR shielding.`; + if (S.GunS >= 9) i = `The ammunition storage has been increased, only slightly depriving loaders of a place to sit.`; + if (S.GunS >= 10) j = `, both light and heavy vehicles, and most enemy cover from above`, k = `, a 40 mm autocannon, and a 105 mm howitzer are mounted on`; + + return `A large gunship ${a} is being refueled in the hangar. ${e}${k} the port side of the fuselage${f}${j}. ${b} ${i} ${g} ${c}${h} ${d}`; +}; + +window.Sat = function() { + const V = State.variables, S = V.SFUnit; + var loc = `An unused science satellite has been purchased from an Old World nation. While currently useless, it holds potential to be a powerful tool.`, gyro = ``, telemetry = ``, thrusters = ``, solar = ``, surviv = ``, laser = ``, heat = ``, reactor = ``, lens = ``, kin = ``; + + if (S.Satellite >= 2) { + if (V.SatLaunched < 1) {loc = `The satellite is being worked on in the Launch Bay.`;} else {loc = `The satellite is in geosynchronous orbit, far above the arcology.`;} + gyro = `A suite of sensors have been installed to ensure the satellite can detect attitude and orbital altitude.`;} + if (S.Satellite >= 3) telemetry = `Telemetry systems have been installed to communicate with the satellite in orbit, with strong encryption measures.`; + if (S.Satellite >= 4) thrusters = `Thrusters have been installed to control satellite attitude and orbit.`; + if (S.Satellite >= 5) solar = `A massive folding solar panel array, combined with the latest in battery technology allow the satellite to store an enormous amount of energy relatively quickly.`, surviv = `Enough of the satellite has been finished that it can expect to survive for a significant period of time in space.`; + if (S.Satellite >= 6) laser = `A laser cannon has been mounted facing the earth, capable of cutting through steel in seconds`, heat = ` while generating a large amount of heat.`; + if (S.Satellite >= 7) heat = `. The installed heatsink allows the laser cannon to fire more frequently without damaging the satellite.`; + if (S.Satellite >= 8) reactor = `A small, efficient nuclear reactor has been installed to continue generating energy while in the Earth's shadow.`; + if (S.Satellite >= 9) lens = `A higher quality and adjustable lens has been installed on the laser, allowing scalpel precision on armor or wide-area blasts on unarmored targets.`; + if (S.Satellite >= 10) kin = `A magazine of directable tungsten rods have been mounted to the exterior of the satellite, allowing for kinetic bombardment roughly equal to a series of nuclear blasts.`; + + return `${loc} ${gyro} ${thrusters} ${telemetry} ${solar} ${reactor} ${surviv} ${laser}${heat} ${lens} ${kin}`; +}; + +window.GR = function() { + const V = State.variables, S = V.SFUnit; + var loc = `has been purchased from a crumbling Old World nation. It`, power = `Large batteries mounted in oversized shoulders power the robot for up to ten minutes of use, though they make for large targets.`, knife = `simply a 8.5 meter long knife, though additional weapons are under development.`, armor = ``, actuator = ``, cannon = ``, heatsink = ``, ammo = ``, missile = ``; + + if (S.GiantRobot >= 2) loc = ``, armor = `Armor plating has been mounted over the majority of the robot.`; + if (S.GiantRobot >= 3) power = `The robot is now powered by an umbilical cable system instead of bulky and short-lived batteries.`; + if (S.GiantRobot >= 4) knife = `a 25 meter plasma sword. The cutting edge uses plasma to melt and cut through targets, reducing the strain on the sword.`; + if (S.GiantRobot >= 5) actuator = `The limb actuators have been replaced with a faster and more powerful variant, granting the robot the same.`; + if (S.GiantRobot >= 6) cannon = `A custom 45 mm Gatling cannon rifle has been developed for ranged use`, ammo = `, though it lacks enough ammo storage for a main weapon.`; + if (S.GiantRobot >= 7) heatsink = `Large heatsinks have been installed out of the back to solve a massive overheating problem. These heatsinks resemble wings, and tend to glow red with heat when in heavy use.`; + if (S.GiantRobot >= 8) armor = ``, actuator = `Final actuator tweaks have allowed for the addition of exceptionally thick armor without any loss in speed or power.`; + if (S.GiantRobot >= 9) ammo = `, with spare ammunition drums kept along the robot's waist.`; + if (S.GiantRobot >= 10) missile = `Missile pods have been mounted on the shoulders.`; + + return `A prototype giant robot ${loc} rests in a gantry along the side of the arcology. The robot is as tall as a medium-sized office building, focusing on speed over other factors. ${power} ${armor} ${actuator} ${heatsink} The main armament is ${knife} ${cannon}${ammo} ${missile}`; +}; + +window.ms = function() { + const V = State.variables, S = V.SFUnit; + var a = `A cruise missile launch site has been constructed near the base of`, b = `outdated, something quickly rigged together to give the launch site something to fire in the case of an attack`, c = ``, d = ``, e = ``, f = ``, g = ``, h = ``; + + if (S.MissileSilo >= 2) b = `a modern missile`, c = `, tipped with a conventional warhead`; + if (S.MissileSilo >= 3) d = `The launch systems have been overhauled, allowing a launch within seconds of an attack order being given.`; + if (S.MissileSilo >= 4) e = `The missile engines have been tweaked, giving them a greater range.`; + if (S.MissileSilo >= 5) f = `A passive radar has been installed, allowing the missile to follow moving targets.`; + if (S.MissileSilo >= 6) a = `Several cruise missile launch sites have been constructed around`; + if (S.MissileSilo >= 7) e = `The engine has been replaced, giving the missiles greater range and supersonic speeds.`; + if (S.MissileSilo >= 8) g = `The ability to pick new targets should the original be lost has been added.`; + if (S.MissileSilo >= 9) h = `The missile now uses its remaining fuel to create a thermobaric explosion, massively increasing explosive power.`; + if (S.MissileSilo >= 10) c = ` that can be tipped with either a conventional or nuclear warhead`; + + return `${a} the arcology. The current missile armament is ${b}${c}. ${d} ${e} ${f} ${g} ${h}`; +}; + +window.AC = function() { + const V = State.variables, S = V.SFUnit; + var recom = `has been recommisioned from the Old World for $SF.Lower. It`, jets = `Formerly mothballed strike jets`, loc = ``, radar = ``, AA = ``, prop = ``, torp = ``, armor = ``, power = ``, scramble = ``; + + if (V.week % 6 === 0) { loc = `moored to the pier in the Naval Yard`; } else { loc = `patrolling the waters near $arcologies[0].name`; } + if (S.AircraftCarrier >= 2) radar = `The island's radar and comms have been improved.`, recom = ``; + if (S.AircraftCarrier >= 3) AA = `The antiair guns have been updated to automatically track and predict enemy aircraft movement.`; + if (S.AircraftCarrier >= 4) jets = `Modern strike jets with state-of-the-art armaments`; + if (S.AircraftCarrier >= 5) prop = `The propellers have been redesigned, granting greater speed with less noise.`; + if (S.AircraftCarrier >= 6) torp = `An anti-torpedo system detects and destroys incoming torpedoes.`; + if (S.AircraftCarrier >= 7) armor = `Additional armor has been added to the hull and deck.`; + if (S.AircraftCarrier >= 8) power = `The power plant has been converted to provide nuclear power.`; + if (S.AircraftCarrier >= 9) scramble = `The catapult has been converted to an electromagnetic launch system, halving the time it takes to scramble jets.`; + if (S.AircraftCarrier >= 10) jets = `Attack VTOL from the converted for carrier capability`; + + return `An aircraft carrier ${recom} is ${loc}. ${jets} serve as its airpower. ${scramble} ${power} ${radar} ${AA} ${torp} ${prop} ${armor}`; +}; + +window.Sub = function() { + const V = State.variables, S = V.SFUnit; + var recom = `has been recommissioned from the old world, and`, reactor = `Because diesel engines provide power and breathing oxygen is kept in pressurized canisters, the sub must frequently surface.`, reactor1 = ``, cal = ``, hull = ``, tubes = ``, torpedoes = ``, sonar = ``, control = ``, missiles = ``; + + if (S.Sub >= 2) recom = ``, reactor = `A nuclear reactor provides power`, reactor1 = `, but because oxygen is still kept in pressurized canisters the sub must frequently surface to replenish its oxygen stocks.`; + if (S.Sub >= 3) reactor1 = ` and an oxygen generator pulls Oâ‚‚ from the surrounding seawater, allowing the submarine to remain underwater for months if necessary.`; + if (S.Sub >= 4) cal = `Calibration of the propulsion systems has reduced the telltale hum of a moving sub to a whisper.`; + if (S.Sub >= 5) hull = `The outer hull has been redesigned for hydrodynamics and sonar absorption.`; + if (S.Sub >= 6) tubes = `The torpedo tubes have been redesigned for faster loading speeds`, torpedoes = `.`; + if (S.Sub >= 7) sonar = `The passive sonar has been finely tuned to detect mechanical noises miles away.`; + if (S.Sub >= 8) control = `The control room computers have been upgraded to automate many conn duties.`; + if (S.Sub >= 9) torpedoes = `and launch more agile torpedoes.`; + if (S.Sub >= 10) missiles = `The submarine has been outfitted with several cruise missiles to attack land or sea-based targets.`; + + return `An attack submarine ${recom} is moored to the pier of the Naval Yard. ${reactor}${reactor1} ${cal} ${hull} ${tubes}${torpedoes} ${sonar} ${control} ${missiles}`; +}; + +window.HAT = function() { + const V = State.variables, S = V.SFUnit; + var recom = `, has been recommissioned for use by $SF.Lower. It`, tons = `200`, skirt = ``, guns = ``, guns2 = ``, fans = ``, speed = ``, turbines = ``, armor = ``, ramps = ``, HATframe = ``, loadout = ``; + + if (S.HAT >= 2) skirt = `The skirt has been upgraded to increase durabilty and improve cushion when travelling over uneven terrain and waves.`, recom = `,`; + if (S.HAT >= 3) guns = `A minigun`, guns2 = `has been mounted on the front corners of the craft to defend against attackers.`; + if (S.HAT >= 4) fans = `The turbines powering the rear fans`, speed = `acceleration and speed.`, turbines = `have been replaced with a more powerful version, allowing greater`; + if (S.HAT >= 5) armor = `The armor protecting its cargo has been increased.`; + if (S.HAT >= 6) tons = `300`, fans = `The turbines powering the rear fans and impeller`, speed = `acceleration, speed, and carrying capacity.`; + if (S.HAT >= 7) guns = `A minigun and grenade launcher`; + if (S.HAT >= 8) ramps = `The loading ramps have been improved, allowing for faster unloading.`; + if (S.HAT >= 9) HATframe = `The frame has been widened and reinforced, allowing for more space on the deck.`; + if (S.HAT >= 10) loadout = `An experimental loadout sacrifices all carrying capacity to instead act as a floating gun platform by mounting several rotary autocannons the deck, should the need arise.`; + + return `An air cushion transport vehicle, or hovercraft${recom} is parked on the pier of the Naval Yard, ready to ferry ${tons} tons of soldiers and vehicles. ${guns} ${guns2} ${fans} ${turbines} ${speed} ${skirt} ${armor} ${ramps} ${HATframe} ${loadout}`; +}; + +window.Interactions = function() { + const V = State.variables, C = V.SFColonel, T = State.temporary; + var choice = ``, time = ``; + + if (V.SF.WG > 0){ + if (V.choice == 1){ + choice = `$SF.Caps is turning over spare capital in tribute this week. `; + if (V.SFTradeShow.CanAttend === -1 && (C.Talk + C.Fun !== 1)) { + choice += `"I think I can find @@.yellowgreen;<<print cashFormat(Math.ceil($CashGift))>>@@ for you, boss."`;} + else { + choice += `"We can spare@@.yellowgreen;<<print cashFormat(Math.ceil($CashGift))>>@@ in tribute this week, `; + if (V.PC.title != 1){choice += `sir."`;}else{choice += `ma'am."`;}}} + else if (V.choice == 2){ + choice = `$SF.Caps will be throwing a military parade this week. `; + if (V.SFTradeShow.CanAttend === -1 && (C.Talk + C.Fun !== 1)) { + choice += `"I expect the @@.green;public to enjoy@@ the parade, boss."`;} + else { + choice += `"I'll have plans for an @@.green;popular parade@@ on your desk, `; + if (V.PC.title != 1){choice += `sir."`;}else{choice += `ma'am."`;}}} + else if (V.choice == 3){ + choice = `$SF.Caps will be conducting corporate sabotage on rival arcologies' businesses. `; + if (V.SFTradeShow.CanAttend === -1 && (C.Talk + C.Fun !== 1)) { + choice += `"Our interests should see a @@.yellowgreen;big boost@@, boss."`;} + else { + choice += `"Your @@.yellowgreen;arcology's business prospects should see an improvement@@ this week, `; + if (V.PC.title != 1){choice += `sir."`;}else{choice += `ma'am."`;}}}} + + if (C.Talk + C.Fun > 0) time = `The Colonel is busy for the rest of the week, so the Lieutenant Colonel will assist you.`; + + return `${time} <br>${choice}`; +}; + +window.ColonelQuarters = function() { + const V = State.variables, R = Math.ceil(Math.random()*100); + var out = ``; + if (R > 50){ + out = `raises a hand in greeting and nods. She is sprawled on a couch, wearing only her combat suit tank top and fingerless gloves. She's holding a near-empty bottle of strong liquor in her hand and you can see a naked slave girl kneeling on the floor between her legs. The Colonel has her legs wrapped tightly around the girl's head, forcing the girl to service her if she wants to breathe. The Colonel is close to her climax then suddenly tenses her lower body thus gripping the girl even tighter and throws her head back in ecstasy as she orgasms. She lets out a long breath finally releasing the girl, giving her a hard smack and shouting at her to fuck off.<br><br> The Colonel finishes off her bottle, tossing it over her shoulder then leaning back on the couch and spreading her legs wide. You look down briefly, falling into your habits of inspection. Her pussy is completely devoid of hair with heavy labia in with a very large and hard clit peaking out. Beads of moisture, the result of her excitation, are visible, and you can tell from long experience that she would be tight as a vise. You return your gaze to her face to find her smirking at you. "Like what you see, <<print SFCR()>>?" She waves her hand at the plaza around her, "So do they. But you're not here for pussy. You're here to talk business. So, what's up?"`; + }else if (R > 50){ + out = `is in no condition initially to greet you. She's naked except for one sock that gives you a very good view of her muscled, taut body while lunging with her feet on the table and the rest on her couch. She is face down in a drugged-out stupor in the middle of a wide variety of powders and pills. Perhaps sensing your approach, her head suddenly shoots up and looks at you with unfocused, bloodshot eyes. "Sorry, <<print SFCR()>>," she slurs, wiping her face and weakly holding up a hand. "Hold on a second, I need something to help me out here. Long fucking night." She struggles to sit on the couch and bending over the table, loudly snorts up some of the white powder on it. "Ahhh, fuck," she says, breathing heavily.<br><br> She shakes her head powerfully now looking at you, her eyes once again alert and piercing. "That's better," she says, leaning back on the couch and giving you another good view of her assets. "So, <<print SFCR()>>," she begins, "what brings you down here to our little clubhouse? I trust you're happy with how we've been handling things out there?" You nod. "Excellent", she laughs. "I have to say; it's nice to have a place like this while having some top-end gear and to be able to have fun out there without worrying about anyone coming back on us. Good fucking times." She laughs again. "So - I'm assuming you want something?"`; + }else if (R > 70 && V.SF.Depravity >= 1.5 && V.SFColonel.Core == "cruel"){ + out = `is relaxing on her couch stark naked, greeting you with a raised hand. Between her tightly clenched legs is a slave girl being forced to eat her out. "Hey, <<print SFCR()>>, what's -" she breaks off as a flash of pain crosses her features. "Fucking bitch!" she exclaims, pulling her legs away and punching the slave girl in the face. She pushes the girl to the ground, straddling her then begins hitting. You hear one crunch after another as The Colonel's powerful blows shatter the girl's face. She hisses from between clenched teeth, each word accompanied by a brutal punch. "How. Many. Fucking. Times. Have. I. Told. You. To. Watch. Your. Fucking. Teeth. On. My. Fucking. Clit!" She leans back, exhaling heavily. Before leaning back down to grip apply pressure onto the girl's neck with her powerful hands. Wordlessly, she increases the pressure and soon the girl begins to turn blue as she struggles to draw breath. Eventually her struggles weaken and then finally, end.<br><br> The Colonel relaxes her grip then wipes her brow, clearing away the sweat from her exertion. Finally rising from the girl's body, relaxing back on the couch and putting her feet back up on the table. "Sorry about that <<print SFCR()>>," she says, shrugging. "So many of these bitches we pick up from the outside don't understand that they have to behave." Shaking her head in frustration, "Now I need to find another one. But that's not your problem - you're here to talk business. So, what's up?"`; + }else{ + out = `is topless while reviewing the particulars of her unit on a tablet as you approach. She raises a hand in greeting. "Hey <<print SFCR()>>," she says, noticing you looking at her chest. She laughs. "Nice, aren't they? But they're not for you or them." She throws a thumb at the plaza around her. "You're down here for a reason, though. What can I do for you?"`;} + return `${out}`; +}; + +window.progress = function(x,max) { + var out = `â`, z, i; + if (max === undefined) { + Math.clamp(x,0,10); + if (State.variables.SF.Units < 30) { + z = 5 - x; + for (i=0;i<x;i++) out += `â–ˆâ`; + for (i=0;i<z;i++) out += `<span style=\"opacity: 0;\">â–ˆ</span>â`; + for (i=0;i<5;i++) out += `â–‘â`;} + else { + z = 10 - x; + for (i=0;i<x;i++) out += `â–ˆâ`; + for (i=0;i<z;i++) out += `<span style=\"opacity: 0;\">â–ˆ</span>â`;}} + else { + Math.clamp(x,0,max); + x = Math.floor(10*x/max); + z = 10 - x; + for (i=0;i<x;i++) out += `â–ˆâ`; + for (i=0;i<z;i++) out += `<span style=\"opacity: 0;\">â–ˆ</span>â`;} + return `${out}`; +}; \ No newline at end of file diff --git a/slave variables documentation - Pregmod.txt b/slave variables documentation - Pregmod.txt index cf3861e5dc806bd918a83b1b9903aea82c70b039..16b69d176a09f7f0eae038edbdf2e242e8f84b3c 100644 --- a/slave variables documentation - Pregmod.txt +++ b/slave variables documentation - Pregmod.txt @@ -2774,8 +2774,6 @@ pregWeek: How long she has been pregnant (used in place of .preg when pregnancy speed up and slow down are used on a slave) (if negative, designates postpartum.) accepts int -< 0 - postpartum - belly: how big their belly is in CCs diff --git a/src/SecExp/SecExpBackwardCompatibility.tw b/src/SecExp/SecExpBackwardCompatibility.tw index b9e1585735970b6180e36f1a18d5cb3395195d62..17b38dcb25ba54c9955115271c3d74ccc42ef305 100644 --- a/src/SecExp/SecExpBackwardCompatibility.tw +++ b/src/SecExp/SecExpBackwardCompatibility.tw @@ -252,7 +252,7 @@ size: 0, luxury: 0, training: 0, - loyaltyMod:0 }>> + loyaltyMod:0 }>> <</if>> <<if ndef $secBarracksUpgrades.loyaltyMod>> <<set $secBarracksUpgrades.loyaltyMod = 0>> @@ -270,7 +270,7 @@ eyeScan: 0, cryptoAnalyzer: 0, coldstorage: 0}>> -<</if>> +<</if>> <<if ndef $crimeUpgrades>> <<set $crimeUpgrades = { autoTrial: 0, @@ -441,7 +441,7 @@ <</if>> <<if ndef $droneUpgrades.hp || !isInt($droneUpgrades.hp)>> <<set $droneUpgrades.hp = 0>> - <</if>> + <</if>> <</if>> <<if ndef $humanUpgrade>> <<set $humanUpgrade = { @@ -978,7 +978,7 @@ /* SFanon additions */ <<if ndef $SFSupportLevel>> - <<set $SFSupportLevel = 0>> + <<set $SFSupportLevel = 0>> <</if>> <<if ndef $SFSupportUpkeep>> <<set $SFSupportUpkeep = 0>> @@ -986,6 +986,15 @@ <<if ndef $secUpgrades.coldstorage>> <<set $secUpgrades.coldstorage = 0>> <</if>> +<<if ndef $SFGear>> + <<set $SFGear = 0>> +<</if>> +<<if ndef $SavedLeader>> + <<set $SavedLeader = $leadingTroops>> +<</if>> +<<if ndef $SavedSFI>> + <<set $SavedSFI = $SFIntervention>> +<</if>> /* recalculation widgets */ <<fixBrokenUnits>> diff --git a/src/SecExp/attackGenerator.tw b/src/SecExp/attackGenerator.tw index d2113e2d7d190e3ceeaf5b745406bec527ab32a7..ff6782f29054c2da0bfaa216c2f240f922f48ca2 100644 --- a/src/SecExp/attackGenerator.tw +++ b/src/SecExp/attackGenerator.tw @@ -94,7 +94,7 @@ <<set _freeCity -= 8>> <<set _free -= 8>> <</if>> - + /* makes the actual roll */ <<set _roll = random(1,100)>> <<if _roll <= _raider>> @@ -112,7 +112,7 @@ /* if an attack happens */ <<if $attackThisWeek == 1>> - + /* terrain */ <<if $terrain == "urban">> <<set $battleTerrain = either("outskirts","urban","wasteland")>> @@ -127,7 +127,7 @@ <<else>> <<set $battleTerrain = "error">> <</if>> - + <<if $attackType == "raiders">> <<set $attackTroops = random(40,80)>> <<if $week < 30>> @@ -234,7 +234,7 @@ <<if ($week >= 120 && $attackType != "none") || ($forceMajorBattle == 1 && $foughtThisWeek == 0)>> <<if random(1,100) >= 50 || $forceMajorBattle == 1>> <<set $majorBattle = 1>> - <<if $securityForceCreate == 1>> + <<if $SF.Toggle && $SF.Active >= 1>> <<set $attackTroops = Math.trunc($attackTroops * random(4,6) * $majorBattleMult)>> <<set $attackEquip = either(3,4)>> <<else>> diff --git a/src/SecExp/attackHandler.tw b/src/SecExp/attackHandler.tw index 4fae71757dba80f2da4e2069f62fd8e14d8db943..b829dae4b3872ac4494fa5dcc1293ea58a718511 100644 --- a/src/SecExp/attackHandler.tw +++ b/src/SecExp/attackHandler.tw @@ -58,7 +58,7 @@ <<else>> <<goto "attackReport">> <</if>> - + <<else>> /*Init*/ @@ -97,22 +97,22 @@ <<set _enemyMod = 1.5>> <<set _SFMod = 1.5>> <<set _turns = $maxTurns * 2>> - <<if $securityForceCreate == 1>> - <<if $securityForceArcologyUpgrades >= 7>> - <<set _atkMod += ($securityForceArcologyUpgrades - 6) * 0.05>> + <<if $SF.Toggle && $SF.Active >= 1>> + <<if $SFUnit.Firebase >= 7>> + <<set _atkMod += ($SFUnit.Firebase - 6) * 0.05>> <</if>> - <<if $securityForceFortressZeppelin >= 1>> - <<set _defMod += $securityForceFortressZeppelin * 0.05>> + <<if $SFUnit.GunS >= 1>> + <<set _defMod += $SFUnit.GunS * 0.05>> <</if>> - <<if $securityForceSatellitePower >= 11>> - <<set _atkMod += ($securityForceSatellitePower - 10) * 0.05>> + <<if $SFUnit.Satellite >= 5 && $SatLaunched > 0>> + <<set _atkMod += ($SFUnit.Satellite - 5) * 0.05>> <</if>> - <<if $securityForceGiantRobot >= 6>> - <<set _defMod += ($securityForceGiantRobot - 5) * 0.05>> + <<if $SFUnit.GiantRobot >= 6>> + <<set _defMod += ($SFUnit.GiantRobot - 5) * 0.05>> <</if>> - <<if $securityForceMissileSilo >= 1>> - <<set _atkMod += $securityForceMissileSilo * 0.05>> - <<set _defMod += $securityForceMissileSilo * 0.05>> + <<if $SFUnit.MissileSilo >= 1 && $SatLaunched > 0>> + <<set _atkMod += $SFUnit.MissileSilo * 0.05>> + <<set _defMod += $SFUnit.MissileSilo * 0.05>> <</if>> <</if>> <</if>> @@ -961,7 +961,7 @@ <</if>> <</for>> -<<if $SFIntervention == 1>> +<<if $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> <<set $SFatk = 0>> <<set $SFdef = 0>> <<set $SFhp = 0>> @@ -1113,19 +1113,19 @@ __Difficulty__: <br> <br> __Army__: -<br>troops: <<print $troopCount>> -<br>attack: <<print Math.round(_attack)>> -<br>defense: <<print Math.round(_defense)>> -<br>hp: <<print Math.round(_hp)>> -<br>morale: <<print Math.round(_morale)>> +<br>troops: <<print commaNum(Math.round($troopCount))>> +<br>attack: <<print commaNum(Math.round(_attack))>> +<br>defense: <<print commaNum(Math.round(_defense))>> +<br>hp: <<print commaNum(Math.round(_hp))>> +<br>morale: <<print commaNum(Math.round(_morale))>> <br>attack modifier: <<if _atkMod > 0>>+<</if>>_atkMod% <br>defense modifier: <<if _defMod > 0>>+<</if>>_defMod% -<br>average base HP: <<print Math.round(_baseHp)>> +<br>average base HP: <<print commaNum(Math.round(_baseHp))>> <br>militia morale modifier: <<if _militiaMod > 0>>+<</if>>_militiaMod% <br>slaves morale modifier: <<if _slaveMod > 0>>+<</if>>_slaveMod% <br>mercenaries morale modifier: <<if _mercMod > 0>>+<</if>>_mercMod% -<<if $SFIntervention == 1>> -<br>security force morale modifier: <<if _SFMod > 0>>+<</if>>_SFMod% +<<if $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> +<br>special force morale modifier: <<if _SFMod > 0>>+<</if>>_SFMod% <</if>> <<if $secBarracksUpgrades.luxury >= 1>> <br>Barracks bonus morale modifier: +<<print _barracksBonus>>% @@ -1136,17 +1136,17 @@ __Army__: <br> <br> __Tactics__: -<br>tactic chance of success: <<print Math.round(_tacChance * 100)>>% +<br>tactic chance of success: <<print commaNum(Math.round(_tacChance * 100))>>% <br>was tactic chosen successful?: <<if $tacticsSuccessful == 1>> yes <<else>> no<</if>> <br> <br> __Enemy__: -<br>enemy troops: <<print $attackTroops>> -<br>enemy attack: <<print Math.round(_enemyAttack)>> -<br>enemy defense: <<print Math.round(_enemyDefense)>> -<br>enemy Hp: <<print Math.round(_enemyHp)>> -<br>enemy morale: <<print Math.round(_enemyMorale)>> -<br>enemy base Hp: <<print Math.round(_enemyBaseHp)>> +<br>enemy troops: <<print commaNum(Math.round($attackTroops))>> +<br>enemy attack: <<print commaNum(Math.round(_enemyAttack))>> +<br>enemy defense: <<print commaNum(Math.round(_enemyDefense))>> +<br>enemy Hp: <<print commaNum(Math.round(_enemyHp))>> +<br>enemy morale: <<print commaNum(Math.round(_enemyMorale))>> +<br>enemy base Hp: <<print commaNum(Math.round(_enemyBaseHp))>> <br>enemy morale modifier: <<if _enemyMod > 0>>+<</if>>_enemyMod% <<if _enemyMoraleTroopMod > 0>> <br>enemy morale increase due to troop numbers: +<<print _enemyMoraleTroopMod>>% @@ -1162,15 +1162,15 @@ __Enemy__: /* player army attacks */ <<set _damage = Math.clamp(_attack - _enemyDefense,_attack * 0.1,_attack)>> <br> - <<if $showBattleStatistics == 1>> player damage: <<print Math.round(_damage)>><</if>> + <<if $showBattleStatistics == 1>> player damage: <<print commaNum(Math.round(_damage))>><</if>> <<set _enemyHp -= _damage>> <br> - <<if $showBattleStatistics == 1>> remaining enemy Hp: <<print Math.round(_enemyHp)>><</if>> + <<if $showBattleStatistics == 1>> remaining enemy Hp: <<print commaNum(Math.round(_enemyHp))>><</if>> <<set $enemyLosses += _damage / _enemyBaseHp>> <<set _moraleDamage = Math.clamp(_damage / 2 + _damage / _enemyBaseHp,0,_damage*1.5)>> <<set _enemyMorale -= _moraleDamage>> <br> - <<if $showBattleStatistics == 1>> remaining enemy morale: <<print Math.round(_enemyMorale)>><</if>> + <<if $showBattleStatistics == 1>> remaining enemy morale: <<print commaNum(Math.round(_enemyMorale))>><</if>> <<if _enemyHp <= 0 || _enemyMorale <= 0>> <br> <<if $showBattleStatistics == 1>> <br>Victory!<</if>> @@ -1185,10 +1185,10 @@ __Enemy__: <<set _damage = _enemyAttack * 0.1>> <</if>> <br> - <<if $showBattleStatistics == 1>> enemy damage: <<print Math.round(_damage)>><</if>> + <<if $showBattleStatistics == 1>> enemy damage: <<print commaNum(Math.round(_damage))>><</if>> <<set _hp -= _damage>> <br> - <<if $showBattleStatistics == 1>> remaining hp: <<print Math.round(_hp)>><</if>> + <<if $showBattleStatistics == 1>> remaining hp: <<print commaNum(Math.round(_hp))>><</if>> <<set $losses += _damage / _baseHp>> <<set _moraleDamage = Math.clamp(_damage / 2 + _damage / _baseHp,0,_damage*1.5)>> <<set _morale -= _moraleDamage>> @@ -1215,8 +1215,8 @@ __Enemy__: <<if $showBattleStatistics == 1>> <br> - <br>Losses: <<print Math.trunc($losses)>> - <br>Enemy losses: <<print Math.trunc($enemyLosses)>> + <br>Losses: <<print commaNum(Math.trunc($losses))>> + <br>Enemy losses: <<print commaNum(Math.trunc($enemyLosses))>> <</if>> <<if $battleResult > 3 || $battleResult < -3>> diff --git a/src/SecExp/attackOptions.tw b/src/SecExp/attackOptions.tw index c517473f02e1b8eaab0458701c956a8c50e582fb..9cfa7d27dee6a726ac80ad3d46b7c1a7f662727a 100644 --- a/src/SecExp/attackOptions.tw +++ b/src/SecExp/attackOptions.tw @@ -198,7 +198,7 @@ __Battle Plan__: <<case "mercenary">> <<set _leader = "The mercenary commander">> <<case "colonel">> - <<set _leader = $securityForceName +"'s Colonel">> + <<set _leader = $SF.Lower +"'s Colonel">> <</switch>> /* leader assignment */ @@ -247,17 +247,17 @@ __Battle Plan__: <<replace "#leader">><strong><<print _leader>></strong><</replace>> <</link>> <</if>> - <<if $securityForceCreate == 1>> + <<if $SF.Toggle && $SF.Active >= 1 && $SFTradeShow.CanAttend === -1>> | <<link "Let The Colonel lead the troops">> <<set $leadingTroops = "colonel">> - <<set _leader = $securityForceName +"'s Colonel">> + <<set _leader = $SF.Lower +"'s Colonel">> <<replace "#leader">><strong><<print _leader>></strong><</replace>> <</link>> <</if>> /* troop deployment */ -<br><br> +<br><br> <<if $deployableUnits < 0>> <<set $deployableUnits = 0>> <</if>> With your current readiness level you can <<if $deployedUnits > 0>>still send <strong><<print $deployableUnits>></strong> more units.<<else>>send <strong><<print $deployableUnits>></strong> units.<</if>> <br>Deployable units: <br> @@ -391,29 +391,20 @@ Units about to be deployed: <</for>> <</if>> -<<if $majorBattle == 1 && $securityForceCreate == 1>> - <br> - <br> - The size of the incoming attack warrants the intervention of the security force in its full force. They will <span id="SFI">not intervene</span>. - <br> - <<if $SFIntervention == 0>> - <<link "Let the Security force intervene" "attackOptions">> +<<if $SF.Toggle && $SF.Active >= 1 && $majorBattle>> <br><br> + The size of the incoming attack warrants the intervention of the special force in its full force. + <<if !$SFIntervention>> + <<link "Let $SF.Lower intervene" "attackOptions">> <<set $SFIntervention = 1>> - <<replace "#SFI">> - intervene - <</replace>> <</link>> - //The security force will join the battle with all the equipment they can mobilize within a short timeframe// + //The special force will join the battle with all the equipment they can mobilize within a short timeframe// <<else>> - <<link "Do not let the Security force intervene" "attackOptions">> + <<link "Do not let $SF.Lower intervene" "attackOptions">> <<set $SFIntervention = 0>> - <<replace "#SFI">> - not intervene - <</replace>> <</link>> - //The security force will not join the battle// + //The special force will not join the battle// <</if>> - <br>//Some upgrades will be able to support the troops even if the security force does not intervene directly in the fight.// + <br>//Some upgrades will be able to support the troops even if the special force does not intervene directly in the fight.// <</if>> <br><br> @@ -452,7 +443,7 @@ Units about to be deployed: <</for>> <</if>> <</for>> - <<set $saveValid = 1>> + <<set $saveValid = 1,$leadingTroops = $SavedLeader, $SFIntervention = $SavedSFI>> <</link>> <<else>> Restore saved roster @@ -479,7 +470,7 @@ Units about to be deployed: <<set $lastSelection.push($mercUnits[_i].ID)>> <</if>> <</for>> - <<set $saveValid = 1>> + <<set $saveValid = 1,$SavedLeader = $leadingTroops,$SavedSFI = $SFIntervention>> <</link>> <<else>> Save current roster diff --git a/src/SecExp/attackReport.tw b/src/SecExp/attackReport.tw index 194c0aa1a090f3233501fe8ef87f20360bcaa2fd..9f43ac9f5919e90d34f78d8680a0c907c65fc6df 100644 --- a/src/SecExp/attackReport.tw +++ b/src/SecExp/attackReport.tw @@ -132,7 +132,7 @@ <<if $attackType == "raiders">> Today, the _day of _month _year, our arcology was attacked by a band of wild raiders, $attackTroops men strong. <<if $battleResult != 1 && $battleResult != 0 && $battleResult != -1>> - Our defense forces, $troopCount strong, clashed with them + Our defense forces, <<print commaNum(Math.trunc($troopCount))>> strong, clashed with them <<if $battleTerrain == "urban">> in the streets of <<if $terrain == "urban">>the old world city surrounding the arcology<<else>>of the free city<</if>>, <<elseif $battleTerrain == "rural">> @@ -149,7 +149,7 @@ in the wastelands outside the free city territory, <</if>> <<if $enemyLosses != $attackTroops>> - inflicting <<print $enemyLosses>> casualties, while sustaining <<if $losses > 1>> <<print commaNum(Math.trunc($losses))>> casualties <<elseif $losses > 0>> a casualty <<else>> zero <</if>> themselves. + inflicting <<print commaNum(Math.trunc($enemyLosses))>> casualties, while sustaining <<if $losses > 1>> <<print commaNum(Math.trunc($losses))>> casualties <<elseif $losses > 0>> a casualty <<else>> zero <</if>> themselves. <<else>> completely annihilating their troops, while sustaining <<if $losses > 1>> <<print commaNum(Math.trunc($losses))>> casualties. <<elseif $losses > 0>> a casualty. <<else>> zero casualties.<</if>> <</if>> @@ -787,17 +787,17 @@ Your reputation is so high your name carries power by itself. Having you on the battlefield puts fear even in the hardiest of warriors. <</if>> <</if>> - <<if $SFIntervention == 1>> + <<if $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> <<if $PC.career == "mercenary" || $PC.career == "slaver" || $PC.career == "capitalist" || $PC.career == "gang" || $PC.warfare > 75>> - The soldiers of the $securityForceName are ready and willing to follow you into battle, confident in your past experience. + The soldiers of the $SF.Lower are ready and willing to follow you into battle, confident in your past experience. <<elseif $PC.career == "wealth" || $PC.career == "medicine" || $PC.career == "engineer">> - The soldiers of the $securityForceName, as loyal as they are, are not enthusiastic to follow the orders of someone who has no experience leading men. + The soldiers of the $SF.Lower, as loyal as they are, are not enthusiastic to follow the orders of someone who has no experience leading men. <<elseif $PC.career == "servant">> - The soldiers of the $securityForceName, as loyal as they are, are not enthusiastic to follow the orders of an ex-servant. + The soldiers of the $SF.Lower, as loyal as they are, are not enthusiastic to follow the orders of an ex-servant. <<elseif $PC.career == "escort">> - The soldiers of the $securityForceName, as loyal as they are, are not enthusiastic to follow the orders of an ex-escort. + The soldiers of the $SF.Lower, as loyal as they are, are not enthusiastic to follow the orders of an ex-escort. <<elseif $PC.career == "BlackHat">> - The soldiers of the $securityForceName, as loyal as they are, are not enthusiastic to follow the orders of a dubious incursion specialist. + The soldiers of the $SF.Lower, as loyal as they are, are not enthusiastic to follow the orders of a dubious incursion specialist. <</if>> <</if>> <<if $PC.warfare <= 25 && $PC.warfare > 10>> @@ -845,58 +845,58 @@ <<if _oldRep < 10000 && _oldAuth < 10000 || $Bodyguard.prestige < 1>> <<if $deployingMilitia == 1>> Your volunteers <<if $deployingSlaves == 1>>however<</if>> are not enthusiastic to have a slave as a - <<if $deployingMercs == 1 && $SFIntervention == 1>> + <<if $SF.Toggle && $SF.Active >= 1 && $deployingMercs == 1 && $SFIntervention>> commander and neither are your mercenaries or your soldiers. <<elseif $deployingMercs == 1>> commander and neither are your mercenaries. - <<elseif $SFIntervention == 1>> + <<elseif $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> commander and neither are your soldiers. <<else>> commander. <</if>> - <<elseif $deployingMercs == 1 && $SFIntervention == 1>> + <<elseif $SF.Toggle && $SF.Active >= 1 && $deployingMercs == 1 && $SFIntervention>> Your mercenaries and soldiers <<if $deployingSlaves == 1>>however<</if>> are not enthusiastic to have a slave as a commander. <<elseif $deployingMercs == 1>> Your mercenaries <<if $deployingSlaves == 1>>however<</if>> are not enthusiastic to have a slave as a commander. - <<elseif $SFIntervention == 1>> + <<elseif $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> Your soldiers <<if $deployingSlaves == 1>>however<</if>> are not enthusiastic to have a slave as a commander. <</if>> <<elseif $Bodyguard.prestige >= 2>> <<if $deployingMilitia == 1>> Your - <<if $deployingMercs == 1 && $SFIntervention == 1>> + <<if $deployingMercs == 1 && $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> volunteers, your mercenaries and your soldiers are delighted to have such a prestigious individual as their commander, almost forgetting she is a slave. <<elseif $deployingMercs == 1>> volunteers and your mercenaries are delighted to have such a prestigious individual as their commander, almost forgetting she is a slave. - <<elseif $SFIntervention == 1>> + <<elseif $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> volunteers and your soldiers are delighted to have such a prestigious individual as their commander, almost forgetting she is a slave. <<else>> volunteers are delighted to have such a prestigious individual as their commander, almost forgetting she is a slave. <</if>> - <<elseif $deployingMercs == 1 && $SFIntervention == 1>> + <<elseif $deployingMercs == 1 && $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> Your mercenaries and soldiers are delighted to have such a prestigious individual as their commander, almost forgetting she is a slave. <<elseif $deployingMercs == 1>> Your mercenaries are delighted to have such a prestigious individual as their commander, almost forgetting she is a slave. - <<elseif $SFIntervention == 1>> + <<elseif $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> Your soldiers are delighted to have such a prestigious individual as their commander, almost forgetting she is a slave. <</if>> <<else>> <<if $deployingMilitia == 1>> Your volunteers <<if $deployingSlaves == 1>>however<</if>> are not enthusiastic to have a slave as a - <<if $deployingMercs == 1 && $SFIntervention == 1>> + <<if $deployingMercs == 1 && $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> commander and neither are your mercenaries and soldiers, but they trust you enough not to question your decision. <<elseif $deployingMercs == 1>> commander and neither are your mercenaries, but they trust you enough not to question your decision. - <<elseif $SFIntervention == 1>> + <<elseif $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> commander and neither are your soldiers, but they trust you enough not to question your decision. <<else>> commander, but they trust you enough not to question your decision. <</if>> - <<elseif $deployingMercs == 1 && $SFIntervention == 1>> + <<elseif $deployingMercs == 1 && $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> Your mercenaries and soldiers <<if $deployingSlaves == 1>>however,<</if>> are not enthusiastic to have a slave as a commander, but they trust you enough not to question your decision. <<elseif $deployingMercs == 1>> Your mercenaries <<if $deployingSlaves == 1>>however,<</if>> are not enthusiastic to have a slave as a commander, but they trust you enough not to question your decision. - <<elseif $SFIntervention == 1>> + <<elseif $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> Your soldiers <<if $deployingSlaves == 1>>however,<</if>> are not enthusiastic to have a slave as a commander, but they trust you enough not to question your decision. <</if>> <</if>> @@ -981,58 +981,58 @@ <<if _oldRep < 10000 && _oldAuth < 10000 || $HeadGirl.prestige < 1>> <<if $deployingMilitia == 1>> Your volunteers <<if $deployingSlaves == 1>>however<</if>> are not enthusiastic to have a slave as a - <<if $deployingMercs == 1 && $SFIntervention == 1>> + <<if $deployingMercs == 1 && $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> commander and neither are your mercenaries or your soldiers. <<elseif $deployingMercs == 1>> commander and neither are your mercenaries. - <<elseif $SFIntervention == 1>> + <<elseif $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> commander and neither are your soldiers. <<else>> commander. <</if>> - <<elseif $deployingMercs == 1 && $SFIntervention == 1>> + <<elseif $deployingMercs == 1 && $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> Your mercenaries and soldiers <<if $deployingSlaves == 1>>however<</if>> are not enthusiastic to have a slave as a commander. <<elseif $deployingMercs == 1>> Your mercenaries <<if $deployingSlaves == 1>>however<</if>> are not enthusiastic to have a slave as a commander. - <<elseif $SFIntervention == 1>> + <<elseif $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> Your soldiers <<if $deployingSlaves == 1>>however<</if>> are not enthusiastic to have a slave as a commander. <</if>> <<elseif $HeadGirl.prestige >= 2>> <<if $deployingMilitia == 1>> Your - <<if $deployingMercs == 1 && $SFIntervention == 1>> + <<if $deployingMercs == 1 && $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> volunteers, your mercenaries and your soldiers are delighted to have such a prestigious individual as their commander, almost forgetting she is a slave. <<elseif $deployingMercs == 1>> volunteers and your mercenaries are delighted to have such a prestigious individual as their commander, almost forgetting she is a slave. - <<elseif $SFIntervention == 1>> + <<elseif $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> volunteers and your soldiers are delighted to have such a prestigious individual as their commander, almost forgetting she is a slave. <<else>> volunteers are delighted to have such a prestigious individual as their commander, almost forgetting she is a slave. <</if>> - <<elseif $deployingMercs == 1 && $SFIntervention == 1>> + <<elseif $deployingMercs == 1 && $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> Your mercenaries and soldiers are delighted to have such a prestigious individual as their commander, almost forgetting she is a slave. <<elseif $deployingMercs == 1>> Your mercenaries are delighted to have such a prestigious individual as their commander, almost forgetting she is a slave. - <<elseif $SFIntervention == 1>> + <<elseif $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> Your soldiers are delighted to have such a prestigious individual as their commander, almost forgetting she is a slave. <</if>> <<else>> <<if $deployingMilitia == 1>> Your volunteers <<if $deployingSlaves == 1>>however<</if>> are not enthusiastic to have a slave as a - <<if $deployingMercs == 1 && $SFIntervention == 1>> + <<if $deployingMercs == 1 && $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> commander and neither are your mercenaries and soldiers, but they trust you enough not to question your decision. <<elseif $deployingMercs == 1>> commander and neither are your mercenaries, but they trust you enough not to question your decision. - <<elseif $SFIntervention == 1>> + <<elseif $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> commander and neither are your soldiers, but they trust you enough not to question your decision. <<else>> commander, but they trust you enough not to question your decision. <</if>> - <<elseif $deployingMercs == 1 && $SFIntervention == 1>> + <<elseif $deployingMercs == 1 && $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> Your mercenaries and soldiers <<if $deployingSlaves == 1>>however<</if>> are not enthusiastic to have a slave as a commander, but they trust you enough not to question your decision. <<elseif $deployingMercs == 1>> Your mercenaries <<if $deployingSlaves == 1>>however<</if>> are not enthusiastic to have a slave as a commander, but they trust you enough not to question your decision. - <<elseif $SFIntervention == 1>> + <<elseif $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> Your soldiers <<if $deployingSlaves == 1>>however<</if>> are not enthusiastic to have a slave as a commander, but they trust you enough not to question your decision. <</if>> <</if>> @@ -1134,9 +1134,9 @@ <<elseif $deployingMercs == 1>> You mercenaries are not thrilled to be lead by a civilian without any formal martial training or education. <</if>> - <<if $arcologies[0].FSRomanRevivalist != "unset" && $SFIntervention == 1>> + <<if $arcologies[0].FSRomanRevivalist != "unset" && $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> Since you decided to revive old Rome, many of your citizens took on themselves to educate themselves in martial matters, because of this your soldiers feel safe enough in the hands of one of your volunteers. - <<elseif $SFIntervention == 1>> + <<elseif $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> You soldiers are not thrilled to be lead by a civilian without any formal martial training or education. <</if>> <<if $leaderWounded == 1>> @@ -1147,7 +1147,7 @@ <<if $deployingMercs == 1>> Your mercenaries of course approve of your decision. <</if>> - <<if $SFIntervention == 1>> + <<if $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> Your soldiers feel more confident going into battle with an experienced commander. <</if>> <<if $arcologies[0].FSRomanRevivalist != "unset" && $deployingMilitia == 1>> @@ -1166,8 +1166,8 @@ <<if $deployingMercs == 1>> Your mercenaries approve of such decisions, as they feel more confident by having a good, experienced commander. <</if>> - <<if $SFIntervention == 1>> - The soldiers of $securityForceName obviously approved of your decision. + <<if $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> + The soldiers of $SF.Lower obviously approved of your decision. <</if>> <<if $arcologies[0].FSRomanRevivalist != "unset" && $deployingMilitia == 1>> Since you decided to revive old Rome, your volunteers are more willing to trust one of your soldiers as their leader. @@ -1421,23 +1421,21 @@ <br> <<include "unitsBattleReport">> - <<if $securityForceArcologyUpgrades >= 7 || $securityForceFortressZeppelin >= 1 || $securityForceSatellitePower >= 11 || $securityForceGiantRobot >= 6 || $securityForceMissileSilo >= 1>> - /* SF upgrades effects */ - <br> - <br> - <<if $securityForceArcologyUpgrades >= 7>> - The artillery pieces installed around the $securityForceName barracks provided vital fire support to the troops in the field. + <<if $SF.Toggle && $SF.Active >= 1 && ($SFUnit.Firebase >= 7 || $SFUnit.GunS >= 1 || $SFUnit.Satellite >= 5 || $SFUnit.GiantRobot >= 6 || $SFUnit.MissileSilo >= 1)>> + /* SF upgrades effects */ <br><br> + <<if $SFUnit.Firebase >= 7>> + The artillery pieces installed around the $SF.Lower firebase provided vital fire support to the troops in the field. <</if>> - <<if $securityForceFortressZeppelin >= 1>> - The fortress zeppelin gave our troops an undeniable advantage in recon capabilities, air superiority and fire support. + <<if $SFUnit.GunS >= 1>> + The gunship gave our troops an undeniable advantage in recon capabilities, air superiority and fire support. <</if>> - <<if $securityForceSatellitePower >= 11>> - The $securityForceName Satellite devastating power was employed with great efficiency against the enemy. + <<if $SFUnit.Satellite >= 5 && $SatLaunched > 0>> + The $SF.Lower satellite's devastating power was employed with great efficiency against the enemy. <</if>> - <<if $securityForceGiantRobot >= 6>> - The giant robot of the $securityForceName proved to be a great boon to our troops, shielding many from the worst the enemy had to offer. + <<if $SFUnit.GiantRobot >= 6>> + The giant robot of the $SF.Lower proved to be a great boon to our troops, shielding many from the worst the enemy had to offer. <</if>> - <<if $securityForceMissileSilo >= 1>> + <<if $SFUnit.MissileSilo >= 1>> The missile silo exterminated many enemy soldiers even before the battle would begin. <</if>> <</if>> diff --git a/src/SecExp/authorityReport.tw b/src/SecExp/authorityReport.tw index 11370b0273149328b0d63ea4948b0f80374e402f..d25dcdca15f0d7e3e5692fde9d64bb896027f6bc 100644 --- a/src/SecExp/authorityReport.tw +++ b/src/SecExp/authorityReport.tw @@ -106,6 +106,11 @@ Your authority is <<set _authGrowth += 12 * $activeUnits>> <</if>> +<<if $SF.Toggle && $SF.Active >= 1 && $SF.Units > 10>> + Having a powerful special force, increases your authority. + <<set _authGrowth += $SF.Units/10>> +<</if>> + <<if $arcologies[0].FSChattelReligionist >= 90>> Religious organizations have a tight grip on the minds of your residents and their dogma greatly helps your authority grow. <<set _authGrowth += $arcologies[0].FSChattelReligionist>> diff --git a/src/SecExp/edicts.tw b/src/SecExp/edicts.tw index 63252ce0419b777a7d13540cd45379cbfff0ac9a..ad04f902add45b146ba8b71633e29fee0aa6b764 100644 --- a/src/SecExp/edicts.tw +++ b/src/SecExp/edicts.tw @@ -44,22 +44,22 @@ [[Repeal|edicts][$subsidyChurch = 0, $edictsUpkeep -= 1000]] <</if>> -<<if $SFSupportLevel > 0>> +<<if $SF.Toggle && $SF.Active >= 1 && $SFSupportLevel > 0>> <br><br>__Special Force:__ - <<if $SFSupportLevel == 1>> - <br>''Equipment provision:'' $securityForceName is providing the security HQ with advanced equipment, boosting its efficiency. + <<if $SFSupportLevel === 1>> + <br>''Equipment provision:'' $SF.Caps is providing the security HQ with advanced equipment, boosting its efficiency. [[Repeal|edicts][$SFSupportLevel--, $SFSupportUpkeep -= 1000, $reqHelots += 5]] - <<elseif $SFSupportLevel == 2>> - <br>''Personnel training:'' $securityForceName is currently providing advanced equipment and training to security HQ personnel. + <<elseif $SFSupportLevel === 2>> + <br>''Personnel training:'' $SF.Caps is currently providing advanced equipment and training to security HQ personnel. [[Repeal|edicts][$SFSupportLevel--, $SFSupportUpkeep -= 2000, $reqHelots += 5]] - <<elseif $SFSupportLevel == 3>> - <br>''Troops detachment:'' $securityForceName has currently transferred troops to the security department HQ in addition to providing advanced equipment and training to security HQ personnel. + <<elseif $SFSupportLevel === 3>> + <br>''Troops detachment:'' $SF.Caps has currently transferred troops to the security department HQ in addition to providing advanced equipment and training to security HQ personnel. [[Repeal|edicts][$SFSupportLevel--, $SFSupportUpkeep -= 3000, $reqHelots += 5]] - <<elseif $SFSupportLevel == 4>> - <br>''Full support:''$securityForceName is currently providing its full support to the security department, while transferring troops to the security department HQ in addition to providing advanced equipment and training to security HQ personnel. + <<elseif $SFSupportLevel === 4>> + <br>''Full support:''$SF.Caps is currently providing its full support to the security department, while transferring troops to the security department HQ in addition to providing advanced equipment and training to security HQ personnel. [[Repeal|edicts][$SFSupportLevel--, $SFSupportUpkeep -= 3000, $reqHelots += 5]] - <<elseif $SFSupportLevel == 5>> - <br>''Network assistance:''$securityForceName is currently assisting with a local install of its custom network full support and has transferred troops to the security department HQ in addition to providing advanced equipment and training to security HQ personnel. + <<elseif $SFSupportLevel === 5>> + <br>''Network assistance:''$SF.Caps is currently assisting with a local install of its custom network full support and has transferred troops to the security department HQ in addition to providing advanced equipment and training to security HQ personnel. [[Repeal|edicts][$SFSupportLevel--, $SFSupportUpkeep -= 4000, $secHQUpkeep -= 1000, $reqHelots += 5]] <</if>> <</if>> @@ -307,42 +307,42 @@ <</if>> <</if>> -<<if $securityForceCreate == 1 && $SFSupportLevel < 5>> +<<if $SF.Toggle && $SF.Active >= 1 && $SFSupportLevel < 5>> <br><br>__Special Force:__ - <<if $SFSupportLevel == 0 && $reqHelots > 5>> - <br>''Equipment provision:'' $securityForceName will provide the security HQ with advanced equipment. + <<if !$SFSupportLevel && $reqHelots > 5>> + <br>''Equipment provision:'' $SF.Caps will provide the security HQ with advanced equipment. <<if $authority >= 1000>> [[Implement|edicts][$SFSupportLevel++, $cash -=5000, $authority -= 1000, $SFSupportUpkeep += 1000, $reqHelots -= 5]] <<else>> <br>//Not enough Authority.// <</if>> <br> //Will lower the amount of personnel necessary to man the security HQ by 5, but will incur upkeep costs.// - <<elseif $SFSupportLevel == 1 && $securityForceArcologyUpgrades != 4 && $reqHelots > 5>> - <br>''Personnel training:'' $securityForceName will provide the security HQ personnel with advanced training. + <<elseif $SFSupportLevel && $SFUnit.Firebase >= 4 && $reqHelots > 5>> + <br>''Personnel training:'' $SF.Caps will provide the security HQ personnel with advanced training. <<if $authority >= 1000>> [[Implement|edicts][$SFSupportLevel++, $cash -=5000, $authority -= 1000, $SFSupportUpkeep += 2000, $reqHelots -= 5]] <<else>> <br>//Not enough Authority.// <</if>> <br> //Will lower the amount of personnel necessary to man the security HQ by a further 5, but will incur additional upkeep costs.// - <<elseif $SFSupportLevel == 2 && $securityForceArcologyUpgrades != 6 && $reqHelots > 5>> - <br>''Troops detachment:'' $securityForceName will provide troops to the security department. + <<elseif $SFSupportLevel === 2 && $SFUnit.Firebase >= 6 && $reqHelots > 5>> + <br>''Troops detachment:'' $SF.Caps will provide troops to the security department. <<if $authority >= 1000>> [[Implement|edicts][$SFSupportLevel++, $cash -=5000, $authority -= 1000, $SFSupportUpkeep += 3000, $reqHelots -= 5]] <<else>> <br>//Not enough Authority.// <</if>> <br> //Will lower the amount of personnel necessary to man the security HQ by a further 5, but will incur additional upkeep costs.// - <<elseif $SFSupportLevel == 3 && $securityForceArcologyUpgrades != 6 && $reqHelots > 5>> - <br>''Full Support:'' $securityForceName will give the security department its full support. + <<elseif $SFSupportLevel === 3 && $SFUnit.Firebase >= 6 && $reqHelots > 5>> + <br>''Full Support:'' $SF.Caps will give the security department its full support. <<if $authority >= 1000>> [[Implement|edicts][$SFSupportLevel++, $cash -=5000, $authority -= 1000, $SFSupportUpkeep += 3000, $reqHelots -= 5]] <<else>> <br>//Not enough Authority.// <</if>> <br> //Will lower the amount of personnel necessary to man the security HQ by a further 5, but will incur additional upkeep costs.// - <<elseif $SFSupportLevel == 4 && $securityForceArcologyUpgrades == 13 && $reqHelots > 5>> - <br>''Network assistance:'' $securityForceName will assist the security department with installing a local version of their custom network. + <<elseif $SFSupportLevel === 4 && $SFUnit.Firebase === 10 && $reqHelots > 5>> + <br>''Network assistance:'' $SF.Caps will assist the security department with installing a local version of their custom network. <<if $authority >= 1000>> [[Implement|edicts][$SFSupportLevel++, $cash -=50000, $authority -= 1000, $SFSupportUpkeep += 4000, $secHQUpkeep += 1000, $reqHelots -= 5]] <<else>> diff --git a/src/SecExp/rebellionHandler.tw b/src/SecExp/rebellionHandler.tw index 624c40e9543d9b441708b921ab2b149fbb74f487..57ced876ffcaab068dceaa35f4f295e1585f1af8 100644 --- a/src/SecExp/rebellionHandler.tw +++ b/src/SecExp/rebellionHandler.tw @@ -136,7 +136,7 @@ <</if>> <</for>> -<<if $securityForceCreate == 1>> +<<if $SF.Toggle && $SF.Active >= 1>> <<set $SFatk = 0>> <<set $SFdef = 0>> <<set $SFhp = 0>> @@ -144,7 +144,6 @@ <<set _attack += $SFatk>> <<set _defense += $SFdef>> <<set _hp += $SFhp>> - <</if>> <<set _attack *= _engageMod>> @@ -177,10 +176,10 @@ <<set _moraleTroopMod = Math.clamp($troopCount / 100,1,10)>> /* morale and baseHp calculation */ -<<set _morale = ($secBotsMorale * $secBots.active + $militiaBaseMorale * $deployingMilitia + $slaveBaseMorale * $deployingSlaves + $mercBaseMorale * $deployingMercs + $SFBaseMorale * $securityForceCreate) / ($secBots.active + $deployingMilitia +$deployingSlaves + $deployingMercs + $securityForceCreate)>> +<<set _morale = ($secBotsMorale * $secBots.active + $militiaBaseMorale * $deployingMilitia + $slaveBaseMorale * $deployingSlaves + $mercBaseMorale * $deployingMercs + $SFBaseMorale * $SF.Active) / ($secBots.active + $deployingMilitia +$deployingSlaves + $deployingMercs + $SF.Active)>> <<set _morale = _morale + _morale * $secBarracksUpgrades.luxury * 0.05>> /* barracks bonus */ <<set _morale *= _moraleTroopMod>> -<<set _baseHp = ($secBotsBaseHp * $secBots.active + $militiaBaseHp * $deployingMilitia + $slaveBaseHp * $deployingSlaves + $mercBaseHp * $deployingMercs + $SFBaseHp * $securityForceCreate) / ($secBots.active + $deployingMilitia +$deployingSlaves + $deployingMercs + $securityForceCreate)>> +<<set _baseHp = ($secBotsBaseHp * $secBots.active + $militiaBaseHp * $deployingMilitia + $slaveBaseHp * $deployingSlaves + $mercBaseHp * $deployingMercs + $SFBaseHp * $SF.Active) / ($secBots.active + $deployingMilitia +$deployingSlaves + $deployingMercs + $SF.Active)>> /* calculates rebelling army stats */ <<if $week <= 30>> @@ -319,25 +318,25 @@ __Difficulty__: <br> <br> __Army__: -<br>troops: <<print $troopCount>> -<br>attack: <<print Math.round(_attack)>> -<br>defense: <<print Math.round(_defense)>> +<br>troops: <<print commaNum(Math.round($troopCount))>> +<br>attack: <<print commaNum(Math.round(_attack))>> +<br>defense: <<print commaNum(Math.round(_defense))>> <br>engagement rule modifier: <<if _engageMod > 0>>+<</if>><<print _engageMod>>% -<br>Hp: <<print Math.round(_hp)>> -<br>base HP: <<print Math.round(_baseHp)>> -<br>morale: <<print Math.round(_morale)>> +<br>Hp: <<print commaNum(Math.round(_hp))>> +<br>base HP: <<print commaNum(Math.round(_baseHp))>> +<br>morale: <<print commaNum(Math.round(_morale))>> <<if _enemyMoraleTroopMod > 0>> <br>morale increase due to troop numbers: +<<print _moraleTroopMod>>% <</if>> <br> <br> __Rebels__: -<br>enemy troops: <<print $attackTroops>> -<br>enemy attack: <<print Math.round(_enemyAttack)>> -<br>enemy defense: <<print Math.round(_enemyDefense)>> -<br>enemy Hp: <<print Math.round(_enemyHp)>> -<br>enemy base Hp: <<print Math.round(_enemyBaseHp)>> -<br>enemy morale: <<print Math.round(_enemyMorale)>> +<br>enemy troops: <<print commaNum(Math.round($attackTroops))>> +<br>enemy attack: <<print commaNum(Math.round(_enemyAttack))>> +<br>enemy defense: <<print commaNum(Math.round(_enemyDefense))>> +<br>enemy Hp: <<print commaNum(Math.round(_enemyHp))>> +<br>enemy base Hp: <<print commaNum(Math.round(_enemyBaseHp))>> +<br>enemy morale: <<print commaNum(Math.round(_enemyMorale))>> <<if _enemyMoraleTroopMod > 0>> <br>enemy morale increase due to troop numbers: +<<print _enemyMoraleTroopMod>>% <</if>> @@ -351,15 +350,15 @@ __Rebels__: /* player army attacks */ <<set _damage = Math.clamp(_attack - _enemyDefense,_attack * 0.1,_attack)>> <br> - <<if $showBattleStatistics == 1>> player damage: <<print Math.round(_damage)>><</if>> + <<if $showBattleStatistics == 1>> player damage: <<print commaNum(Math.round(_damage))>><</if>> <<set _enemyHp -= _damage>> <br> - <<if $showBattleStatistics == 1>> remaining enemy Hp: <<print Math.round(_enemyHp)>><</if>> + <<if $showBattleStatistics == 1>> remaining enemy Hp: <<print commaNum(Math.round(_enemyHp))>><</if>> <<set $enemyLosses += _damage / _enemyBaseHp>> <<set _moraleDamage = Math.clamp(_damage/ 2 + _damage / _enemyBaseHp,0,_damage*1.5)>> <<set _enemyMorale -= _moraleDamage>> <br> - <<if $showBattleStatistics == 1>> remaining enemy morale: <<print Math.round(_enemyMorale)>><</if>> + <<if $showBattleStatistics == 1>> remaining enemy morale: <<print commaNum(Math.round(_enemyMorale))>><</if>> <<if _enemyHp <= 0 || _enemyMorale <= 0>> <<if $showBattleStatistics == 1>> <br>Victory!<</if>> <<set $battleResult = 3>> @@ -373,15 +372,16 @@ __Rebels__: <<set _damage = _enemyAttack * 0.1>> <</if>> <br> - <<if $showBattleStatistics == 1>> enemy damage: <<print Math.round(_damage)>><</if>> - <<set _hp -= _damage>> + <<if $showBattleStatistics == 1>> enemy damage: <<print commaNum(Math.round(_damage))>><</if>> + <<if $SFGear>> <<set _S = .85>> <<else>> <<set _S = 1>> <</if>> + <<set _hp -= _damage*_S>> <br> - <<if $showBattleStatistics == 1>> remaining hp: <<print Math.round(_hp)>><</if>> + <<if $showBattleStatistics == 1>> remaining hp: <<print commaNum(Math.round(_hp))>><</if>> <<set $losses += _damage / _baseHp>> <<set _moraleDamage = Math.clamp(_damage / 2 + _damage / _baseHp,0,_damage*1.5)>> <<set _morale -= _moraleDamage>> <br> - <<if $showBattleStatistics == 1>> remaining morale: <<print Math.round(_morale)>><</if>> + <<if $showBattleStatistics == 1>> remaining morale: <<print commaNum(Math.round(_morale))>><</if>> <<if _hp <= 0 || _morale <= 0>> <<if $showBattleStatistics == 1>> <br>Defeat!<</if>> <<set $battleResult = -3>> diff --git a/src/SecExp/rebellionOptions.tw b/src/SecExp/rebellionOptions.tw index cb0035eface5921beb55d2d20c33c3173b09369f..91c470b22cd01b36d61caa6d88360e80de86d8c2 100644 --- a/src/SecExp/rebellionOptions.tw +++ b/src/SecExp/rebellionOptions.tw @@ -97,10 +97,10 @@ <</if>> <</if>> <</for>> - <<if $securityForceActive == 1>>and $securityForceName, <<print commaNum($securityForcePersonnel)>> strong<</if>> + <<if $SF.Toggle && $SF.Active >= 1>>and $SF.Lower, <<print commaNum($SFUnit.Troops)>> strong<</if>> are called to defend the arcology from this menace. <<else>> - <<if $arcologyUpgrade.drones == 1>>Your security drones<<if $securityForceActive == 1>>and <<print commaNum($securityForceName, $securityForcePersonnel)>> strong<</if>><</if>> + <<if $arcologyUpgrade.drones == 1>>Your security drones<<if $SF.Toggle && $SF.Active >= 1>>and $SF.Lower, <<print commaNum($SFUnit.Troops)>> strong<</if>> <</if>> are called to defend the arcology from this menace. <</if>> <hr> diff --git a/src/SecExp/rebellionReport.tw b/src/SecExp/rebellionReport.tw index cc7d21844c8f93de765793122b0a2f56ed3a6d33..c5195debe8728415c6d8066dfd2a197e26fc2449 100644 --- a/src/SecExp/rebellionReport.tw +++ b/src/SecExp/rebellionReport.tw @@ -1,7 +1,6 @@ :: rebellionReport [nobr] <<set $nextButton = "Continue", $nextLink = "Scheduled Event", $showEncyclopedia = 1, $encyclopedia = "Battles">> - <<set _oldRep = $rep>> <<set _oldAuth = $authority>> <<set $enemyLosses = Math.trunc($enemyLosses)>> @@ -89,6 +88,9 @@ <<else>> completely annihilating their troops, while sustaining <<if $losses > 1>> <<print commaNum(Math.trunc($losses))>> casualties <<else>> a casualty.<</if>> <</if>> + <<if $SFGear>> + More units were able to survive thanks to wearining $SF.Lower's combat armour suits. + <</if>> <<set $ASlaves -= $enemyLosses>> <<if $battleResult == 3>> <<if $battleTurns <= 5>> @@ -183,6 +185,9 @@ <<else>> completely annihilating their troops, while sustaining <<if $losses > 1>> <<print commaNum(Math.trunc($losses))>> casualties <<else>> a casualty.<</if>> <</if>> + <<if $SFGear>> + More units were able to survive thanks to wearining $SF.Lower's combat armour suits. + <</if>> <<set $ASlaves -= $enemyLosses>> <<if $battleResult == 3>> <<if $battleTurns <= 5>> diff --git a/src/SecExp/riotControlCenter.tw b/src/SecExp/riotControlCenter.tw index dc773834bb99aa0ac8ca775f59d7fdae756ef623..43d7f51035ffbb39ba25dd828207f24405a9a963 100644 --- a/src/SecExp/riotControlCenter.tw +++ b/src/SecExp/riotControlCenter.tw @@ -206,3 +206,12 @@ The riot control center opens its guarded doors to you. The great chamber inside <<else>> You have installed additional protection layers and redundant systems in the assistant CPU core. <</if>> + +<<if $SF.Toggle && $SF.Active >= 1>> + <<if $SFSupportLevel >= 4 && !$SFGear && $SFUnit.Armoury >= 8>> <<= Count()>> + <br><br> <<link "Give the riot unit access to the combat armour suits of $SF.Lower.""riotControlCenter">> <<set $SFGear = 1,$riotUpkeep += 15000,$cash -= Math.ceil(500000*_Env*(1.15+($SFUnit.Armoury/10)))>> <</link>> + <br>//Costs <<print cashFormat(Math.ceil(500000*_Env*(1.15+($SFUnit.Armoury/10))))>> + <<else>> + <br><br>//You have given the riot unit access to the combat armour suits of $SF.Lower.// + <</if>> +<</if>> \ No newline at end of file diff --git a/src/SecExp/secBarracks.tw b/src/SecExp/secBarracks.tw index c621fb3f53857f4b231f3651d05dfae0c45330c6..5bfe8cd772deae362f378241ec6923ed00f105bb 100644 --- a/src/SecExp/secBarracks.tw +++ b/src/SecExp/secBarracks.tw @@ -48,12 +48,11 @@ While this a sore sight for many citizens of $arcologies[0].name, the barracks s <br> <br> <<if $secBarracksUpgrades.size < 5>> - <<link "Increase the size of the barracks">> + <<link "Increase the size of the barracks" "secBarracks">> <<set $cash -= 5000 * ($secBarracksUpgrades.size + 1)>> <<set $secBarracksUpgrades.size += 1>> <<set $maxUnits += 2>> <<set $secBarracksUpkeep += $upgradeUpkeep>> - <<goto "secBarracks">> <</link>> <br>//Costs <<print cashFormat(5000 * ($secBarracksUpgrades.size + 1))>> and will increase the maximum number of units by 2.// <<else>> @@ -61,35 +60,31 @@ While this a sore sight for many citizens of $arcologies[0].name, the barracks s <</if>> <br> <<if $secBarracksUpgrades.luxury == 0>> - <<link "Increase the quality of life of your soldiers by installing high tech furniture and appliances.">> + <<link "Increase the quality of life of your soldiers by installing high tech furniture and appliances." "secBarracks">> <<set $secBarracksUpgrades.luxury += 1>> <<set $cash -= 5000>> <<set $secBarracksUpkeep += $upgradeUpkeep>> - <<goto "secBarracks">> <</link>> <br>//Costs <<print cashFormat(5000)>> and will provide a 5% bonus to morale.// <<elseif $secBarracksUpgrades.luxury == 1>> - <<link "Further increase the quality of life of your soldiers by installing advanced kitchen equipment and hiring skilled chefs.">> + <<link "Further increase the quality of life of your soldiers by installing advanced kitchen equipment and hiring skilled chefs." "secBarracks">> <<set $secBarracksUpgrades.luxury += 1>> <<set $cash -= 10000>> <<set $secBarracksUpkeep += $upgradeUpkeep>> - <<goto "secBarracks">> <</link>> <br>//Costs <<print cashFormat(10000)>> and will provide a 5% bonus to morale, for a total of +10%.// <<elseif $secBarracksUpgrades.luxury == 2>> - <<link "Further increase the quality of life of your soldiers by providing high speed, free access to digital media">> + <<link "Further increase the quality of life of your soldiers by providing high speed, free access to digital media" "secBarracks">> <<set $secBarracksUpgrades.luxury += 1>> <<set $cash -= 10000>> <<set $secBarracksUpkeep += $upgradeUpkeep>> - <<goto "secBarracks">> <</link>> <br>//Costs <<print cashFormat(10000)>> and will provide a 5% bonus to morale, for a total of +15%.// <<elseif $secBarracksUpgrades.luxury == 3>> - <<link "Further increase the quality of life of your soldiers by adding and staffing an exclusive brothel to the structure">> + <<link "Further increase the quality of life of your soldiers by adding and staffing an exclusive brothel to the structure" "secBarracks">> <<set $secBarracksUpgrades.luxury += 1>> <<set $cash -= 15000>> <<set $secBarracksUpkeep += $upgradeUpkeep>> - <<goto "secBarracks">> <</link>> <br>//Costs <<print cashFormat(15000)>> and will provide a 5% bonus to morale, for a total of +20%.// <<else>> @@ -97,19 +92,17 @@ While this a sore sight for many citizens of $arcologies[0].name, the barracks s <</if>> <br> <<if $secBarracksUpgrades.training == 0>> - <<link "Add a training facility to the barracks">> + <<link "Add a training facility to the barracks" "secBarracks">> <<set $secBarracksUpgrades.training += 1>> <<set $cash -= 10000>> <<set $secBarracksUpkeep += $upgradeUpkeep>> - <<goto "secBarracks">> <</link>> <br>//Costs <<print cashFormat(10000)>> and will allow units to accumulate some experience each week.// <<elseif $secBarracksUpgrades.training == 1>> - <<link "Improve the training facility with modern equipment and skilled personnel">> + <<link "Improve the training facility with modern equipment and skilled personnel" "secBarracks">> <<set $secBarracksUpgrades.training += 1>> <<set $cash -= 20000>> <<set $secBarracksUpkeep += $upgradeUpkeep>> - <<goto "secBarracks">> <</link>> <br>//Costs <<print cashFormat(20000)>> and will allow units to accumulate experience each week.// <<else>> @@ -117,19 +110,17 @@ While this a sore sight for many citizens of $arcologies[0].name, the barracks s <</if>> <br> <<if $secBarracksUpgrades.loyaltyMod == 0>> - <<link "Add an indoctrination facility to the barracks">> + <<link "Add an indoctrination facility to the barracks" "secBarracks">> <<set $secBarracksUpgrades.loyaltyMod += 1>> <<set $cash -= 10000>> <<set $secBarracksUpkeep += $upgradeUpkeep>> - <<goto "secBarracks">> <</link>> <br>//Costs <<print cashFormat(10000)>> and will slowly raise loyalty of all units// <<elseif $secBarracksUpgrades.loyaltyMod == 1>> - <<link "Improve the indoctrination facility with advanced equipment and skilled personnel">> + <<link "Improve the indoctrination facility with advanced equipment and skilled personnel" "secBarracks">> <<set $secBarracksUpgrades.loyaltyMod += 1>> <<set $cash -= 20000>> <<set $secBarracksUpkeep += $upgradeUpkeep>> - <<goto "secBarracks">> <</link>> <br>//Costs <<print cashFormat(20000)>> and will raise loyalty of all units faster.// <<else>> @@ -139,45 +130,35 @@ While this a sore sight for many citizens of $arcologies[0].name, the barracks s <hr> __Units__ <br> -Your maximum number of units is <<print $maxUnits>>, currently you have <<print $activeUnits>>. <<if $secBarracksUpgrades.luxury > 0>>The barracks provides <<print $secBarracksUpgrades.luxury * 5>>% bonus morale when battle occurs.<</if>><<if $secBarracksUpgrades.training > 0>> The training facility will increase the effectiveness of your units with time.<</if>> +Your current maximum number of units is <<print $maxUnits>> (<<print commaNum($secBots.maxTroops+(50*$maxUnits))>> troops), <<print $activeUnits>> (<<print commaNum($secBots.maxTroops+($slavesEmployedManpower)+($militiaEmployedManpower)+($mercEmployedManpower))>> troops) are active and <<print (2 * $readiness)>> units can be deployed. <<if $secBarracksUpgrades.luxury > 0>>The barracks provides <<print $secBarracksUpgrades.luxury * 5>>% bonus morale when battle occurs.<</if>> <<if $secBarracksUpgrades.training > 0>>The training facility will increase the effectiveness of your units with time.<</if>> +<<if $activeUnits >= $maxUnits>> + <br>You have reached the maximum number of units. You'll have to disband one or enlarge the barracks before forming a new unit. +<</if>> <<if $arcologies[0].FSRomanRevivalist != "unset" || $arcologies[0].FSChineseRevivalist != "unset" || $arcologies[0].FSArabianRevivalist != "unset" || $arcologies[0].FSEdoRevivalist != "unset" || $arcologies[0].FSEgyptianRevivalist != "unset" || $arcologies[0].FSAztecRevivalist != "unset">> <</if>> <br> <<replenishAllUnits>> -<br> -<br> +<<if $secBots.active === 1>> <br><br> __Security Drones__ /* drones */ <<if $secBots.active == 1>> <br> <<secBotsDescription>> <br> - <<link "Review Equipment and upgrades">> + <<link "Review Equipment and upgrades" "seeUnit">> <<set $targetUnit = "secBots">> - <<goto "seeUnit">> <</link>> <<if $secBots.troops < $secBots.maxTroops>> | - <<link "Replenish the unit">> + <<link "Replenish the unit" "secBarracks">> <<set $cash -= ($secBots.maxTroops - $secBots.troops) * $secBotsCost>> <<set $secBots.troops = $secBots.maxTroops>> - <<goto "secBarracks">> <</link>> <</if>> -<<else>> - You have lost too many security drones to be able to field them again. - <<link "Reform the unit">> - <<set $cash -= $secBots.maxTroops * $secBotsCost>> - <<set $secBots.troops = $secBots.maxTroops>> - <<set $secBots.active = 1>> - <<goto "secBarracks">> - <</link>> +<</if>> <</if>> -<br> -<br> - -__Slaves__ +<br><br>__Slaves__ <br>/* slaves */ You are free to organize your menial slaves into fighting units. Currently you have <<print commaNum($helots)>> slaves available, while <<print commaNum($slavesEmployedManpower)>> are already employed as soldiers. During all your battles you lost a total of <<print commaNum($slavesTotalCasualties)>>. <<silently>><<= MenialPopCap()>><</silently>> @@ -202,7 +183,7 @@ You are free to organize your menial slaves into fighting units. Currently you h <<set _sL = $slaveUnits.length>> <<if $helots > 0 && $activeUnits < $maxUnits>> <br> - <<link "Form a new unit">> + <<link "Form a new unit" "secBarracks">> <<if $createdSlavesUnits == 0>> <<set _name = (1+$createdSlavesUnits) + "st slave platoon">> <<elseif $createdSlavesUnits == 1>> @@ -256,12 +237,7 @@ You are free to organize your menial slaves into fighting units. Currently you h <<set $createdSlavesUnits++>> <</if>> <<set $activeUnits++>> - <<goto "secBarracks">> <</link>> -<<elseif $helots > 0>> - You have reached the maximum number of units. You'll have to disband one or enlarge the barracks before forming a new unit. -<<elseif $activeUnits < $maxUnits>> - You don't have any free menial slave with which to form a new unit. <</if>> <<for _i = 0; _i < _sL; _i++>> <<capture _i>> @@ -270,22 +246,20 @@ You are free to organize your menial slaves into fighting units. Currently you h <br> <<slaveUnitsDescription $slaveUnits[_i]>> <br> - <<link "Disband the unit">> + <<link "Disband the unit" "secBarracks">> <<set $helots += $slaveUnits[_i].troops>> <<set $slavesEmployedManpower -= $slaveUnits[_i].troops>> <<set $slaveUnits.deleteAt(_i)>> <<set $activeUnits-->> - <<goto "secBarracks">> <</link>> | - <<link "Review Equipment and upgrades">> + <<link "Review Equipment and upgrades" "seeUnit">> <<set $targetUnit = "slaveUnits">> <<set $targetIndex = _i>> - <<goto "seeUnit">> <</link>> | <<if $slaveUnits[_i].troops < $slaveUnits[_i].maxTroops && $helots > 0>> - <<link "Replenish unit">> + <<link "Replenish unit" "secBarracks">> <<if $helots >= $slaveUnits[_i].maxTroops - $slaveUnits[_i].troops>> <<set $helots -= $slaveUnits[_i].maxTroops - $slaveUnits[_i].troops>> <<set $slavesEmployedManpower += $slaveUnits[_i].maxTroops - $slaveUnits[_i].troops>> @@ -299,16 +273,15 @@ You are free to organize your menial slaves into fighting units. Currently you h <<set $slaveUnits[_i].troops += $helots>> <<set $helots = 0>> <</if>> - <<goto "secBarracks">> <</link>> <</if>> - + <<else>> <br> <br> $slaveUnits[_i].platoonName lost too many operatives to be considered active. <br> - <<link "Disband the unit">> + <<link "Disband the unit" "secBarracks">> <<set _elimUnit = $slaveUnits[_i]>> <<set _newSlaveUnits = []>> <<for _y = 0; _y < _sL; _y++>> @@ -318,11 +291,10 @@ You are free to organize your menial slaves into fighting units. Currently you h <</for>> <<set $slaveUnits = _newSlaveUnits>> <<set $activeUnits-->> - <<goto "secBarracks">> <</link>> | <<if $helots > 0>> - <<link "Reform the unit">> + <<link "Reform the unit" "secBarracks">> <<if $helots >= $slaveUnits[_i].maxTroops>> <<set $slavesEmployedManpower += $slaveUnits[_i].maxTroops>> <<set $helots -= $slaveUnits[_i].maxTroops>> @@ -335,7 +307,6 @@ You are free to organize your menial slaves into fighting units. Currently you h <<set $slaveUnits[_i].training = 0>> <</if>> <<set $slaveUnits[_i].active = 1>> - <<goto "secBarracks">> <</link>> <</if>> <</if>> @@ -354,13 +325,13 @@ __Militia__ With the establishment of conscription, your available manpower has increased to now approximately 3% of the arcology's citizens population. <<elseif $militiaRecruitment == 2>> By establishing obligatory military service to obtain citizenship you have enlarged your manpower pool to be approximately 5% of the arcology's citizens population. - <</if>> - Your current total manpower is <<print commaNum($militiaTotalManpower)>>, of which <<print commaNum($militiaEmployedManpower)>> is in active duty. You lost in total <<print commaNum($militiaTotalCasualties)>> citizens, leaving you with <<print commaNum($militiaFreeManpower)>> available citizens. + <</if>> + Your current total manpower is <<print commaNum($militiaTotalManpower)>>, of which <<print commaNum($militiaEmployedManpower)>> is in active duty. You lost in total <<print commaNum($militiaTotalCasualties)>> citizens, leaving you with <<print commaNum($militiaFreeManpower)>> available citizens. <br> <<set _mL = $militiaUnits.length>> <<if $militiaFreeManpower > 0 && $activeUnits < $maxUnits>> <br> - <<link "Form a new unit">> + <<link "Form a new unit" "secBarracks">> <<if $createdMilitiaUnits == 0>> <<set _name = (1+$createdMilitiaUnits) + "st citizens' platoon">> <<elseif $createdMilitiaUnits == 1>> @@ -414,12 +385,7 @@ __Militia__ <<set $createdMilitiaUnits++>> <</if>> <<set $activeUnits++>> - <<goto "secBarracks">> <</link>> - <<elseif $militiaFreeManpower > 0>> - You have reached the maximum number of units. You'll have to disband one or enlarge the barracks before forming a new unit. - <<elseif $activeUnits < $maxUnits>> - You don't have any free recruits with which to form a new unit. <</if>> <<for _i = 0; _i < _mL; _i++>> <<capture _i>> @@ -428,22 +394,20 @@ __Militia__ <br> <<militiaUnitsDescription $militiaUnits[_i]>> <br> - <<link "Disband the unit">> + <<link "Disband the unit" "secBarracks">> <<set $militiaFreeManpower += $militiaUnits[_i].troops>> <<set $militiaEmployedManpower -= $militiaUnits[_i].troops>> <<set $militiaUnits.deleteAt(_i)>> <<set $activeUnits-->> - <<goto "secBarracks">> <</link>> | - <<link "Review Equipment and upgrades">> + <<link "Review Equipment and upgrades" "seeUnit">> <<set $targetUnit = "militiaUnits">> <<set $targetIndex = _i>> - <<goto "seeUnit">> <</link>> | <<if $militiaUnits[_i].troops < $militiaUnits[_i].maxTroops && $militiaFreeManpower > 0>> - <<link "Replenish unit">> + <<link "Replenish unit" "secBarracks">> <<if $militiaFreeManpower >= $militiaUnits[_i].maxTroops - $militiaUnits[_i].troops>> <<set $militiaFreeManpower -= $militiaUnits[_i].maxTroops - $militiaUnits[_i].troops>> <<set $militiaEmployedManpower += $militiaUnits[_i].maxTroops - $militiaUnits[_i].troops>> @@ -457,7 +421,6 @@ __Militia__ <<set $militiaUnits[_i].troops += $militiaFreeManpower>> <<set $militiaFreeManpower = 0>> <</if>> - <<goto "secBarracks">> <</link>> <</if>> <<else>> @@ -465,7 +428,7 @@ __Militia__ <br> $militiaUnits[_i].platoonName lost too many operatives to be considered active. <br> - <<link "Disband the unit">> + <<link "Disband the unit" "secBarracks">> <<set $militiaFreeManpower += $militiaUnits[_i].troops>> <<set $militiaEmployedManpower -= $militiaUnits[_i].troops>> <<set _elimUnit = $militiaUnits[_i]>> @@ -477,11 +440,10 @@ __Militia__ <</for>> <<set $militiaUnits = _newMilitiaUnits>> <<set $activeUnits-->> - <<goto "secBarracks">> <</link>> | <<if $militiaFreeManpower > 0>> - <<link "Reform the unit">> + <<link "Reform the unit" "secBarracks">> <<if $militiaFreeManpower >= $militiaUnits[_i].maxTroops>> <<set $militiaEmployedManpower += $militiaUnits[_i].maxTroops>> <<set $militiaFreeManpower -= $militiaUnits[_i].maxTroops>> @@ -494,7 +456,6 @@ __Militia__ <<set $militiaUnits[_i].training = 0>> <</if>> <<set $militiaUnits[_i].active = 1>> - <<goto "secBarracks">> <</link>> <</if>> <</if>> @@ -518,7 +479,7 @@ __Mercenaries__ <<set _meL = $mercUnits.length>> <<if $mercFreeManpower > 0 && $activeUnits < $maxUnits>> <br> - <<link "Form a new unit">> + <<link "Form a new unit" "secBarracks">> <<if $createdMercUnits == 0>> <<set _name = (1+$createdMercUnits) + "st mercenary platoon">> <<elseif $createdMercUnits == 1>> @@ -572,12 +533,7 @@ __Mercenaries__ <<set $createdMercUnits++>> <</if>> <<set $activeUnits++>> - <<goto "secBarracks">> <</link>> - <<elseif $mercFreeManpower > 0>> - You have reached the maximum number of units. You'll have to disband one or enlarge the barracks before forming a new unit. - <<elseif $activeUnits < $maxUnits>> - You don't have any free mercenaries with which to form a new unit. <</if>> <<for _i = 0; _i < _meL; _i++>> <<capture _i>> @@ -586,22 +542,20 @@ __Mercenaries__ <br> <<mercUnitsDescription $mercUnits[_i]>> <br> - <<link "Disband the unit">> + <<link "Disband the unit" "secBarracks">> <<set $mercFreeManpower += $mercUnits[_i].troops>> <<set $mercEmployedManpower -= $mercUnits[_i].troops>> <<set $mercUnits.deleteAt(_i)>> <<set $activeUnits-->> - <<goto "secBarracks">> <</link>> | - <<link "Review Equipment and upgrades">> + <<link "Review Equipment and upgrades" "seeUnit">> <<set $targetUnit = "mercUnits">> <<set $targetIndex = _i>> - <<goto "seeUnit">> <</link>> | <<if $mercUnits[_i].troops < $mercUnits[_i].maxTroops && $mercFreeManpower > 0>> - <<link "Replenish unit">> + <<link "Replenish unit" "secBarracks">> <<if $mercFreeManpower >= $mercUnits[_i].maxTroops - $mercUnits[_i].troops>> <<set $mercFreeManpower -= $mercUnits[_i].maxTroops - $mercUnits[_i].troops>> <<set $mercEmployedManpower += $mercUnits[_i].maxTroops - $mercUnits[_i].troops>> @@ -615,16 +569,15 @@ __Mercenaries__ <<set $mercUnits[_i].troops += $mercFreeManpower>> <<set $mercFreeManpower = 0>> <</if>> - <<goto "secBarracks">> <</link>> <</if>> - + <<else>> <br> <br> $mercUnits[_i].platoonName lost too many operatives to be considered active. <br> - <<link "Disband the unit">> + <<link "Disband the unit" "secBarracks">> <<set _elimUnit = $mercUnits[_i]>> <<set _newMercUnits = []>> <<for _y = 0; _y < _sL; _y++>> @@ -634,11 +587,10 @@ __Mercenaries__ <</for>> <<set $mercUnits = _newMercUnits>> <<set $activeUnits-->> - <<goto "secBarracks">> <</link>> | <<if $mercFreeManpower > 0>> - <<link "Reform the unit">> + <<link "Reform the unit" "secBarracks">> <<if $mercFreeManpower >= $mercUnits[_i].maxTroops>> <<set $mercEmployedManpower += $mercUnits[_i].maxTroops>> <<set $mercFreeManpower -= $mercUnits[_i].maxTroops>> @@ -651,7 +603,6 @@ __Mercenaries__ <<set $mercUnits[_i].training = 0>> <</if>> <<set $mercUnits[_i].active = 1>> - <<goto "secBarracks">> <</link>> <</if>> <</if>> diff --git a/src/SecExp/secExpSmilingMan.tw b/src/SecExp/secExpSmilingMan.tw index d96c7dee9feff0bc724ad42af38c9bea2c7fddab..60c06553719e875202f6d74765e771757bb234c1 100644 --- a/src/SecExp/secExpSmilingMan.tw +++ b/src/SecExp/secExpSmilingMan.tw @@ -1,11 +1,11 @@ :: secExpSmilingMan [nobr] - + <strong>The Smiling Man</strong> <br> <<if $smilingManProgress == 0>> <<set $nextButton = "Continue", $nextLink = "Random Nonindividual Event">> - + <br> During your morning routine, you stumble upon a peculiar report: it's been several weeks now that your arcology has been victim of a series of cyber-crimes conducted by a mysterious figure. The egocentric criminal took great pride in their acts, to the point of signing his acts with their peculiar symbol: a stylized smiling face. Your arcology was not the only one under assault by the @@ -63,7 +63,7 @@ <<set $nextButton = "Continue", $nextLink = "Random Nonindividual Event">> <br> - You have just reached your penthouse when your faithful assistant appears in front of you, evidently excited. + You have just reached your penthouse when your faithful assistant appears in front of you, evidently excited. "<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>, I have just received news of a new attack by the Smiling Man. It appears a few hours ago he infiltrated another arcology and caused a catastrophic failure of its power plant. Between old debts and the loss of value for his shares, the owner went bankrupt in minutes. It seems the Smiling Man managed to keep a small auxiliary generator functioning enough to project a giant holographic picture of his symbol on the arcology's walls. Say what you will about his actions, but you can't deny he has style... Anyways, this opens up a great opportunity to gain control of the structure for ourselves." @@ -130,7 +130,7 @@ </span> <<elseif $smilingManProgress == 2>> <<set $nextButton = "Continue", $nextLink = "Random Nonindividual Event">> - + <br> <<set $smilingManWeek = $week>> When $assistantName violently wakes you up, her worried expression can mean only one thing: the Smiling Man had been back. "Today at midnight a new site popped up in the web: it's a very simple site, no visuals, no text; only a countdown ticking away. It will reach zero this evening." your assistant says. @@ -196,7 +196,7 @@ <<set $security = Math.clamp($security * 0.2,0,100)>> <<set $crime = Math.clamp($crime * 1.5, 20,100)>> <</if>> - + <br>A short, meek man approaches you with a weak smile. "Not all is lost, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>sir<<else>>ma'am<</if>>. We have a lead on him - he is here, in $arcologies[0].name." <br>Despite the bleak situation, you cannot help but smile back. <br> @@ -237,7 +237,7 @@ </span> <<elseif $smilingManProgress == 3>> <<set $nextButton = " ">> - + <br> The day has come to finally put an end to this story. Your men are ready to go, waiting only on your signal. You quickly don your protective gear and proceed down the busy streets of your arcology. You carefully planned the day so that nothing could exit the arcology without being scanned at least three times and poked twice. The Smiling Man has no escape. @@ -257,7 +257,7 @@ <<link "Offer her a new life">> <<set $smilingManFate = 0>> <<replace "#result">> - You decide it would a criminally wasteful to throw away such talent. You offer her a new life at your side. Her expertise will surely guarantee safety, if not supremacy, to your arcology in cyberspace, while she will have safety and luxury in the physical world. + You decide it would be criminally wasteful to throw away such talent. You offer her a new life at your side. Her expertise will surely guarantee safety, if not supremacy, to your arcology in cyberspace, while she will have safety and luxury in the physical world. <br> <<link "Continue">> <<set $smilingManProgress += 1>> diff --git a/src/SecExp/secInit.tw b/src/SecExp/secInit.tw index 97535043e2b85ff5b0b6591adb63e836d505e0da..84654fea324a557daadaa58dc5aa99f3cf083d91 100644 --- a/src/SecExp/secInit.tw +++ b/src/SecExp/secInit.tw @@ -342,6 +342,9 @@ /* SFanon additons */ <<set $SFSupportLevel = 0>> <<set $SFSupportUpkeep = 0>> +<<set $SFGear = 0>> +<<set $SavedLeader = "none">> +<<set $SavedSFI = 0>> /* helper widgets */ <<calcInitialTrade>> \ No newline at end of file diff --git a/src/SecExp/securityHQ.tw b/src/SecExp/securityHQ.tw index 40d44e15172e84ffb1cd3a35e3e69dd31291700c..891363eee5641aa116f398864c713720319fab5f 100644 --- a/src/SecExp/securityHQ.tw +++ b/src/SecExp/securityHQ.tw @@ -15,7 +15,7 @@ Security headquarters The security headquarters stand in front of you. Innumerable screens flood with light the great central room. <<if $secHelots > 0>>Some slaves see you enter and interrupt their work to greet you.<</if>> From here you can build a safe and prosperous arcology. <br> /* security level. Slaves */ -You have <span id="secHel"><<print $secHelots>></span> slaves working in the HQ. $reqHelots are required and you have <span id="hel"><<print commaNum($helots)>></span> free menial slaves. +You have <span id="secHel"> <<print commaNum($secHelots)>> </span> slaves working in the HQ. $reqHelots are required and you have <span id="hel"> <<print commaNum($helots)>> </span> free menial slaves. <<if $secHelots < $reqHelots>> You do not have enough slaves here. You will not receive the full benefit of the installed upgrades. <<else>> @@ -39,40 +39,141 @@ You have <span id="secHel"><<print $secHelots>></span> slaves working in the HQ. //Bulk purchases will cost <<print cashFormat(200)>> over market price.// <</if>> <</if>> -<br> -<<if $helots >= 5>> - <<link "Transfer 5 menial slaves to the headquarters">> - <<set $helots -= 5>> - <<set $secHelots += 5>> - <<replace "#secHel">><<print $secHelots>><</replace>> - <<replace "#hel">><<print $helots>><</replace>> - <<if $helots < 5 || $secHelots >= $reqHelots || $secHelots == 5>> - <<goto "securityHQ">> +<<if $helots > 0>> + <br>Transfer in: + <<if $helots >= 5>> + <<link "5">> + <<set $helots -= 5>> + <<set $secHelots += 5>> + <<replace "#secHel">><<print $secHelots>><</replace>> + <<replace "#hel">><<print $helots>><</replace>> + <<if $helots < 5 || $secHelots >= $reqHelots || $secHelots == 5>> + <<goto "securityHQ">> + <</if>> + <</link>> + <</if>> + <<if $helots >= 10>> + |<<link "10">> + <<set $helots -= 10>> + <<set $secHelots += 10>> + <<replace "#secHel">><<print $secHelots>><</replace>> + <<replace "#hel">><<print $helots>><</replace>> + <<if $helots < 10 || $secHelots >= $reqHelots || $secHelots == 10>> + <<goto "securityHQ">> + <</if>> + <</link>> + <</if>> + <<if $helots >= 100>> + |<<link "100">> + <<set $helots -= 100>> + <<set $secHelots += 100>> + <<replace "#secHel">><<print $secHelots>><</replace>> + <<replace "#hel">><<print $helots>><</replace>> + <<if $helots < 100 || $secHelots >= $reqHelots || $secHelots == 100>> + <<goto "securityHQ">> + <</if>> + <</link>> + <</if>> + <<if $helots >= 500>> + |<<link "500">> + <<set $helots -= 500>> + <<set $secHelots += 500>> + <<replace "#secHel">><<print $secHelots>><</replace>> + <<replace "#hel">><<print $helots>><</replace>> + <<if $helots < 500 || $secHelots >= $reqHelots || $secHelots == 500>> + <<goto "securityHQ">> + <</if>> + <</link>> + <</if>> + <<if $helots >= 1000>> + |<<link "1000">> + <<set $helots -= 1000>> + <<set $secHelots += 1000>> + <<replace "#secHel">><<print $secHelots>><</replace>> + <<replace "#hel">><<print $helots>><</replace>> + <<if $helots < 1000 || $secHelots >= $reqHelots || $secHelots == 1000>> + <<goto "securityHQ">> + <</if>> + <</link>> + <</if>> + + <<if $secHelots > 0>> + <br>Transfer out + <<if $secHelots >= 5>> + <<link "5">> + <<set $helots += 5>> + <<set $secHelots -= 5>> + <<replace "#secHel">><<print $secHelots>><</replace>> + <<replace "#hel">><<print $helots>><</replace>> + <<if $secHelots < 5>> + <<goto "securityHQ">> + <</if>> + <<if $secHelots < $reqHelots>> + <<goto "securityHQ">> + <</if>> + <</link>> <</if>> - <</link>> -<<else>> - Transfer 5 menial slaves to the headquarters -<</if>> -| -<<if $secHelots >= 5>> - <<link "Transfer out 5 slaves">> - <<set $helots += 5>> - <<set $secHelots -= 5>> - <<replace "#secHel">><<print $secHelots>><</replace>> - <<replace "#hel">><<print $helots>><</replace>> - <<if $secHelots < 5>> - <<goto "securityHQ">> + <<if $secHelots >= 10>> + |<<link "10">> + <<set $helots += 10>> + <<set $secHelots -= 10>> + <<replace "#secHel">><<print $secHelots>><</replace>> + <<replace "#hel">><<print $helots>><</replace>> + <<if $secHelots < 10>> + <<goto "securityHQ">> + <</if>> + <<if $secHelots < $reqHelots>> + <<goto "securityHQ">> + <</if>> + <</link>> <</if>> - <<if $secHelots < $reqHelots>> - <<goto "securityHQ">> + <<if $secHelots >= 100>> + |<<link "100">> + <<set $helots += 100>> + <<set $secHelots -= 100>> + <<replace "#secHel">><<print $secHelots>><</replace>> + <<replace "#hel">><<print $helots>><</replace>> + <<if $secHelots < 100>> + <<goto "securityHQ">> + <</if>> + <<if $secHelots < $reqHelots>> + <<goto "securityHQ">> + <</if>> + <</link>> <</if>> - <</link>> -<<else>> - Transfer out 5 slaves + <<if $secHelots >= 500>> + |<<link "500">> + <<set $helots += 500>> + <<set $secHelots -= 500>> + <<replace "#secHel">><<print $secHelots>><</replace>> + <<replace "#hel">><<print $helots>><</replace>> + <<if $secHelots < 500>> + <<goto "securityHQ">> + <</if>> + <<if $secHelots < $reqHelots>> + <<goto "securityHQ">> + <</if>> + <</link>> + <</if>> + <<if $secHelots >= 1000>> + |<<link "1000">> + <<set $helots += 1000>> + <<set $secHelots -= 1000>> + <<replace "#secHel">><<print $secHelots>><</replace>> + <<replace "#hel">><<print $helots>><</replace>> + <<if $secHelots < 1000>> + <<goto "securityHQ">> + <</if>> + <<if $secHelots < $reqHelots>> + <<goto "securityHQ">> + <</if>> + <</link>> + <</if>> + <</if>> <</if>> -| + <<if $secHelots != $reqHelots>> - <<link "Match the requirement">> + <br><<link "Match the requirement">> <<if $helots >= $reqHelots - $secHelots>> <<set $helots -= $reqHelots - $secHelots>> <<set $secHelots = $reqHelots>> @@ -89,12 +190,9 @@ You have <span id="secHel"><<print $secHelots>></span> slaves working in the HQ. <<goto "securityHQ">> <</if>> <</link>> -<<else>> - Match the requirement <</if>> -<br> -<br> +<br><br> /* security level and upgrades */ Your security level (@@.deepskyblue;<<print $security>>@@) diff --git a/src/SecExp/securityReport.tw b/src/SecExp/securityReport.tw index 907982fccb2f0e68b612c85fe340ddfead37b9df..a4f4ca56d5a7a57764db2cc12f1fc6f0278fdf72 100644 --- a/src/SecExp/securityReport.tw +++ b/src/SecExp/securityReport.tw @@ -125,14 +125,16 @@ <<set $garrison.assistantTime--, $PC.engineering += .1>> <</if>> -<<if $SFSupportLevel >= 3>> - The two squads of $securityForceName assigned to the Security HQ provide an essential help to the security department. -<</if>> -<<if $SFSupportLevel >= 2>> - The training officers of $securityForceName assigned to the Security HQ improve its effectiveness. -<</if>> -<<if $SFSupportLevel >= 1>> - Providing your Security Department with equipment from $securityForceName slightly boosts the security of your arcology. +<<if $SF.Toggle && $SF.Active >= 1>> + <<if $SFSupportLevel >= 3>> + The two squads of $SF.Lower assigned to the Security HQ provide an essential help to the security department. + <</if>> + <<if $SFSupportLevel >= 2>> + The training officers of $SF.Lower assigned to the Security HQ improve its effectiveness. + <</if>> + <<if $SFSupportLevel >= 1>> + Providing your Security Department with equipment from $SF.Lower slightly boosts the security of your arcology. + <</if>> <</if>> /* resting point */ @@ -252,6 +254,10 @@ <<if $militiaFounded == 1 || $activeUnits >= 1>> <br> <strong> Military</strong>: /* militia */ + <<if $SF.Toggle && $SF.Active >= 1 && $SF.Units > 10>> + Having a powerful special force attracts a lot of citizens, hopeful that they may be able to fight along side it. + <<set _recruits += random(0,(Math.round($SF.Units/10)))>> + <</if>> <<if $propCampaign >= 1 && $propFocus == "recruitment">> <<if $RecuriterOffice == 0 || $Recruiter == 0>> <<if $propCampaignBoost == 1>> @@ -400,6 +406,10 @@ <<if $crime > 60>> The powerful crime organizations that nested themselves in the arcology have an unending need for cheap guns for hire, many mercenaries flock to your free city in search of employment.<<set _newMercs += random(1,2)>> <</if>> + <<if $SF.Toggle && $SF.Active >= 1 && $SF.Units > 10>> + Having a powerful special force attracts a lot of mercenaries, hopeful that they may be able to fight along side it. + <<set _newMercs += random(0,Math.round($SF.Units/10))>> + <</if>> <<set _newMercs = Math.trunc(_newMercs / 2)>> <<if _newMercs > 0>> <<set $mercTotalManpower += _newMercs>> diff --git a/src/SecExp/seeUnit.tw b/src/SecExp/seeUnit.tw index 2ad539ccd55eb46712e8154f5c871fe961d21f8f..e44e03e59f439acb8d995cd47e0bc17fb9f5102c 100644 --- a/src/SecExp/seeUnit.tw +++ b/src/SecExp/seeUnit.tw @@ -10,42 +10,38 @@ <<secBotsDescription>> <<if $secBots.maxTroops > $secBots.troops>> <br> - <<link "Replenish the unit">> + <<link "Replenish the unit" "seeUnit">> <<set $cash -= ($secBots.maxTroops - $secBots.troops) * $secBotsCost>> <<set $secBots.troops = $secBots.maxTroops>> - <<goto "seeUnit">> <</link>> <</if>> <br> <<if $secBots.maxTroops < 80>> <br> - <<link "Improve the digital control matrix">> + <<link "Improve the digital control matrix" "seeUnit">> <<set $secBots.maxTroops += 10>> <<set $cash -= 5000>> - <<goto "seeUnit">> <</link>> Invest in the development of more refined controls for your drones to increase the maximum number of drones in the unit. <br>//Costs <<print cashFormat(5000)>> per upgrade and each will increase the max by 10// - <<elseif $secBots.maxTroops < 100 && $SFSupportLevel >= 1>> + <<elseif $SF.Toggle && $SF.Active >= 1 && $secBots.maxTroops < 100 && $SFSupportLevel >= 1>> <br> - <<link "Refine the drone network with $securityForceName assistance">> + <<link "Refine the drone network with $SF.Lower assistance" "seeUnit">> <<set $secBots.maxTroops += 10>> <<set $cash -= 5000 + 10 * $secBotsUpgradeCost * $secBots.equip>> - <<goto "seeUnit">> <</link>> - Utilize the technological developments made by $securityForceName to further improve the control matrix of the security drones. + Utilize the technological developments made by $SF.Lower to further improve the control matrix of the security drones. <br>//Costs <<print cashFormat(5000 + 10 * $secBotsUpgradeCost * $secBots.equip)>> and will increase the max by 10// - <<elseif $SFSupportLevel < 1 && $securityForceCreate == 1>> - There's little left to improve in the matrix. However support from $securityForceName might give some more room from improvement. + <<elseif $SF.Toggle && $SF.Active >= 1 && $SFSupportLevel < 1>> + There's little left to improve in the matrix. However support from $SF.Lower might give some more room from improvement. <<else>> There's little left to improve in the matrix. Your control systems are at top capacity and won't be able to handle a bigger drone unit. <</if>> <<if $secBots.equip < 3>> <br> - <<link "Improve drone weaponry and armor">> + <<link "Improve drone weaponry and armor" "seeUnit">> <<set $secBots.equip += 1>> <<set $cash -= (($secBotsUpgradeCost * $secBots.maxTroops) + 1000)>> - <<goto "seeUnit">> <</link>> Invest in better equipment for your drones to increase their battle effectiveness. <br>//Costs <<print cashFormat(($secBotsUpgradeCost * $secBots.maxTroops) + 1000)>> and will increase attack and defense value of the unit by 15% for every upgrade.// @@ -67,7 +63,7 @@ Rename unit <<textbox "$militiaUnits[$targetIndex].platoonName" $militiaUnits[$targetIndex].platoonName "seeUnit">> <<if $militiaUnits[$targetIndex].maxTroops > $militiaUnits[$targetIndex].troops && $militiaFreeManpower > 0>> <br> - <<link "Replenish unit">> + <<link "Replenish unit" "seeUnit">> <<if $militiaFreeManpower >= $militiaUnits[$targetIndex].maxTroops - $militiaUnits[$targetIndex].troops>> <<set $militiaFreeManpower -= $militiaUnits[$targetIndex].maxTroops - $militiaUnits[$targetIndex].troops>> <<set $militiaEmployedManpower += $militiaUnits[$targetIndex].maxTroops - $militiaUnits[$targetIndex].troops>> @@ -81,16 +77,14 @@ <<set $militiaUnits[$targetIndex].troops += $militiaFreeManpower>> <<set $militiaFreeManpower = 0>> <</if>> - <<goto "seeUnit">> <</link>> <</if>> <br> <<if $militiaUnits[$targetIndex].maxTroops < 50>> <br> - <<link "Intensive officers training">> + <<link "Intensive officers training" "seeUnit">> <<set $militiaUnits[$targetIndex].maxTroops += 10>> <<set $cash -= 5000 + 10 * $equipUpgradeCost * ($militiaUnits[$targetIndex].equip + $militiaUnits[$targetIndex].commissars + $militiaUnits[$targetIndex].cyber + $militiaUnits[$targetIndex].SF)>> - <<goto "seeUnit">> <</link>> Invest in the training of your officers to increase the maximum number of soldiers in the unit. <br>//Costs <<print cashFormat(5000 + 10 * $equipUpgradeCost * ($militiaUnits[$targetIndex].equip + $militiaUnits[$targetIndex].commissars + $militiaUnits[$targetIndex].cyber + $militiaUnits[$targetIndex].SF))>> and will increase the max by 10// @@ -100,10 +94,9 @@ <</if>> <<if $militiaUnits[$targetIndex].equip < 3>> <br> - <<link "Improve weaponry and equipment">> + <<link "Improve weaponry and equipment" "seeUnit">> <<set $militiaUnits[$targetIndex].equip += 1>> <<set $cash -= ($equipUpgradeCost * $militiaUnits[$targetIndex].maxTroops) + 1000>> - <<goto "seeUnit">> <</link>> Invest in better equipment for your soldiers to increase their battle effectiveness. <br>//Costs <<print cashFormat(($equipUpgradeCost * $militiaUnits[$targetIndex].maxTroops) + 1000)>> and will increase attack and defense value of the unit by 15% for every upgrade.// @@ -113,19 +106,17 @@ <</if>> <<if $militiaUnits[$targetIndex].commissars == 0>> <br> - <<link "Attach commissars to the unit">> + <<link "Attach commissars to the unit" "seeUnit">> <<set $militiaUnits[$targetIndex].commissars = 1>> <<set $cash -= $equipUpgradeCost * $militiaUnits[$targetIndex].maxTroops + 1000>> - <<goto "seeUnit">> <</link>> Attach a small squad of commissars to the unit. <br>//Costs <<print cashFormat(($equipUpgradeCost * $militiaUnits[$targetIndex].maxTroops) + 1000)>> and will slowly increase the loyalty of the unit.// <<elseif $militiaUnits[$targetIndex].commissars < 2>> <br> - <<link "Intensive loyalty training">> + <<link "Intensive loyalty training" "seeUnit">> <<set $militiaUnits[$targetIndex].commissars += 1>> <<set $cash -= $equipUpgradeCost * $militiaUnits[$targetIndex].maxTroops + 1000>> - <<goto "seeUnit">> <</link>> Provide special training for the officers and the commissars of the unit. <br>//Costs <<print cashFormat(($equipUpgradeCost * $militiaUnits[$targetIndex].maxTroops) + 1000)>> and will increase the loyalty of the unit faster.// @@ -137,10 +128,9 @@ <<if $prostheticsUpgrade >= 2 || $researchLab.advCombatPLimb == 1>> <<if $militiaUnits[$targetIndex].cyber == 0>> <br> - <<link "Provide enhanced cybernetic enhancements">> + <<link "Provide enhanced cybernetic enhancements" "seeUnit">> <<set $militiaUnits[$targetIndex].cyber += 1>> <<set $cash -= $equipUpgradeCost * $militiaUnits[$targetIndex].maxTroops + 2000>> - <<goto "seeUnit">> <</link>> Will augment all soldiers of the unit with high tech cyber enhancements. <br>//Costs <<print cashFormat(($equipUpgradeCost * $militiaUnits[$targetIndex].maxTroops) + 2000)>> and will increase attack, defense and base hp values of the unit.// @@ -150,28 +140,26 @@ <</if>> <<if $militiaUnits[$targetIndex].medics == 0>> <br> - <<link "Attach trained medics to the unit">> + <<link "Attach trained medics to the unit" "seeUnit">> <<set $militiaUnits[$targetIndex].medics = 1>> <<set $cash -= $equipUpgradeCost * $militiaUnits[$targetIndex].maxTroops + 1000>> - <<goto "seeUnit">> <</link>> Attach a small squad of trained medics to the unit. <br>//Costs <<print cashFormat(($equipUpgradeCost * $militiaUnits[$targetIndex].maxTroops) + 1000)>> and will decrease the number of casualties suffered during battle.// <<else>> <br>The unit has a medic detachment following it into battle, decreasing the number of casualties the unit suffers. <</if>> - <<if $securityForceActive == 1>> + <<if $SF.Toggle && $SF.Active >= 1>> <<if $militiaUnits[$targetIndex].SF == 0>> <br> - <<link "Attach Special Force advisors">> + <<link "Attach Special Force advisors" "seeUnit">> <<set $militiaUnits[$targetIndex].SF = 1>> <<set $cash -= ($equipUpgradeCost * $militiaUnits[$targetIndex].maxTroops) + 5000>> - <<goto "seeUnit">> <</link>> - Attach $securityForceName advisors to the unit. + Attach $SF.Lower advisors to the unit. <br>//Costs <<print cashFormat(($equipUpgradeCost * $militiaUnits[$targetIndex].maxTroops) + 5000)>> and will slightly increase the base stats of the unit.// <<else>> - <br>The unit has attached advisors from $securityForceName that will help the squad remain tactically aware and active. + <br>The unit has attached advisors from $SF.Lower that will help the squad remain tactically aware and active. <</if>> <</if>> @@ -227,7 +215,7 @@ Rename unit <<textbox "$slaveUnits[$targetIndex].platoonName" $slaveUnits[$targetIndex].platoonName "seeUnit">> <<if $slaveUnits[$targetIndex].maxTroops > $slaveUnits[$targetIndex].troops && $helots > 0>> <br> - <<link "Replenish unit">> + <<link "Replenish unit" "seeUnit">> <<if $helots >= $slaveUnits[$targetIndex].maxTroops - $slaveUnits[$targetIndex].troops>> <<set $helots -= $slaveUnits[$targetIndex].maxTroops - $slaveUnits[$targetIndex].troops>> <<set $slavesEmployedManpower += $slaveUnits[$targetIndex].maxTroops - $slaveUnits[$targetIndex].troops>> @@ -241,19 +229,17 @@ <<set $slaveUnits[$targetIndex].troops += $helots>> <<set $helots = 0>> <</if>> - <<goto "seeUnit">> <</link>> <</if>> <br> <<if $slaveUnits[$targetIndex].maxTroops < 50>> <br> - <<link "Intensive officers training">> + <<link "Intensive officers training" "seeUnit">> <<set $slaveUnits[$targetIndex].maxTroops += 10>> <<set $cash -= 5000 + 10 * $equipUpgradeCost * ($slaveUnits[$targetIndex].equip + $slaveUnits[$targetIndex].commissars + $slaveUnits[$targetIndex].cyber + $slaveUnits[$targetIndex].SF)>> - <<goto "seeUnit">> <</link>> Invest in the training of your officers to increase the maximum number of soldiers in the unit. - <br>//Costs <<print 5000 + 10 * $equipUpgradeCost * ($slaveUnits[$targetIndex].equip + $slaveUnits[$targetIndex].commissars + $slaveUnits[$targetIndex].cyber + $slaveUnits[$targetIndex].SF)>> and will increase the max by 10// + <br>//Costs <<print cashFormat(5000 + 10 * $equipUpgradeCost * ($slaveUnits[$targetIndex].equip + $slaveUnits[$targetIndex].commissars + $slaveUnits[$targetIndex].cyber + $slaveUnits[$targetIndex].SF))>> and will increase the max by 10// <<else>> <br>Your officers reached their peak. Further training will have little impact on the number of troops they can effectively lead. <</if>> @@ -271,19 +257,17 @@ <</if>> <<if $slaveUnits[$targetIndex].commissars == 0>> <br> - <<link "Attach commissars to the unit">> + <<link "Attach commissars to the unit" "seeUnit">> <<set $slaveUnits[$targetIndex].commissars = 1>> <<set $cash -= $equipUpgradeCost * $slaveUnits[$targetIndex].maxTroops + 1000>> - <<goto "seeUnit">> <</link>> Attach a small squad of commissars to the unit. <br>//Costs <<print cashFormat(($equipUpgradeCost * $slaveUnits[$targetIndex].maxTroops) + 1000)>> and will slowly increase the loyalty of the unit.// <<elseif $slaveUnits[$targetIndex].commissars < 2>> <br> - <<link "Intensive loyalty training">> + <<link "Intensive loyalty training" "seeUnit">> <<set $slaveUnits[$targetIndex].commissars += 1>> <<set $cash -= $equipUpgradeCost * $slaveUnits[$targetIndex].maxTroops + 1000>> - <<goto "seeUnit">> <</link>> Provide special training for the officers and the commissars of the unit. <br>//Costs <<print cashFormat(($equipUpgradeCost * $slaveUnits[$targetIndex].maxTroops) + 1000)>> and will increase the loyalty of the unit faster.// @@ -295,10 +279,9 @@ <<if $prostheticsUpgrade >= 2 || $researchLab.advCombatPLimb == 1>> <<if $slaveUnits[$targetIndex].cyber == 0>> <br> - <<link "Provide enhanced cybernetic enhancements">> + <<link "Provide enhanced cybernetic enhancements" "seeUnit">> <<set $slaveUnits[$targetIndex].cyber += 1>> <<set $cash -= $equipUpgradeCost * $slaveUnits[$targetIndex].maxTroops + 2000>> - <<goto "seeUnit">> <</link>> Will augment all soldiers of the unit with high tech cyber enhancements. <br>//Costs <<print cashFormat(($equipUpgradeCost * $slaveUnits[$targetIndex].maxTroops) + 2000)>> and will increase attack, defense and base hp values of the unit.// @@ -308,28 +291,26 @@ <</if>> <<if $slaveUnits[$targetIndex].medics == 0>> <br> - <<link "Attach trained medics to the unit">> + <<link "Attach trained medics to the unit" "seeUnit">> <<set $slaveUnits[$targetIndex].medics = 1>> <<set $cash -= $equipUpgradeCost * $slaveUnits[$targetIndex].maxTroops + 1000>> - <<goto "seeUnit">> <</link>> Attach a small squad of trained medics to the unit. <br>//Costs <<print cashFormat(($equipUpgradeCost * $slaveUnits[$targetIndex].maxTroops) + 1000)>> and will decrease the number of casualties suffered during battle.// <<else>> <br>The unit has a medic detachment following it into battle, decreasing the number of casualties the unit suffers. <</if>> - <<if $securityForceActive == 1>> + <<if $SF.Toggle && $SF.Active >= 1>> <<if $slaveUnits[$targetIndex].SF == 0>> <br> - <<link "Attach Special Force advisors">> + <<link "Attach Special Force advisors" "seeUnit">> <<set $slaveUnits[$targetIndex].SF = 1>> <<set $cash -= ($equipUpgradeCost * $slaveUnits[$targetIndex].maxTroops) + 5000>> - <<goto "seeUnit">> <</link>> - Attach $securityForceName advisors to the unit. + Attach $SF.Lower advisors to the unit. <br>//Costs <<print cashFormat(($equipUpgradeCost * $slaveUnits[$targetIndex].maxTroops) + 5000)>> and will slightly increase the base stats of the unit.// <<else>> - <br>The unit has attached advisors from $securityForceName that will help the squad remain tactically aware and active. + <br>The unit has attached advisors from $SF.Lower that will help the squad remain tactically aware and active. <</if>> <</if>> <<if $showBattleStatistics == 1>> @@ -384,7 +365,7 @@ Rename unit <<textbox "$mercUnits[$targetIndex].platoonName" $mercUnits[$targetIndex].platoonName "seeUnit">> <<if $mercUnits[$targetIndex].troops < $mercUnits[$targetIndex].maxTroops && $mercFreeManpower > 0>> <br> - <<link "Replenish unit">> + <<link "Replenish unit" "seeUnit">> <<if $mercFreeManpower >= $mercUnits[$targetIndex].maxTroops - $mercUnits[$targetIndex].troops>> <<set $mercFreeManpower -= $mercUnits[$targetIndex].maxTroops - $mercUnits[$targetIndex].troops>> <<set $mercEmployedManpower += $mercUnits[$targetIndex].maxTroops - $mercUnits[$targetIndex].troops>> @@ -398,16 +379,14 @@ <<set $mercUnits[$targetIndex].troops += $mercFreeManpower>> <<set $mercFreeManpower = 0>> <</if>> - <<goto "seeUnit">> <</link>> <</if>> <br> <<if $mercUnits[$targetIndex].maxTroops < 50>> <br> - <<link "Intensive officers training">> + <<link "Intensive officers training" "seeUnit">> <<set $mercUnits[$targetIndex].maxTroops += 10>> <<set $cash -= 5000 + 10 * $equipUpgradeCost * ($mercUnits[$targetIndex].equip + $mercUnits[$targetIndex].commissars + $mercUnits[$targetIndex].cyber + $mercUnits[$targetIndex].SF)>> - <<goto "seeUnit">> <</link>> Invest in the training of your officers to increase the maximum number of soldiers in the unit. <br>//Costs <<print cashFormat(5000 + 10 * $equipUpgradeCost * ($mercUnits[$targetIndex].equip + $mercUnits[$targetIndex].commissars + $mercUnits[$targetIndex].cyber + $mercUnits[$targetIndex].SF))>> and will increase the max by 10// @@ -416,10 +395,9 @@ <</if>> <<if $mercUnits[$targetIndex].equip < 3>> <br> - <<link "Improve weaponry and equipment">> + <<link "Improve weaponry and equipment" "seeUnit">> <<set $mercUnits[$targetIndex].equip += 1>> <<set $cash -= ($equipUpgradeCost * $mercUnits[$targetIndex].maxTroops) + 1000>> - <<goto "seeUnit">> <</link>> Invest in better equipment for your soldiers to increase their battle effectiveness. <br>//Costs <<print cashFormat(($equipUpgradeCost * $mercUnits[$targetIndex].maxTroops) + 1000)>> and will increase attack and defense value of the unit by 15% for every upgrade.// @@ -428,19 +406,17 @@ <</if>> <<if $mercUnits[$targetIndex].commissars == 0>> <br> - <<link "Attach commissars to the unit">> + <<link "Attach commissars to the unit" "seeUnit">> <<set $mercUnits[$targetIndex].commissars = 1>> <<set $cash -= $equipUpgradeCost * $mercUnits[$targetIndex].maxTroops + 1000>> - <<goto "seeUnit">> <</link>> Attach a small squad of commissars to the unit. <br>//Costs <<print cashFormat(($equipUpgradeCost * $mercUnits[$targetIndex].maxTroops) + 1000)>> and will slowly increase the loyalty of the unit.// <<elseif $mercUnits[$targetIndex].commissars < 2>> <br> - <<link "Intensive loyalty training">> + <<link "Intensive loyalty training" "seeUnit">> <<set $mercUnits[$targetIndex].commissars += 1>> <<set $cash -= $equipUpgradeCost * $mercUnits[$targetIndex].maxTroops + 1000>> - <<goto "seeUnit">> <</link>> Provide special training for the officers and the commissars of the unit. <br>//Costs <<print cashFormat(($equipUpgradeCost * $mercUnits[$targetIndex].maxTroops) + 1000)>> and will increase the loyalty of the unit faster.// @@ -452,10 +428,9 @@ <<if $prostheticsUpgrade >= 2 || $researchLab.advCombatPLimb == 1>> <<if $mercUnits[$targetIndex].cyber == 0>> <br> - <<link "Provide enhanced cybernetic enhancements">> + <<link "Provide enhanced cybernetic enhancements" "seeUnit">> <<set $mercUnits[$targetIndex].cyber += 1>> <<set $cash -= $equipUpgradeCost * $mercUnits[$targetIndex].maxTroops + 2000>> - <<goto "seeUnit">> <</link>>Will augment all soldiers of the unit with high tech cyber enhancements. <br>//Costs <<print cashFormat(($equipUpgradeCost * $mercUnits[$targetIndex].maxTroops) + 2000)>> and will increase attack, defense and base hp values of the unit.// <<else>> @@ -464,28 +439,26 @@ <</if>> <<if $mercUnits[$targetIndex].medics == 0>> <br> - <<link "Attach trained medics to the unit">> + <<link "Attach trained medics to the unit" "seeUnit">> <<set $mercUnits[$targetIndex].medics = 1>> <<set $cash -= ($equipUpgradeCost * $mercUnits[$targetIndex].maxTroops) + 5000>> - <<goto "seeUnit">> <</link>> Attach a small squad of trained medics to the unit. <br>//Costs <<print cashFormat(($equipUpgradeCost * $mercUnits[$targetIndex].maxTroops) + 5000)>> and will decrease the number of casualties suffered during battle.// <<else>> <br>The unit has a medic detachment following it into battle, decreasing the number of casualties the unit suffers. <</if>> - <<if $securityForceActive == 1>> + <<if $SF.Toggle && $SF.Active >= 1>> <<if $mercUnits[$targetIndex].SF == 0>> <br> - <<link "Attach Special Force advisors">> + <<link "Attach Special Force advisors" "seeUnit">> <<set $mercUnits[$targetIndex].SF = 1>> <<set $cash -= ($equipUpgradeCost * $mercUnits[$targetIndex].maxTroops) + 5000>> - <<goto "seeUnit">> <</link>> - Attach $securityForceName advisors to the unit. + Attach $SF.Lower advisors to the unit. <br>//Costs <<print cashFormat(($equipUpgradeCost * $mercUnits[$targetIndex].maxTroops) + 5000)>> and will slightly increase the base stats of the unit.// <<else>> - <br>The unit has attached advisors from $securityForceName that will help the squad remain tactically aware and active. + <br>The unit has attached advisors from $SF.Lower that will help the squad remain tactically aware and active. <</if>> <</if>> <<if $showBattleStatistics == 1>> diff --git a/src/SecExp/tradeReport.tw b/src/SecExp/tradeReport.tw index ccd0c030a586cc98d469fe723de464630ee51881..266b6fe5d297380ea3c865c25f8347290f5bb95f 100644 --- a/src/SecExp/tradeReport.tw +++ b/src/SecExp/tradeReport.tw @@ -44,7 +44,7 @@ <<elseif $rep > 12000>> Your high reputation attracts trade from all over the world. <</if>> - + <<if $assistantPower == 1>> Thanks to the computing power available to her, $assistantName is able to guide the commercial development of the arcology to greater levels. <<set _tradeChange++>> <<elseif $assistantPower == 2>> @@ -98,7 +98,12 @@ <</if>> <</if>> <</if>> - + +<<if $SF.Toggle && $SF.Active >= 1 && $SF.Units > 10>> + Having a powerful special force, increases trade security. + <<set _tradeChange += $SF.Units/10>> +<</if>> + <<if _tradeChange > 0>> This week @@.green;trade improved.@@ <<elseif _tradeChange == 0>> diff --git a/src/SecExp/unitsBattleReport.tw b/src/SecExp/unitsBattleReport.tw index b702f98375e4eda6d3a5c8a81a4d61d71ea12f56..c30475e2cf0eb5bcc1f6c0869ce12686fb435561 100644 --- a/src/SecExp/unitsBattleReport.tw +++ b/src/SecExp/unitsBattleReport.tw @@ -5,9 +5,9 @@ <br> Security Drones: no casualties. <</if>> - <<if $SFIntervention == 1>> + <<if $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> <br> - <<print $securityForcePersonnel>> soldiers from $securityForceName joined the battle: no casualties suffered. + <<print commaNum($SFUnit.Troops)>> soldiers from $SF.Lower joined the battle: no casualties suffered. <</if>> <<if $deployingMilitia == 1>> <<for _j = 0; _j < $militiaUnits.length; _j++>> @@ -56,7 +56,7 @@ /* if the losses are more than zero */ /* generates a list of randomized losses, from which each unit picks one at random */ <<set _losses = $losses>> - <<if $SFIntervention == 1>> + <<if $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> <<set $deployedUnits++>> <</if>> <<set _averageLosses = Math.trunc(_losses / $deployedUnits)>> @@ -77,7 +77,7 @@ <<set _lossesList[random(_lossesList.length - 1)] += _losses>> <</if>> <<set _lossesList.shuffle()>> - + /* sanity check for losses */ <<set _count = 0>> <<for _i = 0; _i < _lossesList.length; _i++>> @@ -94,7 +94,7 @@ <<set _rand = random(_lossesList.length - 1)>> <<set _lossesList[_rand] = Math.trunc(_lossesList[_rand]-_diff,0,100)>> <</if>> - + /* assigns the losses and notify the player */ <<if $deployingBots == 1>> <br> @@ -116,17 +116,17 @@ suffered. <<if $secBots.troops <= 5>> <<set $secBots.active = 0>> - Unfortunately the losses they took were simply too great, their effective combatants are in so small number you can no longer call them a deployable unit. It will take quite the investment to rebuild them. + Unfortunately the losses they took were simply too great, their effective combatants are in so small number you can no longer call them a deployable unit. It will take quite the investment to rebuild them. <<elseif $secBots.troops <= 10>> The unit has very few operatives left, it risks complete annihilation if deployed again. <</if>> <br> <</if>> - <<if $SFIntervention == 1>> + <<if $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> <br> <<set _loss = _lossesList.pluck()>> - <<set _loss = Math.clamp(_loss,0,$securityForcePersonnel)>> - <<print $securityForcePersonnel>> soldiers from the $securityForceName joined the battle: + <<set _loss = Math.clamp(_loss,0,$SFUnit.Troops)>> + <<print commaNum($SFUnit.Troops)>> soldiers from $SF.Lower joined the battle: <<if _loss <= 0>> no casualties <<elseif _loss <= 10>> @@ -139,7 +139,7 @@ catastrophic casualties <</if>> suffered. - <<set $securityForcePersonnel -= _loss>> + <<set $SFUnit.Troops -= _loss>> <br> <</if>> <<if $deployingMilitia == 1>> @@ -178,7 +178,7 @@ <</if>> <<if $militiaUnits[_j].troops <= 5>> <<set $militiaUnits[_j].active = 0>> - <br>Unfortunately the losses they took were simply too great, their effective combatants are in so small number you can no longer call them a deployable unit. The remnants will be sent home honored as veterans or reorganized in a new unit. + <br>Unfortunately the losses they took were simply too great, their effective combatants are in so small number you can no longer call them a deployable unit. The remnants will be sent home honored as veterans or reorganized in a new unit. <<elseif $militiaUnits[_j].troops <= 10>> <br>The unit has very few operatives left, it risks complete annihilation if deployed again. <</if>> @@ -221,7 +221,7 @@ <</if>> <<if $slaveUnits[_j].troops <= 5>> <<set $slaveUnits[_j].active = 0>> - <br>Unfortunately the losses they took were simply too great, their effective combatants are in so small number you can no longer call them a deployable unit. The survivors will be sent home honored as veterans or reorganized in a new unit. + <br>Unfortunately the losses they took were simply too great, their effective combatants are in so small number you can no longer call them a deployable unit. The survivors will be sent home honored as veterans or reorganized in a new unit. <<elseif $slaveUnits[_j].troops <= 10>> <br>The unit has very few operatives left, it risks complete annihilation if deployed again. <</if>> @@ -261,10 +261,10 @@ Experience has increased. <<set $mercUnits[_j].training += random(5,15) + $majorBattle * random(5,15)>> <</if>> - <</if>> + <</if>> <<if $mercUnits[_j].troops <= 5>> <<set $mercUnits[_j].active = 0>> - <br>Unfortunately the losses they took were simply too great, their effective combatants are in so small number you can no longer call them a deployable unit. The remnants will be sent home honored as veterans or reorganized in a new unit. + <br>Unfortunately the losses they took were simply too great, their effective combatants are in so small number you can no longer call them a deployable unit. The remnants will be sent home honored as veterans or reorganized in a new unit. <<elseif $mercUnits[_j].troops <= 10>> <br>The unit has very few operatives left, it risks complete annihilation if deployed again. <</if>> diff --git a/src/SecExp/unitsRebellionReport.tw b/src/SecExp/unitsRebellionReport.tw index b07d60ec4d8bce574ef184674790e2a999ac205c..05b27294b6997bc1234b6e963e8e470e49b77ac6 100644 --- a/src/SecExp/unitsRebellionReport.tw +++ b/src/SecExp/unitsRebellionReport.tw @@ -8,9 +8,8 @@ <br> Security drones: no casualties suffered. <</if>> - <<if $securityForceCreate == 1>> - <br> - $securityForceName, <<print commaNum($securityForcePersonnel)>> strong, was called to join the battle: no casualties suffered. + <<if $SF.Toggle && $SF.Active >= 1>> + <br>$SF.Lower, <<print commaNum($SFUnit.Troops)>> strong, was called to join the battle: no casualties suffered. <</if>> <<set _count = 0>> <<if $loyalID.length > 0>> @@ -18,7 +17,7 @@ <<for _i = 0; _i < $militiaUnits.length; _i++>> <<if $militiaUnits[_i].active == 1 && ($loyalID.includes($militiaUnits[_i].ID))>> <<set _count++>> - <<if _count < $loyalID.length>> + <<if _count < $loyalID.length>> $militiaUnits[_i].platoonName, <<else>> $militiaUnits[_i].platoonName @@ -28,7 +27,7 @@ <<for _i = 0; _i < $slaveUnits.length; _i++>> <<if $slaveUnits[_i].active == 1 && ($loyalID.includes($slaveUnits[_i].ID))>> <<set _count++>> - <<if _count < $loyalID.length>> + <<if _count < $loyalID.length>> $slaveUnits[_i].platoonName, <<else>> $slaveUnits[_i].platoonName @@ -38,7 +37,7 @@ <<for _i = 0; _i < $mercUnits.length; _i++>> <<if $mercUnits[_i].active == 1 && ($loyalID.includes($mercUnits[_i].ID))>> <<set _count++>> - <<if _count < $loyalID.length>> + <<if _count < $loyalID.length>> $mercUnits[_i].platoonName, <<else>> $mercUnits[_i].platoonName @@ -101,7 +100,7 @@ <br>//Will positively influence the loyalty of the other units, but no manpower will be refunded.// </span> <</if>> - + /* slaves */ <<set _slaveRebelledID = []>> <<set _slaveManpower = 0>> @@ -155,7 +154,7 @@ <br>//Will positively influence the loyalty of the other units, but no manpower will be refunded.// </span> <</if>> - + /* mercs */ <<set _mercRebelledID = []>> <<set _mercManpower = 0>> @@ -214,7 +213,7 @@ <<for _j = 0; _j < $militiaUnits.length; _j++>> <<if $militiaUnits[_j].active == 1 && $rebellingID.includes($militiaUnits[_j].ID)>> <<set _militiaRebelledID.push($militiaUnits[_j].ID)>> - $militiaUnits[_j].platoonName, + $militiaUnits[_j].platoonName, <</if>> <</for>> <<if _militiaRebelledID.length > 0>> @@ -256,12 +255,12 @@ <<elseif $losses > 0>> /* if the losses are more than zero */ /* generates a list of randomized losses, from which each unit picks one at random */ - <<if $securityForceCreate == 1>> + <<if $SF.Toggle && $SF.Active >= 1>> <<set $deployedUnits++>> <</if>> <<if $irregulars > 0>> <<set $deployedUnits++>> - <</if>> + <</if>> <<set _averageLosses = Math.trunc($losses / $deployedUnits)>> <<set _lossesList = []>> <<for _i = 0; _i < $deployedUnits; _i++>> @@ -278,7 +277,7 @@ <<set _lossesList[random(_lossesList.length - 1)] += $losses>> <</if>> <<set _lossesList.shuffle()>> - + /* sanity check for losses */ <<set _count = 0>> <<for _i = 0; _i < _lossesList.length; _i++>> @@ -295,7 +294,7 @@ <<set _rand = random(_lossesList.length - 1)>> <<set _lossesList[_rand] = Math.trunc(_lossesList[_rand]-_diff,0,100)>> <</if>> - + /* assigns the losses and notify the player */ <<if $irregulars > 0>> <br> @@ -341,18 +340,18 @@ suffered. <<if $secBots.troops <= 0>> <<set $secBots.active = 0>> - Unfortunately the losses they took were simply too great, their effective combatants are in so small number you can no longer call them a deployable unit. It will take quite the investment to rebuild them. + Unfortunately the losses they took were simply too great, their effective combatants are in so small number you can no longer call them a deployable unit. It will take quite the investment to rebuild them. <<elseif $secBots.troops <= 10>> The unit has very few operatives left, it risks complete annihilation if deployed again. <</if>> <</if>> - <<if $securityForceCreate == 1>> + <<if $SF.Toggle && $SF.Active >= 1>> <br> <br> <<set _loss = _lossesList.pluck()>> - <<set _loss = Math.clamp(_loss,0,$securityForcePersonnel)>> - $securityForceName, $securityForcePersonnel strong, is called to join the battle: - <<set $securityForcePersonnel -= _loss>> + <<set _loss = Math.clamp(_loss,0,$SFUnit.Troops)>> + $SF.Lower, $SFUnit.Troops strong, is called to join the battle: + <<set $SFUnit.Troops -= _loss>> <<if _loss <= 0>> no casualties <<elseif _loss <= 10>> @@ -403,7 +402,7 @@ <</if>> <<if $militiaUnits[_j].troops <= 0>> <<set $militiaUnits[_j].active = 0>> - <br>Unfortunately the losses they took were simply too great, their effective combatants are in so small number you can no longer call them a deployable unit. The remnants will be sent home honored as veterans or reorganized in a new unit. + <br>Unfortunately the losses they took were simply too great, their effective combatants are in so small number you can no longer call them a deployable unit. The remnants will be sent home honored as veterans or reorganized in a new unit. <<elseif $militiaUnits[_j].troops <= 10>> <br>The unit has very few operatives left, it risks complete annihilation if deployed again. <</if>> @@ -452,7 +451,7 @@ <</if>> <<if $slaveUnits[_j].troops <= 0>> <<set $slaveUnits[_j].active = 0>> - <br>Unfortunately the losses they took were simply too great, their effective combatants are in so small number you can no longer call them a deployable unit. The survivors will be sent home honored as veterans or reorganized in a new unit. + <br>Unfortunately the losses they took were simply too great, their effective combatants are in so small number you can no longer call them a deployable unit. The survivors will be sent home honored as veterans or reorganized in a new unit. <<elseif $slaveUnits[_j].troops <= 10>> <br>The unit has very few operatives left, it risks complete annihilation if deployed again. <</if>> @@ -493,15 +492,15 @@ Experience gained. <<set $mercUnits[_j].training += random(5,15) + $majorBattle * random(5,15)>> <</if>> - <</if>> + <</if>> <<if $mercUnits[_j].troops <= 0>> <<set $mercUnits[_j].active = 0>> - <br>Unfortunately the losses they took were simply too great, their effective combatants are in so small number you can no longer call them a deployable unit. The remnants will be sent home honored as veterans or reorganized in a new unit. + <br>Unfortunately the losses they took were simply too great, their effective combatants are in so small number you can no longer call them a deployable unit. The remnants will be sent home honored as veterans or reorganized in a new unit. <<elseif $mercUnits[_j].troops <= 10>> <br>The unit has very few operatives left, it risks complete annihilation if deployed again. <</if>> <</if>> - <</for>> + <</for>> <</if>> <br> <br> @@ -558,7 +557,7 @@ <br>//Will positively influence the loyalty of the other units, but no manpower will be refunded.// </span> <</if>> - + /* slaves */ <<set _slaveRebelledID = []>> <<set _slaveManpower = 0>> @@ -611,7 +610,7 @@ <br>//Will positively influence the loyalty of the other units, but no manpower will be refunded.// </span> <</if>> - + /* mercs */ <<set _mercRebelledID = []>> <<set _mercManpower = 0>> @@ -664,14 +663,14 @@ <br>//Will positively influence the loyalty of the other units, but no manpower will be refunded.// </span> <</if>> - + /* loss */ <<elseif $rebellingID.length > 0>> <<set _militiaRebelledID = []>> <<for _j = 0; _j < $militiaUnits.length; _j++>> <<if $militiaUnits[_j].active == 1 && $rebellingID.includes($militiaUnits[_j].ID)>> <<set _militiaRebelledID.push($militiaUnits[_j].ID)>> - $militiaUnits[_j].platoonName, + $militiaUnits[_j].platoonName, <</if>> <</for>> <<if _militiaRebelledID.length > 0>> diff --git a/src/SecExp/weaponsManufacturing.tw b/src/SecExp/weaponsManufacturing.tw index 3a47340037fbb81d353af57d5ee61956d30e7504..862845fc31ba6e6d73417e1de691a0294bb8b858 100644 --- a/src/SecExp/weaponsManufacturing.tw +++ b/src/SecExp/weaponsManufacturing.tw @@ -232,7 +232,7 @@ __Upgrades__: <<elseif $secBotsBaseDefense <= 3 || $droneUpgrades >= 3>> Upgrade the research facility further to unlock more upgrades for the security drones. <<else>> - You fully upgraded the security drones. + You have fully upgraded the security drones. <</if>> <br><br> /* human troops upgrades */ @@ -322,10 +322,10 @@ __Upgrades__: <br>//Will take _time weeks, cost <<print cashFormat(120000*$HackingSkillMultiplier)>> and will increase the base hp and morale values of human troops.// <</if>> <br> - <<if $securityForceCreate == 1>> - <<if !$completedUpgrades.includes(6) && $weapLab >= 2 && $SFSupportLevel >= 2 && $securityForceArcologyUpgrades >= 7>> + <<if $SF.Toggle && $SF.Active >= 1>> + <<if !$completedUpgrades.includes(6) && $weapLab >= 2 && $SFSupportLevel >= 2 && $SFUnit.Firebase >= 7>> <br> - <<link "Develop combined training regimens with $securityForceName">> + <<link "Develop combined training regimens with $SF.Lower">> <<set $currentUpgrade = { ID: 6, name: "combined training regimens with the special force", @@ -336,9 +336,9 @@ __Upgrades__: <</link>> <br>//Will take _time weeks, and will increase the base attack and defense values of human troops.// <</if>> - <<if !$completedUpgrades.includes(7) && $weapLab >= 2 && $SFSupportLevel >= 4 && $securityForceStimulantPower >= 8>> + <<if !$completedUpgrades.includes(7) && $weapLab >= 2 && $SFSupportLevel >= 4 && $SFUnit.Drugs >= 8>> <br> - <<link "Develop a variant of the stimulant cocktail that $securityForceName created">> + <<link "Develop a variant of the stimulant cocktail that $SF.Lower created">> <<set $currentUpgrade = { ID: 7, name: "a variant of the stimulant cocktail that the special force created", @@ -352,7 +352,7 @@ __Upgrades__: <</if>> <<if !$completedUpgrades.includes(8) && $weapLab >= 3 && $SFSupportLevel >= 5>> <br> - <<link "Create a mesh network based off the custom network of $securityForceName">> + <<link "Create a mesh network based off the custom network of $SF.Lower">> <<set $currentUpgrade = { ID: 8, name: "a mesh network based off the custom network of the special force", @@ -365,12 +365,12 @@ __Upgrades__: <br>//Will take _time weeks, cost <<print cashFormat(1000000*$HackingSkillMultiplier)>> and will increase all base stats of human troops.// <</if>> <</if>> - <<if $securityForceCreate == 1 && ($humanUpgrade.attack >= 4 || $humanUpgrade.hp >= 4 || $humanUpgrade.morale >= 40 || $humanUpgrade.defense >= 4)>> - You fully upgraded your human troops. + <<if $SF.Toggle && $SF.Active >= 1 && ($humanUpgrade.attack >= 4 || $humanUpgrade.hp >= 4 || $humanUpgrade.morale >= 40 || $humanUpgrade.defense >= 4)>> + You have fully upgraded your human troops. <<elseif $humanUpgrade.attack >= 2 || $humanUpgrade.hp >= 2 || $humanUpgrade.morale >= 20 || $humanUpgrade.defense >= 2>> - You fully upgraded your human troops. - <<if $securityForceCreate == 1 && ($humanUpgrade.attack < 4 || $humanUpgrade.hp < 4 || $humanUpgrade.morale < 40 || $humanUpgrade.defense < 4) && (($SFSupportLevel >= 2 && $securityForceArcologyUpgrades >= 7) || ($SFSupportLevel >= 4 && $securityForceStimulantPower >= 8) || ($SFSupportLevel >= 5))>> - With support from $securityForceName, however, we may be able to further upgrade our troops. + You have fully upgraded your human troops. + <<if $SF.Toggle && $SF.Active >= 1 && ($humanUpgrade.attack < 4 || $humanUpgrade.hp < 4 || $humanUpgrade.morale < 40 || $humanUpgrade.defense < 4) && (($SFSupportLevel >= 2 && $SFUnit.Firebase >= 7) || ($SFSupportLevel >= 4 && $SFUnit.Drugs >= 8) || ($SFSupportLevel >= 5))>> + With support from $SF.Lower, however, we may be able to further upgrade our troops. <</if>> <<elseif $weapLab < 3>> Upgrade the research facility further to unlock more upgrades for human troops. diff --git a/src/SecExp/widgets/battleWidgets.tw b/src/SecExp/widgets/battleWidgets.tw index f64c899ef27e8cfb03597e44750d2a2fe6468abe..af41b8843d7e8cd8cd849e62446089e47bd1013d 100644 --- a/src/SecExp/widgets/battleWidgets.tw +++ b/src/SecExp/widgets/battleWidgets.tw @@ -3,7 +3,7 @@ <<widget "calcSFStatistics">> <<if $slaveRebellion != 1 || $citizenRebellion != 1>> /* atk, def */ - <<set _upgradesSum = $securityForceInfantryPower + $securityForceStimulantPower + $securityForceAircraftPower + $securityForceAircraftPower>> + <<set _upgradesSum = $SFUnit.Armoury + $SFUnit.Drugs + ($SFUnit.AA+$SFUnit.TA < 1) + ($SFUnit.AV+$SFUnit.TV)>> <<if !isInt(_upgradesSum)>> <<set _upgradesSum = random(10,15)>> <</if>> @@ -12,24 +12,24 @@ /* hp */ <<set $carriableSoldiers = 125 * ($securityForceAC130 + $securityForceVehiclePower)>> <<if !isInt($carriableSoldiers)>> - <<set $carriableSoldiers = $securityForcePersonnel / 10>> + <<set $carriableSoldiers = $SFUnit.Troops / 10>> <</if>> - <<if $securityForcePersonnel > $carriableSoldiers>> + <<if $SFUnit.Troops > $carriableSoldiers>> <<set $SFhp = $carriableSoldiers * $SFBaseHp>> <<else>> - <<set $carriableSoldiers = $securityForcePersonnel>> + <<set $carriableSoldiers = $SFUnit.Troops>> <<set $SFhp = $carriableSoldiers * $SFBaseHp>> <</if>> <<else>> /* atk, def */ - <<set _upgradesSum = $securityForceInfantryPower + $securityForceStimulantPower + $securityForceAircraftPower + $securityForceAircraftPower>> + <<set _upgradesSum = $SFUnit.Armoury + $SFUnit.Drugs + ($SFUnit.AA+$SFUnit.TA < 1) + ($SFUnit.AV+$SFUnit.TV)>> <<if !isInt(_upgradesSum)>> <<set _upgradesSum = random(10,15)>> <</if>> <<set $SFatk = Math.trunc(0.75 * _upgradesSum)>> <<set $SFdef = Math.trunc(0.50 * _upgradesSum)>> /* hp */ - <<set $SFhp = $securityForcePersonnel * $SFBaseHp>> + <<set $SFhp = $SFUnit.Troops * $SFBaseHp>> <</if>> <</widget>> @@ -59,7 +59,7 @@ <<set _newMerc.push($mercUnits[_i])>> <</if>> <</for>> - <<set $mercUnits = _newMerc>> + <<set $mercUnits = _newMerc>> <</widget>> <<widget "calcTroopCount">> @@ -83,7 +83,7 @@ <<set _troops += $mercUnits[_i].troops>> <</if>> <</for>> - <<if $SFIntervention == 1>> + <<if $SF.Toggle && $SF.Active >= 1 && $SFIntervention>> <<set _troops += $carriableSoldiers>> <</if>> <<set $troopCount = _troops>> @@ -117,7 +117,7 @@ <<set $troopCount = _troops>> <<else>> - <br>@@.red;Error: widget called outside battle@@ + <br>@@.red;Error: widget called outside battle@@ <</if>> <</widget>> diff --git a/src/SecExp/widgets/unitsWidgets.tw b/src/SecExp/widgets/unitsWidgets.tw index d6113ae8e2f1a8b7a069c627411f212406e37328..82de323530900a1a432dd7cb745b117784a97ce1 100644 --- a/src/SecExp/widgets/unitsWidgets.tw +++ b/src/SecExp/widgets/unitsWidgets.tw @@ -26,7 +26,7 @@ <<elseif $args[0].loyalty < 33>> Their loyalty is low. Careful monitoring of their activities and relationships is advised. <<elseif $args[0].loyalty < 66>> - Their loyalty is not as high as it can be, but they are not actively working against their arcology owner. + Their loyalty is not as high as it can be, but they are not actively working against their arcology owner. <<elseif $args[0].loyalty < 90>> Their loyalty is high and strong. The likelihood of this unit betraying the arcology is low to non-existent. <<else>> @@ -38,8 +38,8 @@ <<if $args[0].medics == 1>> The unit has a dedicated squad of medics that will follow them in battle. <</if>> - <<if $args[0].SF == 1>> - The unit has attached advisors from $securityForceName that will help the squad remain tactically aware and active. + <<if $SF.Toggle && $SF.Active >= 1 && $args[0].SF>> + The unit has attached advisors from $SF.Lower that will help the squad remain tactically aware and active. <</if>> <<else>> $args[0].platoonName lost too many operatives in the $args[0].battlesFought it fought and can no longer be considered a unit at all. @@ -72,7 +72,7 @@ <<elseif $args[0].loyalty < 33>> Their loyalty is low. Careful monitoring of their activities and relationships is advised. <<elseif $args[0].loyalty < 66>> - Their loyalty is not as high as it can be, but they are not actively working against their arcology owner. + Their loyalty is not as high as it can be, but they are not actively working against their arcology owner. <<elseif $args[0].loyalty < 90>> Their loyalty is high and strong. The likelihood of this unit betraying the arcology is low to non-existent. <<else>> @@ -84,8 +84,8 @@ <<if $args[0].medics == 1>> The unit has a dedicated squad of medics that will follow them in battle. <</if>> - <<if $args[0].SF == 1>> - The unit has attached advisors from $securityForceName that will help the squad remain tactically aware and active. + <<if $SF.Toggle && $SF.Active >= 1 && $args[0].SF>> + The unit has attached advisors from $SF.Lower that will help the squad remain tactically aware and active. <</if>> <<else>> $args[0].platoonName lost too many operatives in the $args[0].battlesFought it fought and can no longer be considered a unit at all. @@ -118,7 +118,7 @@ <<elseif $args[0].loyalty < 33>> Their loyalty is low. Careful monitoring of their activities and relationships is advised. <<elseif $args[0].loyalty < 66>> - Their loyalty is not as high as it can be, but they are not actively working against their arcology owner. + Their loyalty is not as high as it can be, but they are not actively working against their arcology owner. <<elseif $args[0].loyalty < 90>> Their loyalty is high and strong. The likelihood of this unit betraying the arcology is low to non-existent. <<else>> @@ -130,14 +130,14 @@ <<if $args[0].medics == 1>> The unit has a dedicated squad of medics that will follow them in battle. <</if>> - <<if $args[0].SF == 1>> - The unit has attached advisors from $securityForceName that will help the squad remain tactically aware and active. + <<if $SF.Toggle && $SF.Active >= 1 && $args[0].SF>> + The unit has attached advisors from $SF.Lower that will help the squad remain tactically aware and active. <</if>> <<else>> $args[0].platoonName lost too many operatives in the $args[0].battlesFought it fought and can no longer be considered a unit at all. <</if>> <</widget>> - + <<widget "secBotsDescription">> <<if $secBots.active == 1>> <strong>The <<print $secBots.troops>> security drones</strong> are assembled in an ordered line in front of you, absolutely silent and ready to receive their orders. diff --git a/src/cheats/PCCheatMenuCheatDatatypeCleanup.tw b/src/cheats/PCCheatMenuCheatDatatypeCleanup.tw index 006df17db6a958b2373143cc019a2872f4bee62d..ce3f062ab0d6228451dd28dcb83428d97eec89d5 100644 --- a/src/cheats/PCCheatMenuCheatDatatypeCleanup.tw +++ b/src/cheats/PCCheatMenuCheatDatatypeCleanup.tw @@ -7,9 +7,13 @@ <<goto "Manage Personal Affairs">> <</if>> -<<set $customEvalCode = "(" + $customEvalCode + ")">> -<<if typeof eval($customEvalCode) === "function">> - <<run eval($customEvalCode)($tempSlave)>> +<<if $customEvalCode>> + <<if $customEvalCode.charAt(0) != "(" || $nextLink == ")">> /* second condition is only there for sanityCheck */ + <<set $customEvalCode = "(" + $customEvalCode + ")">> + <</if>> + <<if typeof eval($customEvalCode) === "function">> + <<run (eval($customEvalCode))($tempSlave)>> + <</if>> <</if>> <<unset $customEvalCode>> diff --git a/src/cheats/mod_EditArcologyCheatDatatypeCleanup.tw b/src/cheats/mod_EditArcologyCheatDatatypeCleanup.tw index 108553136987b2c29e178a9937a958a17e9d83fb..86030bf4e5a2820b5b834148a92c81ddc570e289 100644 --- a/src/cheats/mod_EditArcologyCheatDatatypeCleanup.tw +++ b/src/cheats/mod_EditArcologyCheatDatatypeCleanup.tw @@ -2,9 +2,13 @@ <<set $nextButton = "Continue", $nextLink = "Manage Arcology">> -<<set $customEvalCode = "(" + $customEvalCode + ")">> -<<if typeof eval($customEvalCode) === "function">> - <<run eval($customEvalCode)($arcologies[0])>> +<<if $customEvalCode>> + <<if $customEvalCode.charAt(0) != "(" || $nextLink == ")">> /* second condition is only there for sanityCheck */ + <<set $customEvalCode = "(" + $customEvalCode + ")">> + <</if>> + <<if typeof eval($customEvalCode) === "function">> + <<run (eval($customEvalCode))($arcologies[0])>> + <</if>> <</if>> <<unset $customEvalCode>> diff --git a/src/cheats/mod_EditSlaveCheatDatatypeCleanupNew.tw b/src/cheats/mod_EditSlaveCheatDatatypeCleanupNew.tw index 606ec83d74af1630fc4e316c40d2c4658101a03e..a31408fbd3b0ad0657834d8b60cf95285387eeb1 100644 --- a/src/cheats/mod_EditSlaveCheatDatatypeCleanupNew.tw +++ b/src/cheats/mod_EditSlaveCheatDatatypeCleanupNew.tw @@ -7,9 +7,13 @@ <<goto "Slave Interact">> <</if>> -<<set $customEvalCode = "(" + $customEvalCode + ")">> -<<if typeof eval($customEvalCode) === "function">> - <<run eval($customEvalCode)($tempSlave)>> +<<if $customEvalCode>> + <<if $customEvalCode.charAt(0) != "(" || $nextLink == ")">> /* second condition is only there for sanityCheck */ + <<set $customEvalCode = "(" + $customEvalCode + ")">> + <</if>> + <<if typeof eval($customEvalCode) === "function">> + <<run (eval($customEvalCode))($tempSlave)>> + <</if>> <</if>> <<unset $customEvalCode>> diff --git a/src/events/intro/introSummary.tw b/src/events/intro/introSummary.tw index e253596a0ae607af628ed5abce3b38e471808a7b..1cca4ea58a010384af3625748972c85652ff388b 100644 --- a/src/events/intro/introSummary.tw +++ b/src/events/intro/introSummary.tw @@ -496,9 +496,9 @@ __''Player Character''__ <br>You are a $PCCreationSex. <br>Change to <<if $PCCreationSex != "masculine ''Master''">> - [[masculine Master|Intro Summary][$PC.title = 1, $PCCreationSex = "masculine ''Master''"]] + [[masculine Master|Intro Summary][$PC.title = 1, $PC.pronoun = "he", $PC.possessive = "his", $PC.object = "him", $PCCreationSex = "masculine ''Master''"]] <<elseif $PCCreationSex != "feminine ''Mistress''">> - [[feminine Mistress|Intro Summary][$PC.title = 0, $PCCreationSex = "feminine ''Mistress''"]] + [[feminine Mistress|Intro Summary][$PC.title = 0, $PC.pronoun = "her", $PC.possessive = "her", $PC.object = "her", $PCCreationSex = "feminine ''Mistress''"]] <</if>> <br>Everyone calls you ''<<= PlayerName()>>.'' @@ -1007,17 +1007,13 @@ Currently <br><br> __''Mods''__ -<br> -<<if $SFMODToggle == 1>> - The Special Force Mod is ''enabled.'' -[[Disable|Intro Summary][$SFMODToggle = 0]] +<br>The Special Force Mod is +<<if $SF.Toggle === 1>> + ''enabled.'' [[Disable|Intro Summary][$SF.Toggle = 0]] <<else>> - The Special Force Mod is ''disabled.'' -[[Enable|Intro Summary][$SFMODToggle = 1]] + ''disabled.'' [[Enable|Intro Summary][$SF.Toggle = 1]] <</if>> -<br> -// This mod initially from anon1888 but expanded by SFanon offers a lategame special (initially, security but changed to Special in order to try and reduce confusion with crimeanon's separate Security Expansion mod) force, triggered around week 80. It is non-canon where it conflicts with canonical updates to the base game.// - +<br>// This mod is initially from anon1888 but expanded by SFanon offers a lategame special (started out as security but changed to special in order to try and reduce confusion with CrimeAnon's separate Security Expansion (SecExp) mod) force, that is triggered after week 80. It is non-canon where it conflicts with canonical updates to the base game.// <br><br> <<if $cyberMod == 1>> diff --git a/src/events/intro/pcBodyIntro.tw b/src/events/intro/pcBodyIntro.tw index dc9c9e00d1dffc565bc79b9033495f7a30377b01..7541ec53d2c38340bf863675cfcd1729392e2c79 100644 --- a/src/events/intro/pcBodyIntro.tw +++ b/src/events/intro/pcBodyIntro.tw @@ -7,10 +7,10 @@ Most slaveowners in the Free Cities are male. The preexisting power structures o <<if $PC.title > 0>> You have a masculine figure and will be referred to as ''Master.'' - [[Switch to a feminine appearance|PC Body Intro][$PC.title = 0]] + [[Switch to a feminine appearance|PC Body Intro][$PC.title = 0, $PC.pronoun = "her", $PC.possessive = "her", $PC.object = "her"]] <<else>> You have a feminine figure and will be referred to as ''Mistress.'' - [[Switch to a masculine appearance|PC Body Intro][$PC.title = 1]] + [[Switch to a masculine appearance|PC Body Intro][$PC.title = 1, $PC.pronoun = "he", $PC.possessive = "his", $PC.object = "him"]] <</if>> <br> //This option will affect scenes. Femininity may increase difficulty in the future, but for now only your chest and junk matter.// diff --git a/src/gui/Encyclopedia/encyclopedia.tw b/src/gui/Encyclopedia/encyclopedia.tw index 0ee4d6aa208fcf3d4704f75e4aaa90ca684be22f..33aefe2af7e76910dfde410a05c1a0a51827a837 100644 --- a/src/gui/Encyclopedia/encyclopedia.tw +++ b/src/gui/Encyclopedia/encyclopedia.tw @@ -3252,7 +3252,7 @@ Error: bad title. | [[Battles in Security Expansion|Encyclopedia][$encyclopedia = "Battles"]] <</if>> -<<if $securityForceActive>> +<<if $SF.Toggle && $SF.Active >= 1>> <<if $encyclopedia != "Special Force">> <br>[[Special Force Mod|Encyclopedia][$encyclopedia = "Special Force"]] <</if>> diff --git a/src/init/dummy.tw b/src/init/dummy.tw index 91814d6e28b681873ea331cffc03536afe767ef1..f0f35d1bd47922dbb7af9447a9aaec4100a123c7 100644 --- a/src/init/dummy.tw +++ b/src/init/dummy.tw @@ -20,8 +20,10 @@ $$i $activeSlave.bodySwap, $activeSlave.customImageFormat, $activeSlave.customHairVector, $activeSlave.shoeColor, $activeSlave.newGamePlus, $activeSlave.nipplesAccessory $drugs, $harshCollars, $shoes, $bellyAccessories, $vaginalAccessories, $dickAccessories, $buttplugs $PC.origRace, $PC.origSkin -$SFIDs, $SupportFacilityDecoration, $SupportFacilityEfficiency $isReady, $fatherID, $servantsQuartersSpots $sEnunciate, $SEnunciate, $ssEnunciate, $cEnunciate, $ccEnunciate, $zEnunciate, $shEnunciate, $ShEnunciate, $xEnunciate +$Girl,$pitAnimal +$securityForceRecruit, $securityForceTrade,$securityForceBooty, $securityForceIncome, $securityForceMissionEfficiency,$securityForceProfitable, $TierTwoUnlock +$SupportFacilityName,$SupportFacilityNameCount,$SupportFacilityDecoration,$SupportFacilityEfficiency,$FacilitySupportSpeedUpgrades,$FacilitySupportTrainingUpgrade,$SFIDs,$SupportFacilitySlaves */ diff --git a/src/init/storyInit.tw b/src/init/storyInit.tw index 60a6cf02f1bdb2d92517dc6613f268eed54db199..c6636eac28acdb4e6f8d63df7f560323e9dbbeee 100644 --- a/src/init/storyInit.tw +++ b/src/init/storyInit.tw @@ -15,8 +15,8 @@ You should have received a copy of the GNU General Public License along with thi <<set $returnTo = "init", $nextButton = "Continue", $nextLink = "Alpha disclaimer">> <<unset $releaseID>> -<<set $ver = "0.10.7", $releaseID = 1029>> -<<if ndef $releaseID>><<set $releaseID = 1029>><</if>> +<<set $ver = "0.10.7", $releaseID = 1030>> +<<if ndef $releaseID>><<set $releaseID = 1030>><</if>> /* This needs to be broken down into individual files that can be added to StoryInit instead. */ @@ -1328,70 +1328,7 @@ DairyRestraintsSetting($dairyRestraintsSetting) /* INCORPORATED MODS */ -/* Special Force Variables [SFVAR] */ - -/* Extra content enabling */ -<<set $SFMODToggle = 0>> /* Does the player want to see the SF module at all? */ - -/* Initial events and presentation logic */ -<<set $securityForceCreate = 0>> /* Has the player chosen to create the SF? Used for initial events */ -<<set $securityForceEventSeen = 0>> /* Has the player seen the SF event? Used to avoid re-event */ -<<set $securityForceName = "Special Force">> /* What is the SF called? */ -<<set $securityForceActive = 0>> /* SF is active - activates end of turn screen logic */ - -/* SF control panel and logic */ -<<set $securityForceSubsidyActive = 0>> /* Is the player having to subsidize the SF? */ -<<set $securityForceRecruit = 0>> /* How many recruits has the SF attracted this week? Used in recruitment calcs */ -<<set $securityForceTrade = 0>> /* How much trade has the SF encouraged this week? Used for rep calcs */ -<<set $securityForceBooty = 0>> /* How much money has the SF made this week? Used in money calcs */ -<<set $securityForceIncome = 0>> /* What was the final, adjusted take for the SF this week? Used for EOW text */ -<<set $securityForceProfitable = 0>> /* Is the SF profitable? Used for EOW text */ -<<set $securityForceFocus = "recruit">> /* What is the SF's assigned job? */ -<<set $securityForceRulesOfEngagement = "hold">> /* What are the SF's ROE outside the arcology? */ -<<set $securityForceAccountability = "strict">> /* Is the SF being held accountable for its actions outside the arcology? */ -<<set $securityForceDepravity = 0>> /* How depraved has the SF become? Used for flavor text injections. */ -<<set $securityForceUpgradeToken = 0>> /* Flag to keep track of single upgrade/week. */ -<<set $securityForceGiftToken = 0>> /* Flag to keep track of single gift/week. */ - -/* Personnel/Gear */ -<<set $securityForceArcologyUpgrades = 0>> /* How many militarized arcology upgrades has the player bought? */ -<<set $securityForcePersonnel = 40>> /* How big is the SF? Maxes out at battalion/regimental (~1500) strength */ -<<set $securityForceInfantryPower = 0>> /* How many infantry upgrades has the player bought? */ -<<set $securityForceStimulantPower = 0>> /* How many stimulant upgrades has the player bought? */ -<<set $securityForceVehiclePower = 0>> /* How many vehicle upgrades has the player bought? */ -<<set $securityForceHeavyBattleTank = 0>> /* Has the SF found a busted down heavy battle tank begging for work? */ -<<set $securityForceAircraftPower = 0>> /* How many aircraft upgrades has the player bought? */ -<<set $securityForceSpacePlanePower = 0>> /* Has the SF found a busted down spaceplane begging for work? */ -<<set $securityForceFortressZeppelin = 0>> /* Has the SF found a busted down fortress zeppelin begging for work? */ -<<set $securityForceAC130 = 0>> /* Has the SF found a busted down AC-130 begging for work? */ -<<set $securityForceHeavyTransport = 0>> /* Has the SF found a busted down heavy yransport begging for work? */ -<<set $securityForceDronePower = 0>> /* How many drone upgrades has the player bought? */ -<<set $securityForceSatellitePower = 0>> /* Has the SF commendeered a Satellite relay? */ -<<set $securityForceGiantRobot = 0>> /* Has the player assembled a makeshift giant robot */ -<<set $securityForceMissileSilo = 0>> /* Has the SF found a disused missile silo in need of reassignement?*/ -<<set $securityForceAircraftCarrier = 0>> /* Has the SF found a busted down aircraft carrier begging for work? */ -<<set $securityForceSubmarine = 0>> /* Has the SF found a busted down submarine begging for work? */ -<<set $securityForceHeavyAmphibiousTransport = 0>> /* Has the SF found a busted down heavy amphibious transport begging for work? */ -<<set $securityForceMissionEfficiency = 1>> /* How efficient is the SF at completing its assigned task? (Upgrades*Drug Multiplier) */ - -/* SupportFacility */ -<<set $SupportFacility = 0>> /* Is the support facility built ? */ - -/* Colonel */ -<<set $securityForceSexedColonelToken = 0>> /* Has the player sexed The Colonel this week? */ -<<set $ColonelCore = "">> /* What is the core of The Colonel? */ -<<set $securityForceColonelToken = 0>> /* Flag to keep track of talking to The Colonel. */ -<<set $securityForceColonelSexed = 0>> /* Has the player sexed The Colonel this week? */ - -/* TradeShow */ -<<set $TradeShowAttendanceGranted = 0>> /* Has The Colonel been allowed to go the TradeShow? */ -<<set $OverallTradeShowAttendance = 0>> /* how many times has The Colonel gone to the TradeShow */ -<<set $CurrentTradeShowAttendance = 0>> /* Has The Colonel attended the current TradeShow? */ -<<set $TradeShowIncome = 0>> /* How much was The Colonel able to make at the TradeShow selling generic scematics? */ -<<set $TotalTradeShowIncome = 0>> /* Total TradeShowIncome */ -<<set $TradeShowHelots = 0>> /* How many menail slaves were sent as a bonus from generic scematic sales during the current TradeShow? -<<set $TotalTradeShowHelots = 0>> /* Total number of menail slaves acquired via the Trade Show */ - +/*SFVAR*/ <<set $SF = Object.assign({}, $SF, {Toggle:0, Active: -1})>> /* Misc mod variables */ <<set $recruiterEugenics = 0>> diff --git a/src/js/SFJS.tw b/src/js/SFJS.tw deleted file mode 100644 index 088553bec9a31d3fb47f6ff7dedba1407f6394cc..0000000000000000000000000000000000000000 --- a/src/js/SFJS.tw +++ /dev/null @@ -1,51 +0,0 @@ -:: SFJS [script] - -window.simpleWorldEconomyCheck = function() { - var n1 = 4; - var n2 = 3; - var n3 = 2; - if(State.variables.economy === .5) { - return n1; - } else if(State.variables.economy === 1.5) { - return n3; - } else { - return n2; - } -} - -window.HSM = function() { - if (State.variables.PC.hacking <= -100) - return 1.5; - else if (State.variables.PC.hacking <= -75) - return 1.35; - else if (State.variables.PC.hacking <= -50) - return 1.25; - else if (State.variables.PC.hacking <= -25) - return 1.15; - else if (State.variables.PC.hacking < 0) - return 1.10; - else if (State.variables.PC.hacking === 0) - return 1; - else if (State.variables.PC.hacking <= 10) - return .97; - else if (State.variables.PC.hacking <= 25) - return .95; - else if (State.variables.PC.hacking <= 50) - return .90; - else if (State.variables.PC.hacking <= 75) - return .85; - else if (State.variables.PC.hacking < 100) - return .80; - else if (State.variables.PC.hacking >= 100) - return .75; - } - -window.TierTwoUnlockCalc = function() { - const V = State.variables; - if (V.securityForceInfantryPower > 5) V.securityForceInfantryPower = 5; - if (V.securityForceArcologyUpgrades > 5) V.securityForceArcologyUpgrades = 5; - if (V.securityForceVehiclePower > 5) V.securityForceVehiclePower = 5; - if (V.securityForceDronePower > 5) V.securityForceDronePower = 5; - if (V.securityForceStimulantPower > 5) V.securityForceStimulantPower = 5; - if (V.securityForceAircraftPower > 5) V.securityForceAircraftPower = 5; -} \ No newline at end of file diff --git a/src/js/economyJS.tw b/src/js/economyJS.tw index e78d98e2e1692e3d738ab39500b80bea573658c5..2ec04d0769f85a39d4c17061f5e7a2eb1561c2f4 100644 --- a/src/js/economyJS.tw +++ b/src/js/economyJS.tw @@ -321,11 +321,14 @@ window.getCost = function(array) { } } + if(State.variables.SF.Toggle && State.variables.SF.Active >= 1 && State.variables.SF.Subsidy) { + costs += Math.ceil((10000*(State.variables.SFUnit.Troops/10))*1+(State.variables.arcologies[0].prosperity/100)*1+(State.variables.SF.Units/100)); + } // clean up if(costs < 0) { costs = 0; } else { - costs = Math.trunc(costs); + costs = Math.ceil(costs); } return costs; @@ -583,7 +586,7 @@ window.getSlaveCost = function(s) { cost += drugsCost * 5; break; case 'sag-B-gone': - cost += drugsCost * .1; + cost += Math.trunc(drugsCost * .1); break; case 'no drugs': case 'none': break; @@ -595,16 +598,16 @@ window.getSlaveCost = function(s) { cost += drugsCost * s.curatives; } if(s.aphrodisiacs !== 0) { - cost += drugsCost * Math.abs(s.aphrodisiacs); + cost += Math.trunc(drugsCost * Math.abs(s.aphrodisiacs)); } if(s.hormones !== 0) { - cost += (drugsCost * Math.abs(s.hormones) * 0.5); + cost += Math.trunc((drugsCost * Math.abs(s.hormones) * 0.5)); } if(s.bodySwap > 0) { - cost += (drugsCost * s.bodySwap * 10); + cost += Math.trunc((drugsCost * s.bodySwap * 10)); } if(s.preg === -1 && isFertile(s)) { - cost += (drugsCost * 0.5); + cost += Math.trunc((drugsCost * 0.5)); } // Promotion costs diff --git a/src/js/rulesAssistantOptions.tw b/src/js/rulesAssistantOptions.tw index bfc1caa3058b154efca4b7947dc03a8b6e4ae2e4..d9ffb383f4d9f7ec11e3e62f6be56401aa583080 100644 --- a/src/js/rulesAssistantOptions.tw +++ b/src/js/rulesAssistantOptions.tw @@ -784,7 +784,7 @@ window.rulesAssistantOptions = (function() { if (V.masterSuite > 0) items.push("Master Suite"); if (V.schoolroom > 0) items.push("Schoolroom"); if (V.spa > 0) items.push("Spa"); - if (V.nursery > 0) item.push("Nursery"); + if (V.nursery > 0) items.push("Nursery"); if (V.clinic > 0) items.push("Clinic"); if (V.cellblock > 0) items.push("Cellblock"); items.forEach( diff --git a/src/npc/databases/ddSlavesDatabase.tw b/src/npc/databases/ddSlavesDatabase.tw index 4c22d7d4f9c0f87d0860ca88ff1042e563a305c8..6487d18d6a1c3155e920d4eba6c873a08666c0e0 100644 --- a/src/npc/databases/ddSlavesDatabase.tw +++ b/src/npc/databases/ddSlavesDatabase.tw @@ -7,7 +7,7 @@ /*Increased areolae, added origin and customdesc -BoneyM*/ <<set _HS = {}>> -<<set _HS.slaveName = "Alyssa", _HS.birthName = "Alyssa", _HS.genes = "XY", _HS.ID = _i++, _HS.assignment = "be a servant", _HS.birthWeek = random(0,51), _HS.actualAge = 21, _HS.physicalAge = 21, _HS.visualAge = 21, _HS.ovaryAge = 21, _HS.health = -30, _HS.devotion = 60, _HS.race = "white", _HS.hColor = "blonde", _HS.pubicHColor = "blonde", _HS.skin = "pale", _HS.hLength = 10, _HS.hStyle = "short", _HS.boobs = 300, _HS.butt = 1, _HS.vagina = -1, _HS.preg = -2, _HS.dick = 2, _HS.anus = 1, _HS.prostate = 1, _HS.balls = 1, _HS.scrotum = 1, _HS.attrXX = 40, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.faceShape = "feminine">> +<<set _HS.slaveName = "Alyssa", _HS.birthName = "Alyssa", _HS.genes = "XY", _HS.ID = _i++, _HS.assignment = "be a servant", _HS.birthWeek = random(0,51), _HS.actualAge = 21, _HS.physicalAge = 21, _HS.visualAge = 21, _HS.ovaryAge = 21, _HS.health = -30, _HS.devotion = 60, _HS.race = "white", _HS.hColor = "blonde", _HS.pubicHColor = "blonde", _HS.skin = "pale", _HS.hLength = 10, _HS.hStyle = "short", _HS.boobs = 300, _HS.butt = 1, _HS.vagina = -1, _HS.preg = -2, _HS.dick = 2, _HS.anus = 1, _HS.prostate = 1, _HS.balls = 1, _HS.scrotum = 1, _HS.attrXX = 40, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.faceShape = "androgynous">> <<set $heroSlaves.push(_HS)>> /*Changed assignment -BoneyM*/ diff --git a/src/pregmod/JobFulfillmentCenter/JobFulfillmentCenterOrder.tw b/src/pregmod/JobFulfillmentCenter/JobFulfillmentCenterOrder.tw index dac6f3e2d7cd00bbbbb638203137fd914769e330..0483d6143b69e0f97b3feff6fba2a0531caf2376 100644 --- a/src/pregmod/JobFulfillmentCenter/JobFulfillmentCenterOrder.tw +++ b/src/pregmod/JobFulfillmentCenter/JobFulfillmentCenterOrder.tw @@ -11,9 +11,9 @@ <<link "Security">> <<replace "#JobType">> <br> - <<if $SFMODToggle == 1>> + /*<<if $SF.Toggle && $SF.Active >= 1>> <br>[[Lieutenant Colonel|JobFulfillmentCenterOrder][$JFCOrder = 1, $Role = "Lieutenant Colonel"]] - <</if>> + <</if>>*/ <br>[[Bodyguard|JobFulfillmentCenterOrder][$JFCOrder = 1, $Role = "Bodyguard"]] <br>[[Wardeness|JobFulfillmentCenterOrder][$JFCOrder = 1, $Role = "Wardeness"]] <br>[[Return|JobFulfillmentCenterOrder]] @@ -47,4 +47,4 @@ </span> <<else>> [[Withdraw slave order|JobFulfillmentCenterOrder][$JFCOrder = 0, $Role = ""]] -<</if>> \ No newline at end of file +<</if>> diff --git a/src/pregmod/SecForceEX/CheatEdit.tw b/src/pregmod/SecForceEX/CheatEdit.tw new file mode 100644 index 0000000000000000000000000000000000000000..87cc4d5207063e78128eadfa604eea22082a5b4c --- /dev/null +++ b/src/pregmod/SecForceEX/CheatEdit.tw @@ -0,0 +1,35 @@ +:: CheatEdit [nobr] +<<set $nextButton = "Back to $SF.Lower's Firebase", $nextLink = "Firebase", $returnTo = "Firebase">> +<<= Count()>>__Upgrades__: $SF.Units/_max +<<if $SF.Units >= 30>><<set _T1 = 1>><<else>><<set _T1 = 0>><</if>> +<br><br>''Firebase:'' <<textbox "$SFUnit.Firebase" $SFUnit.Firebase "CheatEdit">>/_FU +<br>''Armory:'' <<textbox "$SFUnit.Armoury" $SFUnit.Armoury "CheatEdit">>/_AU +<br>''Drug Lab:'' <<textbox "$SFUnit.Drugs" $SFUnit.Drugs "CheatEdit">>/_DrugsU +<<if $SFUnit.Firebase >= 2>> +<br>''Drone Bay:'' <<textbox "$SFUnit.Drones" $SFUnit.Drones "CheatEdit">>/_DU<</if>> + +<<if $SFUnit.Firebase >= 1 && $terrain !== "oceanic">> <br><br>''Garage:'' + <br> ''Vehicles:'' + <br> ''Attack:'' <<textbox "$SFUnit.AV" $SFUnit.AV "CheatEdit">>/_AVU + <br> ''Transport:'' <<textbox "$SFUnit.TV" $SFUnit.TV "CheatEdit">>/_TVU + <<if _T1>> + <br> ''Prototype Goliath Tank:'' <<textbox "$SFUnit.PGT" $SFUnit.PGT "CheatEdit">>/_PGTU<</if>> +<</if>> + +<<if $SFUnit.Firebase >= 4>> <br><br>''Hangar:'' + <br> ''Aircraft:'' + <br> ''Attack:'' <<textbox "$SFUnit.AA" $SFUnit.AA "CheatEdit">>/_AAU + <br> ''Transport:'' <<textbox "$SFUnit.TA" $SFUnit.TA "CheatEdit">>/_TAU + <<if _T1>> + <br> ''Spaceplane'': <<textbox "$SFUnit.SpacePlane" $SFUnit.SpacePlane "CheatEdit">>/_SPU + <br> ''Gunship:'' <<textbox "$SFUnit.GunS" $SFUnit.GunS "CheatEdit">>/_GunSU + <br><br>''Launch Bay:'' + <br> ''Satellite:'' <<textbox "$SFUnit.Satellite" $SFUnit.Satellite "CheatEdit">>/_SatU + <<if $terrain !== "oceanic">> + <br> ''Giant Robot:'' <<textbox "$SFUnit.GiantRobot" $SFUnit.GiantRobot "CheatEdit">>/_GRU<</if>> + <br> ''Cruise Missile:'' <<textbox "$SFUnit.MissileSilo" $SFUnit.MissileSilo "CheatEdit">>/_MSU +<<if $terrain === "oceanic" || $terrain === "marine">> <br><br>''Naval Yard:'' + <br> ''Aircraft Carrier:'' <<textbox "$SFUnit.AircraftCarrier" $SFUnit.AircraftCarrier "CheatEdit">>/_ACU + <br> ''Submarine:'' <<textbox "$SFUnit.Sub" $SFUnit.Sub "CheatEdit">>/_SubU + <br> ''Amphibious Transport:'' <<textbox "$SFUnit.HAT" $SFUnit.HAT "CheatEdit">>/_HATU +<</if>><</if>><</if>> \ No newline at end of file diff --git a/src/pregmod/SecForceEX/SpecialForceColonelSexDec.tw b/src/pregmod/SecForceEX/ColonelSexDec.tw similarity index 87% rename from src/pregmod/SecForceEX/SpecialForceColonelSexDec.tw rename to src/pregmod/SecForceEX/ColonelSexDec.tw index 822e96e18f02fcefcbeee3ae2929a8528612f43b..8f47023524fa86c33bfc3ae3d553f78436f07faa 100644 --- a/src/pregmod/SecForceEX/SpecialForceColonelSexDec.tw +++ b/src/pregmod/SecForceEX/ColonelSexDec.tw @@ -1,5 +1,5 @@ -:: SpecialForceColonelSexDec -<<switch $ColonelCore>> +:: SFColonelSexDec +<<switch $SFColonel.Core>> <<case "shell shocked">> <span id="result7"> The entire time it is obvious that The Colonel is reliving a horrible event. @@ -8,7 +8,7 @@ "You made an attempt to try to bring her back to the present." <</replace>> <</link>> - + <br><<link "Leave her be">> <<replace "#result7">> "It is probably better that she tries to deal with her demons alone" @@ -18,4 +18,4 @@ <<default>> Inset sex noises here. -<</switch>> +<</switch>> \ No newline at end of file diff --git a/src/pregmod/SecForceEX/Firebase.tw b/src/pregmod/SecForceEX/Firebase.tw new file mode 100644 index 0000000000000000000000000000000000000000..0575bb5f46c69553809f1e1e47ae4f9188a43383 --- /dev/null +++ b/src/pregmod/SecForceEX/Firebase.tw @@ -0,0 +1,141 @@ +:: Firebase [nobr] + + <<if ndef $Tour>> <<set $Tour = 0>> <</if>> + + <<if $Tour === 0>> + + <<= Count()>> <<if $SF.Lower != "the special force">> + + <<set $SF.Caps = $SF.Lower.replace("the ", "The ")>> <</if>> + + <<switch _Env>> <<case 4>> + + <<set _EnvCash2 = 450,_EnvCash3 = 200,_EnvCash4 = 100,_EnvProsp = 3>> + + <<case 3>> + + <<set _EnvCash2 = 500,_EnvCash3 = 250,_EnvCash4 = 150,_EnvProsp = 5>> + + <<case 2>> + + <<set _EnvCash2 = 550,_EnvCash3 = 300,_EnvCash4 = 200,_EnvProsp = 7>> + + <</switch>> <<set $nextButton = "Back to Main",$nextLink = "Main",$returnTo = "Firebase">> + + <<if $cheatMode > 0>> <<link "Cheat edit""CheatEdit">> <</link>> <br> <</if>> + + The firebase of $arcologies[0].name's <<textbox "$SF.Lower" $SF.Lower "Firebase">> is located in the lower levels, occupying unneeded warehouse space. It is not accessible to the general citizenry, but your personal elevator has express service to it. As you step off, two soldiers in combat armor manning the entry checkpoint tense before recognizing their Marshal and stepping aside with a sharp salute. + + <br><br><<if $SFTradeShow.CanAttend == 1 || ($SFColonel.Fun + $SFColonel.Talk >= 1)>> + + You make your way to the operations center. The Lieutenant Colonel is handling a minor issue. As you enter, he salutes. <<if $SFTradeShow.CanAttend == 1>> The Colonel is away at her merc meetup, so the Lieutenant Colonel will assist you.<</if>> + + <<elseif random(1,100) > 5>> + + You make your way to the operations center. The Colonel is + + <<if random(1,100) > 50>>glancing between her tablet and the large wallscreen, occasionally taking notes or barking orders. + + <<else>>examining a table with a map of the surrounding area, planning manuevers in the event of an attack.<</if>> + + She notices your entrance and turns her attention to you. + + <<if $SFColonel.Core == "brazen">> + + She gives a textbook salute. "<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>, how can I help you?" + + <<else>> + + "Hey boss, what do you need?"<</if>> + + <<else>> + + You make your way to the operations center, finding it empty. A short walk takes you through the barracks to the Colonel's quarters. As you approach, the Colonel <<print ColonelQuarters()>> + + <</if>> + + <<if ndef $SFTradeShow.View && ($SFColonel.Fun + $SFColonel.Talk < 1)>> + + <br><br>Her expression changes as something jogs her memory. "Before we begin <<if $SFColonel.Core == "brazen">><<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>><<else>>boss<</if>>, back when I was a merc me and a couple of my old friends would have a meetup every several months. Drinking, fucking, drugs... a little poker. It eventually grew into a whole thing, and now we bring our latest and greatest toys to show off, maybe make some money off selling the schematics. I'd like to continue going, for old times' sake." + + <br>[[Grant leave|Firebase][$SFTradeShow.CanAttend = 1,$SFTradeShow.View = 1]] + + <br>[[Request she remain on base|Firebase][$SFTradeShow.CanAttend = -2,$SFTradeShow.View = 0]]<br> + + <</if>> + + <<if $SFTradeShow.History >= 1 && (Math.trunc($week/24) === ($week/24)) && $SFTradeShow.CanAttend === -1>> + + <br><br>Her expression changes as something jogs her memory. "Before we begin <<if $SFColonel.Core == "brazen">><<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>><<else>>boss<</if>>, that biannual merc meetup has come around again. You've already gave me leave to attend, but I just wanted to be sure I'm still clear to go." + + <br>[[Grant leave.|Firebase][$SFTradeShow.CanAttend = 1]] + + <br>[[Request she remain on site.|Firebase][$SFTradeShow.CanAttend = -1]]<br> + + <</if>> + + <<if $SFTradeShow.History >= 1 && ((Math.trunc(($week-1)/24) === ($week-1)/24) || (Math.trunc(($week-2)/24) === ($week-2)/24) || (Math.trunc(($week-3)/24) === ($week-3)/24))>> + + While at the recent merc meetup, the Colonel made @@.yellowgreen;<<print cashFormat(Math.ceil($SFTradeShow.Income))>>@@ selling generic schematics to her friends, <<print commaNum($SFTradeShow.Helots)>> menial slaves were won in a poker game, and <<print commaNum($SFTradeShow.TotalMercs)>> mercenaries were persuaded to join $SF.Lower. + + <br>Total earnings thus far: @@.yellowgreen;<<print cashFormat(Math.ceil($SFTradeShow.Revenue))>>@@ in income, <<print commaNum($SFTradeShow.TotalHelots)>> menial slaves and <<print commaNum($SFTradeShow.Mercs)>> mercenaries joined across $SFTradeShow.History meetups. + + <</if>> + + <<print Interactions()>> + + <<include "WC">> + + <br><<switch $SF.SpecOps>> + + <<case 0>> + + <br>No soldiers are working undercover. + + <br>[[Reassign soldiers|Firebase][$SF.SpecOps = -1]] + + <<case 1>> + + <br>A small section of soldiers are working undercover. + + <br>[[Reassign soldiers|Firebase][$SF.SpecOps = -1]] + + <<case 2>> + + <br>A large section of soldiers are working undercover. + + <br>[[Reassign soldiers|Firebase][$SF.SpecOps = -1]] + + <<default>> + + <br>Would you like to assign soldiers to undercover duty? + + <br>[[Do not assign soldiers to work undercover|Firebase][$SF.SpecOps = 0]] + + <br>[[Assign a small section of soldiers to work undercover|Firebase][$SF.SpecOps = 1]] + + <br>[[Assign a large section of soldiers to work undercover|Firebase][$SF.SpecOps = 2]] + + <</switch>> + + <<if $SFUnit.Firebase > 5 && $secExp > 0 && $SFSupportLevel >= 4 && $maxUnits === 16 && $readiness <= 10>> + + <br><br>[[Provide the security force with their own section.|Firebase][$maxUnits += 4,$readiness = 10,$cash -= Math.ceil((750000*(1.15+($SF.Units/1000))*(1.15+($SFUnit.Firebase/10)))*_Env)]] + + @@.yellowgreen;<<print cashFormat(Math.ceil((750000*(1.15+($SF.Units/1000))*(1.15+($SFUnit.Firebase/10)))*_Env))>>@@ + + <</if>> + + <<include "Upgrades">> + + <br><<link "Tour the firebase" "Firebase">><<set $Tour = 1>><</link>> + + <</if>> + + <<if $Tour === 1>> <<set $nextButton = " ">> + + <<=Count()>><<include "FlavourText">><br> + + [[Return to Operations|Firebase][$Tour = 0]] + + <</if>> \ No newline at end of file diff --git a/src/pregmod/SecForceEX/FlavourText.tw b/src/pregmod/SecForceEX/FlavourText.tw new file mode 100644 index 0000000000000000000000000000000000000000..ade33f66b4caf3310edca53843a889d3850514cf --- /dev/null +++ b/src/pregmod/SecForceEX/FlavourText.tw @@ -0,0 +1,110 @@ +:: FlavourText [nobr] +<br> <<if passage() === "Firebase">> + You continue towards the common area, the soldiers you pass nodding respectfully, saluting, or giving slight bows, as they please, to you. You pass the briefing areas, the officers and sergeants of the force are conferring over planning tables and display screens regarding their upcoming deployments. + <br><br><div style="margin-left:2em">The commanders are + <<if $SF.Target === "recruit">> + viewing lists of potential recruits for $SF.Lower. Mainly mercenaries and Old World soldiers who might be receptive to an offer of employment and residence within the arcology, in addition to some citizens of the arcology who wish to have some excitement in their lives. + <<elseif $SF.Target === "secure">> + reviewing maps of trade routes to the arcology as well as nearby merchant hubs, arranging their future deployments to best protect them and encourage business and trade. + <<elseif $SF.Target === "raiding">> + reviewing maps of settlements and locations reported to have choice concentrations of material loot and potential slave stock, in preparation for their coming raids. + <</if>> </div> + <div style="margin-left:2em"> <<if $SF.ROE === "hold">> + There are posted (and very strict) guidelines for the use of force against non-citizens residents, forbidding the use of heavy weapons or indiscriminate fire. + <<elseif $SF.ROE === "limited">> + There are some guidelines posted regarding the use of force against non-citizens, forbidding general indiscriminate fire. + <<elseif $SF.ROE === "free">> + Guidelines regarding the use of force are completely absent from the deployment information screens. A note affixed to the screen, probably from a soldier, says: "Pop 'em if you see 'em - better than target practice!" Another one on top of that, from The Colonel, says: "Don't shoot the pretty ones, you fucking morons, or I'll kill you myself. They're worth good money or good for fun - do you idiots really want to have to fuck month-old stock?" + <</if>> </div> + <div style="margin-left:2em"> <<if $SF.Regs === "strict">> + On several screens, there are prominent warnings regarding the severe disciplinary procedures that will be taken against soldiers who commit crimes while on deployment. + <<elseif $SF.Regs === "some">> + On several screens, there are some minor warnings regarding the mild disciplinary procedures that may be taken against soldiers who commit especially severe crimes while on deployment. + <<elseif $SF.Regs === "none">> + There are no warnings or information regarding disciplinary procedures on any of the screens. Near one of them, a waste basket has been dragged over and a soldier has posted a note above it that says: "For Old World Complaints and Warrants." + <</if>> </div> + + <br>You arrive at the firebase's common area, a nest of bars, pleasure dens, public spaces, and other facilities catering to the soldiers' needs and giving them somewhere to spend their free time, since they do not mingle with your citizens on the higher levels or exit the arcology except on deployment. It is well-occupied by the soldiers not currently tasked with duties, and they respectfully move out of your way as you approach, clearing a path for you to move forward. + <br><br><div style="margin-left:2em"> + The amenities are staffed by menial slaves, captured by the soldiers on their excursions. + <<if $SF.Depravity <= 0.3 && $SFColonel.Core === "kind">> + They are wearing plain jumpsuits and slim identification collars to set them apart from the soldiers, and look resigned but not fearful. The soldiers themselves socialize at the bars, in small groups around tables, and in the gambling parlours. Many of them can be seen entering or leaving the dens occupied by the sexual slaves they have acquired. Laughter from the carousing soldiers can be heard at all times. Small groups of slaves move freely between the plaza and their basic accommodations attached to the firebase. + <<elseif $SF.Depravity <= 0.6 && $SFColonel.Core === "kind">> + They are topless, wearing only utilitarian pants and leather collars to set them apart from the soldiers, and occasionally shoot fearful looks at the soldiers. The soldiers themselves socialize at the bars, or in large groups around tables, leering at and groping slaves of interest as they pass by. Many of them can be seen entering or leaving the dens occupied by the sexual slaves they have acquired, and often emerge only partially dressed, sometimes pulling half-naked slaves out with them. + <<elseif $SF.Depravity <= 0.9>> + They are topless, wearing only utilitarian shorts and steel collars to set them apart from the soldiers, and often shoot fearful looks at the soldiers. The soldiers themselves socialize at the bars, or in large groups around tables, leering at and heavily groping slaves of interest as they pass by. Many of them can be seen entering or leaving the dens occupied by the sexual slaves they have acquired, and often emerge stark naked, sometimes pulling naked slaves out with them for one last servicing in public. A few soldiers stagger around in drunken hazes or drugged-out stupors. + <<elseif $SF.Depravity <= 1.2>> + They are topless, wearing only a single undergarment and heavy steel collars to set them apart from the soldiers, and often shoot fearful looks at the soldiers. The soldiers occupy themselves primarily with sex, pulling slaves onto benches and fucking them hard in public. Many soldiers stagger around or lie passed out from drug and alcohol abuse. + <<elseif $SF.Depravity >= 1.5 && ($SFColonel.Core == "Warmonger" || $SFColonel.Core != "Shell Shocked")>> + To a one, they are naked, and are wearing heavy shock collars to force obedience. Most are wild-eyed with fear or dull-eyed from mental collapse, and many others bear marks of abuse. Few of the slaves are here long-term, the depraved pleasures of the soldiers resulting in enormous turnover and loss of 'damaged' stock. The extreme libations of the soldiers are ever-present. Drunken soldiers stagger around everywhere, beating slaves too slow to get out of their way. Others lie sprawled out on the ground, rendered senseless from heavy drug abuse. Some walk around naked, and hold slaves down on the benches scattered around, raping or sodomizing them with their cocks or their personal strap-ons as they desire. In alcoves, some soldier-lover pairs fuck loudly, moaning in pleasure. + <<if random(1,100) > 50>> + Off to the side, a group of soldiers brutally gangbang a very young slave girl, with one soldier buried balls-deep in her ass, another brutally sawing a barbed strap-on in and out of her pussy, and a third with his cock forced deep down her throat. The slave girl struggles and gags, desperate for breath or relief. + <<elseif random(1,100) > 50>> + Off to the side, a group of soldiers cackle amongst themselves as they take turns beating a very young slave girl with heavy batons. Sickening crunches can be heard from the screaming slave. + <<elseif random(1,100) > 75>> + Off to the side, still more soldiers crowd around an above-ground pit built from empty crates, gambling on slave gladiator fights. There's a drunken cheer as one of the fighters, a very young slave girl, straddles another one and smashes her face in with a blood-slick ammo crate. As she stands, shaking from fear and adrenaline, one of the soldiers laughs and throws a small incendiary grenade at her, changing the cheers to curses as the other soldiers jump away from the flaming, screeching slave. + <<else>> + Screams and cries of pain can be heard echoing around the area as the soldiers have their fun with their property. + <</if>> + <</if>> </div> + + <br>In the middle of the common area is a pile of supply crates with a pavilion on top - The Colonel's personal throne and open quarters, the result of her preferring to live an extreme lifestyle amongst her soldiers rather than in her empty quarters on the upper levels. It's draped with the 'flag' of $SF.Lower, one of her inventions. Sprawled all around it is an immense quantity of; alcohol, hard drugs, clothes, electronic devices, huge amounts of cash, jewels and precious metals looted from the outside world. + <br><br><div style="margin-left:2em"> + As you approach, The Colonel + <<if random(0,100) > 50>> + raises a hand in greeting and nods. She is sprawled on a couch, wearing only her combat suit tank top and fingerless gloves. She's holding a near-empty bottle of strong liquor in her hand and you can see a naked slave girl kneeling on the floor between her legs. The Colonel has her legs wrapped tightly around the girl's head, forcing the girl to service her if she wants to breathe. The Colonel is close to her climax then suddenly tenses her lower body thus gripping the girl even tighter and throws her head back in ecstasy as she orgasms. She lets out a long breath finally releasing the girl, giving her a hard smack and shouting at her to fuck off.<br><br> The Colonel finishes off her bottle, tossing it over her shoulder then leaning back on the couch and spreading her legs wide. You look down briefly, falling into your habits of inspection. Her pussy is completely devoid of hair with heavy labia in with a very large and hard clit peaking out. Beads of moisture, the result of her excitation, are visible, and you can tell from long experience that she would be tight as a vise. You return your gaze to her face to find her smirking at you. "Like what you see, <<print SFCR()>>?" She waves her hand at the plaza around her, "So do they. But you're not here for pussy. You're here to talk business. So, what's up?" + <<elseif random(0,100) > 50>> + is in no condition initially to greet you. She's naked except for one sock that gives you a very good view of her muscled, taut body while lunging with her feet on the table and the rest on her couch. She is face down in a drugged-out stupor in the middle of a wide variety of powders and pills. Perhaps sensing your approach, her head suddenly shoots up and looks at you with unfocused, bloodshot eyes. "Sorry, <<print SFCR()>>," she slurs, wiping her face and weakly holding up a hand. "Hold on a second, I need something to help me out here. Long fucking night." She struggles to sit on the couch and bending over the table, loudly snorts up some of the white powder on it. "Ahhh, fuck," she says, breathing heavily.<br><br> She shakes her head powerfully now looking at you, her eyes once again alert and piercing. "That's better," she says, leaning back on the couch and giving you another good view of her assets. "So, <<print SFCR()>>," she begins, "what brings you down here to our little clubhouse? I trust you're happy with how we've been handling things out there?" You nod. "Excellent", she laughs. "I have to say; it's nice to have a place like this while having some top-end gear and to be able to have fun out there without worrying about anyone coming back on us. Good fucking times." She laughs again. "So - I'm assuming you want something?" + <<elseif random(0,100) > 70 && $SF.Depravity >= 1.5 && $SFColonel.Core == "cruel">> + is relaxing on her couch stark naked, greeting you with a raised hand. Between her tightly clenched legs is a slave girl being forced to eat her out. "Hey, <<print SFCR()>>, what's -" she breaks off as a flash of pain crosses her features. "Fucking bitch!" she exclaims, pulling her legs away and punching the slave girl in the face. She pushes the girl to the ground, straddling her then begins hitting. You hear one crunch after another as The Colonel's powerful blows shatter the girl's face. She hisses from between clenched teeth, each word accompanied by a brutal punch. "How. Many. Fucking. Times. Have. I. Told. You. To. Watch. Your. Fucking. Teeth. On. My. Fucking. Clit!" She leans back, exhaling heavily. Before leaning back down to grip apply pressure onto the girl's neck with her powerful hands. Wordlessly, she increases the pressure and soon the girl begins to turn blue as she struggles to draw breath. Eventually her struggles weaken and then finally, end.<br><br> The Colonel relaxes her grip then wipes her brow, clearing away the sweat from her exertion. Finally rising from the girl's body, relaxing back on the couch and putting her feet back up on the table. "Sorry about that <<print SFCR()>>," she says, shrugging. "So many of these bitches we pick up from the outside don't understand that they have to behave." Shaking her head in frustration, "Now I need to find another one. But that's not your problem - you're here to talk business. So, what's up?" + <<else>> + is topless while reviewing the particulars of her unit on a tablet as you approach. She raises a hand in greeting. "Hey <<print SFCR()>>," she says, noticing you looking at her chest. She laughs. "Nice, aren't they? But they're not for you or them." She throws a thumb at the plaza around her. "You're down here for a reason, though. What can I do for you?" + <</if>> </div> + <<if $SFUnit.Firebase === 10>> + <br>The echo of simulated gun fire and explosions can be heard from the state of the art killhouse. + The quite hum of fans keeping the faster and much more efficient custom network operational can be heard throught the firebase.<br> + <</if>> +<</if>> + +<br>__Current facilities status:__ +<br>''Firebase:'' <<print Firebase()>> + <br> The large dormitories are <<print TroopDec()>>. +<br><br>''Armory:'' <<print Armoury()>> +<br><br>''Drug Lab:'' <<print Drugs()>> +<<if $SFUnit.Firebase >= 2 && $SFUnit.Drones > 0>> <br><br>''Drone Bay:'' <<print LUAV()>> <</if>> + +<<if _G > 0 && $SFUnit.Firebase >= 1>> <br><br>''Garage:'' + <<if $SFUnit.AV+$SFUnit.TV > 0>> <br> ''Vehicles:'' + <<if $SFUnit.AV > 0>> <br> ''Assault:'' <<print AV()>> <</if>> + <<if $SFUnit.TV > 0>> <br> ''Transport:'' <<print TV()>> <</if>> + <</if>> + <<if $SFUnit.PGT > 0>> <br> ''Prototype Goliath Tank:'' <<print PGT()>> <</if>> +<</if>> + +<<if $SFUnit.Firebase >= 4>> + <<if _H > 0>> <br><br>''Hangar:'' + <<if $SFUnit.AA+$SFUnit.TA > 0>> <br> ''Airforce:'' + <<if $SFUnit.AA > 0>> <br> ''Assault:'' <<print AA()>> <</if>> + <<if $SFUnit.TA > 0>> <br> ''Transport:'' <<print TA()>> <</if>> + <</if>> + <<if $SFUnit.SpacePlane > 0>> <br> ''Spaceplane:'' <<print SP()>> <</if>> + <<if $SFUnit.GunS > 0>> <br> ''Gunship:'' <<print GunS()>> <</if>> + <</if>> + <<if _LB> 0>> <br><br>''Launch Bay:'' + <<if $SFUnit.Satellite > 0>> <br> ''Satellite:'' <<print Sat()>> <<if $SatLaunched < 1>><br> [[Launch it into geostationary orbit|Firebase][$SatLaunched = 1]]<br> //You cannot upgrade the satellite once it has been launched.//<</if>><</if>> + <<if $SFUnit.GiantRobot > 0>> <br> ''Giant Robot'': <<print GR()>> <</if>> + <<if $SFUnit.MissileSilo > 0>> <br> ''Cruise Missile:'' <<print ms()>> <</if>> + <</if>> +<</if>> + +<<if _NY > 0>> <br><br>''Naval Yard:'' + <<if $SFUnit.AircraftCarrier > 0>> <br> ''Aircraft Carrier:'' <<print AC()>> <</if>> + <<if $SFUnit.Sub > 0>> <br> ''Submarine:'' <<print Sub()>> <</if>> + <<if $SFUnit.HAT > 0>> <br> ''Amphibious Transport:'' <<print HAT()>> <</if>> +<</if>> +/*<<if $SupportFacility === 1>> <br><br>''$SupportFacilityName:'' + <<if passage() === "Firebase">> + <br><<link "Enter the building" "Support Facility">> <</link>> + <<elseif passage() === "SF_Report">> + <<include "Support Facility Report">> <</if>> +<</if>>*/ diff --git a/src/pregmod/SecForceEX/JS.js b/src/pregmod/SecForceEX/JS.js new file mode 100644 index 0000000000000000000000000000000000000000..28ddef9246cd6120e5f5170c41773b628cb04715 --- /dev/null +++ b/src/pregmod/SecForceEX/JS.js @@ -0,0 +1,441 @@ +/*SecForceEX JS*/ +window.SFC = function() { + const V = State.variables; + if (V.SFTradeShow.CanAttend === -1) {return `The Colonel`;} + else { + if (V.LieutenantColonel > 0) {return `Lieutenant Colonel <<= SlaveFullName($LieutenantColonel)>>`;} + else {return `a designated soldier`;}} +}; + +window.SFCR = function() { + const V = State.variables, C = V.SFColonel; + if (C.Status <= 19) {return `boss`;} + else if (C.Status <= 39) {return `friend`;} + else {return `fuckbuddy`;} +}; + +window.TroopDec = function() { + const V = State.variables, commom = "the <<print commaNum($SFUnit.Troops)>> members of $SF.Lower", S = V.SFUnit; + if (S.Troops < 100) {return `sparsely occupied, ${commom} residing within them concentrating together in a corner. The hundreds of empty beds and lockers visibly herald the future`;} + else if (S.Troops < 400) {return `lightly occupied, with ${commom} starting to spread out across them`;} + else if (S.Troops < 800) {return `moderately occupied, though ${commom} residing within have a considerable amount of extra room`;} + else if (S.Troops < 1500) {return `well-occupied, and ${commom} residing within have started to form small cliques based on section and row`;} + else {return `near capacity, and ${commom} often barter their personal loot, whether it be monetary or human, for the choicest bunks`;} +}; + +window.HSM = function() { + const V = State.variables; + if (V.PC.hacking <= -100) {return 1.5;} + else if (V.PC.hacking <= -75) {return 1.35;} + else if (V.PC.hacking <= -50) {return 1.25;} + else if (V.PC.hacking <= -25) {return 1.15;} + else if (V.PC.hacking < 0) {return 1.10;} + else if (V.PC.hacking === 0) {return 1;} + else if (V.PC.hacking <= 10) {return 0.97;} + else if (V.PC.hacking <= 25) {return 0.95;} + else if (V.PC.hacking <= 50) {return 0.90;} + else if (V.PC.hacking <= 75) {return 0.85;} + else if (V.PC.hacking <= 100) {return 0.80;} + else {return 0.75;} +}; + +window.Count = function() { + const V = State.variables, T = State.temporary, C = Math.clamp, S = V.SFUnit, E = V.economy; + T.FU = 10,S.Firebase = C(S.Firebase, 0, T.FU); + T.AU = 10,S.Armoury = C(S.Armoury, 0, T.AU); + T.DrugsU = 10,S.Drugs = C(S.Drugs, 0, T.DrugsU); + T.DU = 10,S.Drones = C(S.Drones, 0, T.DU); + T.AVU = 10,S.AV = C(S.AV, 0, T.AVU); + T.TVU = 10,S.TV = C(S.TV, 0, T.TVU); + T.AAU = 10,S.AA = C(S.AA, 0, T.AAU); + T.TAU = 10,S.TA = C(S.TA, 0, T.TAU); + if (V.PC.warfare >= 75) {T.PGTU = 10,T.SPU = 10,T.GunSU = 10,T.SatU = 10,T.GRU = 10,T.MSU = 10,T.ACU = 10,T.SubU = 10,T.HATU = 10;} + else if (V.PC.warfare >= 50) {T.PGTU = 9,T.SPU = 9,T.GunSU = 9,T.SatU = 9,T.GRU = 9,T.MSU = 9,T.ACU = 9,T.SubU = 9,T.HATU = 9;} + else {T.PGTU = 8,T.SPU = 8,T.GunSU = 8,T.SatU = 8,T.GRU = 8,T.MSU = 8,T.ACU = 8,T.SubU = 8,T.HATU = 8;} + S.PGT = C(S.PGT, 0, T.PGTU); + S.SpacePlane = C(S.SpacePlane, 0, T.SPU), S.GunS = C(S.GunS, 0, T.GunSU); + S.Satellite = C(S.Satellite, 0, T.SatU), S.GiantRobot = C(S.GiantRobot, 0, T.GRU), S.MissileSilo = C(S.MissileSilo, 0, T.MSU); + S.AircraftCarrier = C(S.AircraftCarrier, 0, T.ACU),S.Sub = C(S.Sub, 0, T.SubU),S.HAT = C(S.HAT, 0, T.HATU); + T.GU = T.AVU+T.TVU+T.PGTU, T.G = S.AV+S.TV+S.PGT; + T.H = S.AA+S.TA+S.SpacePlane+S.GunS, T.HU = T.AAU+T.TAU+T.SPU+T.GunSU; + T.LBU = T.SatU + T.MSU, T.LB = S.Satellite + S.MissileSilo; + T.Base = S.Firebase + S.Armoury + S.Drugs + S.Drones + T.H; + T.BaseU = T.FU + T.AU + T.DrugsU + T.DU + T.HU; + if (V.terrain !== "oceanic") T.LBU += T.GRU, T.LB += S.GiantRobot, T.Base += T.G, T.BaseU += T.GU; + T.max = T.BaseU + T.LBU, V.SF.Units = T.Base + T.LB; + if (V.terrain === "oceanic" || V.terrain === "marine") { + T.NY = S.AircraftCarrier + S.Sub + S.HAT, V.SF.Units += T.NY; + T.NYU = T.ACU + T.SubU + T.HATU, T.max += T.NYU;} + V.SF.Units = C(V.SF.Units, 0, T.max); + if (E < 1) {T.Env = 4;} + else if (E < 1.5) {T.Env = 3;} + else {T.Env = 2;} +}; + +window.Firebase = function() { + const V = State.variables, S = V.SFUnit; + var appear = `is currently constructed in a haphazard fashion.`, barracks = `Soldiers' cots are mixed in with weapons crates and ammunition.`, slave = `Cages for processing slaves lie off to one side,`, common = `and in the center is a common area with tables for soldiers to gather around for meals or rowdy conversations.`, garage = ``, drone = ``, hangar = ``, launch = ``, artillery = ``, comms = ``, training = ``; + + if (S.Firebase >= 1) {appear = `has had some organization put into it.`, barracks = `The majority of weapons, armor, and ammunition have been separated from the soldiers' cots into their own armory.`, garage = `A section near the outer wall of the arcology has been converted to a garage with an adjoining vehicle maintenance bay`, drone = `.`; + if (V.terrain === "oceanic") garage += ` for inter-arcology travel`;} + if (S.Firebase >= 2) barracks = `A barracks has been constructed near the armory, allowing soldiers a quieter place to sleep and store their personal spoils.`, drone = `, as well as a facility for the storage, maintenance, and deployment of armed combat drones.`; + if (S.Firebase >= 3) appear = `has become more permanent.`, barracks = `A command center has been constructed near the barracks and armory, allowing for additional support personnel.`; + if (S.Firebase >= 4) hangar = `Hangar space for storing and repairing aircraft has been converted from unused space on the other side of the garage.`; + if (S.Firebase >= 5) { + appear = `is nearing the appearance of a military base.`, launch = `The rest of the firebase has been designated for special projects.`, artillery = `Artillery batteries are set around the base of the arcology.`; + if (V.terrain === "oceanic" || V.terrain === "marine") launch += ` A Naval Yard has been constructed in the waters near the arcology.`;} + if (S.Firebase >= 6) common = `and in the center is a common area for recreation, including a small movie theater and a mess hall.`; + if (S.Firebase >= 7) {slave = `A slave detention facility has been sectioned off to one side`; + if (V.SF.Depravity > 1.5) slave += ` emanating the sounds of rape and torture`; + slave += `,`;} + if (S.Firebase >= 8) appear = `has become a fully fledged military base.`, comms = `A Free City-wide communication network for $SF.Lower has been constructed to faciltate faster responses and efficent monitoring of the surrounding area.`; + if (S.Firebase >= 9) training = `A high-tech killhouse has been constructed to aid in soldier training.`; + if (S.Firebase >= 10) artillery = `Railgun artillery batteries are set around the base of the arcology, capable of accurately destroying enemies an absurd distance away.`; + + return `The firebase ${appear} ${barracks} ${comms} ${training} ${slave} ${common} ${garage}${drone} ${hangar} ${launch} ${artillery}`; +}; + +window.Armoury = function() { + const V = State.variables, S = V.SFUnit; + var weapons = `The weapons are mostly worn rifles that have already seen years of service before $SF.Lower aquired them.`, armor = `The body armor is enough to stop smaller calibers, but nothing serious.`, comms = ``, helmets = ``, ammo = ``, uniforms = ``, special = ``, exo = ``; + + if (S.Armoury >= 1) comms = `Radios have been wired into the soldiers helmets`, helmets = `.`; + if (S.Armoury >= 2) helmets = ` and a HUD has been integrated into the soldier's eyewear.`; + if (S.Armoury >= 3) ammo = `Tactical vests have been provided, allowing soldiers to carry additional ammo.`; + if (S.Armoury >= 4) armor = `The body armor is a newer variant, able to stop small arms fire and protect against shrapnel.`; + if (S.Armoury >= 5) weapons = `The weapons are modern rifles and sidearms, putting $SF.Lower on par with rival mercenary outfits.`; + if (S.Armoury >= 6) uniforms = `New uniforms have been distributed that are more comfortable and made of breatheable fabric to keep soldiers from overheating.`; + if (S.Armoury >= 7) special = `Specialized weaponry is available for various roles, allowing more flexibility in planning.`; + if (S.Armoury >= 8) helmets = `and a HUD and camera display have been integrated into soldiers' eyewear, enabling accurate aim around corners or from behind cover`; + if (S.Armoury >= 9) exo = `An exosuit has been developed to reduce the amount of weight soldiers carry, increase lifting strength, and move faster in combat.`; + if (S.Armoury >= 10) weapons = `Cutting-edge weaponry is available to $SF.Lower, far outpacing the ability of rival mercenary outfits.`; + + return `The armory holds soldiers' weapons and gear while not in training or combat. ${weapons} ${special} ${armor} ${comms}${helmets} ${ammo} ${uniforms} ${exo}`; +}; + +window.Drugs = function() { + const V = State.variables, S = V.SFUnit; + var amphet = ``, phen = ``, steroid = ``, downer = ``, concen = ``, stimpack = ``, stabilizer = ``; + + if (S.Drugs >= 1) amphet = `Amphetamines have been added to the cocktail at a low dosage to act as a stimulant, physical performance enhancer, cognition control enhancer. Some side-effects exist.`; + if (S.Drugs >= 2) phen = `Phencyclidine has been added to the cocktail at a low dosage as a dissociative psychotropic for soldiers in battle to introduce feelings of detachment, strength and invincibility, and aggression. Some side-effects reduce the tolerable dosage before soldiers go on uncontrollable violent outbreaks.`; + if (S.Drugs >= 3) steroid = `Testosterone is being produced for soldiers in training as a natural muscle growth stimulant and to invoke aggression.`; + if (S.Drugs >= 4) downer = `Zaleplon is being produced as a downer to counteract the battle cocktail and encourage rest before combat.`; + if (S.Drugs >= 5) concen = `Methylphenidate has been added to the cocktail as a stimulant and to improve soldier concentration.`; + if (S.Drugs >= 6) phen = `A phencyclidine-based drug has been added to the cocktail as a dissociative psychotropic for soldiers in battle to introduce controllable feelings of detachment, strength and invincibility, and aggression.`; + if (S.Drugs >= 7) steroid = `Low levels of anabolic steroids are being produced for soldiers in training to stimulate muscle growth and invoke aggression.`; + if (S.Drugs >= 8) amphet = `Diphenylmethylsulfinylacetamide has been added to the cocktail to counteract the effects of sleep deprivation and promote alertness.`; + if (S.Drugs >= 9) stimpack = `A stimpack of the battle cocktail is being given to soldiers in battle to take if the original dose wears off before the battle is over.`; + if (S.Drugs >= 10) stabilizer = `A stabilizer has been added to the battle cocktail that helps tie effects together while reducing side-effects, leading to an effectively safe supersoldier drug.`; + + return `A drug lab has been established to increase the effectiveness of $SF.Lower's soldiers. Many of these chemicals are mixed into a single 'battle cocktail' to be taken before combat. ${amphet} ${phen} ${concen} ${steroid} ${downer} ${stimpack} ${stabilizer}`; +}; + +window.LUAV = function() { + const V = State.variables, S = V.SFUnit; + var a = `have been recommissioned for use by $SF.Lower`, b = `.`, c = ``, d = ``, e = ``, f = ``, g = ``, h = ``, i = ``, j = ``, k = ``; + + if (S.Drones >= 2) a = `equipped with missiles are resting on one side of the drone bay`, b = `, as well as destroying the occasional target.`; + if (S.Drones >= 3) c = `A fleet of`, d = `large delivery quadcopters have been converted for military service to support ground forces as combat drones.`; + if (S.Drones >= 4) d = `combat drones take up the rest of the space in the drone bay. They have a`, e = `small automatic rifle`, f = `mounted to the underside.`; + if (S.Drones >= 5) g = `Armor has been added to protect vulnerable components from small arms fire.`; + if (S.Drones >= 6) h = `The fleet's batteries have been replaced with higher capacity models, increasing the functional time spent in combat.`; + if (S.Drones >= 7) i = `The propellers and motors have been upgraded, increasing maneuverability and speed.`; + if (S.Drones >= 8) j = `The drone control signal has been boosted and encrypted, giving the drones a greater range and protecting against electronic warfare.`; + if (S.Drones >= 9) e = `light machine gun`; + if (S.Drones >= 10) k = `A drone-to-drone network has been installed, allowing drones to swarm, maneuver, and attack targets autonomously.`; + + return `Surveillance drones ${a}. During combat, they supply aerial intel to commanders and act as the communications network for ground forces${b} ${c} ${d} ${e} ${f} ${g} ${h} ${i} ${j} ${k}`; +}; + +window.AV = function() { + const V = State.variables, S = V.SFUnit; + var b = `has been recommissioned for use by $SF.Lower. They`, c = `; mechanics are methodically checking the recent purchases for battle-readiness`, MG = `120 mm main gun is enough to handle the majority of opponents around the Free Cities.`, engine = ``, armor = ``, armor2 = ``, ammo = ``, mg = ``, fireC0 = ``, fireC1 = ``, fireC2 = ``, fireC3 = ``, turret = ``; + + if (S.AV >= 2) engine = `The engine has been overhauled, allowing much faster maneuvering around the battlefield.`, b = ``, c = ``; + if (S.AV >= 3) armor = `A composite ceramic armor has replaced the original, offering much greater protection from attacks.`; + if (S.AV >= 4) ammo = `The tanks have been outfitted with additional types of ammo for situational use.`; + if (S.AV >= 5) mg = `A remote-controlled .50 cal machine gun has been mounted on the turret to handle infantry and low-flying aircraft.`; + if (S.AV >= 6) fireC0 = `A fire-control system`, fireC3 = `been installed, guaranteeing`, fireC2 = `has`, fireC1 = `accurate fire.`; + if (S.AV >= 7) fireC2 = `and an autoloader have`, fireC1 = `rapid, accurate fire while separating the crew from the stored ammunition in the event the ammo cooks off.`; + if (S.AV >= 8) armor2 = `A reactive armor system has been added, giving the tank an additional, if temporary, layer of protection.`; + if (S.AV >= 9) turret = `The turret has been massively redesigned, lowering the tank profile and increasing the efficiency of the mechanisms within.`; + if (S.AV >= 10) MG = `140 mm main gun can quash anything even the greatest Old World nations could muster.`; + + return `A fleet of main battle tanks ${b} are parked in the garage${c}. ${turret} The ${MG} ${ammo} ${mg} ${fireC0} ${fireC2} ${fireC3} ${fireC1} ${engine} ${armor} ${armor2}`; +}; + +window.TV = function() { + const V = State.variables, S = V.SFUnit; + var B = `has been recommissioned for use by $SF.Lower. They`, C = `; mechanics are giving the new purchases a final tuneup`, squad = `a squad`, G1 = `20`, G2 = `in a firefight`, e0 = `The engine has been`, engine = ``, armor = ``, tires = ``, m1 = ``, m2 = ``, pod1 = ``, pod2 = ``; + + if (S.TV >= 2) engine = `${e0} overhauled, allowing for higher mobility.`, C = ``, B = ``; + if (S.TV >= 3) armor = `Composite armor has been bolted to the exterior, increasing the survivability of an explosive attack for the crew and passengers.`; + if (S.TV >= 4) tires = `The tires have been replaced with a much more durable version that can support a heavier vehicle.`; + if (S.TV >= 5) m1 = `An automatic missile defense system has been installed,`, m2 = `targeting any guided missiles with laser dazzlers and deploying a smokescreen.`; + if (S.TV >= 6) pod1 = `An anti-tank missle pod`, pod2 = `has been installed on the side of the turret.`; + if (S.TV >= 7) G1 = `25`, G2 = `by attacking enemies through cover and destroying light armor`; + if (S.TV >= 8) pod2 = `and an anti-aircraft missile pod have been installed on either side of the turret.`; + if (S.TV >= 9) squad = `two squads`, armor = ``, m2 = `destroying any incoming missiles with a high-powered laser. Some of the now redundant composite armor has been removed, and the reclaimed space allows for more passengers.`; + if (S.TV >= 10) engine = `${e0} replaced with the newest model, allowing the vehicle to get in and out of the conflict extremely quickly.`; + + return `A fleet of infantry fighting vehicles ${B} are parked in the garage${C}. The IFVs can carry ${squad} of 6 to a firezone. The ${G1} mm autocannon supports infantry ${G2}. ${pod1} ${pod2} ${engine} ${armor} ${tires} ${m1} ${m2}`; +}; + +window.PGT = function() { + const V = State.variables, S = V.SFUnit; + var b = `has been sold to $SF.Lower through back channels to support a failing Old World nation. The tank is so large it cannot fit inside the garage, and has`, c = ``, engines = `. Two engines power the left and right sides of the tank separately, leaving it underpowered and slow`, gun0 = ``, gun1 = ``, gun2 = `an undersized main gun and makeshift firing system from a standard battle tank`, armor1 = ``, armor0 = ``, cannon = ``, laser = ``, PGTframe = ``; + + if (S.PGT >= 2) c = `rests in`, b = ``, engines = ` and powered by their own engine, allowing the tank to travel with an unsettling speed for its massive bulk`; + if (S.PGT >= 3) gun0 = `a railgun capable of`, gun1 = `firing steel slugs`, gun2 = `through one tank and into another`; + if (S.PGT >= 4) armor0 = `reinforced, increasing survivability for the crew inside.`, armor1 = `The armor has been`; + if (S.PGT >= 5) cannon = `A coaxial 30mm autocannon has been installed in the turret, along with automated .50 cal machine guns mounted over the front treads.`; + if (S.PGT >= 6) laser = `Laser anti-missile countermeasures have been installed, destroying any subsonic ordinance fired at the Goliath.`; + if (S.PGT >= 7) PGTframe = `The frame has been reinforced, allowing the Goliath to carry more armor and gun.`; + if (S.PGT >= 8) armor0 = `redesigned with sloping and state-of-the-art materials, allowing the Goliath to shrug off even the most advanced armor-piercing tank rounds.`; + if (S.PGT >= 9) gun1 = `firing guided projectiles`; + if (S.PGT >= 10) gun0 = `a twin-barreled railgun capable of rapidly`; + + return `A prototype Goliath tank ${b}${c} its own garage housing built outside the arcology. The massive bulk is spread out over 8 tracks, two for each corner of the tank${engines}. The turret is equipped with ${gun0} ${gun1} ${gun2}. ${cannon} ${armor1} ${armor0} ${laser} ${PGTframe}`; +}; + +window.AA = function() { + const V = State.variables, S = V.SFUnit; + var W1 = `only armed`, W2 = `,`, W3 = `a poor weapon against flying targets, but enough to handle ground forces`, group = `A small group of attack VTOL have been recommissioned for use by $SF.Lower, enough to make up a squadron`, engines = ``, TAI = ``, lock = ``, support = ``, stealth = ``, scramble = ``, PAI = ``; + + if (S.AA >= 2) W1 = `armed`, W2 = ` and air-to-air missiles,`, W3 = `a combination that can defend the arcology from enemy aircraft, as well as`, support = ` support ground troops`; + if (S.AA >= 3) engines = `The engines have been tuned, allowing faster flight with greater acceleration.`; + if (S.AA >= 4) TAI = `An advanced targeting AI has been installed to handle all control of weapons, allowing much more efficent use of ammunition and anti-countermeasure targeting.`; + if (S.AA >= 5) lock = `Installed multispectrum countermeasures protect against all types of missile locks.`; + if (S.AA >= 6) group = `A respectable number of attack VTOL protect your arcology, split into a few squadrons`; + if (S.AA >= 7) support = ` attack ground targets`, W2 = `, rocket pods, and air-to-air missiles,`; + if (S.AA >= 8) stealth = `The old skin has been replaced with a radar-absorbent material, making the aircraft difficult to pick up on radar.`; + if (S.AA >= 9) scramble = `The VTOLs can scramble to react to any threat in under three minutes.`; + if (S.AA >= 10) PAI = `A piloting AI has been installed, allowing the VTOLs to perform impossible maneuvers that cannot be done by a human pilot. This removes the need for a human in the aircraft altogether.`; + + return `${group}. Several of the landing pads around $arcologies[0].name host groups of four fighters, ready to defend the arcology. ${scramble} The attack VTOL are currently ${W1} with a Gatling cannon${W2} ${W3}${support}. ${TAI} ${PAI} ${engines} ${lock} ${stealth}`; +}; + +window.TA = function() { + const V = State.variables, S = V.SFUnit; + var Num = `number`, type = `tiltrotor`, capacity = `small platoon or 15`, engines = ``, engines2 = ``, Radar = ``, Armor = ``, landing = ``, miniguns = ``, counter = ``; + + if (S.TA >= 2) engines = `The tiltrotor engines have been replaced with a more powerful engine, allowing faster travel times.`; + if (S.TA >= 3) counter = `Multispectrum countermeasures have been added to protect against guided missiles.`; + if (S.TA >= 4) miniguns = `Mounted miniguns have been installed to cover soldiers disembarking in dangerous areas.`; + if (S.TA >= 5) Num = `large number`; + if (S.TA >= 6) landing = `The landing equipment has been overhauled, protecting personel and cargo in the event of a hard landing or crash.`; + if (S.TA >= 7) Armor = `Armor has been added to protect passengers from small arms fire from below.`; + if (S.TA >= 8) capacity = `large platoon or 20`, engines2 = `Further tweaks to the engine allow for greater lifting capacity.`; + if (S.TA >= 9) Radar = `Radar-absorbent materials have replaced the old skin, making it difficult to pick up the VTOL on radar.`; + if (S.TA >= 10) type = `tiltjet`, engines2 = ``, engines = `The tiltrotors have been replaced with tiltjets, allowing for much greater airspeed and acceleration.`; + + return `A ${Num} of transport ${type} VTOL have been recommissioned for use by $SF.Lower. The VTOLs are resting on large pads near the base to load either a ${capacity} tons of materiel. ${engines} ${engines2} ${Armor} ${landing} ${counter} ${Radar} ${miniguns}`; +}; + +window.SP = function() { + const V = State.variables, S = V.SFUnit; + var engine = `ramjet engines in the atmosphere that can reach Mach 10`, b = `has been purchased from an insolvent Old World nation. It `, shield = ``, camera = ``, efficiency = ``, camera2 = ``, drag = ``, crew = ``, engine2 = ``, skin = ``; + + if (S.SpacePlane >= 2) b = ``, shield = `The current heat shielding has been upgraded, reducing the likelihood of heat damage during reentry.`; + if (S.SpacePlane >= 3) engine2 = ` and liquid rocket engines in orbit that can reach an equivalent Mach 18`; + if (S.SpacePlane >= 4) camera = `A state-of-the-art camera has been installed in the underbelly that takes incredibly high resolution photos, but requires the frictionless environment of space to focus.`; + if (S.SpacePlane >= 5) efficiency = `Tweaks to the engines have increased fuel efficency to the point where midflight refueling is no longer necessary.`; + if (S.SpacePlane >= 6) camera2 = `The camera sensor is capable of taking IR shots.`; + if (S.SpacePlane >= 7) drag = `Miraculous advances in aerodynamics and materials allow frictionless flight, even while in the atmosphere.`; + if (S.SpacePlane >= 8) crew = `Increased the crew comfort and life support systems to increase operational time.`; + if (S.SpacePlane >= 9) skin = `Replaced the underbelly skin with an chameleon kit, matching the color to the sky above it.`; + if (S.SpacePlane >= 10) engine = `experimental scramjet engines in the atmosphere that can reach Mach 15`, engine2 = ` and liquid rocket engines in orbit that can reach an equivalent Mach 25`; + + return `A prototype spaceplane ${b} rests in the hangar, its black fuselage gleaming. The craft is powered by ${engine}${engine2}. ${efficiency} ${shield} ${camera} ${camera2} ${drag} ${crew} ${skin}`; +}; + +window.GunS = function() { + const V = State.variables, S = V.SFUnit; + var a = `has been recommissioned for use by $SF.Lower. Currently, it `, b = ``, c = ``, d = ``, e = `Miniguns and Gatling cannons line`, f = `, though the distance to ground targets renders the smaller calibers somewhat less useful`, g = ``, h = ``, i = ``, j = ``, k = ``; + + if (S.GunS >= 2) b = `Infrared sensors have been added for the gunners to better pick targets.`, a = ``; + if (S.GunS >= 3) c = `The underside of the aircraft has been better armored against small-arms fire`, h = `.`; + if (S.GunS >= 4) d = `Larger fuel tanks have been installed in the wings and fuselage, allowing the gunship to provide aerial support for longer periods before refueling.`; + if (S.GunS >= 5) e = `25 mm Gatling cannons`, f = `, allowing the gunship to eliminate infantry`, j = ` and light vehicles from above`, k = ` and a 40 mm autocannon are mounted on`; + if (S.GunS >= 6) g = `The engines have been replaced, allowing both faster travel to a target, and slower travel around a target.`; + if (S.GunS >= 7) h = `, and multi-spectrum countermeasures have been installed to protect against guided missiles.`; + if (S.GunS >= 8) b = `Upgraded multi-spectrum sensors can clearly depict targets even with IR shielding.`; + if (S.GunS >= 9) i = `The ammunition storage has been increased, only slightly depriving loaders of a place to sit.`; + if (S.GunS >= 10) j = `, both light and heavy vehicles, and most enemy cover from above`, k = `, a 40 mm autocannon, and a 105 mm howitzer are mounted on`; + + return `A large gunship ${a} is being refueled in the hangar. ${e}${k} the port side of the fuselage${f}${j}. ${b} ${i} ${g} ${c}${h} ${d}`; +}; + +window.Sat = function() { + const V = State.variables, S = V.SFUnit; + var loc = `An unused science satellite has been purchased from an Old World nation. While currently useless, it holds potential to be a powerful tool.`, gyro = ``, telemetry = ``, thrusters = ``, solar = ``, surviv = ``, laser = ``, heat = ``, reactor = ``, lens = ``, kin = ``; + + if (S.Satellite >= 2) { + if (V.SatLaunched < 1) {loc = `The satellite is being worked on in the Launch Bay.`;} else {loc = `The satellite is in geosynchronous orbit, far above the arcology.`;} + gyro = `A suite of sensors have been installed to ensure the satellite can detect attitude and orbital altitude.`;} + if (S.Satellite >= 3) telemetry = `Telemetry systems have been installed to communicate with the satellite in orbit, with strong encryption measures.`; + if (S.Satellite >= 4) thrusters = `Thrusters have been installed to control satellite attitude and orbit.`; + if (S.Satellite >= 5) solar = `A massive folding solar panel array, combined with the latest in battery technology allow the satellite to store an enormous amount of energy relatively quickly.`, surviv = `Enough of the satellite has been finished that it can expect to survive for a significant period of time in space.`; + if (S.Satellite >= 6) laser = `A laser cannon has been mounted facing the earth, capable of cutting through steel in seconds`, heat = ` while generating a large amount of heat.`; + if (S.Satellite >= 7) heat = `. The installed heatsink allows the laser cannon to fire more frequently without damaging the satellite.`; + if (S.Satellite >= 8) reactor = `A small, efficient nuclear reactor has been installed to continue generating energy while in the Earth's shadow.`; + if (S.Satellite >= 9) lens = `A higher quality and adjustable lens has been installed on the laser, allowing scalpel precision on armor or wide-area blasts on unarmored targets.`; + if (S.Satellite >= 10) kin = `A magazine of directable tungsten rods have been mounted to the exterior of the satellite, allowing for kinetic bombardment roughly equal to a series of nuclear blasts.`; + + return `${loc} ${gyro} ${thrusters} ${telemetry} ${solar} ${reactor} ${surviv} ${laser}${heat} ${lens} ${kin}`; +}; + +window.GR = function() { + const V = State.variables, S = V.SFUnit; + var loc = `has been purchased from a crumbling Old World nation. It`, power = `Large batteries mounted in oversized shoulders power the robot for up to ten minutes of use, though they make for large targets.`, knife = `simply a 8.5 meter long knife, though additional weapons are under development.`, armor = ``, actuator = ``, cannon = ``, heatsink = ``, ammo = ``, missile = ``; + + if (S.GiantRobot >= 2) loc = ``, armor = `Armor plating has been mounted over the majority of the robot.`; + if (S.GiantRobot >= 3) power = `The robot is now powered by an umbilical cable system instead of bulky and short-lived batteries.`; + if (S.GiantRobot >= 4) knife = `a 25 meter plasma sword. The cutting edge uses plasma to melt and cut through targets, reducing the strain on the sword.`; + if (S.GiantRobot >= 5) actuator = `The limb actuators have been replaced with a faster and more powerful variant, granting the robot the same.`; + if (S.GiantRobot >= 6) cannon = `A custom 45 mm Gatling cannon rifle has been developed for ranged use`, ammo = `, though it lacks enough ammo storage for a main weapon.`; + if (S.GiantRobot >= 7) heatsink = `Large heatsinks have been installed out of the back to solve a massive overheating problem. These heatsinks resemble wings, and tend to glow red with heat when in heavy use.`; + if (S.GiantRobot >= 8) armor = ``, actuator = `Final actuator tweaks have allowed for the addition of exceptionally thick armor without any loss in speed or power.`; + if (S.GiantRobot >= 9) ammo = `, with spare ammunition drums kept along the robot's waist.`; + if (S.GiantRobot >= 10) missile = `Missile pods have been mounted on the shoulders.`; + + return `A prototype giant robot ${loc} rests in a gantry along the side of the arcology. The robot is as tall as a medium-sized office building, focusing on speed over other factors. ${power} ${armor} ${actuator} ${heatsink} The main armament is ${knife} ${cannon}${ammo} ${missile}`; +}; + +window.ms = function() { + const V = State.variables, S = V.SFUnit; + var a = `A cruise missile launch site has been constructed near the base of`, b = `outdated, something quickly rigged together to give the launch site something to fire in the case of an attack`, c = ``, d = ``, e = ``, f = ``, g = ``, h = ``; + + if (S.MissileSilo >= 2) b = `a modern missile`, c = `, tipped with a conventional warhead`; + if (S.MissileSilo >= 3) d = `The launch systems have been overhauled, allowing a launch within seconds of an attack order being given.`; + if (S.MissileSilo >= 4) e = `The missile engines have been tweaked, giving them a greater range.`; + if (S.MissileSilo >= 5) f = `A passive radar has been installed, allowing the missile to follow moving targets.`; + if (S.MissileSilo >= 6) a = `Several cruise missile launch sites have been constructed around`; + if (S.MissileSilo >= 7) e = `The engine has been replaced, giving the missiles greater range and supersonic speeds.`; + if (S.MissileSilo >= 8) g = `The ability to pick new targets should the original be lost has been added.`; + if (S.MissileSilo >= 9) h = `The missile now uses its remaining fuel to create a thermobaric explosion, massively increasing explosive power.`; + if (S.MissileSilo >= 10) c = ` that can be tipped with either a conventional or nuclear warhead`; + + return `${a} the arcology. The current missile armament is ${b}${c}. ${d} ${e} ${f} ${g} ${h}`; +}; + +window.AC = function() { + const V = State.variables, S = V.SFUnit; + var recom = `has been recommisioned from the Old World for $SF.Lower. It`, jets = `Formerly mothballed strike jets`, loc = ``, radar = ``, AA = ``, prop = ``, torp = ``, armor = ``, power = ``, scramble = ``; + + if (V.week % 6 === 0) { loc = `moored to the pier in the Naval Yard`; } else { loc = `patrolling the waters near $arcologies[0].name`; } + if (S.AircraftCarrier >= 2) radar = `The island's radar and comms have been improved.`, recom = ``; + if (S.AircraftCarrier >= 3) AA = `The antiair guns have been updated to automatically track and predict enemy aircraft movement.`; + if (S.AircraftCarrier >= 4) jets = `Modern strike jets with state-of-the-art armaments`; + if (S.AircraftCarrier >= 5) prop = `The propellers have been redesigned, granting greater speed with less noise.`; + if (S.AircraftCarrier >= 6) torp = `An anti-torpedo system detects and destroys incoming torpedoes.`; + if (S.AircraftCarrier >= 7) armor = `Additional armor has been added to the hull and deck.`; + if (S.AircraftCarrier >= 8) power = `The power plant has been converted to provide nuclear power.`; + if (S.AircraftCarrier >= 9) scramble = `The catapult has been converted to an electromagnetic launch system, halving the time it takes to scramble jets.`; + if (S.AircraftCarrier >= 10) jets = `Attack VTOL from the converted for carrier capability`; + + return `An aircraft carrier ${recom} is ${loc}. ${jets} serve as its airpower. ${scramble} ${power} ${radar} ${AA} ${torp} ${prop} ${armor}`; +}; + +window.Sub = function() { + const V = State.variables, S = V.SFUnit; + var recom = `has been recommissioned from the old world, and`, reactor = `Because diesel engines provide power and breathing oxygen is kept in pressurized canisters, the sub must frequently surface.`, reactor1 = ``, cal = ``, hull = ``, tubes = ``, torpedoes = ``, sonar = ``, control = ``, missiles = ``; + + if (S.Sub >= 2) recom = ``, reactor = `A nuclear reactor provides power`, reactor1 = `, but because oxygen is still kept in pressurized canisters the sub must frequently surface to replenish its oxygen stocks.`; + if (S.Sub >= 3) reactor1 = ` and an oxygen generator pulls Oâ‚‚ from the surrounding seawater, allowing the submarine to remain underwater for months if necessary.`; + if (S.Sub >= 4) cal = `Calibration of the propulsion systems has reduced the telltale hum of a moving sub to a whisper.`; + if (S.Sub >= 5) hull = `The outer hull has been redesigned for hydrodynamics and sonar absorption.`; + if (S.Sub >= 6) tubes = `The torpedo tubes have been redesigned for faster loading speeds`, torpedoes = `.`; + if (S.Sub >= 7) sonar = `The passive sonar has been finely tuned to detect mechanical noises miles away.`; + if (S.Sub >= 8) control = `The control room computers have been upgraded to automate many conn duties.`; + if (S.Sub >= 9) torpedoes = `and launch more agile torpedoes.`; + if (S.Sub >= 10) missiles = `The submarine has been outfitted with several cruise missiles to attack land or sea-based targets.`; + + return `An attack submarine ${recom} is moored to the pier of the Naval Yard. ${reactor}${reactor1} ${cal} ${hull} ${tubes}${torpedoes} ${sonar} ${control} ${missiles}`; +}; + +window.HAT = function() { + const V = State.variables, S = V.SFUnit; + var recom = `, has been recommissioned for use by $SF.Lower. It`, tons = `200`, skirt = ``, guns = ``, guns2 = ``, fans = ``, speed = ``, turbines = ``, armor = ``, ramps = ``, HATframe = ``, loadout = ``; + + if (S.HAT >= 2) skirt = `The skirt has been upgraded to increase durabilty and improve cushion when travelling over uneven terrain and waves.`, recom = `,`; + if (S.HAT >= 3) guns = `A minigun`, guns2 = `has been mounted on the front corners of the craft to defend against attackers.`; + if (S.HAT >= 4) fans = `The turbines powering the rear fans`, speed = `acceleration and speed.`, turbines = `have been replaced with a more powerful version, allowing greater`; + if (S.HAT >= 5) armor = `The armor protecting its cargo has been increased.`; + if (S.HAT >= 6) tons = `300`, fans = `The turbines powering the rear fans and impeller`, speed = `acceleration, speed, and carrying capacity.`; + if (S.HAT >= 7) guns = `A minigun and grenade launcher`; + if (S.HAT >= 8) ramps = `The loading ramps have been improved, allowing for faster unloading.`; + if (S.HAT >= 9) HATframe = `The frame has been widened and reinforced, allowing for more space on the deck.`; + if (S.HAT >= 10) loadout = `An experimental loadout sacrifices all carrying capacity to instead act as a floating gun platform by mounting several rotary autocannons the deck, should the need arise.`; + + return `An air cushion transport vehicle, or hovercraft${recom} is parked on the pier of the Naval Yard, ready to ferry ${tons} tons of soldiers and vehicles. ${guns} ${guns2} ${fans} ${turbines} ${speed} ${skirt} ${armor} ${ramps} ${HATframe} ${loadout}`; +}; + +window.Interactions = function() { + const V = State.variables, C = V.SFColonel, T = State.temporary; + var choice = ``, time = ``; + + if (V.SF.WG > 0){ + if (V.choice == 1){ + choice = `$SF.Caps is turning over spare capital in tribute this week. `; + if (V.SFTradeShow.CanAttend === -1 && (C.Talk + C.Fun !== 1)) { + choice += `"I think I can find @@.yellowgreen;<<print cashFormat(Math.ceil($CashGift))>>@@ for you, boss."`;} + else { + choice += `"We can spare@@.yellowgreen;<<print cashFormat(Math.ceil($CashGift))>>@@ in tribute this week, `; + if (V.PC.title != 1){choice += `sir."`;}else{choice += `ma'am."`;}}} + else if (V.choice == 2){ + choice = `$SF.Caps will be throwing a military parade this week. `; + if (V.SFTradeShow.CanAttend === -1 && (C.Talk + C.Fun !== 1)) { + choice += `"I expect the @@.green;public to enjoy@@ the parade, boss."`;} + else { + choice += `"I'll have plans for an @@.green;popular parade@@ on your desk, `; + if (V.PC.title != 1){choice += `sir."`;}else{choice += `ma'am."`;}}} + else if (V.choice == 3){ + choice = `$SF.Caps will be conducting corporate sabotage on rival arcologies' businesses. `; + if (V.SFTradeShow.CanAttend === -1 && (C.Talk + C.Fun !== 1)) { + choice += `"Our interests should see a @@.yellowgreen;big boost@@, boss."`;} + else { + choice += `"Your @@.yellowgreen;arcology's business prospects should see an improvement@@ this week, `; + if (V.PC.title != 1){choice += `sir."`;}else{choice += `ma'am."`;}}}} + + if (C.Talk + C.Fun > 0) time = `The Colonel is busy for the rest of the week, so the Lieutenant Colonel will assist you.`; + + return `${time} <br>${choice}`; +}; + +window.ColonelQuarters = function() { + const V = State.variables, R = Math.ceil(Math.random()*100); + var out = ``; + if (R > 50){ + out = `raises a hand in greeting and nods. She is sprawled on a couch, wearing only her combat suit tank top and fingerless gloves. She's holding a near-empty bottle of strong liquor in her hand and you can see a naked slave girl kneeling on the floor between her legs. The Colonel has her legs wrapped tightly around the girl's head, forcing the girl to service her if she wants to breathe. The Colonel is close to her climax then suddenly tenses her lower body thus gripping the girl even tighter and throws her head back in ecstasy as she orgasms. She lets out a long breath finally releasing the girl, giving her a hard smack and shouting at her to fuck off.<br><br> The Colonel finishes off her bottle, tossing it over her shoulder then leaning back on the couch and spreading her legs wide. You look down briefly, falling into your habits of inspection. Her pussy is completely devoid of hair with heavy labia in with a very large and hard clit peaking out. Beads of moisture, the result of her excitation, are visible, and you can tell from long experience that she would be tight as a vise. You return your gaze to her face to find her smirking at you. "Like what you see, <<print SFCR()>>?" She waves her hand at the plaza around her, "So do they. But you're not here for pussy. You're here to talk business. So, what's up?"`; + }else if (R > 50){ + out = `is in no condition initially to greet you. She's naked except for one sock that gives you a very good view of her muscled, taut body while lunging with her feet on the table and the rest on her couch. She is face down in a drugged-out stupor in the middle of a wide variety of powders and pills. Perhaps sensing your approach, her head suddenly shoots up and looks at you with unfocused, bloodshot eyes. "Sorry, <<print SFCR()>>," she slurs, wiping her face and weakly holding up a hand. "Hold on a second, I need something to help me out here. Long fucking night." She struggles to sit on the couch and bending over the table, loudly snorts up some of the white powder on it. "Ahhh, fuck," she says, breathing heavily.<br><br> She shakes her head powerfully now looking at you, her eyes once again alert and piercing. "That's better," she says, leaning back on the couch and giving you another good view of her assets. "So, <<print SFCR()>>," she begins, "what brings you down here to our little clubhouse? I trust you're happy with how we've been handling things out there?" You nod. "Excellent", she laughs. "I have to say; it's nice to have a place like this while having some top-end gear and to be able to have fun out there without worrying about anyone coming back on us. Good fucking times." She laughs again. "So - I'm assuming you want something?"`; + }else if (R > 70 && V.SF.Depravity >= 1.5 && V.SFColonel.Core == "cruel"){ + out = `is relaxing on her couch stark naked, greeting you with a raised hand. Between her tightly clenched legs is a slave girl being forced to eat her out. "Hey, <<print SFCR()>>, what's -" she breaks off as a flash of pain crosses her features. "Fucking bitch!" she exclaims, pulling her legs away and punching the slave girl in the face. She pushes the girl to the ground, straddling her then begins hitting. You hear one crunch after another as The Colonel's powerful blows shatter the girl's face. She hisses from between clenched teeth, each word accompanied by a brutal punch. "How. Many. Fucking. Times. Have. I. Told. You. To. Watch. Your. Fucking. Teeth. On. My. Fucking. Clit!" She leans back, exhaling heavily. Before leaning back down to grip apply pressure onto the girl's neck with her powerful hands. Wordlessly, she increases the pressure and soon the girl begins to turn blue as she struggles to draw breath. Eventually her struggles weaken and then finally, end.<br><br> The Colonel relaxes her grip then wipes her brow, clearing away the sweat from her exertion. Finally rising from the girl's body, relaxing back on the couch and putting her feet back up on the table. "Sorry about that <<print SFCR()>>," she says, shrugging. "So many of these bitches we pick up from the outside don't understand that they have to behave." Shaking her head in frustration, "Now I need to find another one. But that's not your problem - you're here to talk business. So, what's up?"`; + }else{ + out = `is topless while reviewing the particulars of her unit on a tablet as you approach. She raises a hand in greeting. "Hey <<print SFCR()>>," she says, noticing you looking at her chest. She laughs. "Nice, aren't they? But they're not for you or them." She throws a thumb at the plaza around her. "You're down here for a reason, though. What can I do for you?"`;} + return `${out}`; +}; + +window.progress = function(x,max) { + var out = `â`, z, i; + if (max === undefined) { + Math.clamp(x,0,10); + if (State.variables.SF.Units < 30) { + z = 5 - x; + for (i=0;i<x;i++) out += `â–ˆâ`; + for (i=0;i<z;i++) out += `<span style=\"opacity: 0;\">â–ˆ</span>â`; + for (i=0;i<5;i++) out += `â–‘â`;} + else { + z = 10 - x; + for (i=0;i<x;i++) out += `â–ˆâ`; + for (i=0;i<z;i++) out += `<span style=\"opacity: 0;\">â–ˆ</span>â`;}} + else { + Math.clamp(x,0,max); + x = Math.floor(10*x/max); + z = 10 - x; + for (i=0;i<x;i++) out += `â–ˆâ`; + for (i=0;i<z;i++) out += `<span style=\"opacity: 0;\">â–ˆ</span>â`;} + return `${out}`; +}; \ No newline at end of file diff --git a/src/pregmod/SecForceEX/NamingColonel.tw b/src/pregmod/SecForceEX/NamingColonel.tw new file mode 100644 index 0000000000000000000000000000000000000000..d8f0e7f57e7c35115d0632c28b487facfa15d8a6 --- /dev/null +++ b/src/pregmod/SecForceEX/NamingColonel.tw @@ -0,0 +1,144 @@ +:: Security Force Naming-Colonel [nobr] +<<set $nextButton = " ">> <<if ndef $NamingColonel>> <<set $NamingColonel = 0>> <</if>> +<<if $NamingColonel === 0>> + It's been a short while since you told your citizens that you were going to talk to them about their security, and by all accounts, they've turned out in force to watch your address over the arcology's internal communications system. You wake up early, relieve your frustrations on a few slaves woken out of deep sleep, and take position behind your desk. You also call over a slave and push her under your desk. The unspoken instruction is clear, and she begins enthusiastically + <<if $PC.dick == 1>> + sucking your cock, taking it as deep as she can without gagging. + <<else>> + eating you out, pressing her face into your pussy and forcing her tongue deep inside you. + <</if>> + + <br><br>A blinking light tells you that the channel is open. You take a deep breath, and begin. You greet your citizens and explain that while you believe deeply in the underlying principles of the Free Cities, recent events have forced you to modify some of your views. The Old World attack from the outside and the more recent assault by the Daughters of Liberty from within has proven that some form of permanent, organized standing force is needed to ensure the personal safety of the citizen body. + + <br><br>You tell them that the Old World continues to deteriorate. You tell them that it is only a matter of time before the poor, diseased, starving, and unwashed masses try their hand at invading the arcology again. You tell them that such a force would be good for business, securing trade routes and conducting slaving raids far greater in scale than those performed by private slaving corporations. And finally, to quell their greatest fear, you tell them that you would personally support the force financially. + + <br><br>As you speak, you carefully monitor the citizens' opinions as indicated on their communication devices. It is uniformly positive - they know whom they have to thank for their continued survival and dominance. You also monitor your arousal given the ministrations of your slave. A few small movements on your part communicate to your citizens what is happening without being too obvious. Free Cities business etiquette respects business conducted while being subtly serviced (and your doing so during such a public and important broadcast signals how seriously you are taking it), but a climax would be seen as a serious lack of discipline. + + <br><br>You finally wrap up your speech, declaring yourself Marshal of the newly-formed <<textbox "$SF.Lower" $SF.Lower>> + + <br><br>You close the link to the communication system and read a message from your assistant that appeared during the last moments of your address. In consultation with major figures in the mercenary community, a suitable candidate for day-to-day command of the new unit has been found. Your instructions were to keep you in the dark about them so as to avoid prejudgment. They are waiting outside your office. + + <br><br>[[Invite them inside|Security Force Naming-Colonel][$NamingColonel = 1]] +<</if>> +<<if $NamingColonel === 1>> + The figure that enters is not what you were expecting, given your previous experiences with the mercenary groups that work with the arcology owners of the Free Cities. Most mercenaries you've worked with have been grizzled stout men, veterans of the Old World militaries that finally had too much and went private. Instead, a woman walks in. + <<if $SFColonel.Core == "">> + She strikes you as someone who is likely to be: + <br><br>[[Kind|Security Force Naming-Colonel][$SFColonel.Core = "kind"]] + <br>[[Cruel and psychopathic|Security Force Naming-Colonel][$SFColonel.Core = "cruel"]] + <br>[[A brazen warmonger|Security Force Naming-Colonel][$SFColonel.Core = "brazen"]] + <br>[[Jaded|Security Force Naming-Colonel][$SFColonel.Core = "jaded"]] + <br>[[Shell-shocked|Security Force Naming-Colonel][$SFColonel.Core = "shell shocked"]] + <</if>> + <<if $SFColonel.Core !== "">> + She is likely to be ''$SFColonel.Core''. + <br><br>She strides in, stopping in front of your desk, + <<switch $SFColonel.Core>> + <<case "kind">> + pulling off a laid-back salute with an easy grin. + <<case "cruel">> + her eyes flashing a hard glare in an instant before quickly softening into those of someone who wants something you have. + <<case "brazen">> + snapping off a textbook salute that decades of hard service grills into a veteran. + <<default>> + not bothering to put on even the semi-military air (complete with salute) that most mercenaries tend to adopt when meeting new clients. + <</switch>> + She is very tall and wearing the pants, boots, gloves, and the tank top undershirt of a standard female combat uniform. Her bare arms and upper body are corded with muscle, and through the tank top's thin fabric you can see both the shape of her muscled abdomen and the curves of her small but perky breasts, complete with what your experience tells you are barbell nipple piercings. Her eyes are alive with intelligence, and you can see her scanning your office, clearly impressed by its opulence. Her hair is shaved close to the scalp, and her ears and nose are heavily pierced. You can make out three long, ugly scars running over top of the mottled tissue of a previous, severe burn along one side of her face, as well as numerous smaller scars and burns on her bare arms. She's been disarmed prior to meeting you; the pistol holster on her hip lies empty, as do at least three knife holsters about her person. + + <br><br>Returning your gaze to her face, she crosses her arms underneath her chest, pressing her breasts up and forward. You have her measure. Given the generally patriarchal nature of both the mercenary community, and the same nature combined with the heavily sexualized lifestyle of the Free Cities, she's decided to embrace her position rather than fight it. + + <br><br>"So," she begins, "you're the boss." You invite her to sit down. "No thanks, boss. Besides," + <<switch $SFColonel.Core>> + <<case "kind">> + she playfully + <<case "shell shocked">> + she uncomfortably + <<default>> + she + <</switch>> + indicates the slave under your desk, "you look a little occupied." She nods at the camera across from you. "Saw the speech. Very nice. I'd heard you crazy bastards do business while getting + <<if $PC.dick == 1>> + sucked off, + <<else>> + eaten out, + <</if>> + but I've never seen anyone actually do it. Hell, most of you people don't want to have to have too much to do with a merc like me. I usually get my instructions remotely." + <<switch $SFColonel.Core>> + <<case "jaded" "brazen">> + A short, harsh laugh escapes her. "But I guess it keeps you focused. Can't have the entire arcology seeing you cum." + <<case "kind">> + She grins. "That kind of thing doesn't really bother me though." + <<case "cruel">> + She frowns. "The client always seems to be happier that way." + <</switch>> + <br><br>She moves a step closer. "Your computer-helper-thing told me you wanted me to be a surprise, so I guess I'll tell you why you want me to run the $SF.Lower for you. I'm a killer, pure and simple,<<if $SFColonel.Core === "cruel">>" she smiles, "<</if>>and you need that. I looked into those attacks you've suffered. Nasty business. I'll make sure that an attack like that never happens again. I was a soldier out there, in charge of about a thousand men when the Free Cities first started going up, and I knew they were the future. Eventually I deserted, found the first refugee convoy I could, killed the moron protecting it, sold the girls off to slavers, and bought enough gear to start killing for people like you. Ran my own merc crew, did well till we tried to take on a bigger one and everyone died." + <<switch $SFColonel.Core>> + <<case "shell shocked">> + She looks away, caught in her own memories. It takes a solid minute before she starts again. + <<case "cruel">> + Her smile grows. + <<default>> + She pauses for a moment. + <</switch>> + "Joined with another big outfit, became the number two, then shit went bad and I had to run. Been a solo fighter and slaver ever since. I know my work, and I know I can make this work." + + <br><br>You feel your climax approaching and hold up a finger. The merc pauses while you + <<if $PC.dick == 1>> + grab the slave's head, forcing your cock roughly down her throat while you cum. She swallows as much as she can before pulling away, coughing. + <<else>> + grip the slave's head tightly with your thighs, pressing her face tightly against your pussy as you cum. When you release her, she pulls away, coughing. + <</if>> + + <br><br> + <<if $SFColonel.Core === "shell shocked">> + The merc looks away again, letting the girl settle down before continuing. + <<else>> + The merc laughs again. "I could get used to a place like this." + <</if>> + She waves her hand around the office. "I bet you want to know why I'd be trustworthy for something like this." You don't correct her. "Thought so." Her demeanor softens, and you can detect a hit of nervousness. "I would say that I've never turned on a client and leave it at that, but this is different. It's getting worse out there. I'm sure you know that." You give her a slight nod. "Four times now I've woken up in the middle of the night and had to kill someone.<<if $SFColonel.Core === "shell shocked">>"<<else>> Two of them were the people I'd taken to bed. You can't even trust your drunken fucks anymore. + <<switch $SFColonel.Core>> + <<case "kind">> + It's a shame, but that's the world we live in." + <<case "cruel">> + Then again, who doesn't like a good hard fuck and stab?" + <<default>> + But what else is new?" + <</switch>><</if>> + + <br><br> + <<if $SFColonel.Core === "jaded" || $SFColonel.Core === "shell shocked">> + "All I know how to do at this point is fight, and that's kept me alive this far. + <<else>> + "I like fighting, but I want to live somewhere where I can relax from life out there. + <</if>> + You give me the job and a place to live, let me hang up the uncertainty of being a merc, and I'll die for you if it comes to that. I promise the people I recruit will feel the same. Besides," she grins, "I could get used to + <<switch $SFColonel.Core>> + <<case "brazen">> + crushing any enemy that looks our way." + <<case "cruel">> + having my own stable to abuse as I see fit. A terrified little slavegirl locked between my legs, struggling to breathe?" + <<default>> + spending my R&R time with a cold beer in one hand, a few lines of coke or a stack of pills in front of me." + <</switch>> + A glint runs through her eyes. "Sounds like a good fucking time." + + <br><br>You quickly decide she'll do. You tap a few commands on your desk's console, assigning her personal quarters on the arcology's higher levels and transferring her first stipend to her new account. You also ask her what title she wants. + + <br><br>"Title?" Another short laugh. "I guess I do need one, given that I'm all official and shit now." She thinks for a moment. "I was a major before I went freelance, and I think I'd like a promotion. Colonel sounds good." You make a note of this in her file. "You people don't seal contracts with a fuck do you?" Reassuring her you don't, she laughs again. "Good. I make it a point never to fuck the boss. It's bad for business." She turns around. "Well, I guess I'd better get to it. Your helper-thing assigned me space on the lower levels for the firebase. I brought a few squads of guys I know from the old days to start, but we'll grow fast once I put the word out, I guarantee it." + + <br><br>[[Let her leave|Security Force Naming-Colonel][$NamingColonel = 2]] + <</if>> +<</if>> +<<if $NamingColonel === 2>> + <<set $nextLink = "Next Week",$nextButton = "Continue">> <<unset $NamingColonel>> + She turns and leaves, and you chase the slave out after her. A few minutes later, a soft chime announces the arrival of a message. It's from the Colonel. + + <br><br>//Hey boss, just wanted to mention something else. In your speech you said that you were going to be paying for $SF.Lower. In my mind that means it's yours, no matter what anyone else here might think. I do what you tell me to do. I make sure the troops behave as you want them to behave. I've worked for some 'nice guys' in the past, and I can do that job if you want. It's boring, but sustainable, and I'll have the $SF.Lower turning a profit and supporting the arcology in good order. But if you let me <<if $SFColonel.Core === "cruel">>off the leash<<else>>do what I do<</if>> and throw any Old World complaints in the trash where they belong, I promise you'll have money pouring into your coffers, even accounting for the good amounts me and my boys will pocket along the way. You'll have an empire in short order. + <<if $mercenaries > 1>> + Either way, I'll keep my hands off those mercs you've already installed. I figure that you've reasons for having two different death squads under contract. + <</if>> + + <br><br>Oh, one last thing. I know you've got some kind of grand social experiment going on up there like all the other arco owners, and that's your own deal, but I'd appreciate it if you could keep that stuff out of the new barracks. I'll have a hard time approaching potential recruits and telling them they should come live in a Roman apartment, an Egyptian temple, a goddamn Japanese teahouse, or some of the other crazy shit I've seen in the past. They're hard, nasty people, and trust me, I can tell you from experience that changing that is just not going to happen. Like I said, though, I can hold them back a bit if you like. + + <br><br>Talk to you later, boss.// <<set $SF.Active = 2>> +<</if>> diff --git a/src/pregmod/SecForceEX/Proposal.tw b/src/pregmod/SecForceEX/Proposal.tw new file mode 100644 index 0000000000000000000000000000000000000000..741fb89491788f09589c74c3f07e05a53f8186e4 --- /dev/null +++ b/src/pregmod/SecForceEX/Proposal.tw @@ -0,0 +1,43 @@ +:: Security Force Proposal [nobr] +<<if $SF.Active === -1>> + <span id="result"> + + The Free Cities were founded on the principles of unrestrained anarcho-capitalism. To those with such beliefs, the very idea of possessing an armed force, a key tool of government control, or weapons at all, was anathema. + + <br><br>In the period since, however, your citizens have seen the value in weaponry. They watched on their news-feed as some Free Cities were sacked by the armies and mobs of the Old World, driven by their hatred of the citizens' luxurious lifestyles. They've seen other Cities toppled from within, by slave conspiracies or infighting among citizen groupings with differing beliefs. They've witnessed the distressingly rapid rise of fanatical anti-slavery organizations, who would like nothing more than to see them slowly bled by their own chattel. They are learned people, and they know what happens to slaveowners who lose their power. + + <br><br>They've also seen the results of your policies. Your actions towards the arming of both yourself and the arcology proved critical, and ensured their safety when the Old World came for them. And your victory over the Daughters of Liberty, who the citizens know would have executed every single one of them, has created an opportunity. If you insisted upon the creation of a standing 'special' force for the arcology, many would support you and, more importantly, nobody of note would object. + + <br><br>Such a force would solve many problems. More soldiers would mean more control, which is very good for you. More soldiers would mean more security for the arcology and the approaches to it, which is very good for business. More soldiers would mean more obedience from rebellious slaves who can see how powerless they truly are, which is very good for everybody. The force would be tiny compared to the Old World militaries that still exist, but money and technology can, of course, overcome massive numerical inferiority. This being the Free Cities, they would have other uses besides security. Perhaps, in time, you could exert some manner of influence on the Old World itself. + + <br><br>''This is a unique and very important opportunity'', and is possible only because of your recent victory over the Daughters. If you do not seize it, the memories and fears of your citizens will fade,and you will not be able to raise the matter again. + + <<set _price = 20000>> <<if $PC.warfare >= 100>> <<set _price = _price/2>> + <<elseif $PC.warfare >= 50||$PC.career === "arcology owner">> + <<set _price = _price/1.5>> <</if>> + <br><<link "Prepare for an announcement.""Security Force Proposal">> <<replace "#result">> + + You instruct $assistantName to announce to the arcology's citizenry that you will be making an important announcement in the near future regarding the security situation. Given the damage still present from the Daughters' attack, everyone will be tuning in. You also instruct your assistant to begin quietly investigating potential leadership figures for the force itself. + + <<run Object.assign($SF, {Active:1, Depravity:0, Units:0, MWU:0, U:0, WG:0, SpecOps:0, SpecOpsLock:0, + ROE:"hold", Target:"recruit", Regs:"strict", Caps:"The Special Force", + Lower:"the special force", Subsidy:1})>> <<set $cash -= _price>> + <<set $SFUnit = Object.assign({}, $SFUnit, {Troops:40, Armoury:0, Firebase:0, AV:0, TV:0, Drones:0, + Drugs:0, PGT:0, AA:0, AT:0, SpacePlane:0, GunS:0, Satellite:0, GiantRobot:0, MissileSilo:0, + AircraftCarrier:0, Sub:0, HAT:0})>> <<set $arcologies[0].SFRaid = 1,$arcologies[0].SFRaidTarget = -1>> + <<set $SFColonel = Object.assign({}, $SFColonel, {Core:"", Talk:0, Fun:0, Status:0})>> + <<set $SFTradeShow = Object.assign({}, $SFTradeShow, {History:0, CanAttend:0, + Income:0, Revenue:0, Helots:0, TotalHelots:0, Mercs:0, TotalMercs:0})>> + <<set $SatLaunched = 0>> + <</replace>> <</link>><br>//Initial costs are @@.yellowgreen;<<print cashFormat(_price)>>@@ and upon establishment the force will have significant support costs until it is self-sufficient.// + + <br><<link "The current measures are enough.""Next Week">> <<replace "#result">> <<run Object.assign(, $SF, {Active:0})>> <</replace>> <</link>> </span> +<<elseif $SF.Active === 1>> + <<include "Security Force Naming-Colonel">> +<<elseif $SF.Active >= 1 && passage() === "New Game Plus">> + <<run Object.assign($SF, {Active:-1, Depravity:0, Units:0, MWU:0, U:0, WG:0, SpecOps:0, SpecOpsLock:0, ROE:"hold", Target:"recruit", Regs:"strict", Caps:"The Special Force", Lower:"the special force", Subsidy:1})>> + <<set $SFUnit = Object.assign({}, $SFUnit, {Troops:40, Armoury:0, Firebase:0, AV:0, TV:0, Drones:0, Drugs:0, PGT:0, AA:0, TA:0, SpacePlane:0, GunS:0, Satellite:0, GiantRobot:0, MissileSilo:0, AircraftCarrier:0, Sub:0, HAT:0})>> + <<set $SatLaunched = 0>> + <<set $arcologies[0].SFRaid = 1,$arcologies[0].SFRaidTarget = -1>> <<set $SFColonel = Object.assign({}, $SFColonel, {Core:"", Talk:0, Fun:0, Status:0})>> + <<set $SFTradeShow = Object.assign({}, $SFTradeShow, {History:0, CanAttend:0, Income:0, Revenue:0, Helots:0, TotalHelots:0, Mercs:0, TotalMercs:0})>> +<</if>> \ No newline at end of file diff --git a/src/pregmod/SecForceEX/Report.tw b/src/pregmod/SecForceEX/Report.tw new file mode 100644 index 0000000000000000000000000000000000000000..49899d18fb3e97f8105dbdabcb4c62181d663eea --- /dev/null +++ b/src/pregmod/SecForceEX/Report.tw @@ -0,0 +1,407 @@ +:: SF_Report [nobr] + + <<silently>> <<= Count()>> + + <<if $SFUnit.Troops > 2000>> <<set $SFUnit.Troops = random(1955,1999)>> <</if>> + + <<if $SFUnit.Troops < 100>> <<set $SFUnit.Troops += Math.ceil(random(2,5))>> + + <<elseif $SFUnit.Troops < 2000>> + + <<if $SF.Target == "recruit">> + + <<set $SFUnit.Troops += Math.ceil(random(-1*$SFUnit.Troops/100,0))>> + + <<elseif $SF.Target == "raiding">> + + <<set $SFUnit.Troops += Math.ceil(random(-3*$SFUnit.Troops/100,-4*$SFUnit.Troops/100))>> + + <<else>> + + <<set $SFUnit.Troops += Math.ceil(random(-2*$SFUnit.Troops/100,-3*$SFUnit.Troops/100))>> + + <</if>> + + <</if>> + + <<set _Income = 50000,_Profit = 0,_ME = 1,_FNGs = 10,_Trade = 0.025>> + + <<if $SF.SpecOps > 0>> + + <<if $SF.SpecOps === 1>> <<set $SFUC = Math.ceil($SFUnit.Troops*.1),$SFUnit.Troops-$SFUC>> + + <<else>> <<set $SFUC = Math.ceil($SFUnit.Troops*.25),$SFUnit.Troops-$SFUC>> <</if>> + + <</if>> + + <<if $SFUnit.Troops > 200>> <<set _Trade += 0.05*(Math.ceil($SFUnit.Troops/100))>> + + <<set _Income += 5000*(Math.ceil($SFUnit.Troops/100))>> + + <<if $secExp > 0>> + + <<set $authority += 500*(Math.ceil($SFUnit.Troops/100)),$authority = Math.clamp($authority, 0, 20000)>> + + <</if>> + + <</if>> + + + + <<if $SFUnit.Firebase > 0>> + + <<set _FNGs += $SFUnit.Firebase,_Trade += 0.5*$SFUnit.Firebase,_ME *= 1+($SFUnit.Firebase)>> + + <</if>> + + <<if $SFUnit.Armoury > 0>> + + <<set _FNGs += ($SFUnit.Armoury*2),_Trade += 0.25*$SFUnit.Armoury,_ME *= 1+($SFUnit.Armoury)>> + + <</if>> + + <<if $SFUnit.Drugs > 0>> + + <<set _FNGs += $SFUnit.Drugs,_Trade += 0.25*$SFUnit.Drugs,_ME *= 1+($SFUnit.Drugs)>> + + <</if>> + + <<if $SFUnit.Firebase >= 1>> + + <<if $SFUnit.AV > 0>> + + <<set _FNGs += $SFUnit.AV,_Trade += 0.25*$SFUnit.AV,_ME *= 1+($SFUnit.AV)>> + + <</if>> + + <<if $SFUnit.TV > 0>> + + <<set _FNGs += $SFUnit.TV,_Trade += 0.25*$SFUnit.TV,_ME *= 1+($SFUnit.TV)>> + + <</if>> + + <<if $SFUnit.PGT > 0>> + + <<set _Trade += 0.25*($SFUnit.PGT),_ME *= 1+($SFUnit.PGT)>> + + <</if>> + + <</if>> + + <<if $SFUnit.Firebase >= 2 && $SFUnit.Drones > 0>> + + <<set _FNGs += $SFUnit.Drones,_Trade += 0.5*$SFUnit.Drones,_ME *= 1+($SFUnit.Drones)>> + + <</if>> + + + + <<if $SFUnit.Firebase >= 4>> + + <<if $SFUnit.AA > 0>> + + <<set _FNGs += $SFUnit.AA,_Trade += 0.25*$SFUnit.AA,_ME *= 1+($SFUnit.AA)>> + + <</if>> + + <<if $SFUnit.TA > 0>> + + <<set _FNGs += $SFUnit.TA,_Trade += 0.25*$SFUnit.TA,_ME *= 1+($SFUnit.TA)>> + + <</if>> + + <<if $SFUnit.SpacePlane > 0>> + + <<set _FNGs += $SFUnit.SpacePlane,_Trade += 0.25*$SFUnit.SpacePlane,_ME *= 1+($SFUnit.SpacePlane)>> + + <</if>> + + <<if $SFUnit.GunS > 0>> + + <<set _FNGs += $SFUnit.GunS,_Trade += 0.25*$SFUnit.GunS,_ME *= 1+($SFUnit.GunS)>> + + <</if>> + + <<if $SFUnit.Satellite > 0>> + + <<set _FNGs += $SFUnit.Satellite,_Trade += 0.25*$SFUnit.Satellite,_ME *= 1+($SFUnit.Satellite)>> + + <</if>> + + <<if $SFUnit.GiantRobot > 0>> + + <<set _FNGs += SF.GiantRobot,_Trade += 0.25*$SFUnit.GiantRobot,_ME *= 1+($SFUnit.GiantRobot)>> + + <</if>> + + <<if $SFUnit.MissileSilo > 0>> + + <<set _Trade += 0.25*$SFUnit.MissileSilo,_ME *= 1+($SFUnit.MissileSilo)>> + + <</if>> + + <</if>> + + + + <<if $SFUnit.AircraftCarrier > 0>> + + <<set _FNGs += $SFUnit.AircraftCarrier,_Trade += 0.25*$SFUnit.AircraftCarrier,_ME *= 1+($SFUnit.AircraftCarrier)>> + + <</if>> + + <<if $SFUnit.Sub > 0>> + + <<set _FNGs += $SFUnit.Sub,_Trade += 0.25*$SFUnit.Sub,_ME *= 1+($SFUnit.Sub)>> + + <</if>> + + <<if $SFUnit.HAT > 0>> + + <<set _Trade += 0.25*$SFUnit.HAT,_ME *= 1+($SFUnit.HAT)>> + + <</if>> + + + + <<if $SFColonel.Fun > 0>> <<set _ME *= 1+($SFColonel.Fun)>> <</if>> + + <<if $SFTradeShow.History > 0>> <<set _ME *= 1+($SFTradeShow.History)>> <</if>> + + <<if $LieutenantColonel == 1>> <<set _ME *= 1+($LieutenantColonel)>> <</if>> + + + + <<set _SFD = $SF.Depravity>> + + <<switch $SFColonel.Core>> <<case "kind" "collected.">> + + <<set _FNGs += 10,_Trade += 0.15,_SFD -= 0.15>> + + <<case "warmonger" "cruel" "psychopathic">> + + <<set _ME *= 1.15,_Trade -= 0.15,_SFD += 0.15>> + + <</switch>> + + <<if $SF.Target == "raiding">> <<set _SFD += 0.05>> + + <<elseif $SF.Target == "secure">> <<set _SFD -= 0.05>> <</if>> + + <<if $SF.ROE == "free">> <<set _ME *= .95,_SFD += 0.05,_Trade += _Trade*.95>> + + <<elseif $SF.ROE == "hold">> <<set _ME *= 1.05,_SFD -= 0.05,_Trade += _Trade*1.05>> <</if>> + + <<if $SF.Regs == "none">> <<set _ME *= .95,_SFD += 0.05,_Trade += _Trade*.95>> + + <<elseif $SF.Regs == "strict">> <<set _ME *= 1.05,_SFD -= 0.05,_Trade += _Trade*1.05>> <</if>> + + <<if _SFD != 0>> + + <<if _SFD < 0>> <<set _ef0 = _SFD*10,_ef1 = 1-(_SFD/10)>> + + <<elseif _SFD > 0>> <<set _ef0 = 1-(_SFD/10),_ef1 = _SFD*10>> <</if>> + + <<set _Trade += _Trade*(_ef0),_Income += _Income*(_ef1)>> <</if>> + + + + <<if $SF.Target == "recruit">> <<set _FNGs += Math.ceil((_FNGs)*.95)>> + + <<else>> <<set _FNGs += Math.ceil((_FNGs)*.25)>> <</if>> + + <<if $SF.Target == "secure">> <<set $rep += Math.ceil($rep*((_Trade/100)*.95))>> + + <<set $arcologies[0].prosperity = Math.ceil(($arcologies[0].prosperity+(_Trade/10)*.95))>> + + <<else>> <<set $rep += Math.ceil($rep*((_Trade/100)*.25))>> + + <<set $arcologies[0].prosperity = Math.ceil(($arcologies[0].prosperity+(_Trade/10)*.25))>> + + <</if>> + + <<if $secExp > 0>> <<set $authority += $SF.Units*10,$authority = Math.clamp($authority, 0, 20000)>> <</if>> + + + + <<set _Income += _ME*(1+($week/10)),$SFUnit.Troops += Math.round(_FNGs/2)>> + + <<if $SFUnit.Troops > 2000>> <<set $SFUnit.Troops = random(1955,1999)>> <</if>> + + <<if $rep > 20000>> <<set $rep = 20000>> <</if>> + + <<if $arcologies[0].prosperity > $AProsperityCap>> + + <<set $arcologies[0].prosperity = $AProsperityCap>> <</if>> + + <<if _Income >= 90000>> <<set _Profitable = 1,$SF.Subsidy = 0>> + + <<if $SF.Target == "raiding">> <<set _Profit = Math.ceil(_Income*1.95)>> <<else>> + + <<set _Profit = Math.ceil(_Income*1.25)>> <</if>> + + <<set $cash += _Profit>> + + <<else>> <<set _Profitable = 0>> <</if>> + + + + <<if $SFUnit.Drugs >= 8 || $SFUnit.Drugs >= 10>> <<set _Deaths = 0,_SurvivalChance = 50>> + + <<if $SFUnit.Drugs >= 8>> <<set _SurvivalChance -= 5>> <<elseif $SFUnit.Drugs >= 10>> + + <<set _SurvivalChance += 5>> <</if>> + + <<if random(0,100) > _SurvivalChance>> + + <<set _Deaths = random(0,(($SFUnit.Drugs*2)+4))>> <</if>> + + <<if _Deaths > 0>> <<set $SFUnit.Troops -= _Deaths>> <</if>> + + <</if>> <</silently>>__Status and Activities of $SF.Lower __: + + <br>This week, $SF.Lower, <<print commaNum($SFUnit.Troops)>> strong, focused on + + <<if $SF.Target == "recruit">> + + recruiting and training more personnel. Smaller parties ventured out to protect the arcology's trade routes and strike targets of opportunity. + + <<elseif $SF.Target == "secure">> + + securing the trade routes between the arcology and the surrounding area. Smaller parties ventured out to strike targets of opportunity and process new recruits. + + <<elseif $SF.Target == "raiding">> + + locating and striking targets of opportunity, capturing both material loot and new slaves. Smaller parties secured the most important of the arcology's trade routes and processed new recruits. + + <</if>> + + <<if $SF.SpecOps > 0>> <br>A <<if $SF.SpecOps <2>>small<<else>>large<</if>> portion of the force was assigned as <<if $SF.SpecOps <2>>part<<else>>full<</if>> time undercover officers.<</if>> + + + + <<if _Deaths > 0>> + + <<print (_Deaths)>> soldiers fatally overdosed on the drug cocktail + + <<if $SFTradeShow.CanAttend === -1>> + + , The Colonel's much heavier than average drug use saves her from this side effect + + <</if>>. + + <</if>> + + These activities have, overall, @@.green;improved@@ your arcology's prosperity. + + The goods procured by the $SF.Lower this week, after accounting for the spoils retained by individual soldiers were + + <<if _Profitable>> + + , @@.green;more than sufficient@@ to cover expenses. Excess material and human asets totaling @@.yellowgreen;<<print cashFormat(_Profit)>>@@ (after liquidation) were transferred to your accounts. + + <<else>> + + , @@.red;barely enough@@ to cover expenses. More growth will be needed to ensure profitability. + + <</if>> + + $SF.Caps managed to recruit <<print Math.round(_FNGs/2)>> new soldiers this week, and your reputation has @@.green;increased@@ through the improvement of trade security. + + + + <br> //Your instructions to <<print SFC()>>:// + + <br> Deployment focus: + + <span id="focus"> <<if $SF.Target == "recruit">> ''Recruiting and Training'' + + <<elseif $SF.Target == "secure">> ''Securing Trade Routes'' + + <<else>> ''Raiding and Slaving'' <</if>> </span> . + + <<link "Recruit and Train">> <<set $SF.Target = "recruit">> + + <<replace "#focus">> ''Recruiting and Training'' <</replace>> <</link>> + + | <<link "Secure Trade Routes">> <<set $SF.Target = "secure">> + + <<replace "#focus">> ''Securing Trade Routes'' <</replace>> <</link>> + + | <<link "Raiding and Slaving">> <<set $SF.Target = "raiding">> + + <<replace "#focus">> ''Raiding and Slaving'' <</replace>> <</link>> + + <br> Rules of Engagement: + + <span id="roe"> <<if $SF.ROE === "hold">> ''Hold Fire'' + + <<elseif $SF.ROE === "limited">> ''Limited Fire'' <<else>> ''Free Fire'' <</if>> + + </span>. + + <<link "Hold Fire">> <<set $SF.ROE = "hold">> <<replace "#roe">> ''Hold Fire'' + + <</replace>> <</link>> + + | <<link "Limited Fire">> <<set $SF.ROE = "limited">> <<replace "#roe">> + + 'Limited Fire'' <</replace>> <</link>> + + | <<link "Free Fire">> <<set $SF.ROE = "free">> <<replace "#roe">> ''Free Fire'' + + <</replace>> <</link>> + + <br> Accountability: + + <span id="accountability"> <<if $SF.Regs === "strict">> ''Strict Accountability'' + + <<elseif $SF.Regs === "some">> ''Some Accountability'' <<else>> + + ''No Accountability'' <</if>> </span>. + + <<link "Strict Accountability">> <<set $SF.Regs = "strict">> + + <<replace "#accountability">> ''Strict Accountability'' <</replace>> <</link>> + + | <<link "Some Accountability">> <<set $SF.Regs = "some">> + + <<replace "#accountability">> ''Some Accountability'' <</replace>> <</link>> + + | <<link "No Accountability">> <<set $SF.Regs = "none">> + + <<replace "#accountability">> ''No Accountability'' <</replace>> <</link>> + + <<if $SFTradeShow.View > 0 && $SFTradeShow.CanAttend === 1>> <br>''Merc Meetup'': + + <<set $SFTradeShow.Income = 0,$SFTradeShow.Helots = 0>> + + <<set _TradeShowAttendes = 200,_MenialSlavesPerAttendee = 5>> + + <<set _MenialSlaves = Math.ceil(random(1,((_TradeShowAttendes*_MenialSlavesPerAttendee)/10)))>> + + <<set _TSProfit = Math.ceil(500000*(1+($SF.Units/1000))*(1+($arcologies[0].prosperity/1000))*_Env)>> + + The Colonel managed to sell some of your more minor schematics to the _TradeShowAttendes attendees. She even managed to win some menial slaves in the big poker game.<br> + + <<set $helots = $helots+_MenialSlaves>> + + <<set $SFTradeShow.Helots += _MenialSlaves,$SFTradeShow.TotalHelots += _MenialSlaves>> + + <<set $cash = $cash+_TSProfit,$SFTradeShow.Income += _TSProfit>> + + <<set $SFTradeShow.Revenue += _TSProfit>> + + <<if $secExp > 0 && $mercenaries > 0>> <<set $SFTradeShow.Mercs = 0>> + + <<set _NewMercs = random(1,(_TradeShowAttendes/10))>> + + <<set $mercFreeManpower += _NewMercs,$SFTradeShow.TotalMercs += _NewMercs>> + + <<set $SFTradeShow.Mercs += _NewMercs>> + + <</if>> <<set $SFTradeShow.History += 1>> + + <</if>> <<include "FlavourText">> <<if $SF.SpecOps === 1 && !$SF.SpecOpsLock>> <<set $SF.SpecOps = 0>> <</if>> + + <<set $SF.U = 0,$SF.WG = 0,$SFColonel.Talk = 0,$SFColonel.Fun = 0>> \ No newline at end of file diff --git a/src/pregmod/SecForceEX/SpecialForceBarracksAdditionalColonelInteractions.tw b/src/pregmod/SecForceEX/SpecialForceBarracksAdditionalColonelInteractions.tw deleted file mode 100644 index c0f6aecc27076a96b4a119d79fd21e1fc26da5f9..0000000000000000000000000000000000000000 --- a/src/pregmod/SecForceEX/SpecialForceBarracksAdditionalColonelInteractions.tw +++ /dev/null @@ -1,322 +0,0 @@ -:: SpecialForceBarracksAdditionalColonelInteractions [nobr] - -<<if $securityForceColonelToken == 0 && $securityForceSexedColonelToken == 0 && $CurrentTradeShowAttendance == 0>> - <br><br> - <span id="result3"> - Where do you want to spend time with The Colonel this week? - <<if $ColonelRelationship >= 25>> - <br><<link "Up on the surface, along with an escort of course.">> - <<set $securityForceColonelToken = 1>> - <<replace "#result3">> - You ask The Colonel if she would like to stretch her legs up on the surface. It doesn't take much effort for her to agree. - <<if $PC.warfare < 10>> - <br>Your complete lack of skill at warfare ensures that <<if $Bodyguard != 0>>in addition to $Bodyguard.slaveName, <</if>>you need; two full squads of $securityForceName on foot, a squadron of fighters, a small convoy of $securityForceName's ground vehicles. - <<elseif $PC.warfare >= 100 && $PC.career == "mercenary">> - <br>Your mastery of wet work and prior experience in a PMC satisfies The Colonel that you only need one soldier and a single vehicle<<if $Bodyguard != 0>> plus $Bodyguard.slaveName<</if>>. Being able to see and interact with the arcology owner even more directly if they so wish boosts the mood of your citizen's while also giving them an increased opportunity to try gaining favor with you. - <<set $rep += 10, $cash += $EnvCash2>> - <<elseif $PC.warfare >= 100>> - <br>Your mastery of wet work satisfies The Colonel that you only need two soldiers and a single vehicle<<if $Bodyguard != 0>> plus $Bodyguard.slaveName<</if>>. Being able to see and interact with the arcology owner directly if they so wish boosts the mood of your citizens while also giving them the opportunity to try gaining favor with you. - <<set $rep += 5, $cash += $EnvCash3>> - <<elseif $PC.warfare >= 60>> - <br>Your expertise in warfare means that <<if $Bodyguard != 0>>in addition to $Bodyguard.slaveName <</if>>you need; two full squads of $securityForceName on foot, a squadron of fighters and a large convoy of $securityForceName's ground vehicles. - <<elseif $PC.warfare >= 30>> - <br>As you have some skill in warfare, you only need<<if $Bodyguard != 0>> in addition to $Bodyguard.slaveName<</if>>; two full squads of $securityForceName on foot, a squadron of fighters, a small convoy of $securityForceName's ground vehicles. - <<elseif $PC.warfare >= 10>> - <br>Your F.N.G. tier skill in warfare ensures that <<if $Bodyguard != 0>>in addition to $Bodyguard.slaveName, <</if>>you need; two full squads of $securityForceName on foot, a squadron of fighters, a small convoy of $securityForceName's ground vehicles. - <</if>> - <<if $arcologies[0].FSPaternalist != "unset">> - Stopping at a paternalist shop, you help The Colonel select some luxurious and relaxing treatments for her main slave. - <<if $PC.slaving < 10>> - Your total lack of slavery skill (which is very unusual and very concerning for an arcology owner) means that you are of little to no help or even a hindrance. - <<elseif $PC.slaving >= 100>> - Your mastery of slaving allows you assist The Colonel greatly. However the shop owner is so impressed by your understanding of slavery that she is more than happy for an endorsement from you. As you are exiting the shop you hear your pre-recorded message which bears the slogan "This is (<<if def $PC.customTitle>>$PC.customTitle <</if>> <<= PlayerName()>>) and this is my favorite Paternalist shop in $arcologies[0].name." - <<if $arcologies[0].prosperity < 20>> - <<set $arcologies[0].prosperity++>> - <</if>> - <<elseif $PC.slaving >= 60>> - Your expertise in slavery allows you to be more useful. - <<elseif $PC.slaving >= 30>> - Possessing some skill, you are slightly helpful. - <<elseif $PC.slaving >= 10>> - Your basic skill at slavery, allows you to neither be a hindrance or helpful. - <</if>> - <<else>> - Stopping at a shop. - <</if>> - <br>Soon the entourage heads back to the HQ of $securityForceName. Along the route you see a homeless citizen in great pain. - <<if $PC.medicine < 10>> - Your total lack of medical skill causes the death of the citizen. - <<set $arcologies[0].prosperity -= .25>> - <<elseif $PC.medicine >= 100 && $PC.career == "medicine">> - Your expertise in medicine ensures that the citizen is probably the best they have ever been. They are so grateful that they are more than happy to try and compensate your time. Word quickly spreads of the kindly medically trained arcology owner who took the time to heal a citizen, providing confidence to the rest of the citizens. - <<set $rep += 10, $cash += $EnvCash4>> - <<elseif $PC.medicine >= 100>> - Your expertise in medicine ensures that the citizen is probably the best they have ever been. Word quickly spreads of the kindly arcology owner who took the time to heal a citizen. - <<set $rep += 5>> - <<elseif $PC.medicine >= 60>> - Your mastery of medicine ensures that the citizen's condition is noticeably better. - <<elseif $PC.medicine >= 30>> - Your moderate skill in medicine ensures that the citizen's condition ever so slightly improves. - <<elseif $PC.medicine >= 10>> - Your basic skill in medicine is sufficient only to stabilize the citizen. - <</if>> - <<set $ColonelRelationship += 2>> - <</replace>> - <</link>> - <</if>> - - <br><<link "In the HQ of $securityForceName.">> - <<replace "#result3">> - <span id="result10"> - What do you want to do with The Colonel in the HQ of $securityForceName? - <<link "Go back">> - <<goto "SFM Barracks">> - <<set $securityForceColonelToken = 0>> - <</link>> - <br><<link "Learn">> - <<replace "#result10">> - <<set $securityForceColonelToken = 1, $ColonelRelationship += 1>> - <<link "Go back">> - <<goto "SFM Barracks">> - <<set $securityForceColonelToken = 0>> - <</link>> - <br>"Sure, boss." she says, nodding. "I can use a break from all of this." She laughs. - She can try teaching you a bit about; - <span id="result4"> - <<link "field medicine">> - <<set $PC.medicine += 4>> - <<replace "#result4">> - <br> - <<if $PC.medicine < 10>> - //Hopefully now, you are less likely to cut yourself on the sharp things.// - <<elseif $PC.medicine >= 100>> - //Feel free to play 'doctor' with me any time.// - <<elseif $PC.medicine >= 60>> - //Feel free to apply 'pressure' anywhere.// - <<elseif $PC.medicine >= 30>> - //Yes that is how you use a tourniquet, good job.// - <<elseif $PC.medicine >= 10>> - //Yes that is a bandage, good job.// - <</if>> - <</replace>> - <</link>> - , - <<link "trading">> - <<set $PC.trading += 3>> - <<replace "#result4">> - <br> - <<if $PC.trading < 10>> - //Congratulations you have just passed economics 101, "black and red should balance".// - <<elseif $PC.trading >= 100>>// - //Now let's go crash some markets.// - <<elseif $PC.trading >= 60>>// - //Your auditing skills aren't half bad.// - <<elseif $PC.trading >= 30>>// - //Good, you can now spot numerical errors, most of the time.// - <<elseif $PC.trading >= 10>>// - //Now Good job you now know what NPV stands for.// - <</if>> - <</replace>> - <</link>> - , - <<link "slaving">> - <<set $PC.slaving += 3>> - <<replace "#result4">> - <br> - <<if $PC.slaving < 10>> - //Yes, the rope normally goes around the wrist first and nowhere near the mouth.// - <<elseif $PC.slaving >= 100>> - //Now should we go out and capture some slaves, master?// - <<elseif $PC.slaving >= 60>> - //Feel feel to tie me up any time.// - <<elseif $PC.slaving >= 30>> - //You can finally tie a knot correctly, most of the time anyway.// - <<elseif $PC.slaving >= 10>> - //Yes, having your slaves die on you is generally considered a bad thing, unless you are into that kind of thing you sick fuck. But who am I to judge.// - <</if>> - <</replace>> - <</link>> - , - <<link "combat engineering">> - <<set $PC.engineering += 3>> - <<replace "#result4">> - <br> - <<if $PC.engineering < 10>> - //Good job, you know what a hammer now looks like.// - <<elseif $PC.engineering >= 100>> - //Time to for you go out and build something.// - <<elseif $PC.engineering >= 60>> - //Feel free to 'nail' me any time.// - <<elseif $PC.engineering >= 30>> - //Yes that is the correct hammering position.// - <<elseif $PC.engineering >= 10>> - //Hammer meet nail.// - <</if>> - <</replace>> - <</link>> - , - <<link "hacking">> - <<set $PC.hacking += 3>> - <<replace "#result4">> - <br> - <<if $PC.hacking < 10>> - //Good job you know what pushing the power button does.// - <<elseif $PC.hacking >= 100>> - //Time to for you go out and tinker with a system.// - <<elseif $PC.hacking >= 60>> - //Feel free to 'plug into' me any time.// - <<elseif $PC.hacking >= 30>> - //Correct screw driver holding procedure acquired.// - <<elseif $PC.hacking >= 10>> - //You can now somewhat use a mouse.// - <</if>> - <</replace>> - <</link>> - , - <<link "general skills">> - <<set $PC.engineering + 2>> - <<set $PC.slaving += 2>> - <<set $PC.trading += 2>> - <<set $PC.warfare += 2>> - <<set $PC.medicine += 2>> - <<set $PC.hacking += 2>> - <<replace "#result4">> - //Hopefully this general education I could provide may be of use.// - <</replace>> - <<set $ColonelRelationship += 1>> - <</link>> - or you can <<link "listen to some war stories.">> - <<set $PC.warfare += 5>> - <<replace "#result4">> - <br> - <<if $PC.warfare < 10>> - //There, now you hopefully can hit the broad side of a barn, most of the time. What am I kidding you still suck.// - <<elseif $PC.warfare >= 100>> - //Now why don't you go deal with those dangerous watermelons?// - <<elseif $PC.warfare >= 60>> - //Feel free to shoot at or up me, any time.// - <<elseif $PC.warfare >= 30>> - //Grouping is slightly better.// - <<elseif $PC.warfare >= 10>> - //Slightly better but you still have a long way to go.// - <</if>> - <</replace>> - <</link>> - </span> - <</replace>> - <</link>> - - <<if $ColonelRelationship >= 45>> - <br><<link "Have some fun">> - <<link "Go back">> - <<goto "SFM Barracks">> - <<set $securityForceSexedColonel = 0, $securityForceColonelToken = 0>> - <</link>> - <<replace "#result10">> - <<set $securityForceSexedColonel = 1, $securityForceColonelToken = 1, $ColonelRelationship += 3>> - <span id="result11"> - Where should this fun take place? - <<link "Go back">> - <<goto "SFM Barracks">> - <<set $securityForceSexedColonel = 0, $securityForceColonelToken = 0>> - <</link>> - <br><<link "In private">> - <<replace "#result11">> - <span id="result6"> - Which orifice do you wish to target? - <<link "Go back">> - <<goto "SFM Barracks">> - <</link>> - <br> - <<link "Pussy">> - <<replace "#result6">> - <<include "SpecialForceColonelSexDec">> - <</replace>> - <<set $securityForceSexedColonel += 1>> - <</link>> - - <br><<link "Ass">> - <<replace "#result6">> - <<include "SpecialForceColonelSexDec">> - <</replace>> - <<set $securityForceSexedColonel += 1>> - <</link>> - - <br><<link "Both pussy and ass">> - <<replace "#result6">> - <<include "SpecialForceColonelSexDec">> - <</replace>> - <<set $securityForceSexedColonel += 2>> - <</link>> - - <br><<link "Mouth">> - <<replace "#result6">> - <<include "SpecialForceColonelSexDec">> - <</replace>> - <<set $securityForceSexedColonel += 1>> - <</link>> - - <br><<link "All three holes">> - <<replace "#result6">> - <<include "SpecialForceColonelSexDec">> - <</replace>> - <<set $securityForceSexedColonel += 3>> - <</link>> - </span> - <</replace>> - <</link>> - - <br><<link "On The Colonel's throne.">> - <<replace "#result11">> - <span id="result6"> - Which orifice do you wish to target? - <<link "Go back">> - <<goto "SFM Barracks">> - <<set $securityForceSexedColonel = 0, $securityForceColonelToken = 0>> - <</link>> - <br><<link "Pussy">> - <<replace "#result6">> - <<include "SpecialForceColonelSexDec">> - <</replace>> - <<set $securityForceSexedColonel += 1>> - <</link>> - - <br><<link "Ass">> - <<replace "#result6">> - <<include "SpecialForceColonelSexDec">> - <</replace>> - <<set $securityForceSexedColonel += 1>> - <</link>> - - <br><<link "Both pussy and ass">> - <<replace "#result6">> - <<include "SpecialForceColonelSexDec">> - <</replace>> - <<set $securityForceSexedColonel += 2>> - <</link>> - - <br><<link "Mouth">> - <<replace "#result6">> - <<include "SpecialForceColonelSexDec">> - <</replace>> - <<set $securityForceSexedColonel += 1>> - <</link>> - - <br><<link "All three holes">> - <<replace "#result6">> - <<include "SpecialForceColonelSexDec">> - <</replace>> - <<set $securityForceSexedColonel += 3>> - <</link>> - </span> - <</replace>> - <</link>> - </span> - <</replace>> - <</link>> - <</if>> - </span> - <</replace>> - <</link>> - </span> -<</if>> diff --git a/src/pregmod/SecForceEX/SpecialForceBarracksCheatEdit.tw b/src/pregmod/SecForceEX/SpecialForceBarracksCheatEdit.tw deleted file mode 100644 index 9c1d4a16217b56f1a210f6669f6cf1886f700571..0000000000000000000000000000000000000000 --- a/src/pregmod/SecForceEX/SpecialForceBarracksCheatEdit.tw +++ /dev/null @@ -1,77 +0,0 @@ -:: SpecialForceBarracksCheatEdit - -<<set $nextButton = "Back to SF Barracks", $nextLink = "SFM Barracks", $returnTo = "SFM Barracks">> -<<include "SpecialForceUpgradeTree">> -__Values__ -Upgrades: $SFAO/_max - -''Barracks:'' <<textbox "$securityForceArcologyUpgrades" $securityForceArcologyUpgrades "SpecialForceBarracksCheatEdit">> -<br>Max: _BarracksMax - -/* ''SupportFacility:'' <<textbox "$SupportFacility" $SupportFacility "SpecialForceBarracksCheatEdit">> */ - -''Armory:'' <<textbox "$securityForceInfantryPower" $securityForceInfantryPower "SpecialForceBarracksCheatEdit">> -<br>Max: _ArmouryMax - -''Stimulant Lab:'' <<textbox "$securityForceStimulantPower" $securityForceStimulantPower "SpecialForceBarracksCheatEdit">> -<br>Max: _StimulantLabMax - -<<if _Garage > 0 && $securityForceArcologyUpgrades >= 1>> - ''Garage:'' - ''LightAndMedium:'' <<textbox "$securityForceVehiclePower" $securityForceVehiclePower "SpecialForceBarracksCheatEdit">> - <br>Max: _LightAndMediumVehiclesMax - - ''HeavyBattleTank:'' <<textbox "$securityForceHeavyBattleTank" $securityForceHeavyBattleTank "SpecialForceBarracksCheatEdit">> - <br>Max: _HeavyBattleTankMax -<</if>> - -<<if $securityForceArcologyUpgrades >= 4>> - ''Hangar:'' - ''Aircraft:'' <<textbox "$securityForceAircraftPower" $securityForceAircraftPower "SpecialForceBarracksCheatEdit">> - <br>Max: _AircraftMax - - ''Space Plane'': <<textbox "$securityForceSpacePlanePower" $securityForceSpacePlanePower "SpecialForceBarracksCheatEdit">> - <br>Max: _SpacePlaneMax - - ''Fortress Zeppelin:'' <<textbox "$securityForceFortressZeppelin" $securityForceFortressZeppelin "SpecialForceBarracksCheatEdit">> - <br>Max: _FortressZeppelinMax - - ''AC130:'' <<textbox "$securityForceAC130" $securityForceAC130 "SpecialForceBarracksCheatEdit">> - <br>Max: _AC130Max - - ''Heavy Transport:'' <<textbox "$securityForceHeavyTransport" $securityForceHeavyTransport "SpecialForceBarracksCheatEdit">> - <br>Max: _heavyTransportMax -<</if>> - - ''DroneBay:'' <<textbox "$securityForceDronePower" $securityForceDronePower "SpecialForceBarracksCheatEdit">> - <br>Max: _DroneBayMax - -<<if (_LaunchBayNO > 0 || _LaunchBayO > 0) && $securityForceArcologyUpgrades >= 4>> - ''LauchBay:'' - <<if $terrain != "oceanic" && $terrain != "marine">> - ''Satellite:'' <<textbox "$securityForceSatellitePower" $securityForceSatellitePower "SpecialForceBarracksCheatEdit">> - <br>Max: _SatelliteMax - - ''GiantRobot:'' <<textbox "$securityForceGiantRobot" $securityForceGiantRobot "SpecialForceBarracksCheatEdit">> - <br>Max: _GiantRobotMax - - ''MissileSilo:'' <<textbox "$securityForceMissileSilo" $securityForceMissileSilo "SpecialForceBarracksCheatEdit">> - <br>Max: _MissileSiloMax - <<elseif $terrain == "oceanic" || $terrain == "marine">> - ''Satellite:'' <<textbox "$securityForceSatellitePower" $securityForceSatellitePower "SpecialForceBarracksCheatEdit">> - <br>Max: _SatelliteMax - <</if>> -<</if>> - -<<if $terrain == "oceanic" || $terrain == "marine">> - ''Naval Yard:'' - - ''AircraftCarrier:'' <<textbox "$securityForceAircraftCarrier" $securityForceAircraftCarrier "SpecialForceBarracksCheatEdit">> - <br>Max: _AircraftCarrierMax - - ''Submarine:'' <<textbox "$securityForceSubmarine" $securityForceSubmarine "SpecialForceBarracksCheatEdit">> - <br>Max: _SubmarineMax - - ''Amphibious Transport:'' <<textbox "$securityForceHeavyAmphibiousTransport" $securityForceHeavyAmphibiousTransport "SpecialForceBarracksCheatEdit">> - <br>Max: _HeavyAmphibiousTransportMax -<</if>> \ No newline at end of file diff --git a/src/pregmod/SecForceEX/SpecialForceBarracksFlavourText.tw b/src/pregmod/SecForceEX/SpecialForceBarracksFlavourText.tw deleted file mode 100644 index 55c562c4f9731994aa1971697fb5df150bdbc315..0000000000000000000000000000000000000000 --- a/src/pregmod/SecForceEX/SpecialForceBarracksFlavourText.tw +++ /dev/null @@ -1,84 +0,0 @@ -:: SpecialForceBarracksFlavourText [nobr] - -//You continue towards the common area, the soldiers you pass nodding respectfully, saluting, or giving slight bows, as they please, to you. You pass the briefing areas, the officers and sergeants of the force are conferring over planning tables and display screens regarding their upcoming deployments.// - -<br><br> - -<div style="margin-left:2em"> -<<if $securityForceFocus == "recruit">> - The commanders are viewing lists of potential recruits for $securityForceName, mercenaries and Old World soldiers who might be receptive to an offer of employment and residence within the arcology - in addition to some citizens of the arcology who wish to have some excitement in their lives. -<<elseif $securityForceFocus == "secure">> - The commanders are reviewing maps of trade routes to the arcology as well as those nearby merchant hubs, arranging their future deployments to best protect them and encourage business and trade. -<<elseif $securityForceFocus == "raiding">> - The commanders are reviewing maps of settlements and locations reported to have choice concentrations of material loot and potential slave stock, in preparation for their coming raids. -<</if>> -</div> - -<div style="margin-left:2em"> -<<if $securityForceRulesOfEngagement == "hold">> - There are posted (and very strict) guidelines for the use of force against non-citizens residents, forbidding the use of heavy weapons or indiscriminate fire. -<<elseif $securityForceRulesOfEngagement == "limited">> - There are some guidelines posted regarding the use of force against non-citizens, forbidding general indiscriminate fire. -<<elseif $securityForceRulesOfEngagement == "free">> - Guidelines regarding the use of force are completely absent from the deployment information screens. A note affixed to the screen, probably from a soldier, says: "Pop 'em if you see 'em - better than target practice!" Another one on top of that, from The Colonel, says: "Don't shoot the pretty ones, you fucking morons, or I'll kill you myself. They're worth good money or good for fun - do you idiots really want to have to fuck month-old stock?" -<</if>> -</div> - -<div style="margin-left:2em"> -<<if $securityForceAccountability == "strict">> - On several screens, there are prominent warnings regarding the severe disciplinary procedures that will be taken against soldiers who commit crimes while on deployment. -<<elseif $securityForceAccountability == "some">> - On several screens, there are some minor warnings regarding the mild disciplinary procedures that may be taken against soldiers who commit especially severe crimes while on deployment. -<<elseif $securityForceAccountability == "none">> - There are no warnings or information regarding disciplinary procedures on any of the screens. Near one of them, a waste basket has been dragged over and a soldier has posted a note above it that says: "For Old World Complaints and Warrants." -<</if>> -</div> - -<br> - -//You arrive at the barracks' common area, a nest of bars, pleasure dens, public spaces, and other facilities catering to the soldiers' needs and giving them somewhere to spend their free time, since they do not mingle with your citizens on the higher levels or exit the arcology except on deployment. It is well-occupied by the soldiers not currently tasked with duties, and they respectfully move out of your way as you approach, clearing a path for you to move forward.// - -<br><br> - -<div style="margin-left:2em"> -<<if $securityForceDepravity <= 0.3 && $ColonelCore == "kind">> - The amenities are staffed by menial slaves, captured by the soldiers on their excursions. They are wearing plain jumpsuits and slim identification collars to set them apart from the soldiers, and look resigned but not fearful. The soldiers themselves socialize at the bars, in small groups around tables, and in the gambling parlours. Many of them can be seen entering or leaving the dens occupied by the sexual slaves they have acquired. Laughter from the carousing soldiers can be heard at all times. Small groups of slaves move freely between the plaza and their basic accommodations attached to the barracks. -<<elseif $securityForceDepravity <= 0.6 && $ColonelCore == "kind">> - The amenities are staffed by menial slaves, captured by the soldiers on their excursions. They are topless, wearing only utilitarian pants and leather collars to set them apart from the soldiers, and occasionally shoot fearful looks at the soldiers. The soldiers themselves socialize at the bars, or in large groups around tables, leering at and groping slaves of interest as they pass by. Many of them can be seen entering or leaving the dens occupied by the sexual slaves they have acquired, and often emerge only partially dressed, sometimes pulling half-naked slaves out with them. -<<elseif $securityForceDepravity <= 0.9>> - The amenities are staffed by menial slaves, captured by the soldiers on their excursions. They are topless, wearing only utilitarian shorts and steel collars to set them apart from the soldiers, and often shoot fearful looks at the soldiers. The soldiers themselves socialize at the bars, or in large groups around tables, leering at and heavily groping slaves of interest as they pass by. Many of them can be seen entering or leaving the dens occupied by the sexual slaves they have acquired, and often emerge stark naked, sometimes pulling naked slaves out with them for one last servicing in public. A few soldiers stagger around in drunken hazes or drugged-out stupors. -<<elseif $securityForceDepravity <= 1.2>> - The amenities are staffed by menial slaves, captured by the soldiers on their excursions. They are topless, wearing only a single undergarment and heavy steel collars to set them apart from the soldiers, and often shoot fearful looks at the soldiers. The soldiers occupy themselves primarily with sex, pulling slaves onto benches and fucking them hard in public. Many soldiers stagger around or lie passed out from drug and alcohol abuse. -<<elseif $securityForceDepravity >= 1.5 && ($ColonelCore == "Warmonger" || $ColonelCore != "Shell Shocked")>> - The amenities are staffed by menial slaves, captured by the soldiers on their excursions. To a one, they are naked, and are wearing heavy shock collars to force obedience. Most are wild-eyed with fear or dull-eyed from mental collapse, and many others bear marks of abuse. Few of the slaves are here long-term, the depraved pleasures of the soldiers resulting in enormous turnover and loss of 'damaged' stock. The extreme libations of the soldiers are ever-present. Drunken soldiers stagger around everywhere, beating slaves too slow to get out of their way. Others lie sprawled out on the ground, rendered senseless from heavy drug abuse. Some walk around naked, and hold slaves down on the benches scattered around, raping or sodomizing them with their cocks or their personal strap-ons as they desire. In alcoves, some soldier-lover pairs fuck loudly, moaning in pleasure. - <<if random(1,100) > 50>> - Off to the side, a group of soldiers brutally gangbang a very young slave girl, with one soldier buried balls-deep in her ass, another brutally sawing a barbed strap-on in and out of her pussy, and a third with his cock forced deep down her throat. The slave girl struggles and gags, desperate for breath or relief. - <<elseif random(1,100) > 50>> - Off to the side, a group of soldiers cackle amongst themselves as they take turns beating a very young slave girl with heavy batons. Sickening crunches can be heard from the screaming slave. - <<elseif random(1,100) > 75>> - Off to the side, still more soldiers crowd around an above-ground pit built from empty crates, gambling on slave gladiator fights. There's a drunken cheer as one of the fighters, a very young slave girl, straddles another one and smashes her face in with a blood-slick ammo crate. As she stands, shaking from fear and adrenaline, one of the soldiers laughs and throws a small incendiary grenade at her, changing the cheers to curses as the other soldiers jump away from the flaming, screeching slave. - <<else>> - Screams and cries of pain can be heard echoing around the area as the soldiers have their fun with their property. - <</if>> -<<else>> - The amenities are staffed by menial slaves, captured by the soldiers on their excursions. -<</if>> -</div> - -<br> - -//In the middle of the common area is a pile of supply crates with a pavilion on top - The Colonel's personal throne and open quarters, the result of her preferring to live an extreme lifestyle amongst her soldiers rather than in her empty quarters on the upper levels. It's draped with the 'flag' of $securityForceName, one of her inventions. Sprawled all around it is an immense quantity of; alcohol, hard drugs, clothes, electronic devices, huge amounts of cash, jewels and precious metals looted from the outside world.// - -<br><br> - -<div style="margin-left:2em"> -<<if random(1,100) > 50>> - _Name raises a hand in greeting and nods as you approach. She is sprawled on a couch, wearing only her combat suit tank top and fingerless gloves. She's holding a near-empty bottle of strong liquor in her hand and you can see a naked slave girl kneeling on the floor between her legs. The Colonel has her legs wrapped tightly around the girl's head, forcing the girl to service her if she wants to breathe. The Colonel is close to her climax then suddenly tenses her lower body thus gripping the girl even tighter and throws her head back in ecstasy as she orgasms. She lets out a long breath finally releasing the girl, giving her a hard smack and shouting at her to fuck off.<br><br> The Colonel finishes off her bottle, tossing it over her shoulder then leaning back on the couch and spreading her legs wide. You look down briefly, falling into your habits of inspection. Her pussy is completely devoid of hair with heavy labia in with a very large and hard clit peaking out. Beads of moisture, the result of her excitation, are visible, and you can tell from long experience that she would be tight as a vise. You return your gaze to her face to find her smirking at you. "Like what you see, boss?" She waves her hand at the plaza around her, "So do they. But you're not here for pussy. You're here to talk business. So, what's up?" -<<elseif random(1,100) > 50>> - _Name is in no condition initially to greet you. She's naked except for one sock that gives you a very good view of her muscled, taut body while lounging with her feet on the table and the rest on her couch. She is face down in a drugged-out stupor in the middle of a wide variety of powders and pills. Perhaps sensing your approach, her head suddenly shoots up and looks at you with unfocused, bloodshot eyes. "Sorry, boss," she slurs, wiping her face and weakly holding up a hand. "Hold on a second, I need something to help me out here. Long fucking night." She struggles to sit on the couch and bending over the table, loudly snorts up some of the white powder on it. "Ahhh, fuck," she says, breathing heavily.<br><br> She shakes her head powerfully now looking at you, her eyes once again alert and piercing. "That's better," she says, leaning back on the couch and giving you another good view of her assets. "So, boss," she begins, "what brings you down here to our little clubhouse? I trust you're happy with how we've been handling things out there?" You nod. "Excellent", she laughs. "I have to say; it's nice to have a place like this while having some top-end gear and to be able to have fun out there without worrying about anyone coming back on us. Good fucking times." She laughs again. "So - I'm assuming you want something?" -<<elseif random(1,100) > 70 && $securityForceDepravity >= 1.5 && ($ColonelCore == "cruel")>> - _Name is relaxing on her couch stark naked, greeting you with a raised hand. Between her tightly clenched legs is a slave girl being forced to eat her out. "Hey, boss, what's -" she breaks off as a flash of pain crosses her features. "Fucking bitch!" she exclaims, pulling her legs away and punching the slave girl in the face. She pushes the girl to the ground, straddling her then begins hitting. You hear one crunch after another as The Colonel's powerful blows shatter the girl's face. She hisses from between clenched teeth, each word accompanied by a brutal punch. "How. Many. Fucking. Times. Have. I. Told. You. To. Watch. Your. Fucking. Teeth. On. My. Fucking. Clit!" She leans back, exhaling heavily. Before leaning back down to grip apply pressure onto the girl's neck with her powerful hands. Wordlessly, she increases the pressure and soon the girl begins to turn blue as she struggles to draw breath. Eventually her struggles weaken and then finally, end.<br><br> The Colonel relaxes her grip then wipes her brow, clearing away the sweat from her exertion. Finally rising from the girl's body, relaxing back on the couch and putting her feet back up on the table. "Sorry about that boss," she says, shrugging. "So many of these bitches we pick up from the outside don't understand that they have to behave." Shaking her head in frustration, "Now I need to find another one. But that's not your problem - you're here to talk business. So, what's up?" -<<else>> - _Name is topless while reviewing the particulars of her unit on a tablet as you approach. She raises a hand in greeting. "Hey boss," she says, noticing you looking at her chest. She laughs. "Nice, aren't they? But they're not for you or them." She throws a thumb at the plaza around her. "You're down here for a reason, though. What can I do for you?" -<</if>> -</div> diff --git a/src/pregmod/SecForceEX/SpecialForceUpgradeDec.tw b/src/pregmod/SecForceEX/SpecialForceUpgradeDec.tw deleted file mode 100644 index 8d399a0b529ae29a93fa7d782355bccb9ddca4ce..0000000000000000000000000000000000000000 --- a/src/pregmod/SecForceEX/SpecialForceUpgradeDec.tw +++ /dev/null @@ -1,470 +0,0 @@ -:: SpecialForceUpgradeDec [nobr] - - ''Barracks:'' -<<switch $securityForceArcologyUpgrades>> -<<case 0>> - Is currently quite basic, consisting of little more than a dormitory, armory, a processing facility for human spoils, and a common area, sectioned off by stacks of empty supply crates. The cavernous space, however, is ripe for expansion. -<<case 1>> - Has become more permanent, expanding into free space, erecting permanent dividers, and sectioning off an area for use as a garage and vehicle maintenance bay. -<<case 2>> - Has added a facility for the storage, maintenance, and deployment of armed combat drones, and added storage facilities for the soldiers to store their personal spoils in. -<<case 3>> - Has added additional support personnel and equipment, allowing the potential procurement of heavier infantry armor, fighting vehicles, and combat drones. -<<case 4>> - Has expanded tremendously, adding an aerial control facility and express elevator connecting to a ring of launch pads and hangars built around the arcology's upper levels. Additional facilities have been added for soldier recreation, and Spartan quarters for live-in slaves, both menial and service, have been installed. -<<case 5>> - Has (mostly) taken on the appearance of a professional military installation, with clearly delineated soldier and logistical areas, dedicated support and recreation facilities, in addition to advanced command and control apparatus. As a final measure, heavy, long range, electromagnetic railgun artillery pieces have been installed in casemates along the aerial launch pads, giving $securityForceName an immense superiority in local firepower. -<<case 6>> - Has (mostly) taken on the appearance of a professional military installation, with clearly defined soldier and logistical areas, dedicated support and recreation facilities, and advanced command and control apparatus. As a final measure, quad heavy, long range, electromagnetic railgun artillery pieces have been installed in casemates along the aerial launch pads, giving $securityForceName an immense superiority in local firepower. -<<case 7>> - Has (mostly) taken on the appearance of a professional military installation, with clearly defined soldier and logistical areas, dedicated support and recreation facilities, and advanced command and control apparatus. As a final measure, quad heavy, long range, electromagnetic railgun artillery pieces have been installed in fortified EMP/jammer resistant casemates along the aerial launch pads, giving $securityForceName an immense superiority in local firepower. -<<case 8>> - Has (mostly) taken on the appearance of a professional military installation, with clearly defined soldier and logistical areas, dedicated support and recreation facilities, and advanced command and control apparatus. As final measures, quad heavy, long range, electromagnetic railgun artillery pieces have been installed in fortified EMP/jammer resistant casemates along the aerial launch pads and a powerful arcology wide electromagnetic force field has been installed, giving $securityForceName an immense superiority in local firepower. -<<case 9>> - Has (mostly) taken on the appearance of a professional military installation, with clearly defined soldier and logistical areas, dedicated support and recreation facilities, and advanced command and control apparatus. As final measures, quad heavy, long range, electromagnetic railgun artillery 356 cm pieces have been installed in fortified EMP/jammer resistant casemates along the aerial launch pads and a powerful arcology wide electromagnetic force field has been installed, giving $securityForceName an immense superiority in local firepower. -<<case 10>> - Has (mostly) taken on the appearance of a professional military installation, with clearly defined soldier and logistical areas, dedicated support and recreation facilities, and advanced command and control apparatus. As final measures, quad heavy, long range, electromagnetic railgun artillery 406 cm pieces have been installed in fortified EMP/jammer resistant casemates along the aerial launch pads and a powerful arcology wide electromagnetic force field has been installed, giving $securityForceName an immense superiority in local firepower. -<<case 11>> - Has (mostly) taken on the appearance of a professional military installation, with clearly defined soldier and logistical areas, dedicated support and recreation facilities, and advanced command and control apparatus. As final measures, quad heavy, long range, double-barreled electromagnetic railgun artillery 406 cm pieces have been installed in fortified EMP/jammer resistant casemates along the aerial launch pads and a powerful arcology wide electromagnetic force field has been installed, giving $securityForceName an immense superiority in local firepower. -<<case 12>> - Has (mostly) taken on the appearance of a professional military installation, with clearly defined soldier and logistical areas, dedicated support and recreation facilities, and advanced command and control apparatus. As final measures, quad heavy, long range, tri-barreled electromagnetic railgun artillery 406 cm pieces have been installed in fortified EMP/jammer resistant casemates along the aerial launch pads and a powerful arcology wide electromagnetic force field has been installed, giving $securityForceName an immense superiority in local firepower. -<<case 13>> - Has (mostly) taken on the appearance of a professional military installation, with clearly defined soldier and logistical areas, dedicated support and recreation facilities, and advanced command and control apparatus. As final measures, quad heavy, long range, tri-barreled electromagnetic railgun artillery 406 cm pieces have been installed in fortified EMP/jammer resistant casemates along the aerial launch pads and a powerful arcology wide electromagnetic force field has been installed, giving $securityForceName an immense superiority in local firepower. - <br>After pooling resources between several departmental R&D teams, $securityForceName now has a faster and much more efficient custom network. -<<case 14>> - Has (mostly) taken on the appearance of a professional military installation, with clearly defined soldier and logistical areas, dedicated support and recreation facilities, and advanced command and control apparatus. As final measures, quad heavy, long range, tri-barreled electromagnetic railgun artillery 406 cm pieces have been installed in fortified EMP/jammer resistant casemates along the aerial launch pads and a powerful arcology wide electromagnetic force field has been installed, giving $securityForceName an immense superiority in local firepower. - <br>After pooling resources between several departmental R&D teams, $securityForceName now has a faster and much more efficient custom network. <br>'Borrowed' old world designs for a kill house. -<<case 15>> - Has (mostly) taken on the appearance of a professional military installation, with clearly defined soldier and logistical areas, dedicated support and recreation facilities, and advanced command and control apparatus. As final measures, quad heavy, long range, tri-barreled electromagnetic railgun artillery 406 cm pieces have been installed in fortified EMP/jammer resistant casemates along the aerial launch pads and a powerful arcology wide electromagnetic force field has been installed, giving $securityForceName an immense superiority in local firepower. - <br>After pooling resources between several departmental R&D teams, $securityForceName now has a faster and much more efficient custom network. <br>Added electronics to the kill house. -<<case 16>> - Has (mostly) taken on the appearance of a professional military installation, with clearly defined soldier and logistical areas, dedicated support and recreation facilities, and advanced command and control apparatus. As final measures, quad heavy, long range, tri-barreled electromagnetic railgun artillery 406 cm pieces have been installed in fortified EMP/jammer resistant casemates along the aerial launch pads and a powerful arcology wide electromagnetic force field has been installed, giving $securityForceName an immense superiority in local firepower. - <br>After pooling resources between several departmental R&D teams, $securityForceName now has a faster and much more efficient custom network. <br>Added VR support to the kill house. -<</switch>> - -<br><br> - -<<if $securityForcePersonnel < 100>> - The barrack's large dormitories are sparsely occupied, the few members of $securityForceName residing within them concentrating together in a corner. The hundreds of empty beds and lockers visible herald the future. -<<elseif $securityForcePersonnel < 300>> - The barrack's large dormitories are lightly occupied, with the <<print commaNum($securityForcePersonnel)>> members of $securityForceName starting to spread out across them. -<<elseif $securityForcePersonnel < 500>> - The barrack's large dormitories are moderately occupied, though the <<print commaNum($securityForcePersonnel)>> members of $securityForceName residing within have a considerable amount of extra room. -<<elseif $securityForcePersonnel < 700>> - The barrack's large dormitories are well-occupied, and the <<print commaNum($securityForcePersonnel)>> members of $securityForceName within have started to form small cliques based on section and row. -<<elseif $securityForcePersonnel < 1500>> - The barrack's large dormitories are near capacity, and the <<print commaNum($securityForcePersonnel)>> members of $securityForceName often barter their personal loot, whether it be monetary or human, for the choicest bunks. -<</if>> - -/* -<<if $SupportFacility == 1>> - <br><br> - ''$SupportFacilityName:'' - <<if $LieutenantColonel == 1>> - <<= SlaveFullName($LieutenantColonel)>> is the Lieutenant Colonel of $securityForceName, primarily in charge of this facility. - <</if>> - There are - <<if $SupportFacilitySlaves > 0>> - ''$SupportFacilitySlaves'' - <<else>> - ''zero'' - <</if>> - slaves serving in $SupportFacilityName. - The use of - <<if $SupportFacilityUpgrade == 3>> - a quantum teleportation system provides a massive - <<elseif $SupportFacilityUpgrade == 2>> - a rapid tube system provides a noticeable - <<elseif $SupportFacilityUpgrade == 1>> - specialized pathways provides a minor - <<else>> - general pathways does not provide a - <</if>> - boost to efficiency. - <br><<link "Enter the building then send a slave to serve in the HQ and facilities of $securityForceName">> - <<goto "SupportFacility">> - <</link>> -<</if>> -*/ - -<br><br> - ''Armoury:'' -<<switch $securityForceInfantryPower>> -<<case 0>> - Is well-stocked with high-quality personal weapons and light armour, but contains little in the way of exceptional armament. -<<case 1>> - Has large stocks of the absolute latest personal weapons and light armour, and has added first-generation exo-suits to improve soldier lethality. -<<case 2>> - Acquired advanced tactical helmets and second-generation exo-suits to further improve soldier lethality. -<<case 3>> - Replaced deployed exo-suits with basic enclosed combat armour suits, and has further begun to deploy early electromagnetic (coilgun) weaponry. -<<case 4>> - Has begun to equip the soldiers with more advanced combat armour suits, and has expanded its inventory of electromagnetic weaponry. -<<case 5>> - Acquired heavy weapon attachments for its combat armour suits, and has further sourced small advanced electromagnetic weaponry (miniaturized railguns) for the soldiers, ensuring that the infantry of $securityForceName is perhaps the most well-equipped in the world. -<<case 6>> - Acquired heavy weapon attachments for its combat armour suits, and has further sourced both small and medium advanced electromagnetic weaponry (miniaturized railguns) for the soldiers, ensuring that the infantry of $securityForceName is perhaps the most well-equipped in the world. -<<case 7>> - Acquired heavy weapon attachments for its combat armour suits, and has further sourced small/medium and large advanced electromagnetic weaponry (miniaturized railguns) for the soldiers, ensuring that the infantry of $securityForceName is perhaps the most well-equipped in the world. -<<case 8>> - Acquired heavy weapon attachments for its combat armour suits with basic thrusters, and has further sourced both small/medium and large advanced electromagnetic weaponry (miniaturized railguns) for the soldiers, ensuring that the infantry of $securityForceName is perhaps the most well-equipped in the world. -<<case 9>> - Acquired heavy weapon attachments for its combat armour suits with advanced thrusters, and has further sourced both small/medium and large advanced electromagnetic weaponry (miniaturized railguns) for the soldiers, ensuring that the infantry of $securityForceName is perhaps the most well-equipped in the world. -<<case 10>> - Acquired heavy weapon attachments for its combat armour suits with advanced thrusters,basic optical illusion kits, and has further sourced small/medium and large advanced electromagnetic weaponry (miniaturized railguns) for the soldiers, ensuring that the infantry of $securityForceName is perhaps the most well-equipped in the world. -<<case 11>> - Acquired heavy weapon attachments for its combat armour suits with advanced thrusters,advanced optical illusion kits, and has further sourced small/medium and large advanced electromagnetic weaponry (miniaturized railguns) for the soldiers, ensuring that the infantry of $securityForceName is perhaps the most well-equipped in the world. -<<case 12>> - Acquired heavy weapon attachments for its combat armour suits with advanced thrusters,advanced optical illusion kits, and has further sourced small/medium and large advanced nanite rather than electromagnetic weaponry (miniaturized nanite rifes) for the soldiers, ensuring that the infantry of $securityForceName is perhaps the most well-equipped in the world. -<</switch>> - -<br><br> - ''Stimulant Lab:'' -<<switch $securityForceStimulantPower>> -<<case 0>> - Is providing the soldiers with standard ephedrine-based stimulants. -<<case 1>> - Improved the formula of the ephedrine-based stimulants, concentrating them and increasing both their potency, and the effectiveness of the soldiers under their influence. -<<case 2>> - Replaced the soldiers' stimulants with methamphetamine-based variants, greatly increasing their alertness and aggressiveness when under their influence. -<<case 3>> - Improved and concentrated the methamphetamine-based stimulants, and has also begun providing soldiers with phencyclidine-based dissociatives, allowing the soldiers to excuse their actions in the field and reducing any reluctance to follow severe orders. -<<case 4>> - Has further refined the formulas of the methamphetamine-based stimulants and phencyclidine-based dissociatives, and has also begun providing tryptamine-based psychedelics to the soldiers, allowing them to avoid traumatic stress in the field. -<<case 5>> - Has maximally refined the formulas of the methamphetamine-based stimulants, phencyclidine-based dissociatives, and tryptamine-based psychedelics, increasing their effectiveness in all aspects and ensuring that the soldiers of $securityForceName go into combat wired, aggressive, and euphoric (if needed). -<<case 6>> - Has slightly refined the formulas of higher purity methamphetamine-based stimulants, phencyclidine-based dissociatives, and tryptamine-based psychedelics, increasing their effectiveness in all aspects and ensuring that the soldiers of $securityForceName go into combat wired, aggressive, and euphoric (if needed). -<<case 7>> - Has maximally refined the formulas of higher purity methamphetamine-based stimulants, phencyclidine-based dissociatives, and tryptamine-based psychedelics, increasing their effectiveness in all aspects and ensuring that the soldiers of $securityForceName go into combat wired, aggressive, and euphoric (if needed). -<<case 8>> - Has mixed the higher purity methamphetamine-based stimulants, phencyclidine-based dissociatives, and tryptamine-based psychedelics into a single dose further increasing their effectiveness in all aspects and ensuring that the soldiers of $securityForceName go into combat wired, aggressive, and euphoric (if needed). However side effects may include (no particular order): Dissociative Identity Disorder , severe clinical depression, unstoppable vomiting, extreme paranoia, PTSD, finally total organ failure. Recommended by 9/10 doctors*. <br>* Only the doctors of $securityForceName were consulted to ensure a completely unbiased result. -<<case 9>> - Has mixed the higher purity methamphetamine-based stimulants, phencyclidine-based dissociatives, and tryptamine-based psychedelics into a single dose further increasing their effectiveness in all aspects and ensuring that the soldiers of $securityForceName go into combat wired, aggressive, and euphoric (if needed). Potential side effects have been reduced slightly to "only mildly" severe ones: Dissociative Identity Disorder , severe clinical depression, unstoppable vomiting, extreme paranoia and PTSD. Now recommended by 15/10 doctors*. <br>* Only the doctors of $securityForceName were consulted to ensure a completely unbiased result. -<<case 10>> - Has increased the single dose strength of the mixture of higher purity methamphetamine-based stimulants, phencyclidine-based dissociatives, and tryptamine-based psychedelics which further increases their effectiveness in all aspects and ensuring that the soldiers of $securityForceName go into combat wired, aggressive, and euphoric (if needed) at the cost of lengthening the effects. - <br>Potentinal side effects have been reduced slightly to "only mildly" severe ones: Dissociative Identity Disorder , severe clinical depression, unstoppable vomiting, extreme paranoia and PTSD. Now recommended by 15/10 doctors*. <br>* Only the doctors of $securityForceName were consulted to ensure a completely unbiased result. -<</switch>> - -<<if _Garage > 0 && $securityForceArcologyUpgrades >= 1>> -<br><br> - ''Garage:'' -<<switch $securityForceVehiclePower>> -<<case 0>> - Contains basic, unarmoured vehicles for use by the soldiers, primarily high-end civilian vehicles with jury-rigged crew-served weapons. -<<case 1>> - Replaced its technical fleet with armed military utility vehicles. It has also sourced customized, high-volume slave transports for better securing human spoils. -<<case 2>> - Has added a number of light infantry fighting vehicles to its fleet, and acquired more slave transports to keep up with demand. -<<case 3>> - Acquired improved infantry fighting vehicles, and has also added some mobile artillery and other support vehicles. -<<case 4>> - Acquired some heavier armoured vehicles to augment the infantry fighting vehicles and expanded their inventory of artillery and support vehicles. -<<case 5>> - Replaced both its armoured and support vehicles with the most advanced variants possible, making the mobile unit of $securityForceName far superior to anything in the arcology's immediate area. -<<case 6>> - Replaced both its armoured and support vehicles with the most advanced light variants possible, making the mobile unit of $securityForceName far superior to anything in the arcology's immediate area. -<<case 7>> - Replaced both its armoured and support vehicles with the most advanced light and medium variants possible, making the mobile unit of $securityForceName far superior to anything in the arcology's immediate area. -<<case 8>> - Replaced both its armoured and support vehicles with the most advanced light, medium and heavy variants possible, making the mobile unit of $securityForceName far superior to anything in the arcology's immediate area. -<</switch>> - -<<if $securityForceHeavyBattleTank > 0>> -<br>''Heavy Battle Tank:'' -<<switch $securityForceHeavyBattleTank>> -<<case 1>> - A basic heavy battle tank has been 'borrowed' from the old world. -<<case 2>> - Modernised the armour. -<<case 3>> - Modernised the armour and upgraded the main gun to a 356 cm barrel. -<</switch>> -<</if>> -<</if>> - -<<if $securityForceArcologyUpgrades >= 4>> -<br><br> - ''Hangar:'' -<br> -''Airforce:'' -<<switch $securityForceAircraftPower>> -<<case 0>> - Primarily consists of light transport VTOL's equipped with non-lethal weaponry. -<<case 1>> - Upgraded light transport VTOL's with additional fire-power and lethal weaponry. -<<case 2>> - The VTOL's have been upgraded to higher-capacity variants with heavier weaponry. -<<case 3>> - The medium transport VTOL's have been upgraded with enhanced armour and customized cargo compartments to better transport captured stock. -<<case 4>> - Acquired specialized attack VTOL's to complement and escort its advanced transport fleet, as well as to provide close air support. -<<case 5>> - Upgraded its attack VTOL's for enhanced lethality, and further improved the armour and armament of its transport VTOL's, ensuring that the airfleet of $securityForceName is amongst the most capable still in operation in the area. -<<case 6>> - Upgraded its attack VTOL's for enhanced lethality/speed, and further improved the armour and armament of its transport VTOL's, ensuring that the airfleet of $securityForceName is amongst the most capable still in operation in the area. -<<case 7>> - Upgraded its attack VTOL's for enhanced lethality/speed/armour, and further improved the armour and armament of its transport VTOL's, ensuring that the airfleet of $securityForceName is amongst the most capable still in operation in the area. -<<case 8>> - Upgraded its attack VTOL's for enhanced lethality/speed/armour, and further improved the armour and armament of its transport VTOL's, ensuring that the airfleet of $securityForceName is amongst the most capable still in operation in the area. <br>Also It now possesses a basic old world bomber. -<<case 9>> - Upgraded its attack VTOL's for enhanced lethality/speed/armour, and further improved the armour and armament of its transport VTOL's, ensuring that the airfleet of $securityForceName is amongst the most capable still in operation in the area. <br>Improved the bomber's engines. -<<case 10>> - Upgraded its attack VTOL's for enhanced lethality/speed/armour, and further improved the armour and armament of its transport VTOL's, ensuring that the airfleet of $securityForceName is amongst the most capable still in operation in the area. <br>Improved the bomber's engines and armour. -<</switch>> -<<if $securityForceSpacePlanePower > 0>> -<br>''Space Plane:'' -<<switch $securityForceSpacePlanePower>> - <<case 1>> - A basic twin engine space plane has been 'borrowed' from the old world. - <<case 2>> - Upgraded the shielding, reducing both potential heat damage and radar signature. - <<case 3>> - Upgraded the shielding, reducing both potential heat damage and radar signature, also mounted another engine on top of the tail. - <<case 4>> - Upgraded the shielding, reducing both potential heat damage and radar signature, mounted another engine on top of the tail and modernized the electronics. - <<case 5>> - Upgraded the shielding, reducing both potential heat damage and radar signature, mounted another engine on top of the tail, modernized the electronics in addition to the fuel lines to increase efficiency. - <<case 6>> - Upgraded the shielding, reducing both potential heat damage and radar signature, mounted another engine on top of the tail. Modernized the electronics in addition to the fuel lines to increase efficiency and the engines to allow for more efficient fuel. - <<case 7>> - Upgraded the shielding, reducing both potential heat damage and radar signature, mounted another engine on top of the tail. Modernized the electronics in addition to the fuel lines to increase efficiency and the engines to allow for more efficient fuel. Reduced the weight and reworked the body to reduce drag. - <<case 8>> - Upgraded the shielding, reducing both potential heat damage and radar signature, mounted another engine on top of the tail. Modernized the electronics in addition to the fuel lines to increase efficiency and the engines to allow for more efficient fuel. Reduced the weight and reworked the body to reduce drag. Increased the crew comfort and life support systems to increase operational time. - <<case 9>> - Upgraded the shielding, reducing both potential heat damage and radar signature, mounted another engine on top of the tail. Modernized the electronics in addition to the fuel lines to increase efficiency and the engines to allow for more efficient fuel. Reduced the weight and reworked the body to reduce drag. Increased the crew comfort and life support systems to increase operational time. Added an engine per wing which greatly increases acceleration and raises the top speed to mach 15, making the Space Plane of $securityForceName untouchable. - <<case 10>> - Upgraded the shielding, reducing both potential heat damage and radar signature, mounted another engine on top of the tail. Modernized the electronics in addition to the fuel lines to increase efficiency and the engines to allow for more efficient fuel. Reduced the weight and reworked the body to reduce drag. Increased the crew comfort and life support systems to increase operational time. Added an engine per wing which greatly increases acceleration and raises the top speed to mach 15, making the Space Plane of $securityForceName untouchable. Replaced the skin with a basic optical illusion kit. - <<case 11>> - Upgraded the shielding, reducing both potential heat damage and radar signature, mounted another engine on top of the tail. Modernized the electronics in addition to the fuel lines to increase efficiency and the engines to allow for more efficient fuel. Reduced the weight and reworked the body to reduce drag. Increased the crew comfort and life support systems to increase operational time. Added an engine per wing which greatly increases acceleration and raises the top speed to mach 15, making the Space Plane of $securityForceName untouchable. Replaced the skin with an advanced optical illusion kit. - <<case 12>> - Upgraded the shielding, reducing both potential heat damage and radar signature, mounted another engine on top of the tail. Modernized the electronics in addition to the fuel lines to increase efficiency and the engines to allow for more efficient fuel. Reduced the weight and reworked the body to reduce drag. Increased the crew comfort and life support systems to increase operational time. Added VTOL capabilities into an additional engine per wing which greatly increases acceleration and raises the top speed to Mach 15, making the Space Plane of $securityForceName untouchable. Replaced the skin with an advanced optical illusion kit. -<</switch>> -<</if>> -<<if $securityForceFortressZeppelin > 0>> -<br>''Fortress Zeppelin:'' -<<switch $securityForceFortressZeppelin>> - <<case 1>> - A basic fortress Zeppelin has been 'borrowed' from the old world. - <<case 2>> - Modernized the armour. - <<case 3>> - Modernized the armour and weaponry. - <<case 4>> - Modernized the armour and weaponry. Improved the speaker system. -<</switch>> -<</if>> -<<if $securityForceAC130 > 0>> -<br>''AC130:'' -<<switch $securityForceAC130>> - <<case 1>> - A basic AC-130 has been 'borrowed' from the old world. - <<case 2>> - Modernized the armour. - <<case 3>> - Modernized the armour and weaponry. - <<case 4>> - Modernized the armour, weaponry and electronics. - <<case 5>> - Modernized the armour, weaponry, electronics and crew seating. - <<case 6>> - Modernized the armour, weaponry, electronics and crew seating. Increased the speed and maneuverability. -<</switch>> -<</if>> -<<if $securityForceHeavyTransport > 0>> -<br>''Heavy Transport:'' -<<switch $securityForceHeavyTransport>> - <<case 1>> - A basic heavy transport has been 'borrowed' from the old world. - <<case 2>> - Modernized the armour. - <<case 3>> - Modernized the armour and engines. - <<case 4>> - Modernized the armour and engines. Replaced the ballistic gun mounts with electromagnetic ones. -<</switch>> -<</if>> -<</if>> - -<<if $securityForceArcologyUpgrades >= 2>> -<br><br> - ''Drone Bay:'' -<<switch $securityForceDronePower>> -<<case 0>> - Contains a small number of 're-purposed' non-military drones from the arcology's original contingent. -<<case 1>> - Replaced the security drones with basic, lightly-armored military combat models possessing integrated small arms. -<<case 2>> - Replaced its basic military drones with more advanced models and added a number of support drones carrying heavy weaponry to its fleet. -<<case 3>> - Acquired even more advanced models of both the standard combat drones and the heavy support drones, and expanded its numbers of both. -<<case 4>> - Has acted to upgrade both the standard and support models of drones to carry basic electromagnetic weaponry, improving their overall combat effectiveness. -<<case 5>> - Improved the electromagnetic armament of its drones by mounting both miniaturized and heavy railguns on them. In addition further sourcing numerous models of drones for roles as diverse as reconnaissance, independent slave capture and swarming tactics. -<<case 6>> - Acquired even lighter advanced armored combat Drones with electromagnetic weaponry, advanced heavy Drones with electromagnetic support weaponry along with specialized Drones for reconnaissance, capture, and swarm tactics. -<<case 7>> - Acquired even lighter advanced thicker armored combat Drones with electromagnetic weaponry, advanced heavy Drones with electromagnetic support weaponry along with specialized Drones for reconnaissance, capture, and swarm tactics. -<<case 8>> - Acquired even lighter advanced thicker armored combat Drones with nanite rather than electromagnetic weaponry, advanced heavy Drones with electromagnetic support weaponry along with specialized Drones for reconnaissance, capture, and swarm tactics. -<</switch>> -<</if>> - -<<if (_LaunchBayNO > 0 || _LaunchBayO > 0) && $securityForceArcologyUpgrades >= 4>> -<br><br> - ''Launch Bay:'' -<<if $securityForceSatellitePower > 0>> -<br>''Satellite:'' -<<switch $securityForceSatellitePower>> - <<case 1>> - A basic Satellite has been 'borrowed' from the old world. - <<case 2>> - Modernized the electronics. - <<case 3>> - Modernized the electronics, wiring, and circuitry. - <<case 4>> - Modernized the electronics, wiring, and circuitry. Installed a basic localized communications jammer to the Satellite (excludes your own frequencies with little to no leeway) that will "slightly" anger locals until it is deactivated. - <<case 5>> - Modernized the electronics, wiring, and circuitry. An advanced communications jammer is installed in the Satellite, increasing the AO localization, reducing the number of affected equipment. - <<case 6>> - Modernized the electronics, wiring, and circuitry. Boosted the advanced comms jammer power by 25% (now can damage affected equipment). - <<case 7>> - Modernized the electronics, wiring, and circuitry. Boosted the power of the advanced comms jammer by 50% (now can destroy affected equipment). - <<case 8>> - Modernized the electronics, wiring, and circuitry. Boosted the power of the advanced comms jammer by 50% (now can destroy affected equipment). The Satellite is now equipped with a basic EMP generator (advanced EMP hardening was applied before the insulation and activation) that will "slightly" anger locals until it is deactivated. - <<case 9>> - Modernized the electronics, wiring, and circuitry. Boosted the power of the advanced comms jammer by 50% (now can destroy affected equipment). The Satellite is now equipped with an advanced EMP generator by, increasing the AO localization which reduces the quantity of affected equipment. - <<case 10>> - Modernized the electronics, wiring, and circuitry. Boosted the power of the advanced comms jammer by 50% (now can destroy affected equipment) and the output of the advanced EMP generator by 25% (now can damage affected equipment). - <<case 11>> - Modernized the electronics, wiring, and circuitry. Boosted the power of the advanced comms jammer by 50% (now can destroy affected equipment) and the output of the advanced EMP generator by 50% (now can destroy affected equipment). - <<case 12>> - Modernized the electronics, wiring, and circuitry. Boosted the power of the advanced comms jammer by 50% (now can destroy affected equipment) and the output of the advanced EMP generator by 50% (now can destroy affected equipment). Provided R&D funds to be able to shoot a concentrated beam of pure energy that is able to level an entire city block. It required overhauling the battery system and shielding. - <<case 13>> - Modernized the electronics, wiring, and circuitry. Boosted the power of the advanced comms jammer by 50% (now can destroy affected equipment) and the output of the advanced EMP generator by 50% (now can destroy affected equipment). Provided R&D funds to focus the beam enough to level a suburb. - <<case 14>> - Modernized the electronics, wiring, and circuitry. Boosted the power of the advanced comms jammer by 50% (now can destroy affected equipment) and the output of the advanced EMP generator by 50% (now can destroy affected equipment). Provided R&D funds to focus the beam enough to level a block of houses. - <<case 15>> - Modernized the electronics, wiring, and circuitry. Boosted the power of the advanced comms jammer by 50% (now can destroy affected equipment) and the output of the advanced EMP generator by 50% (now can destroy affected equipment). Provided R&D funds to focus the beam enough to level a single house. - <<case 16>> - Modernized the electronics, wiring, and circuitry. Boosted the power of the advanced comms jammer by 50% (now can destroy affected equipment) and the output of the advanced EMP generator by 50% (now can destroy affected equipment). Provided R&D funds to focus the beam enough to level 366 cm. - <<case 17>> - Modernized the electronics, wiring, and circuitry. Boosted the power of the advanced comms jammer by 50% (now can destroy affected equipment) and the output of the advanced EMP generator by 50% (now can destroy affected equipment). Provided R&D funds to focus the beam enough to level 30 cm. - <<case 18>> - Modernized the electronics, wiring, and circuitry. Boosted the power of the advanced comms jammer by 50% (now can destroy affected equipment) and the output of the advanced EMP generator by 50% (now can destroy affected equipment). Provided R&D funds to focus the beam enough to level 15 cm. - <<case 19>> - Modernized the electronics, wiring, and circuitry. Boosted the power of the advanced comms jammer by 50% (now can destroy affected equipment) and the output of the advanced EMP generator by 50% (now can destroy affected equipment). Provided R&D funds to switch the 15 cm wide beam from laser to nanites. - <<case 20>> - Modernized the electronics, wiring, and circuitry. Boosted the power of the advanced comms jammer by 50% (now can destroy affected equipment) and the output of the advanced EMP generator by 50% (now can destroy affected equipment). Provided R&D funds to switch the 15 cm wide beam from laser to nanites and allow the beam to be split (if needed). - <<case 21>> - Modernized the electronics (in addition to overclocking), wiring and circuitry. Boosted the power of the advanced comms jammer by 50% (now can destroy affected equipment) and the output of the advanced EMP generator by 50% (now can destroy affected equipment). Provided R&D funds to switch the 15 cm wide beam from laser to nanites and allow the beam to be split (if needed). -<</switch>> -<</if>> -<<if $securityForceGiantRobot > 0>> -<br>''Giant Robot'': -<<switch $securityForceGiantRobot>> - <<case 1>> - An old world giant robot has been 'Borrowed'. - <<case 2>> - Upgraded the wiring and circuitry. - <<case 3>> - Upgraded the wiring, circuitry, and power efficiency. - <<case 4>> - Upgraded the wiring, circuitry, and power efficiency. Reduced the weight. - <<case 5>> - Upgraded the wiring, circuitry, power efficiency, and battery capacity. Reduced the weight. - <<case 6>> - Upgraded the wiring, circuitry, power efficiency, battery capacity, and armor. Reduced the weight. - <<case 7>> - Upgraded the wiring, circuitry, power efficiency, battery capacity, armor and weapons to include heat seeking missiles plus a massive long sword in addition to quad 356 cm back mounted electromagnetic cannons. - <<case 8>> - Upgraded the wiring, circuitry, power efficiency, battery capacity, armor and weapons to include heat seeking missiles plus a massive long sword in addition to quad 356 cm back mounted electromagnetic cannons and the amount of pilots to two via a synced neural link. - <<case 9>> - Upgraded the wiring, circuitry, power efficiency, battery capacity, armor and weapons to include heat seeking missiles plus a massive long sword in addition to quad 356 cm back mounted electromagnetic cannons. Increased the number of pilots to two via a synced neural link. Improved the life support systems, allowing for longer operational time. - <<case 10>> - Upgraded the wiring, circuitry, power efficiency, battery capacity, armor and weapons to include heat seeking missiles plus a massive long sword in addition to quad 356 cm back mounted electromagnetic cannons. Increased the number of pilots to two via a synced neural link. Improved the life support systems, allowing for longer operational time. Replaced the skin of $securityForceName's giant robot with a basic optical illusion kit. - <<case 11>> - Upgraded the wiring, circuitry, power efficiency, battery capacity, armor and weapons to include heat seeking missiles plus a massive long sword in addition to quad 356 cm back mounted electromagnetic cannons. Increased the number of pilots to two via a synced neural link. Improved the life support systems, allowing for longer operational time. Replaced the skin of $securityForceName's giant robot with an advanced optical illusion kit. - <<case 12>> - Upgraded the wiring, circuitry, power efficiency, battery capacity, armor and weapons to include heat seeking missiles, a massive long sword, quad 356 cm back mounted nanite rather than electromagnetic cannons. Increased the number of pilots to two via a synced neural link. Improved the life support systems, allowing for longer operational time. Replaced the skin of $securityForceName's giant robot with an advanced optical illusion kit. - <<case 13>> - Upgraded the wiring, circuitry, power efficiency, battery capacity, armor and weapons to include heat seeking missiles, a massive long sword, quad 356 cm back mounted nanite rather than electromagnetic cannons. Increased the number of pilots to two via a synced neural link. Improved the life support systems, allowing for longer operational time. Replaced the skin of $securityForceName's giant robot with an advanced optical illusion kit. Added hover capabilities. - <<case 14>> - Upgraded the wiring, circuitry, power efficiency, battery capacity, armor and weapons to include heat seeking missiles, a massive long sword, quad 356 cm back mounted nanite rather than electromagnetic cannons and a massive wrist mounted shield. Increased the number of pilots to two via a synced neural link. Improved the life support systems, allowing for longer operational time. Replaced the skin of $securityForceName's giant robot with an advanced optical illusion kit. Added hover capabilities. - <<case 15>> - Upgraded the wiring, circuitry, power efficiency, battery capacity, armor and weapons to include heat seeking missiles, a massive long sword, quad 356 cm back mounted nanite rather than electromagnetic cannons, a massive wrist mounted shield and electric fists. Increased the number of pilots to two via a synced neural link. Improved the life support systems, allowing for longer operational time. Replaced the skin of $securityForceName's giant robot with an advanced optical illusion kit. Added hover capabilities. - <<case 16>> - Upgraded the wiring, circuitry, power efficiency, battery capacity, armor and weapons to include heat seeking missiles, a massive long sword, quad 356 cm back mounted nanite rather than electromagnetic cannons, a massive wrist mounted shield and electric fists. Increased the number of pilots to two via a synced neural link. Improved the life support systems, allowing for longer operational time. Replaced the skin of $securityForceName's giant robot with an advanced optical illusion kit. Added hover capabilities. Overclocked the movement systems allowing for greater mobility. -<</switch>> -<</if>> -<<if $securityForceMissileSilo > 0>> -<br>''Missile Silo:'' -<<switch $securityForceMissileSilo>> - <<case 1>> - A basic missile silo has been 'borrowed' from the old world. - <<case 2>> - Modernized the launching electronics. - <<case 3>> - Modernized the launching electronics, wiring and circuitry. -<</switch>> -<</if>> -<</if>> - -<<if _NavalYard > 0 && ($terrain == "oceanic" || $terrain == "marine")>> -<br><br> - ''Naval Yard:'' -<<if $securityForceAircraftCarrier > 0>> -<br>''Aircraft Carrier:'' -<<switch $securityForceAircraftCarrier>> - <<case 1>> - A basic aircraft carrier has been 'borrowed' from the old world. - <<case 2>> - Modernized the electronics. - <<case 3>> - Modernized the electronics and weaponry. - <<case 4>> - Modernized the electronics, weaponry and armor. - <<case 5>> - Modernized the electronics, weaponry and armor. Added an EMP generator. - <<case 6>> - Modernized the electronics, weaponry and armor. Added an EMP generator and laser designator. -<</switch>> -<</if>> -<<if $securityForceSubmarine > 0>> -<br>''Submarine:'' -<<switch $securityForceSubmarine>> - <<case 1>> - A basic submarine has been 'borrowed' from the old world. - <<case 2>> - Modernized the engines for speed. - <<case 3>> - Modernized the engines for speed and silence. - <<case 4>> - Modernized the engines for speed and silence. Upgraded the hull for silence. - <<case 5>> - Modernized the engines for speed and silence. Upgraded the hull for silence and weaponry. - <<case 6>> - Modernized the engines for speed and silence. Upgraded the hull for silence, weaponry and air scrubbers, allowing it to stay submerged for longer. - <<case 7>> - Modernized the engines for speed and silence. Upgraded the hull for silence, weaponry and air scrubbers, allowing it to stay submerged for longer. Overclocked the sonar, increasing its ping speed. -<</switch>> -<</if>> -<<if $securityForceHeavyAmphibiousTransport > 0>> -<br>''Heavy Amphibious Transport:'' -<<switch $securityForceHeavyAmphibiousTransport>> - <<case 1>> - A basic heavy amphibious transport has been 'borrowed' from the old world. - <<case 2>> - Modernized the armor. - <<case 3>> - Modernized the armor and speed. - <<case 4>> - Modernized the armor and speed. Added miniaturized railguns in all four corners. - <<case 5>> - Modernized the armor and speed. Added miniaturized railguns in all four corners and a laser designator in the middle. - <<case 6>> - Modernized the armor and speed. Replaced the corner miniaturized railguns with nanite ones while keeping the laser designator in the middle. -<</switch>> -<</if>> -<</if>> \ No newline at end of file diff --git a/src/pregmod/SecForceEX/SpecialForceUpgradeOptions.tw b/src/pregmod/SecForceEX/SpecialForceUpgradeOptions.tw deleted file mode 100644 index d120d7aa0a0a8d6cfe1f1176f611704b75a6eb54..0000000000000000000000000000000000000000 --- a/src/pregmod/SecForceEX/SpecialForceUpgradeOptions.tw +++ /dev/null @@ -1,602 +0,0 @@ -:: SpecialForceUpgradeOptions [nobr] -<<set _costDebuff = 1>> -<<set $HackingSkillMultiplier = HSM()>> -<<if ($SFAO < _max) && $securityForceUpgradeToken == 0>> -<span id="resultX"> - <br>Which facility or equipment do you wish _Name to upgrade this week? - <<if _Barracks < 1 || _Barracks < 2 || _Barracks < 4>><br> More barracks upgrades are required to unlock further options.<</if>> - - <<if $securityForceUpgradeToken == 0 && _Barracks < 5>> - <br><<link "Barracks">> - <<replace "#resultX">><br> - "Sure, boss." she says, nodding. "Expanding the facilities here should help us support more cool shit." She laughs, picks up a tablet, and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceArcologyUpgrades++, $cash -= 100000*$Env*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(100000*$Env*_costDebuff)>> // - <<elseif $securityForceUpgradeToken == 0 && $securityForceArcologyUpgrades < _BarracksMax && $TierTwoUnlock == 1>> - <<switch _Barracks>> - <<case 5>> - <<set _arcCost = 1500000>> - <<case 6>> - <<set _arcCost = 2000000>> - <<case 7>> - <<set _arcCost = 3500000>> - <<case 8>> - <<set _arcCost = 5500000>> - <<case 9>> - <<set _arcCost = 1250000>> - <<case 10>> - <<set _arcCost = 3500000>> - <<case 11>> - <<set _arcCost = 6000000>> - <<case 12>> - <<set _arcCost = 25000000>> - <<case 13>> - <<set _arcCost = 50000000>> - <<case 14>> - <<set _arcCost = 60000000>> - <<case 15>> - <<set _arcCost = 95000000>> - <</switch>> - <br><<link "Barracks">> - <<replace "#resultX">><br> - "Sure, boss." she says, nodding. "Expanding the facilities here should help us support more cool shit." She laughs, picks up a tablet, and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceArcologyUpgrades++, $cash -= _arcCost*$Env*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(_arcCost*$Env*_costDebuff)>> // - <<elseif $securityForceUpgradeToken == 0 && $securityForceArcologyUpgrades == 12 && _Armoury >= 11 && _StimulantLab >= 7 && $securityForceVehiclePower >= 7 && $securityForceAircraftPower >= 8 && $securityForceSpacePlanePower >= 11 && $securityForceFortressZeppelin >= 3 && $securityForceAC130 >= 5 && _DroneBay >= 6 && $securityForceSatellitePower >= 16>> - <br><<link "Barracks">> - <<replace "#resultX">><br> - "Sure, boss." she says, nodding. "Expanding the facilities here should help us support more cool shit." She laughs, picks up a tablet, and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceArcologyUpgrades++, $cash -= _arcCost*$Env*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(_arcCost*$Env*_costDebuff)>> // - <<elseif $securityForceUpgradeToken == 0 && $securityForceArcologyUpgrades == 13>> - <br><<link "Barracks">> - <<replace "#resultX">><br> - "Sure, boss." she says, nodding. "Expanding the facilities here should help us support more cool shit." She laughs, picks up a tablet, and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceArcologyUpgrades++, $cash -= _arcCost*$Env*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(_arcCost*$Env*_costDebuff)>> // - <</if>> - <<if _Barracks == _BarracksMax>> - <br>//$securityForceName has fully upgraded the barracks to support its activities// - <</if>> - - /* - <<if $securityForceUpgradeToken == 0 && $TierTwoUnlock == 1 && $SupportFacility == 0>> - <br><<link "Support Facility">> - <<replace "#resultX">><br> - "Sure, boss." she says, nodding. "Creating a specialised area for any slaves you send to assist us will benefical to everyone." - <<set $securityForceUpgradeToken = 1, $SupportFacility++, $cash -= Math.trunc(15000000*(Math.max(0.99,$SFAO)/10)*$Env*_costDebuff)>> - <<set $SFIDs = [], $SupportFacilityDecoration = "standard", $SupportFacilityName = "The Support Facility", $SupportFacilityEfficiency = 0>> - <<set $SupportFacility = 5, $SupportFacilitySlaves = 0, $LieutenantColonel = 0>> - <</replace>> - <</link>> // Costs <<print cashFormat(Math.trunc(15000000*(Math.max(0.99,$SFAO)/10)*$Env)*_costDebuff)>> // - <</if>> - */ - - <<if $securityForceUpgradeToken == 0 && _Armoury < 5>> - <br><<link "Armoury">> - <<replace "#resultX">><br> - "Sure, boss." she says, nodding. "The boys'll like having some new guns and armour to help them out there." She laughs. "Don't think the poor bastards they'll be shooting will thank you though." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceInfantryPower++, $cash -= 40000*$Env*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(40000*$Env*_costDebuff)>> // - <<elseif $securityForceUpgradeToken == 0 && _Armoury < _ArmouryMax && $TierTwoUnlock == 1>> - <br><<link "Armoury">> - <<replace "#resultX">><br> - "Sure, boss." she says, nodding. "The boys'll like having some new guns and armour to help them out there." She laughs. "Don't think the poor bastards they'll be shooting will thank you though." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceInfantryPower++, $cash -= 450000*$Env*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(450000*$Env*_costDebuff)>> // - <</if>> - <<if _Armoury == _ArmouryMax>> - <br>//$securityForceName has fully upgraded the armoury to support its activities.// - <</if>> - - <<if $securityForceUpgradeToken == 0 && _StimulantLab < 5>> - <br><<link "Stimulant Lab">> - <<replace "#resultX">><br> - "Sure, boss." she says, nodding. "The boys are going to like hearing that they'll be getting new stims. Some of them can't get enough." She laughs, sweeping her arm at a corner of the throne, where dozens of empty stimulant injectors are piled. "I might be one of them. Either way, the fucks out there aren't going to like us once we're on the new juice." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceStimulantPower++, $cash -= 40000*$Env*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(40000*$Env*_costDebuff)>> // - <<elseif $securityForceUpgradeToken == 0 && _StimulantLab < _StimulantLabMax && $TierTwoUnlock == 1>> - <<switch _StimulantLab>> - <<case 5>> - <<set _drugCost = 126500>> - <<case 6>> - <<set _drugCost = 226500>> - <<case 7>> - <<set _drugCost = 20000000>> - <<case 8>> - <<set _drugCost = 25000000>> - <<case 9>> - <<set _drugCost = 35000000>> - <</switch>> - <br><<link "Stimulant Lab">> - <<replace "#resultX">><br> - "Sure, boss." she says, nodding. "The boys are going to like hearing that they'll be getting new stims. Some of them can't get enough." She laughs, sweeping her arm at a corner of the throne, where dozens of empty stimulant injectors are piled. "I might be one of them. Either way, the fucks out there aren't going to like us once we're on the new juice." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceStimulantPower++, $cash -= _drugCost*$Env*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(_drugCost*$Env*_costDebuff)>> // - <<elseif $securityForceUpgradeToken == 0 && _StimulantLab == 7 && _Armoury >= 11 && $securityForceVehiclePower >= 7 && $securityForceAircraftPower >= 8 && $securityForceSpacePlanePower >= 11 && $securityForceFortressZeppelin >= 3 && $securityForceAC130 >= 5 && _DroneBay >= 6 && $securityForceSatellitePower >= 16 && _Barracks >= 13>> - <br><<link "Stimulant Lab">> - <<replace "#resultX">><br> - "Sure, boss." she says, nodding. "The boys are going to like hearing that they'll be getting new stims. Some of them can't get enough." She laughs, sweeping her arm at a corner of the throne, where dozens of empty stimulant injectors are piled. "I might be one of them. Either way, the fucks out there aren't going to like us once we're on the new juice." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceStimulantPower++, $cash -= _drugCost*$Env*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(_drugCost*$Env*_costDebuff)>> // - <</if>> - <<if _StimulantLab == _StimulantLabMax>> - <br>//$securityForceName has fully upgraded the stimulant lab to support its activities.// - <</if>> - - <<if $securityForceUpgradeToken == 0 && _Barracks >= 1 && _Garage < _GarageMax && (_T1FullUpgradesGarage != "True" || $TierTwoUnlock == 1)>> - <br><<link "Garage">> - <<replace "#resultX">> - <span id="resultB"> - <br>"Which unit do you wish to upgrade or 'borrow'?" - <<link "Go back">> - <<goto "SFM Barracks">> - <</link>> - - <<if $securityForceUpgradeToken == 0 && $securityForceVehiclePower < 5>> - <br><<link "Light and medium vehicles">> - <<replace "#resultB">><br> - "Sure, boss." she says, nodding. "Some new wheels should help a lot." She laughs. "The scum out there don't seem to like it when we roll up on them in something better than their piece of shit junkers." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceVehiclePower++, $cash -= 60000*$Env*_costDebuff>> - <</replace>> - <</link>>// Costs <<print cashFormat(60000*$Env*_costDebuff)>> // - <<elseif $securityForceUpgradeToken == 0 && $securityForceVehiclePower < _LightAndMediumVehiclesMax && $TierTwoUnlock == 1>> - <<if $securityForceVehiclePower < 6>> - <<set _vehCost = 250000>> - <<elseif $securityForceVehiclePower == 6>> - <<set _vehCost = 300000>> - <<elseif $securityForceVehiclePower == 7>> - <<set _vehCost = 490000>> - <</if>> - <br><<link "Light and medium vehicles">> - <<replace "#resultB">><br> - "Sure, boss." she says, nodding. "Some new wheels should help a lot." She laughs. "The scum out there don't seem to like it when we roll up on them in something better than their piece of shit junkers." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceVehiclePower++, $cash -= _vehCost*$Env*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(_vehCost*$Env*_costDebuff)>> // - <</if>> - <<if $securityForceVehiclePower == _LightAndMediumVehiclesMax>> - <br>//$securityForceName has fully upgraded the vehicle fleet to support its activities.// - <</if>> - - <<if $securityForceUpgradeToken == 0 && $securityForceHeavyBattleTank < 1 && $TierTwoUnlock == 1>> - <br><<link "A heavy battle tank">> - <<replace "#resultB">><br> - "Sure, boss." she says, nodding. "A heavy battle tank should help a lot." She laughs. "The scum out there don't seem to like it when we roll up on them in something better than their piece of shit junkers." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceHeavyBattleTank++, $cash -= 6000000*$Env*_costDebuff>> - <</replace>> - <</link>>// Costs <<print cashFormat(6000000*$Env*_costDebuff)>> // - <<elseif $securityForceUpgradeToken == 0 && $securityForceHeavyBattleTank >= 1 && $securityForceHeavyBattleTank < _HeavyBattleTankMax>> - <<if $securityForceHeavyBattleTank < 2>> - <<set _hbtCost = 7500000>> - <<elseif $securityForceHeavyBattleTank == 2>> - <<set _hbtCost = 850000>> - <</if>> - <br><<link "heavy battle tank">> - <<replace "#resultB">><br> - "Sure, boss." she says, nodding. "Upgrading the heavy battle tank should help a lot." She laughs. "The scum out there don't seem to like it when we roll up on them in something better than their piece of shit junkers." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceHeavyBattleTank++, $cash -= _hbtCost*$Env*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(_hbtCost*$Env*_costDebuff)>> // - <</if>> - <<if $securityForceHeavyBattleTank == _HeavyBattleTankMax>> - <br>//$securityForceName has fully upgraded the heavy battle tank to support its activities.// - <</if>> - - </span> - <</replace>> - <</link>> - <</if>> - <<if _Garage >= _GarageMax>>//<br>$securityForceName has fully upgraded the garage to support its activities.//<</if>> - - <<if $securityForceUpgradeToken == 0 && _Barracks >= 4 && _Hangar < _HangarMax && (_T1FullUpgradesAirforce != "True" || $TierTwoUnlock == 1)>> - <br><<link "Hangar">> - <<replace "#resultX">> - <span id="resultY"> - <br>"Which unit do you wish to upgrade or 'borrow'?" - <<link "Go back">> - <<goto "SFM Barracks">> - <</link>> - - <<if $securityForceUpgradeToken == 0 && $securityForceAircraftPower < 5>> - <br><<link "Light and medium aircraft">> - <<replace "#resultY">><br> - "Sure, boss." she says, nodding. "Some new VTOLs would be great." She laughs. "They're the real multiplier over the scum out there. Not much a looter gang can do against air support." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceAircraftPower++, $cash -= 70000*$Env*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(70000*$Env*_costDebuff)>> // - <<elseif $securityForceUpgradeToken == 0 && $securityForceAircraftPower < _AircraftMax && $TierTwoUnlock == 1>> - <<switch $securityForceAircraftPower>> - <<case 5>> - <<set _airCost = 275000>> - <<case 6>> - <<set _airCost = 325000>> - <<case 7>> - <<set _airCost = 575000>> - <<case 8>> - <<set _airCost = 675000>> - <<case 9>> - <<set _airCost = 775000>> - <</switch>> - <br><<link "Light and medium aircraft">> - <<replace "#resultY">><br> - "Sure, boss." she says, nodding. "Some new VTOLs would be great." She laughs. "They're the real multiplier over the scum out there. Not much a looter gang can do against air support." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceAircraftPower++, $cash -= _airCost*$Env*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(_airCost*$Env*_costDebuff)>> // - <</if>> - <<if $securityForceAircraftPower == _AircraftMax>> - <br>//$securityForceName has fully upgraded the air fleet to support its activities.// - <</if>> - - <<if $securityForceUpgradeToken == 0 && $TierTwoUnlock == 1 && $securityForceSpacePlanePower < 1>> - <br><<link "A space plane">> - <<replace "#resultY">><br> - "Sure, boss." she says, nodding. "A orbital plane should help a lot." She laughs. "The scum out there don't seem to like it when we have eyes they can't hit." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceSpacePlanePower++, $cash -= 475000*$Env*$HackingSkillMultiplier*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(475000*$Env*$HackingSkillMultiplier*_costDebuff)>> // - <<elseif $securityForceUpgradeToken == 0 && $securityForceSpacePlanePower >= 1 && $securityForceSpacePlanePower < _SpacePlaneMax>> - <<if $securityForceSpacePlanePower < 4>> - <<set _spCost = 5000000>> - <<elseif $securityForceSpacePlanePower == 4>> - <<set _spCost = 7500000>> - <<elseif $securityForceSpacePlanePower == 5>> - <<set _spCost = 8500000>> - <<elseif $securityForceSpacePlanePower == 6>> - <<set _spCost = 9500000>> - <<elseif $securityForceSpacePlanePower == 7>> - <<set _spCost = 1250000>> - <<elseif $securityForceSpacePlanePower == 8>> - <<set _spCost = 1750000>> - <<elseif $securityForceSpacePlanePower == 9 && $securityForceInfantryPower >= 10>> - <<set _spCost = 2500000>> - <<elseif $securityForceSpacePlanePower == 10>> - <<set _spCost = 3500000>> - <<elseif $securityForceSpacePlanePower == 10>> - <<set _spCost = 6500000>> - <<elseif $securityForceSpacePlanePower == 11>> - <<set _spCost = 9500000>> - <</if>> - <br><<link "Space plane">> - <<replace "#resultY">><br> - "Sure, boss." she says, nodding. "Upgrading the orbital plane should help a lot." She laughs. "The scum out there don't seem to like it when we have eyes they can't hit." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceSpacePlanePower++, $cash -= _spCost*$Env*$HackingSkillMultiplier*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(_spCost*$Env*$HackingSkillMultiplier*_costDebuff)>> // - <</if>> - <<if $securityForceSpacePlanePower == _SpacePlaneMax>> - <br>//$securityForceName has fully upgraded the space plane to support its activities.// - <</if>> - - <<if $securityForceUpgradeToken == 0 && $TierTwoUnlock == 1 && $securityForceFortressZeppelin < 1>> - <br><<link "A fortress zeppelin">> - <<replace "#resultY">><br> - "Sure, boss." she says, nodding. "A fortress zeppelin would help a lot." She laughs. "The scum out there don't seem to like it when we have things that their shit equipment can't damage." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceFortressZeppelin++, $cash -= 3000000*$Env*_costDebuff>> - <</replace>><</link>> // Costs <<print cashFormat(3000000*$Env*_costDebuff)>> // - <<elseif $securityForceUpgradeToken == 0 && $securityForceFortressZeppelin >= 1 && $securityForceFortressZeppelin < _FortressZeppelinMax>> - <br><<link "Fortress zeppelin">> - <<replace "#resultY">><br> - "Sure, boss." she says, nodding. "Upgrading the Fortress Zeppelin, should help us gain a massive advantage." She laughs, picks up a tablet, and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceFortressZeppelin++, $cash -= 2000000*$Env*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat( 2000000*$Env*_costDebuff)>> // - <</if>> - <<if $securityForceFortressZeppelin == _FortressZeppelinMax>> - <br>//$securityForceName has fully upgraded the fortress zeppelin to support its activities.// - <</if>> - - <<if $securityForceUpgradeToken == 0 && $TierTwoUnlock == 1 && $securityForceAC130 < 1>> - <br><<link "An AC-130">> - <<replace "#resultY">><br> - "Sure, boss." she says, nodding. "An AC-130 would help a lot." She laughs. "The scum out there don't seem to like it when we have things that their shit equipment can't damage." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceAC130++, $cash -= 3500000*$Env*$HackingSkillMultiplier*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(3500000*$Env*$HackingSkillMultiplier*_costDebuff)>> // - <<elseif $securityForceAC130 >= 1 && $securityForceAC130 < _AC130Max>> - <br><<link "AC-130">> - <<replace "#resultY">><br> - "Sure, boss." she says, nodding. "Upgrading the AC-130, should help us gain a massive advantage." She laughs, picks up a tablet, and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceAC130++, $cash -= 2500000*$Env*$HackingSkillMultiplier*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(2500000*$Env*$HackingSkillMultiplier*_costDebuff)>> // - <</if>> - <<if $securityForceAC130 == _AC130Max>> - <br>//$securityForceName has fully upgraded the AC-130 to support its activities.// - <</if>> - - <<if $securityForceUpgradeToken == 0 && $TierTwoUnlock == 1 && $securityForceHeavyTransport < 1>> - <br><<link "A heavy transport">> - <<replace "#resultY">><br> - "Sure, boss." she says, nodding. "A heavy transport would help a lot." She laughs. "The scum out there don't seem to like it when we have things that their shit equipment can't damage." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceHeavyTransport++, $cash -= 4000000*$Env*_costDebuff>> - <</replace>><</link>> // Costs <<print cashFormat(4000000*$Env*_costDebuff)>> // - <<elseif $securityForceUpgradeToken == 0 && $securityForceHeavyTransport >= 1 && $securityForceHeavyTransport < _heavyTransportMax>> - <br><<link "Heavy transport">> - <<replace "#resultY">><br> - "Sure, boss." she says, nodding. "Upgrading the heavy transport, should help us gain a massive advantage." She laughs, picks up a tablet, and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceHeavyTransport++, $cash -= 3000000*$Env*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat( 3000000*$Env*_costDebuff)>> // - <</if>> - <<if $securityForceHeavyTransport == _heavyTransportMax>> - <br>//$securityForceName has fully upgraded the heavy transport to support its activities.// - <</if>> - - </span> - <</replace>> - <</link>> - <</if>> - <<if _Hangar >= _HangarMax>>//<br>$securityForceName has fully upgraded the hangar to support its activities.//<</if>> - - <<if $securityForceUpgradeToken == 0 && _DroneBay < 5 && _Barracks >= 2>> - <br><<link "Drone bay">> - <<replace "#resultX">> - "Sure, boss." she says, nodding. "Some new drones would be nice." She laughs. "The poor bastards out there shit themselves when they see combat drones fly over the horizon." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceDronePower++, $cash -= 45000*$Env*$HackingSkillMultiplier*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(45000*$Env*$HackingSkillMultiplier*_costDebuff)>> // - <<elseif $securityForceUpgradeToken == 0 && _DroneBay < _DroneBayMax && $TierTwoUnlock == 1>> - <br><<link "Drone bay">> - <<replace "#resultX">> - "Sure, boss." she says, nodding. "Some new drones would be nice." She laughs. "The poor bastards out there shit themselves when they see combat drones fly over the horizon." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceDronePower++, $cash -= 2000000*$Env*$HackingSkillMultiplier*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(2000000*$Env*$HackingSkillMultiplier*_costDebuff)>> // - <</if>> - <<if _DroneBay == _DroneBayMax>> - <br>//$securityForceName has fully upgraded the drone bay to support its activities.// - <</if>> - - <<if $securityForceUpgradeToken == 0 && (_LaunchBayNO < _LaunchBayNOMax || _LaunchBayO < _LaunchBayOMax) && $TierTwoUnlock == 1>> - <br><<link "Launch Bay">> - <<replace "#resultX">> - <span id="resultZ"> - <br>"Which unit do you wish to upgrade or 'borrow'?" - <<link "Go back">> - <<goto "SFM Barracks">> - <</link>> - - <<if $securityForceUpgradeToken == 0 && $securityForceSatellitePower < 1>> - <br><<link "A Satellite">> - <<replace "#resultZ">><br> - "Sure, boss." she says, nodding. "A Satellite should help a lot." She laughs. "The scum out there don't seem to like it when we have eyes they can't hit." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceSatellitePower++, $cash -= 3750000*$Env*$HackingSkillMultiplier*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(3750000*$Env*$HackingSkillMultiplier*_costDebuff)>> // - <<elseif $securityForceUpgradeToken == 0 && $securityForceSatellitePower >= 1 && $securityForceSatellitePower < _SatelliteMax>> - <<switch $securityForceSatellitePower>> - <<case 11>> - <<set _satCost = 1500000>> - <<case 12>> - <<set _satCost = 1600000>> - <<case 13>> - <<set _satCost = 1700000>> - <<case 14>> - <<set _satCost = 1800000>> - <<case 15>> - <<set _satCost = 1900000>> - <<case 16>> - <<set _satCost = 25000000>> - <<case 17>> - <<set _satCost = 25000000>> - <<case 18>> - <<set _satCost = 30000000>> - <<case 19>> - <<set _satCost = 45000000>> - <<case 20 && $PC.hacking >= 75>> - <<set _satCost = 55000000>> - <<default>> - <<set _satCost = 2350000>> - <</switch>> - <br><<link "Satellite">> - <<replace "#resultZ">><br> - "Sure, boss." she says, nodding. "Upgrading the Satellite should help a lot." She laughs. "The scum out there don't seem to like it when we have eyes they can't hit." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceSatellitePower++, $cash -= _satCost*$Env*$HackingSkillMultiplier*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(_satCost*$Env*$HackingSkillMultiplier*_costDebuff)>> // - <<elseif $securityForceUpgradeToken == 0 && $securityForceSatellitePower == 20 && $PC.hacking >= 75>> - <br><<link "Satellite">> - <<replace "#resultZ">><br> - "Sure, boss." she says, nodding. "Upgrading the Satellite should help a lot." She laughs. "The scum out there don't seem to like it when we have eyes they can't hit." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceSatellitePower++, $cash -= _satCost*$Env*$HackingSkillMultiplier*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(_satCost*$Env*$HackingSkillMultiplier*_costDebuff)>> // - <</if>> - <<if $securityForceSatellitePower == _SatelliteMax>> - <br>//$securityForceName has fully upgraded the Satellite to support its activities.// - <</if>> - - <<if $securityForceUpgradeToken == 0 && $securityForceGiantRobot < 1 && ($terrain != "oceanic" && $terrain != "marine")>> - <br><<link "A giant robot">> - <<replace "#resultZ">><br> - "Sure, boss." she says, nodding. "A giant robot would help a lot." She laughs. "The scum out there don't seem to like it when we have things that their shit equipment can't damage." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceGiantRobot++, $cash -= 50000000*$Env*$HackingSkillMultiplier*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(50000000*$Env*$HackingSkillMultiplier*_costDebuff)>> // - <<elseif $securityForceUpgradeToken == 0 && $securityForceGiantRobot >= 1 && $securityForceGiantRobot < _GiantRobotMax>> - <<if $securityForceGiantRobot < 3>> - <<set _robCost = 25000000>> - <</if>> - <<switch $securityForceGiantRobot>> - <<case 3>> - <<set _robCost = 4500000>> - <<case 4>> - <<set _robCost = 4500000>> - <<case 5>> - <<set _robCost = 6500000>> - <<case 6>> - <<set _robCost = 8500000>> - <<case 7>> - <<set _robCost = 9500000>> - <<case 8>> - <<set _robCost = 1050000>> - <<case 9 && $securityForceInfantryPower >= 10>> - <<set _robCost = 27500000>> - <<case 10>> - <<set _robCost = 3150000>> - <<case 11>> - <<set _robCost = 3200000>> - <<case 12>> - <<set _robCost = 4550000>> - <<case 13>> - <<set _robCost = 6550000>> - <<case 14>> - <<set _robCost = 8550000>> - <<case 15 $PC.hacking >= 75>> - <<set _robCost = 9550000>> - <</switch>> - <br><<link "Giant robot">> - <<replace "#resultZ">><br> - "Sure, boss." she says, nodding. "Upgrading the giant robot, should help us gain a massive advantage." She laughs, picks up a tablet, and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceGiantRobot++, $cash -= _robCost*$Env*$HackingSkillMultiplier*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(_robCost*$Env*$HackingSkillMultiplier*_costDebuff)>> // - <<elseif $securityForceUpgradeToken == 0 && $securityForceGiantRobot == 15 && $PC.hacking >= 75>> - <br><<link "Giant robot">> - <<replace "#resultZ">><br> - "Sure, boss." she says, nodding. "Upgrading the giant robot, should help us gain a massive advantage." She laughs, picks up a tablet, and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceGiantRobot++, $cash -= _robCost*$Env*$HackingSkillMultiplier*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(_robCost*$Env*$HackingSkillMultiplier*_costDebuff)>> // - <</if>> - <<if $securityForceGiantRobot == _GiantRobotMax && ($terrain != "oceanic" && $terrain != "marine")>> - <br>//$securityForceName has fully upgraded the giant robot to support its activities.// - <</if>> - - <<if $securityForceUpgradeToken == 0 && $securityForceMissileSilo < 1 && ($terrain != "oceanic" && $terrain != "marine")>> - <br><<link "A missile silo">> - <<replace "#resultZ">><br> - "Sure, boss." she says, nodding. "A missile silo would help a lot." She laughs. "The scum out there don't seem to like it when we have things that their shit equipment can't damage." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceMissileSilo++, $cash -= 20000000*$Env*$HackingSkillMultiplier*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(20000000*$Env*$HackingSkillMultiplier*_costDebuff)>> // - <<elseif $securityForceUpgradeToken == 0 && $securityForceMissileSilo >= 1 && $securityForceMissileSilo < _MissileSiloMax>> - <<if $securityForceMissileSilo == 1>> - <<set _msCost = 2500000>> - <<elseif $securityForceMissileSilo == 2>> - <<set _msCost = 2950000>> - <</if>> - <br><<link "Missile silo">> - <<replace "#resultZ">><br> - "Sure, boss." she says, nodding. "Upgrading the missile silo, should help us gain a massive advantage." She laughs, picks up a tablet, and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceMissileSilo++, $cash -= _msCost*$Env*$HackingSkillMultiplier*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(_msCost*$Env*$HackingSkillMultiplier*_costDebuff)>> // - <</if>> - <<if $securityForceMissileSilo == _MissileSiloMax && ($terrain != "oceanic" && $terrain != "marine")>><br>//$securityForceName has fully upgraded the missile silo to support its activities.//<</if>> - - </span> - <</replace>> - <</link>> - <</if>> - <<if _LaunchBayNO >= _LaunchBayNOMax || _LaunchBayO >= _LaunchBayNOMax>>//<br>$securityForceName has fully upgraded the launch bay to support its activities.//<</if>> - - <<if $securityForceUpgradeToken == 0 && ($terrain == "oceanic" || $terrain == "marine") && (_NavalYard < _NavalYardMax) && $TierTwoUnlock == 1>> - <br><<link "Naval Yard">> - <<replace "#resultX">> - <span id="resultA"> - <br>"Which unit do you wish to upgrade or 'borrow'?" - <<link "Go back">> - <<goto "SFM Barracks">> - <</link>> - - <<if $securityForceUpgradeToken == 0 && $securityForceAircraftCarrier < 1>> - <br><<link "An aircraft carrier">> - <<replace "#resultA">><br> - "Sure, boss." she says, nodding. "An aircraft carrier would help a lot." She laughs. "The scum out there don't seem to like it when we have things that their shit equipment can't damage." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceAircraftCarrier++, $cash -= 1500000*$Env*$HackingSkillMultiplier*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(1500000*$Env*$HackingSkillMultiplier*_costDebuff)>> // - <<elseif $securityForceUpgradeToken == 0 && $securityForceAircraftCarrier >= 1 && $securityForceAircraftCarrier < _AircraftCarrierMax>> - <br><<link "Aircraft carrier">> - <<replace "#resultA">><br> - "Sure, boss." she says, nodding. "Upgrading the aircraft carrier should help us gain a massive advantage." She laughs, picks up a tablet, and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceAircraftCarrier++, $cash -= 25000000*$Env*$HackingSkillMultiplier*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(25000000*$Env*$HackingSkillMultiplier*_costDebuff)>> // - <</if>> - <<if $securityForceAircraftCarrier == _AircraftCarrierMax && ($terrain == "oceanic" || $terrain == "marine")>> - <br>//$securityForceName has fully upgraded the aircraft carrier to support its activities.// - <</if>> - - <<if $securityForceUpgradeToken == 0 && $securityForceSubmarine < 1>> - <br><<link "A submarine">> - <<replace "#resultA">><br> - "Sure, boss." she says, nodding. "A submarine would help a lot." She laughs. "The scum out there don't seem to like it when we have things that their shit equipment can't damage." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceSubmarine++, $cash -= 1500000*$Env*$HackingSkillMultiplier*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(1500000*$Env*$HackingSkillMultiplier*_costDebuff)>> // - <<elseif $securityForceUpgradeToken == 0 && $securityForceSubmarine >= 1 && $securityForceSubmarine < _SubmarineMax>> - <<if $securityForceSubmarine < 4>> - <<set _subCost = 2500000>> - <<elseif $securityForceSubmarine == 4>> - <<set _subCost = 8500000>> - <<elseif $securityForceSubmarine == 5>> - <<set _subCost = 8650000>> - <<elseif $securityForceSubmarine == 6 && $PC.hacking >= 75>> - <<set _subCost = 8780000>> - <</if>> - <br><<link "Submarine">> - <<replace "#resultA">><br> - "Sure, boss." she says, nodding. "Upgrading the submarine, should help us gain a massive advantage." She laughs, picks up a tablet, and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceSubmarine++, $cash -= _subCost*$Env*$HackingSkillMultiplier*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(_subCost*$Env*$HackingSkillMultiplier*_costDebuff)>> // - <<elseif $securityForceUpgradeToken == 0 && $securityForceSubmarine == 6 && $PC.hacking >= 75>> - <br><<link "Submarine">> - <<replace "#resultA">><br> - "Sure, boss." she says, nodding. "Upgrading the submarine, should help us gain a massive advantage." She laughs, picks up a tablet, and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceSubmarine++, $cash -= _subCost*$Env*$HackingSkillMultiplier*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(_subCost*$Env*$HackingSkillMultiplier*_costDebuff)>> // - <</if>> - <<if $securityForceSubmarine == _SubmarineMax && ($terrain == "oceanic" || $terrain == "marine")>><br>//$securityForceName has fully upgraded the submarine to support its activities.//<</if>> - - <<if $securityForceUpgradeToken == 0 && $securityForceHeavyAmphibiousTransport < 1>> - <br><<link "A heavy amphibious transport">> - <<replace "#resultA">><br> - "Sure, boss." she says, nodding. "A heavy amphibious transport would help a lot." She laughs. "The scum out there don't seem to like it when we have things that their shit equipment can't damage." She picks up a tablet and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceHeavyAmphibiousTransport++, $cash -= 1500000*$Env*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(1500000*$Env*_costDebuff)>> // - <<elseif $securityForceUpgradeToken == 0&& $securityForceHeavyAmphibiousTransport >= 1 && $securityForceHeavyAmphibiousTransport < _HeavyAmphibiousTransportMax>> - <<switch $securityForceHeavyAmphibiousTransport>> - <<case 1>> - <<set _hatCost = 1500000>> - <<case 2>> - <<set _hatCost = 2500000>> - <<case 3>> - <<set _hatCost = 3000000>> - <<case 4>> - <<set _hatCost = 3500000>> - <<case 5>> - <<set _hatCost = 4000000>> - <</switch>> - <br><<link "Heavy amphibious transport">> - <<replace "#resultA">><br> - "Sure, boss." she says, nodding. "Upgrading the heavy amphibious transport, should help us gain a massive advantage." She laughs, picks up a tablet, and taps a few commands on it. "I'll get right on it." - <<set $securityForceUpgradeToken = 1, $securityForceHeavyAmphibiousTransport++, $cash -= _hatCost*$Env*_costDebuff>> - <</replace>> - <</link>> // Costs <<print cashFormat(_hatCost*$Env*_costDebuff)>> // - <</if>> - <<if $securityForceHeavyAmphibiousTransport == _HeavyAmphibiousTransportMax && ($terrain == "oceanic" || $terrain == "marine")>><br>//$securityForceName has fully upgraded the heavy amphibious transport to support its activities.//<</if>> - - </span> - <</replace>> - <</link>> - <</if>> - <<if ($terrain == "oceanic" || $terrain == "marine") && (_NavalYard >= _NavalYardMax)>><br>$securityForceName has fully upgraded the naval yard to support its activities.//<</if>> - -</span> -<</if>> diff --git a/src/pregmod/SecForceEX/SpecialForceUpgradeTree.tw b/src/pregmod/SecForceEX/SpecialForceUpgradeTree.tw deleted file mode 100644 index c7b3a5dd58a065bdf6dfabe6a71c5baf771f8b48..0000000000000000000000000000000000000000 --- a/src/pregmod/SecForceEX/SpecialForceUpgradeTree.tw +++ /dev/null @@ -1,97 +0,0 @@ -:: SpecialForceUpgradeTree - -<<silently>> - <<set _BarracksMax = 16>> - <<set $securityForceArcologyUpgrades = Math.clamp($securityForceArcologyUpgrades, 0 , _BarracksMax)>> - <<set _Barracks = $securityForceArcologyUpgrades>> - - - <<set _SupportFacilityMax = 1>> - <<set $SupportFacility = Math.clamp($SupportFacility, 0 , _SupportFacilityMax)>> - <<set _SupportFacility = $SupportFacility>> - - <<set _ArmouryMax = 12>> - <<set $securityForceInfantryPower = Math.clamp($securityForceInfantryPower, 0 , _ArmouryMax)>> - <<set _Armoury = $securityForceInfantryPower>> - - <<set _StimulantLabMax = 10>> - <<set $securityForceStimulantPower = Math.clamp($securityForceStimulantPower, 0 , _StimulantLabMax)>> - <<set _StimulantLab = $securityForceStimulantPower>> - -<<set _Garage = $securityForceVehiclePower+$securityForceHeavyBattleTank>> - <<set _LightAndMediumVehiclesMax = 8>> - <<set $securityForceVehiclePower = Math.clamp($securityForceVehiclePower, 0 , _LightAndMediumVehiclesMax)>> - <<set _HeavyBattleTankMax = 3>> - <<set $securityForceHeavyBattleTank = Math.clamp($securityForceHeavyBattleTank, 0 , _HeavyBattleTankMax)>> -<<set _GarageMax = _LightAndMediumVehiclesMax+_HeavyBattleTankMax>> -<<set _Garage = Math.clamp(_Garage, 0 , _GarageMax)>> - -<<set _Hangar = $securityForceAircraftPower+$securityForceSpacePlanePower+$securityForceFortressZeppelin+$securityForceAC130+$securityForceHeavyTransport>> - <<set _AircraftMax = 10>> - <<set $securityForceAircraftPower = Math.clamp($securityForceAircraftPower, 0 , _AircraftMax)>> - <<set _SpacePlaneMax = 12>> - <<set $securityForceSpacePlanePower = Math.clamp($securityForceSpacePlanePower, 0 , _SpacePlaneMax)>> - <<set _FortressZeppelinMax = 4>> - <<set $securityForceFortressZeppelin = Math.clamp($securityForceFortressZeppelin, 0 , _FortressZeppelinMax)>> - <<set _AC130Max = 6>> - <<set $securityForceAC130 = Math.clamp($securityForceAC130, 0 , _AC130Max)>> - <<set _heavyTransportMax = 4>> - <<set $securityForceHeavyTransport = Math.clamp($securityForceHeavyTransport, 0 , _heavyTransportMax)>> -<<set _HangarMax = _AircraftMax+_SpacePlaneMax+_FortressZeppelinMax+_AC130Max+_heavyTransportMax>> -<<set _Hangar = Math.clamp(_Hangar, 0 , _HangarMax)>> - - <<set _DroneBayMax = 8>> -<<set $securityForceDronePower = Math.clamp($securityForceDronePower, 0 , _DroneBayMax)>> -<<set _DroneBay = $securityForceDronePower>> - -/* Launch Bay */ - <<if $PC.hacking >= 75>> - <<set _SatelliteMax = 21>> - <<set _GiantRobotMax = 16>> - <<else>> - <<set _SatelliteMax = 20>> - <<set _GiantRobotMax = 15>> - <</if>> - <<set $securityForceSatellitePower = Math.clamp($securityForceSatellitePower , 0 , _SatelliteMax)>> - <<set $securityForceGiantRobot = Math.clamp($securityForceGiantRobot , 0 , _GiantRobotMax)>> - <<set _MissileSiloMax = 3>> - <<set $securityForceMissileSilo = Math.clamp($securityForceMissileSilo , 0 , _MissileSiloMax)>> - <<set _LaunchBayNO = $securityForceSatellitePower+$securityForceGiantRobot+$securityForceMissileSilo, _LaunchBayNOMax = _SatelliteMax+_GiantRobotMax+_MissileSiloMax>> -<<set _LaunchBayNO = Math.clamp(_LaunchBayNO , 0 , _LaunchBayNOMax)>> - - <<set _LaunchBayO = $securityForceSatellitePower>> - <<if $PC.hacking >= 75>> - <<set _LaunchBayOMax = 21>> - <<else>> - <<set _LaunchBayOMax = 20>> - <</if>> - <<set _LaunchBayO = Math.clamp(_LaunchBayO , 0 , _LaunchBayOMax)>> - - <<set _AircraftCarrierMax = 6>> - <<if $PC.hacking >= 75>> - <<set _SubmarineMax = 7>> - <<else>> - <<set _SubmarineMax = 6>> - <</if>> - <<set _HeavyAmphibiousTransportMax = 6>> - <<set $securityForceAircraftCarrier = Math.clamp($securityForceAircraftCarrier , 0 , _AircraftCarrierMax)>> - <<set $securityForceSubmarine = Math.clamp($securityForceSubmarine , 0 , _SubmarineMax)>> - <<set $securityForceHeavyAmphibiousTransport = Math.clamp($securityForceHeavyAmphibiousTransport , 0 , _HeavyAmphibiousTransportMax)>> -<<set _NavalYardMax = _AircraftCarrierMax+_SubmarineMax+_HeavyAmphibiousTransportMax>> - -<<set _maxNO = _BarracksMax+_ArmouryMax+_StimulantLabMax+_GarageMax+_HangarMax+_DroneBayMax+_LaunchBayNOMax+_SupportFacilityMax>> -<<set _maxO = _BarracksMax+_ArmouryMax+_StimulantLabMax+_GarageMax+_HangarMax+_DroneBayMax+_LaunchBayOMax+_NavalYardMax+_SupportFacilityMax>> - -<<if $terrain != "oceanic" && $terrain != "marine">> - <<set $SFNO = _Barracks+_Armoury+_StimulantLab+_Garage+_Hangar+_DroneBay+_LaunchBayNO+_SupportFacility>> - <<set _max = _BarracksMax+_ArmouryMax+_StimulantLabMax+_GarageMax+_HangarMax+_DroneBayMax+_LaunchBayNOMax+_SupportFacilityMax>> - <<set $SFO = 0>> - <<set $SFNO = Math.clamp($SFNO , 0, _max)>> -<<elseif $terrain == "oceanic" || $terrain == "marine">> - <<set _NavalYard = $securityForceAircraftCarrier+$securityForceSubmarine+$securityForceHeavyAmphibiousTransport>> - <<set $SFO = _Barracks+_Armoury+_StimulantLab+_Garage+_Hangar+_DroneBay+_LaunchBayO+_NavalYard+_SupportFacility>> - <<set _max = _BarracksMax+_ArmouryMax+_StimulantLabMax+_GarageMax+_HangarMax+_DroneBayMax+_LaunchBayOMax+_NavalYardMax+_SupportFacilityMax>> - <<set $SFNO = 0>> - <<set $SFO = Math.clamp($SFO , 0, _max)>> -<</if>> -<</silently>> diff --git a/src/pregmod/SecForceEX/TrickShotNight.tw b/src/pregmod/SecForceEX/TrickShotNight.tw new file mode 100644 index 0000000000000000000000000000000000000000..206a35ed7214682e4d2a6f5beb7cf00b20f155a4 --- /dev/null +++ b/src/pregmod/SecForceEX/TrickShotNight.tw @@ -0,0 +1,105 @@ +:: Trick Shot Night [nobr] + +<<set $nextButton = "Continue", $nextLink = "RIE Eligibility Check", $returnTo = "RIE Eligibility Check">> + +Despite your direct elevator, interaction with the majority of your security force is relatively scarce. Aside from mutually exchanged nods in the firebase and the occasional briefing, your $SF.Lower enjoy a degree of autonomy. + +<br><br>On a particularly lackadaisical evening, you find yourself alerted to a message alert by $assistantName. +<<if $assistant > 0>> + "<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Master<<else>>Mistress<</if>>, a message from $SF.Lower." She pauses before continuing. "It seems they're asking if you'd like to join their trick shot night." +<<else>> + It informs you that $SF.Lower have sent a message asking you to join them at their trick shot night. +<</if>> + +<br><br> <span id="result"> <<link "Politely decline">> + <<replace "#result">> + You inform $SF.Lower that you aren't planning to attend. A short while later, you receive a message from them stating that their invitation is an open one and that you're welcome to join in another night. + <</replace>> +<</link>> + +<<if $cash < 500000>> + <br>//You lack the necessary funds to attend.// +<<else>> /* cash >= 500000 */ + +<br><<link "Attend the trick shot night">> + <<replace "#result">> <<set $PC.warfare += 1>> + You instruct to $assistantName to inform $SF.Lower that you will be attending their trick shot night, and after settling your affairs in the penthouse you head down to the firebase. The atmosphere in the firebase is casual, especially in comparison to the usual situations you meet them, though your security force still maintain some measure of decorum towards you as their employer. Eventually, you settle in at the table with a handful of $SF.Lower officers and cash in your @@.yellowgreen;<<print cashFormat(500000)>>@@ into bullets. All that remains is to decide your strategy for the night. + <br><br> <span id="bountyresult"> + + <<link "Play it safe">> + <<replace "#bountyresult">> + <<if random(1,100) > 50>> + Despite your attempts to mitigate risk and play the safest shots possible, it seems lady luck has conspired against you this evening. However, even when your last bullet is shot, your security force pitch you a few bullets to keep you in the game for the rest of the night. You may have lost most of your ¤, but it seems you've @@.green;made some friends.@@ + <<set $rep += 1000, $cash -= 250000>> + <<else>> + While a careful eye for accuracy has buoyed you through the evening, ultimately lady luck is the decider in handing you the win in a number of close shots. Unfortunately your meticulous play limited your chance at a larger payout, and you only come away from the evening with @@.yellowgreen;<<print cashFormat(100000)>>@@ more than you arrived with and @@.green;the respect of your security force.@@ + <<set $rep += 1000, $cash += 100000>> + <</if>> + <</replace>> + <</link>> + + <br> <<link "Up the ante">> + <<replace "#bountyresult">> + Some aggressive play and an eye for riling up your fellow players has resulted in an immense payout, and all but one of your adversaries have folded as the situation has escalated. The only player still in contention is a wily old mercenary, the veteran of her fair share of battles on the battlefield and at the firing range. She's short on bullets, however, and she'll have to buy in with something else as collateral. + <br><br> <span id="aliveresult"> + + <<link "A year of servitude">> + <<replace "#aliveresult">> + <<if random(1,100) > 50>> + For all your skillful maneuvering to reach this position, ultimately the win comes down to chance. This time, however, luck was not on your side. As the victor sweeps up her spoils, the other security force clap you on the back and offer their condolences for your defeat. Though you may have lost your ¤, it seems you've @@.green;made some friends.@@ + <<set $rep += 1000, $cash -= 500000>> + <<else>> + For all your skillful maneuvering to reach this position, ultimately the win comes down to chance. This time, however, luck has rendered you the victor. A silence falls over the room as the result is declared, but after some time your opponent breaks the hush by joking that life as your slave is probably easier than fighting for $arcologies[0].name. After some awkward laughter the night continues, and at the end your former mercenary joins you on your trip back to the penthouse to submit to processing and to begin her new life as your sexual servant. She's not young, but she's tough and not distrusting of you due to her service in $SF.Lower. + <br> + <<set $activeSlaveOneTimeMinAge = 25>> + <<set $activeSlaveOneTimeMaxAge = 35>> + <<set $one_time_age_overrides_pedo_mode = 1>> + <<if $arcologies[0].FSSupremacistLawME == 1>><<set $fixedRace = $arcologies[0].FSSupremacistRace>><</if>> + <<include "Generate XX Slave">> + <<set $activeSlave.origin = "$He put herself up as collateral at a trick shot game, and lost.">> + <<set $activeSlave.career = "a soldier">> + <<set $activeSlave.indentureRestrictions = 2>> + <<set $activeSlave.indenture = 52>> + <<if $activeSlave.eyes == -2>> + <<set $activeSlave.eyes = -1>> + <</if>> + <<set $activeSlave.devotion = random(45,60)>> + <<set $activeSlave.trust = random(55,65)>> + <<set $activeSlave.health = random(60,80)>> + <<set $activeSlave.muscles = 60>> + <<if $activeSlave.weight > 130>> + <<set $activeSlave.weight -= 100>> + <<set $activeSlave.waist = random(-10,50)>> + <</if>> + <<set $activeSlave.anus = 0>> + <<set $activeSlave.analSkill = 0>> + <<set $activeSlave.whoreSkill = 0>> + <<set $activeSlave.combatSkill = 1>> + <<set $activeSlave.behavioralFlaw = "arrogant">> + <<set $activeSlave.hStyle = "buzzcut">> + <<include "New Slave Intro">> + <</if>> + <</replace>> + <</link>> + + <br> <<link "Dock her wages">> + <<replace "#aliveresult">> + <<if random(1,100) > 50>> + For all your skillful maneuvering to reach this position, ultimately the win comes down to chance. This time, however, luck was not on your side. As the victor sweeps up her spoils, the other security force members clap you on the back and offer their condolences for your defeat. Though you may have lost your ¤, it seems you've @@.green;made some friends.@@ + <<set $rep += 1000, $cash -= 500000>> + <<else>> + For all your skillful maneuvering to reach this position, ultimately the win comes down to chance. This time, however, luck has rendered you the victor. Your opponent accepts her defeat with grace and jokes to her comrades that she'll be fighting in her underwear for the next few months, and their uproar of laughter fills the room. Though you take the lion's share of the ¤, your security force also @@.green;had a good time fraternizing with you.@@ + <<set $rep += 2000, $cash += 500000>> + <</if>> + <</replace>> + <</link>> + + </span> + <</replace>> + <</link>> + + </span> + <</replace>> +<</link>> // It will cost @@.yellowgreen;<<print cashFormat(500000)>>@@ to participate in the trick shot night.// +<</if>> +</span> \ No newline at end of file diff --git a/src/pregmod/SecForceEX/Upgrades.tw b/src/pregmod/SecForceEX/Upgrades.tw new file mode 100644 index 0000000000000000000000000000000000000000..2f362621e0d892d1a4767f2988c3e8ac22f7c213 --- /dev/null +++ b/src/pregmod/SecForceEX/Upgrades.tw @@ -0,0 +1,355 @@ +:: Upgrades [nobr] + + <br><br>Total upgrade progress: <<print progress($SF.Units,_max)>> + + <<if $SF.MWU >= 1>> <br>Total multi week $SF.Lower upgrades: $SF.MWU <</if>> + + <<if $SF.U > 0 && $SF.MWU >= 0 && ($SF.Units !== _max)>> + + <br>[[Re-unlock upgrading.|Firebase][$SF.U = 0,$SF.MWU += 1,$cash -= Math.ceil(Math.abs($cash*.05*(1.25+($SF.Units/1000))))]] @@.yellowgreen;<<print cashFormat(Math.ceil(Math.abs($cash*.05*(1.25+($SF.Units/1000)))))>><</if>> + + <<if ($SF.Units < 30 || $SF.Units !== _max) && $SF.U < 1>> <<set _T1 = $SF.Units >= 30>> + + <br>Which facility or equipment do you wish to upgrade this week? <br><br> + + + + <<if $SFUnit.Firebase < 5||_T1 && $SFUnit.Firebase < _FU>> + + <<set _cF = Math.ceil(100000*_Env*(1.15+($SF.Units/10))*(1.15+($SFUnit.Firebase/100)))>> + + <<if $cash >= _cF>> + + <<link "Upgrade Firebase">> <<set $SF.U = 1, $SFUnit.Firebase++, $cash -= _cF>><<goto "Firebase">><</link>> + + <<else>>//Cannot afford to upgrade the Firebase.//<</if>> + + //Costs @@.yellowgreen;<<print cashFormat(_cF)>>@@ // + + <<elseif $SFUnit.Firebase == _FU>>//The Firebase has been fully upgraded.// + + <<else>>//More upgrades are required to unlock the next tier.// + + <</if>> <span style="float:right;"> <<print progress($SFUnit.Firebase)>> </span><br> + + + + <<if $SFUnit.Armoury < 5||_T1 && $SFUnit.Armoury < _AU>> + + <<set _cA = Math.ceil(40000*_Env*(1.15+($SF.Units/10))*(1.15+($SFUnit.Armoury/100)))>> + + <<if $cash >= _cA>> + + <<link "Upgrade Armory">> <<set $SF.U = 1, $SFUnit.Armoury++, $cash -= _cA>> <<goto "Firebase">><</link>> + + <<else>>//Cannot afford to upgrade the Armory.//<</if>> + + //Costs @@.yellowgreen;<<print cashFormat(_cA)>>@@ // + + <<elseif $SFUnit.Armoury == _AU>>//The Armory has been fully upgraded.// + + <<else>>//More upgrades are required to unlock the next tier.// + + <</if>> <span style="float:right;"> <<print progress($SFUnit.Armoury)>> </span><br> + + + + <<if $SFUnit.Drugs < 5||_T1 && $SFUnit.Drugs < _DrugsU>> + + <<set _cDrugs = Math.ceil(40000*_Env*(1.15+($SF.Units/10))*(1.15+($SFUnit.Drugs/100)))>> + + <<if $cash >= _cDrugs>> + + <<link "Upgrade Drug Lab">><<set $SF.U = 1, $SFUnit.Drugs++, $cash -= _cDrugs>> <<goto "Firebase">><</link>> + + <<else>>//Cannot afford to upgrade the Drug Lab.//<</if>> + + //Costs @@.yellowgreen;<<print cashFormat(_cDrugs)>>@@ // + + <<elseif $SFUnit.Drugs == _DrugsU>>//The Drug Lab has been fully upgraded.// + + <<else>>//More upgrades are required to unlock the next tier.// + + <</if>> <span style="float:right;"> <<print progress($SFUnit.Drugs)>> </span><br> + + + + <<if $SFUnit.Firebase >= 2 && ($SFUnit.Drones < 5 ||_T1 && $SFUnit.Drones < _DU)>> + + <<set _cDrones = Math.ceil(45000*_Env*(1.15+($SF.Units/10))*(1.15+($SFUnit.Drones/100))*HSM())>> + + <<if $cash >= _cDrones>> + + <<link "Upgrade Drone Bay">><<set $SF.U = 1, $SFUnit.Drones++, $cash -= _cDrones>> <<goto "Firebase">> <</link>> + + <<else>>//Cannot afford to upgrade the Drone Bay.//<</if>> + + //Costs @@.yellowgreen;<<print cashFormat(Math.ceil(45000*_Env*(1.15+($SF.Units/10))*(1.15+($SFUnit.Drones/100))*HSM()))>>@@ // <span style="float:right;"> <<print progress($SFUnit.Drones)>> </span> + + <<elseif $SFUnit.Drones == _DU>>//The Drone Bay has been fully upgraded.//<span style="float:right;"> <<print progress($SFUnit.Drones)>> </span> + + <<elseif _T1 && $SFUnit.Drones == 5>>//More upgrades are required to unlock the next tier.//<span style="float:right;"> <<print progress($SFUnit.Drones)>> </span><</if>> + + + + <<if $SFUnit.Firebase >= 1 && $terrain !== "oceanic">><br>''Garage'' + + <div style="margin-left:2em"><<if ($SFUnit.AV < 5||_T1 && $SFUnit.AV < _AVU)>> + + <<set _cAV = Math.ceil(60000*_Env*(1.15+($SF.Units/10))*(1.15+($SFUnit.AV/100)))>> + + <<if $cash >= _cAV>> + + <<link "Upgrade Attack Vehicle Fleet">><<set $SF.U = 1, $SFUnit.AV++, $cash -= _cAV>> <<goto "Firebase">><</link>> + + <<else>>//Cannot afford to upgrade the Attack Vehicle Fleet.//<</if>> + + //Costs @@.yellowgreen;<<print cashFormat(_cAV)>>@@//<span style="float:right;"><<print progress($SFUnit.AV)>></span> + + <<elseif $SFUnit.AV == _AVU>>//The Attack Vehicle Fleet has been fully upgraded.//<span style="float:right;"><<print progress($SFUnit.AV)>></span> + + <<else>>//More upgrades are required to unlock the next tier.//<span style="float:right;"><<print progress($SFUnit.AV)>></span> + + <</if>></div> + + + + <div style="margin-left:2em"><<if ($SFUnit.TV < 5||_T1 && $SFUnit.TV < _TVU)>> + + <<set _cTV = Math.ceil(60000*_Env*(1.15+($SF.Units/10))*(1.15+($SFUnit.TV/100)))>> + + <<if $cash >= _cTV>> + + <<link "Upgrade Transport Vehicle Fleet">><<set $SF.U = 1, $SFUnit.TV++, $cash -= _cTV>><<goto "Firebase">><</link>> + + <<else>>//Cannot afford to upgrade Transport Vehicle Fleet.//<</if>> + + //Costs @@.yellowgreen;<<print cashFormat(_cTV)>>@@//<span style="float:right;"><<print progress($SFUnit.TV)>> </span> + + <<elseif $SFUnit.TV == _TVU>>//The Transport Vehicle Fleet has been fully upgraded.//<span style="float:right;"><<print progress($SFUnit.TV)>></span> + + <<else>>//More upgrades are required to unlock the next tier.//<span style="float:right;"> <<print progress($SFUnit.TV)>> </span><</if>></div> + + + + <div style="margin-left:2em"><<if _T1 && $SFUnit.PGT < _PGTU>> + + <<set _cPGT = Math.ceil(735000*_Env*(1.15+($SF.Units/10))*(1.15+($SFUnit.PGT/100)))>> + + <<if $cash >= _cPGT>> + + <<link "Upgrade Prototype Goliath tank">><<set $SF.U = 1, $SFUnit.PGT++, $cash -= _cPGT>> <<goto "Firebase">><</link>> + + <<else>>//Cannot afford to upgrade Prototype Goliath Tank.//<</if>> + + //Costs @@.yellowgreen;<<print cashFormat(_cPGT)>>@@ //<span style="float:right;"> <<print progress($SFUnit.PGT)>> </span> + + <<elseif $SFUnit.PGT == _PGTU && $PC.warfare < 75>>//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SFUnit.PGT)>> </span> + + <<elseif $SFUnit.PGT == _PGTU>>//The Prototype Goliath Tank has been fully upgraded.//<span style="float:right;"> <<print progress($SFUnit.PGT)>> </span><</if>></div><</if>> + + + + <<if $SFUnit.Firebase >= 4>><br>''Hangar'' + + <div style="margin-left:2em"><<if $SFUnit.AA < 5||_T1 && $SFUnit.AA < _AAU>> + + <<set _cAA = Math.ceil(70000*_Env*(1.15+($SF.Units/10))*(1.15+($SFUnit.AA/100)))>> + + <<if $cash >= _cAA>> + + <<link "Upgrade Attack Aircraft Fleet">><<set $SF.U = 1, $SFUnit.AA++, $cash -= _cAA>> <<goto "Firebase">><</link>> + + <<else>>//Cannot afford to upgrade Attack Aircraft Fleet.//<</if>> + + //Costs @@.yellowgreen;<<print cashFormat(_cAA)>>@@ //<span style="float:right;"> <<print progress($SFUnit.AA)>> </span> + + <<elseif $SFUnit.AA == _AAU>>//The Attack Aircraft Fleet has been fully upgraded.//<span style="float:right;"> <<print progress($SFUnit.AA)>> </span> + + <<else>>//More upgrades are required to unlock the next tier.//<span style="float:right;"> <<print progress($SFUnit.AA)>> </span><</if>></div> + + + + <div style="margin-left:2em"><<if $SFUnit.TA < 5||_T1 && $SFUnit.TA < _TAU>> + + <<set _cTA = Math.ceil(70000*_Env*(1.15+($SF.Units/10))*(1.15+($SFUnit.TA/100)))>> + + <<if $cash >= _cTA>> + + <<link "Upgrade Transport Aircraft Fleet">><<set $SF.U = 1, $SFUnit.TA++, $cash -= _cTA>> <<goto "Firebase">><</link>> + + <<else>>//Cannot afford to upgrade the Transport Aircraft Fleet.//<</if>> + + //Costs @@.yellowgreen;<<print cashFormat(_cTA)>>@@ //<span style="float:right;"> <<print progress($SFUnit.TA)>> </span> + + <<elseif $SFUnit.TA == _TAU>>//The Transport Aircraft Fleet has been fully upgraded.//<span style="float:right;"> <<print progress($SFUnit.TA)>> </span> + + <<else>>//More upgrades are required to unlock the next tier.//<span style="float:right;"> <<print progress($SFUnit.TA)>> </span><</if>></div> + + + + <div style="margin-left:2em"><<if _T1 && $SFUnit.SpacePlane < _SPU>> + + <<set _cSP = Math.ceil(250000*_Env*(1.15+($SF.Units/10))*(1.15+($SFUnit.SpacePlane/100))*HSM())>> + + <<if $cash >= _cSP>> + + <<link "Upgrade Spaceplane">><<set $SF.U = 1, $SFUnit.SpacePlane++, $cash -= _cSP>> <<goto "Firebase">><</link>> + + <<else>>//Cannot afford to upgrade the Spaceplane.//<</if>> + + //Costs @@.yellowgreen;<<print cashFormat(_cSP)>>@@//<span style="float:right;"><<print progress($SFUnit.SpacePlane)>> </span> + + <<elseif $SFUnit.SpacePlane == _SPU && $PC.warfare < 75>>//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SFUnit.SpacePlane)>> </span> + + <<elseif $SFUnit.SpacePlane == _SPU>>//The Spaceplane has been fully upgraded.//<span style="float:right;"> <<print progress($SFUnit.SpacePlane)>> </span><</if>></div> + + + + <div style="margin-left:2em"><<if _T1 && $SFUnit.GunS < _GunSU>> + + <<set _cGunS = Math.ceil(350000*_Env*(1.15+($SF.Units/10))*(1.15+($SFUnit.GunS/100))*HSM())>> + + <<if $cash >= _cGunS>> + + <<link "Upgrade Gunship">><<set $SF.U = 1, $SFUnit.GunS++, $cash -= _cGunS>><<goto "Firebase">><</link>> + + <<else>>//Cannot afford to upgrade Gunship.//<</if>> + + //Costs @@.yellowgreen;<<print cashFormat(_cGunS)>>@@ //<span style="float:right;"> <<print progress($SFUnit.GunS)>> </span> + + <<elseif $SFUnit.GunS == _GunSU && $PC.warfare < 75>>//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SFUnit.GunS)>> </span> + + <<elseif $SFUnit.GunS == _GunSU>>//The Gunship has been fully upgraded.//<span style="float:right;"> <<print progress($SFUnit.GunS)>> </span><</if>></div><</if>> + + + + <<if _T1>>''Launch Bay'' + + <div style="margin-left:2em"><<if $SFUnit.Satellite < _SatU && $SatLaunched < 1>> + + <<set _cSat = Math.ceil(525000*_Env*(1.15+($SF.Units/10))*(1.15+($SFUnit.Satellite/100))*HSM())>> + + <<if $cash >= _cSat>> + + <<link "Upgrade Satellite">><<set $SF.U = 1, $SFUnit.Satellite++, $cash -= _cSat>> <<goto "Firebase">><</link>> + + <<else>>//Cannot afford to upgrade Satellite.//>><</if>> + + //Costs @@.yellowgreen;<<print cashFormat(_cSat)>>@@//<span style="float:right;"><<print progress($SFUnit.Satellite)>> </span> + + <<elseif $SFUnit.Satellite == _SatU && $PC.warfare < 75>>//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SFUnit.Satellite)>> </span> + + <<else>>//The Satellite has been fully upgraded.//<span style="float:right;"><<print progress($SFUnit.Satellite)>></span><</if>></div> + + + + <<if $terrain !== "oceanic">> + + <div style="margin-left:2em"><<if $SFUnit.GiantRobot < _GRU>> + + <<set _cGR = Math.ceil(550000*_Env*(1.15+($SF.Units/10))*(1.15+($SFUnit.GiantRobot/100))*HSM())>> + + <<if $cash >= _cGR>> + + <<link "Upgrade Giant Robot">><<set $SF.U = 1, $SFUnit.GiantRobot++, $cash -= _cGR>> <<goto "Firebase">><</link>> + + <<else>>//Cannot afford to upgrade the Giant Robot.//<</if>> + + //Costs @@.yellowgreen;<<print cashFormat(_cGR)>>@@//<span style="float:right;"><<print progress($SFUnit.GiantRobot)>></span> + + <<elseif $SFUnit.GiantRobot == _GRU && $PC.warfare < 75>>//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SFUnit.GiantRobot)>> </span> + + <<else>>//The Giant Robot has been fully upgraded.//<span style="float:right;"> <<print progress($SFUnit.GiantRobot)>> </span><</if>></div><</if>> + + + + <div style="margin-left:2em"><<if $SFUnit.MissileSilo < _MSU>> + + <<set _cMS = Math.ceil(565000*_Env*(1.15+($SF.Units/10))*(1.15+($SFUnit.MissileSilo/100))*HSM())>> + + <<if $cash >= _cMS>> + + <<link "Upgrade Cruise Missile">><<set $SF.U = 1, $SFUnit.MissileSilo++, $cash -= _cMS>> <<goto "Firebase">><</link>> + + <<else>>//Cannot afford to upgrade Cruise Missile.//<</if>> + + //Costs @@.yellowgreen;<<print cashFormat(_cMS)>>@@ //<span style="float:right;"><<print progress($SFUnit.MissileSilo)>></span> + + <<elseif $SFUnit.MissileSilo == _MSU && $PC.warfare < 75>>//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SFUnit.MissileSilo)>> </span> + + <<else>>//The Cruise Missile has been fully upgraded.//<span style="float:right;"> <<print progress($SFUnit.MissileSilo)>> </span><</if>></div><</if>> + + + + <<if _T1 && ($terrain == "oceanic" || $terrain == "marine")>>''Naval Yard'' + + <div style="margin-left:2em"><<if $SFUnit.AircraftCarrier < _ACU>> + + <<set _cAC = Math.ceil(650000*_Env*(1.15+($SF.Units/10))*(1.15+($SFUnit.AircraftCarrier/100))*HSM())>> + + <<if $cash >= _cAC>> + + <<link "Upgrade Aircraft Carrier">><<set $SF.U = 1, $SFUnit.AircraftCarrier++, $cash -= _cAC>> <<goto "Firebase">><</link>> + + <<else>>//Cannot afford to upgrade Aircraft Carrier.//<</if>> + + //Costs @@.yellowgreen;<<print cashFormat(Math.ceil(650000*_Env*(1.15+($SF.Units/10))*(1.15+($SFUnit.AircraftCarrier/100))*HSM()))>>@@ //<span style="float:right;"> <<print progress($SFUnit.AircraftCarrier)>> </span> + + <<elseif $SFUnit.AircraftCarrier == _ACU && $PC.warfare < 75>>//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SFUnit.AircraftCarrier)>> </span> + + <<else>>//The Aircraft Carrier has been fully upgraded.//<span style="float:right;"> <<print progress($SFUnit.AircraftCarrier)>> </span><</if>></div> + + + + <div style="margin-left:2em"><<if $SFUnit.Sub < _SubU>> + + <<set _cSub = Math.ceil(700000*_Env*(1.15+($SF.Units/10))*(1.15+($SFUnit.Sub/100))*HSM())>> + + <<if $cash >= _cSub>> + + <<link "Upgrade Submarine">><<set $SF.U = 1, $SFUnit.Sub++, $cash -= _cSub>> <<goto "Firebase">><</link>> + + <<else>>//Cannot afford to upgrade Submarine//<</if>> + + //Costs @@.yellowgreen;<<print cashFormat(_cSub)>>@@ //<span style="float:right;"> <<print progress($SFUnit.Sub)>> </span> + + <<elseif $SFUnit.Sub == _SubU && $PC.warfare < 75>>//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SFUnit.Sub)>> </span> + + <<else>>//The Submarine has been fully upgraded.//<span style="float:right;"> <<print progress($SFUnit.Sub)>> </span><</if>></div> + + + + <div style="margin-left:2em"><<if $SFUnit.HAT < _HATU>> + + <<set _cHAT = Math.ceil(665000*_Env*(1.15+($SF.Units/10))*(1.15+($SFUnit.HAT/100)))>> + + <<if $cash >= _cHAT>> + + <<link "Upgrade Amphibious Transport">><<set $SF.U = 1, $SFUnit.HAT++, $cash -= _cHAT>><<goto "Firebase">><</link>> + + <<else>>//Cannot afford to upgrade Amphibious Transport.//<</if>> + + //Costs @@.yellowgreen;<<print cashFormat(_cHAT)>>@@ //<span style="float:right;"> <<print progress($SFUnit.HAT)>> </span> + + <<elseif $SFUnit.HAT == _HATU && $PC.warfare < 75>>//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SFUnit.HAT)>> </span> + + <<else>>//The Amphibious Transport has been fully upgraded.//<span style="float:right;"> <<print progress($SFUnit.HAT)>> </span><</if>></div> + + <</if>> + + <<if _T1 < 1>>//More firebase upgrades are required to unlock further upgrades.//<</if>> + + <</if>> + + /* @@.green;<<link "Support Facility">> <<replace "#resultX">> + + <<set $SF.U = 1, $cash -= Math.ceil( (($C*(1.15+(($SFA0/1000))*($U+.15))*_Env )>> + + <<set $SFIDs = [], $SupportFacilityDecoration = "standard", $SupportFacilityNameCount = "The Support Facility", $SupportFacilityEfficiency = 0>> + + <<set $SupportFacility = 5, $SupportFacilitySlaves = 0, $LieutenantColonel = 0>> + + <<set $FacilitySupportSpeedUpgrades = 0, $FacilitySupportTrainingUpgrade = 0>> + + <</replace>> <</link>>@@ // @@.yellowgreen;<<print cashFormat(Math.ceil(Math.ceil($C*(1.15+(($SFA0/1000)*($U+.15)*_Env)))>>@@ //*/ \ No newline at end of file diff --git a/src/pregmod/SecForceEX/WeeklyChoices.tw b/src/pregmod/SecForceEX/WeeklyChoices.tw new file mode 100644 index 0000000000000000000000000000000000000000..aac1bdac321a4425d6412a6e41ab24bffa406307 --- /dev/null +++ b/src/pregmod/SecForceEX/WeeklyChoices.tw @@ -0,0 +1,197 @@ +:: WC [nobr] + +<<if $SF.WG === 0 && $SFTradeShow.CanAttend === -1 && ($SFColonel.Talk + $SFColonel.Fun !== 1)>> + The Colonel looks down a list on her tablet. "There's some things we can do to help you out, boss. + <br>We've had some good prizes turn up, that's made us some extra money we could turn over. | <<link "Request cash""Firebase">> + /*<<set $CashGift = ((Math.ceil((Math.abs($cash)*0.05)*(Math.max(0.99,$SF.Units))))*($arcologies[0].prosperity/100))*_Env>> OLD*/ + <<set $CashGift = Math.ceil(25000*($SF.Units/10)*_Env),$SF.WG = 1,$choice = 1>> + <<set $CashGift = ($CashGift > 5000 ? $CashGift : 5000),$cash += $CashGift>> + <</link>> + <<if $rep < 20000>> + <br>If you want we could throw a quick military parade, get the people feeling extra patriotic. | <<link "Request military parade""Firebase">> + <<set $GoodWords1 += 50*(Math.ceil($SF.Units*0.03*_Env))>> + <<set $GoodWords1 = (Number($GoodWords1) ? $GoodWords1 : 500),$SF.WG = 1>> + <<set $rep += $GoodWords1,$choice = 2>> + <</link>><</if>> + <<if $arcologies[0].prosperity < $AProsperityCap>> + <br>Or we could hit some businesses that rival the ones in $arcologies[0].name with some sabotage. | <<link "Request sabotage""Firebase">> + <<set $GoodWords2 = _EnvProsp+(Math.ceil($SF.Units/100*_Env)),$SF.WG = 1,$choice = 3>> + <<if $arcologies[0].prosperity + $GoodWords2 > $AProsperityCap>> + <<set $arcologies[0].prosperity = $AProsperityCap>> + <<else>><<set $arcologies[0].prosperity += $GoodWords2>><</if>> <</link>> <</if>> +<<elseif $SF.WG == 0 && ($SFTradeShow.CanAttend > -1 || ($SFColonel.Talk + $SFColonel.Fun > 0))>> + <br>He looks down a list on his tablet. "<<if $PC.title != 0>>Sir<<else>>Ma'am<</if>>, how can $SF.Lower help you this week? + <br>$SF.Caps can spare some profits from our recent operations. | <<link "Request cash""Firebase">> + <<set $CashGift = 25000*($SF.Units/10)*_Env,$SF.WG = 1,$choice = 1>> + <<set $CashGift = ($CashGift > 5000 ? $CashGift : 5000),$cash += Math.ceil($CashGift * 0.8)>> + <</link>> + <<if $rep < 20000>> + <br>We can set some units aside for a ceremonial march through the arcology. | <<link "Request a parade""Firebase">> + <<set $GoodWords1 += 50*(Math.ceil($SF.Units*0.03*_Env))>> + <<set $GoodWords1 = (Number($GoodWords1) ? $GoodWords1 : 500),$SF.WG = 1>> + <<set $rep += Math.ceil($GoodWords1*0.8),$choice = 2>> + <</link>> <</if>> + <<if $arcologies[0].prosperity < $AProsperityCap>> + <br>Or we can target rival businesses for sabotage. | <<link "Request sabotage""Firebase">> + <<set $GoodWords2 = _EnvProsp+(Math.ceil($SF.Units/100*_Env)),$SF.WG = 1,$choice = 3>> + <<if $arcologies[0].prosperity + $GoodWords2 * 0.8 > $AProsperityCap>> + <<set $arcologies[0].prosperity = $AProsperityCap>> + <<else>><<set $arcologies[0].prosperity += Math.ceil($GoodWords2*0.8)>><</if>> <</link>> <</if>> +<</if>> + +<<if $SFColonel.Talk === 0 && $SFColonel.Fun === 0 && $SFTradeShow.CanAttend === -1>> <span id="result0"> +<br><br>If you need me for anything else, let me know."<br> +<<if $SFColonel.Status >= 25>> + <<link "Walk with the Colonel on the surface.">> <<replace "#result0">> + <<set $SFColonel.Talk = 1>> + <br><br>You ask the Colonel if she would like to stretch her legs up on the surface. It doesn't take much effort for her to agree. + <<if $PC.warfare >= 100 && $PC.career == "mercenary">> + Your mastery of wet work and prior experience in a PMC satisfies the Colonel that between you<<if $Bodyguard != 0>> , $Bodyguard.slaveName,<</if>> and her, there should be little threat to walking around the arcology. Being able to see and interact with the arcology owner directly maintains the false idea that you're just like one of them while also giving them an increased opportunity to try gaining your favor. + <<set $rep += 10, $cash += _EnvCash2>> + <<elseif $PC.warfare >= 100>> + Your mastery of wet work satisfies the Colonel that you only need two soldiers <<if $Bodyguard != 0>> plus $Bodyguard.slaveName<</if>> to walk safely around the arcology. Being able to see and interact with the arcology owner directly maintains the false idea that you're just like one of them while also giving them an increased opportunity to try gaining your favor. + <<set $rep += 5, $cash += _EnvCash3>> + <<elseif $PC.warfare >= 60>> + With some expertise in warfare, the Colonel believes <<if $Bodyguard != 0>>with $Bodyguard.slaveName <</if>>you only need a squad of armed soldiers for a walk through the arcology. + <<elseif $PC.warfare >= 30>> + As you have some skill in warfare, the Colonel believes<<if $Bodyguard != 0>> with $Bodyguard.slaveName<</if>> you only need two full squads of armed soldiers for a walk around the arcology. + <<elseif $PC.warfare >= 10>> + Your minor skill in warfare convinces the Colonel that <<if $Bodyguard != 0>>in addition to $Bodyguard.slaveName, <</if>>you need two full squads of armed soldiers and an armored car escort for a simple walk around the arcology. + <<else>> + Your complete lack of combat skill convinces the Colonel that <<if $Bodyguard != 0>>in addition to $Bodyguard.slaveName, <</if>>you need two full squads of armed soldiers, an armored car escort, and a sniper overwatch for a simple walk around the arcology. + <</if>><br>As you make your way through the arcology you stop at a + <<if $arcologies[0].FSPaternalist != "unset">> + paternalist shop, <<if $SFColonel.Core == "cruel">>earning a sneer from the Colonel.<<else>>helping the Colonel select some luxurious and relaxing slave treatments.<</if>> + <<elseif $arcologies[0].FSPastoralist != "unset">> + pastoralist shop, helping the Colonel select a more comfortable breast pump. + <<else>>shop that catches the Colonel's eye. <</if>> + <<if $PC.slaving >= 100 && $PC.career == "slaver">> + Your mastery and extensive history of slaving allows you assist the Colonel greatly. The shop owner is so impressed by your understanding of slavery that she asks you for some advice. Before you leave, you manage to pass on a few tips, helping the business with future customers. + <<if $arcologies[0].prosperity < $AProsperityCap>> + <<set $arcologies[0].prosperity++>> <</if>> + <<elseif $PC.slaving >= 100>> + Your mastery and extensive history of slaving allows you assist the Colonel greatly. The shop owner is so impressed by your understanding of slavery that she asks you for some advice. Before you leave, you manage to pass on a few tips, helping the business with future customers. + <<if $arcologies[0].prosperity < $AProsperityCap>> + <<set $arcologies[0].prosperity++>> <</if>> + <<elseif $PC.slaving >= 60>> + Your expertise in slavery allows you to help the Colonel decide what to buy for her main slave. + <<elseif $PC.slaving >= 30>> + Your moderate skill in slavery makes you somewhat helpful to the Colonel in deciding what to buy for her main slave. + <<elseif $PC.slaving >= 10>> + Your basic skill level of slavery doesn't allow you to help the Colonel at all. + <<elseif $PC.slaving < 10>> + Your total lack of slavery skill (which is very unusual and very concerning for an arcology owner) means that you are of little to no help or even a hindrance. The shopkeeper notices your complete ineptitude, and as soon as you've left the rumor mill begins. + <<set $rep -= 20>><</if>> + <br>Soon the entourage heads back to the HQ of $SF.Lower. + <<if random(1,100) > 50>>Along the route you see a homeless citizen with a serious injury begging for help. + <<if $PC.medicine >= 100 && $PC.career == "medicine">> + Your expertise in surgery ensures that the citizen receives the best care they'll ever experience in their life. They are so grateful that they are more than happy to try and compensate your time. Word quickly spreads of the kindly medically trained arcology owner who took the time to heal a citizen, providing confidence to the rest of the citizens. + <<set $rep += 10, $cash += _EnvCash4>> + <<elseif $PC.medicine >= 100>> + Your expertise in surgery ensures that the citizen receives the best care they'll ever experience in their life. Word quickly spreads of the kindly arcology owner who took the time to heal a citizen. + <<set $rep += 5>> + <<elseif $PC.medicine >= 60>> + Your proficiency in surgery allows you to properly close their wound with minimal trauma to the patient. + <<elseif $PC.medicine >= 30>> + Your moderate surgical skill ensures that you can close the citizen's wound, though not without likely scarring. + <<elseif $PC.medicine >= 10>> + Your basic surgical skill in medicine is sufficient only to stabilize the citizen's wounds before medical assistnance arrives. + <<else>> + Your total lack of surgical skill causes the death of the citizen through repeated medical blunders. + <<set $arcologies[0].prosperity -= .25>><</if>><</if>> + <<set $SFColonel.Status += 2>><</replace>> <</link>><</if>> + +<br><<link "Talk in $SF.Lower's HQ.">> <<replace "#result0">> <span id="result1"> +<br><br>What do you want to do with the Colonel in the HQ? +<br><<link "Talk">><<replace "#result1">> +<br><br>You and the Colonel talk over some $PC.refreshment, where she ends up talking about her past. You learn a little more about her. +<<set $SFColonel.status +=3>> +<<switch random(1,6)>> +<<case 1>> + <<set $PC.medicine += 1>><<set $PC.trading += 1>><<set $PC.slaving += 1>> +<<case 2>> + <<set $PC.trading += 1>><<set $PC.slaving += 1>><<set $PC.engineering += 1>> +<<case 3>> + <<set $PC.slaving += 1>><<set $PC.engineering += 1>><<set $PC.hacking += 1>> +<<case 4>> + <<set $PC.engineering += 1>><<set $PC.hacking += 1>><<set $PC.warfare += 1>> +<<case 5>> + <<set $PC.hacking += 1>><<set $PC.warfare += 1>><<set $PC.medicine += 1>> +<<case 6>> + <<set $PC.warfare += 1>><<set $PC.medicine += 1>><<set $PC.trading += 1>> +<</switch>> +<</replace>><</link>> + +<br><<link "Learn">> <<replace "#result1">> +<<set $SFColonel.Talk = 1,$SFColonel.Status += 1>> +<br><br>"Sure boss, I can use a break from all of this," she laughs. The Colonel tells a story about one time when she +<<switch random(1,6)>> +<<case 1>> + used field medicine to save another merc's life, teaching you some medical procedures in the process. + <<set $PC.medicine += 5>> +<<case 2>> + haggled for necessary gear with a stingy quartermaster, teaching you how to get what you want from traders. + <<set $PC.trading += 5>> +<<case 3>> + found a load of human chattel in a raid and had to manage them before they could later be unloaded, teaching you how to better care for your slaves. + <<set $PC.slaving += 5>> +<<case 4>> + was responsible for rebuilding a fort she had seized, teaching you how to better manage construction in your arcology. + <<set $PC.engineering += 5>> +<<case 5>> + was forced to hack her way out of a trap, teaching you how to better penetrate digital security. + <<set $PC.hacking += 5>> +<<case 6>> + fought off an entire battalion with only a small squad, teaching you how to think tactically in battle. + <<set $PC.warfare += 5>> +<</switch>> +<</replace>> <</link>> + +<<if $SFColonel.Status >= 45>> +<br><<link "Have some fun.">> <<replace "#result1">> + @@.orange;<<link "Go back""Firebase">> + <<set $SFColonel.Fun = 0, $SFColonel.Talk = 0,$SFColonel.Status -= 3>> + <</link>>@@ + <<set $SFColonel.Fun = 1,$SFColonel.Talk = 1,$SFColonel.Status += 3>> + Where should this fun take place? + <br>@@.orange;<<link "In private">> <span id="result6"> + Which orifice do you wish to target? + @@.orange;<<link "Go back""Firebase">> <</link>>@@ + <br>@@.orange;<<link "Pussy">> <<replace "#result6">> + <<include "SFColonelSexDec">> + <</replace>> <<set $SFColonel.Fun += 1>> <</link>>@@ + <br>@@.orange;<<link "Ass">> <<replace "#result6">> + <<include "SFColonelSexDec">> + <</replace>> <<set $SFColonel.Fun += 1>> <</link>>@@ + <br>@@.orange;<<link "Both pussy and ass">> <<replace "#result6">> + <<include "SFColonelSexDec">> + <</replace>> <<set $SFColonel.Fun += 2>> <</link>>@@ + <br>@@.orange;<<link "Mouth">> <<replace "#result6">> + <<include "SFColonelSexDec">> + <</replace>> <<set $SFColonel.Fun += 1>> <</link>>@@ + <br>@@.orange;<<link "All three holes">> <<replace "#result6">> + <<include "SFColonelSexDec">> + <</replace>> <<set $SFColonel.Fun += 3>> <</link>>@@ + </span> <</link>>@@ + + <br>@@.orange;<<link "On The Colonel's throne.">> <span id="result6"> + Which orifice do you wish to target? + @@.orange;<<link "Go back""Firebase">> <</link>>@@ + <br>@@.orange;<<link "Pussy">> <<replace "#result6">> + <<include "SFColonelSexDec">> + <</replace>> <<set $SFColonel.Fun += 1>> <</link>>@@ + <br>@@.orange;<<link "Ass">> <<replace "#result6">> + <<include "SFColonelSexDec">> + <</replace>> <<set $SFColonel.Fun += 1>> <</link>>@@ + <br>@@.orange;<<link "Both pussy and ass">> <<replace "#result6">> + <<include "SFColonelSexDec">> + <</replace>> <<set $SFColonel.Fun += 2>> <</link>>@@ + <br>@@.orange;<<link "Mouth">> <<replace "#result6">> + <<include "SFColonelSexDec">> + <</replace>> <<set $SFColonel.Fun += 1>> <</link>>@@ + <br>@@.orange;<<link "All three holes">> <<replace "#result6">> + <<include "SFColonelSexDec">> + <</replace>> <<set $SFColonel.Fun += 3>> <</link>>@@ + </span> <</link>>@@ +<</replace>><</link>><</if>><br>[[Go back|Firebase]]/*Closes fun*/ +</span> <</replace>> <</link>>@@ <</if>> /*Closes spend time with The Colonel*/ \ No newline at end of file diff --git a/src/pregmod/SecForceEX/securityForceTradeShow.tw b/src/pregmod/SecForceEX/securityForceTradeShow.tw deleted file mode 100644 index c3037fc70415e49ab243fc179de9e842391cfcf0..0000000000000000000000000000000000000000 --- a/src/pregmod/SecForceEX/securityForceTradeShow.tw +++ /dev/null @@ -1,135 +0,0 @@ -:: securityForceTradeShow [nobr] - -<<set $nextButton = "Continue", $nextLink = "RIE Eligibility Check", $returnTo = "RIE Eligibility Check">> -<<set $Env = simpleWorldEconomyCheck()>> -<<if ndef $TradeShowAttendanceGranted>> <<set $TradeShowAttendanceGranted = 0>> <</if>> - -<<if $OverallTradeShowAttendance == 0>> - - <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>, back when I was a major before I joined $securityForceName. Me and a couple of colleagues went to a bi-yearly international security trade show, I would very much like to continue doing so. Can I?<span id="choice1"> - - <<link "Yes,">> - <<replace "#choice1">> - <br><br>"Thank you <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>sir<<else>>ma'am<</if>>." - <<set $OverallTradeShowAttendance += 1, $CurrentTradeShowAttendanceGranted = 1, $TradeShowAttendanceGranted = 1>> - <</replace>> - <</link>> - - <<link "No">> - <<replace "#choice1">> - <br><br>"I understand <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>sir<<else>>ma'am<</if>>." - <</replace>> - <</link>> - </span> - -<<elseif $OverallTradeShowAttendance >= 1>> -The (bi-yearly) security trade show has finally come around and even though you've already granted The Colonel permission to attend, she's decided to come and ask for the leave personally. - - <span id="choice2"> - - <br><br> - <<link "Grant leave">> - <<replace "#choice2">><br> - <br>"Thanks <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>sir<<else>>ma'am<</if>>" - - <<set $CurrentTradeShowAttendanceGranted = 1, _TradeShowAttendes = 150, _BonusProviderPercentage = .15, _MenialSlavesPerAttendee = 15>> - - <<include "SpecialForceUpgradeTree">> - - <<if $arcologies[0].prosperity < 25>> - <<set _TradingPower = 15>> - <<elseif $arcologies[0].prosperity > 70>> - <<set _TradingPower = 25>> - <<elseif $arcologies[0].prosperity > 65>> - <<set _TradingPower = 24>> - <<elseif $arcologies[0].prosperity > 60>> - <<set _TradingPower = 23>> - <<elseif $arcologies[0].prosperity > 55>> - <<set _TradingPower = 22>> - <<elseif $arcologies[0].prosperity > 50>> - <<set _TradingPower = 21>> - <<elseif $arcologies[0].prosperity > 45>> - <<set _TradingPower = 20>> - <<elseif $arcologies[0].prosperity > 40>> - <<set _TradingPower = 19>> - <<elseif $arcologies[0].prosperity > 35>> - <<set _TradingPower = 18>> - <<elseif $arcologies[0].prosperity > 30>> - <<set _TradingPower = 17>> - <<elseif $arcologies[0].prosperity > 25>> - <<set _TradingPower = 16>> - <</if>> - - <<set _SuccesfulPersuationAttempt = 0>> - <<if ($SFNO || $SFO) < 10 && random(0,100)+_TradingPower > 90>> - <<set _SuccesfulPersuationAttempt = 1>> - <<set _PersuationBonus = 1.05>> - <<elseif ($SFNO || $SFO) >= 110 && random(0,100)+_TradingPower > 40>> - <<set _SuccesfulPersuationAttempt = 1>> - <<set _PersuationBonus = 1.95>> - <<elseif ($SFNO || $SFO) >= 100 && random(0,100)+_TradingPower > 45>> - <<set _SuccesfulPersuationAttempt = 1>> - <<set _PersuationBonus = 1.90>> - <<elseif ($SFNO || $SFO) >= 90 && random(0,100)+_TradingPower > 50>> - <<set _SuccesfulPersuationAttempt = 1>> - <<set _PersuationBonus = 1.80>> - <<elseif ($SFNO || $SFO) >= 80 && random(0,100)+_TradingPower > 55>> - <<set _SuccesfulPersuationAttempt = 1>> - <<set _PersuationBonus = 1.70>> - <<elseif ($SFNO || $SFO) >= 70 && random(0,100)+_TradingPower > 60>> - <<set _SuccesfulPersuationAttempt = 1>> - <<set _PersuationBonus = 1.60>> - <<elseif ($SFNO || $SFO) >= 60 && random(0,100)+_TradingPower > 65>> - <<set _SuccesfulPersuationAttempt = 1>> - <<set _PersuationBonus = 1.50>> - <<elseif ($SFNO || $SFO) >= 50 && random(0,100)+_TradingPower > 70>> - <<set _SuccesfulPersuationAttempt = 1>> - <<set _PersuationBonus = 1.40>> - <<elseif ($SFNO || $SFO) >= 40 && random(0,100)+_TradingPower > 75>> - <<set _SuccesfulPersuationAttempt = 1>> - <<set _PersuationBonus = 1.30>> - <<elseif ($SFNO || $SFO) >= 30 && random(0,100)+_TradingPower > 80>> - <<set _SuccesfulPersuationAttempt = 1>> - <<set _PersuationBonus = 1.20>> - <<elseif ($SFNO || $SFO) >= 10 && random(0,100)+_TradingPower > 85>> - <<set _SuccesfulPersuationAttempt = 1>> - <<set _PersuationBonus = 1.10>> - <</if>> - - <<if _SuccesfulPersuationAttempt == 0>> - <<set _PersuationBonus = 1>> - <</if>> - - <<set _MenialSlaves = Math.ceil(random(0,_TradeShowAttendes)*_BonusProviderPercentage*_MenialSlavesPerAttendee*_PersuationBonus)>> - <<set _Profit = Math.ceil($cash*.010*$SFNO || $SFO*$arcologies[0].prosperity*$Env)*_PersuationBonus>> - - <br>During a break, The Colonel manages to sell some generic schematics to the _TradeShowAttendes people present, some decided to also give her some menial slaves as a bonus. - - <<set $helots = $helots+_MenialSlaves>> - <<set $TradeShowHelots += _MenialSlaves>> - <<set $TotalTradeShowHelots += _MenialSlaves>> - - <<set $cash = $cash+_Profit>> - <<set $TradeShowIncome += _Profit>> - <<set $TotalTradeShowIncome += _Profit>> - - <<if $ColonelRelationship >= 65 && $LieutenantColonel == 1 && $ColonelCore == "brazen">> - <br><br> - <<link "Have sex with The Colonel in a bathroom stall">> - The crowd are shocked by the loud noises coming from a bathroom stall. - <<set $rep -= 150, $securityForceSexedColonel += 1>> - <</link>> - <</if>> - - <</replace>> - <</link>> - - <br><<link "Request she remain on base">> - <<replace "#choice2">> - <br>The look of disappointment is barely noticeable on The Colonel's face. - <</replace>> - <</link>> - - </span> - -<</if>> diff --git a/src/pregmod/eliteTakeOver.tw b/src/pregmod/eliteTakeOver.tw index 32ab19a419a8b8b60a9045f5e9e2b13820fefbb8..e812c96022082a1c9db7508e1aa5971054e2a231 100644 --- a/src/pregmod/eliteTakeOver.tw +++ b/src/pregmod/eliteTakeOver.tw @@ -74,12 +74,12 @@ You look up from your desk as the locked door to your office unseals, and a doze <</replace>> <</link>> <</if>> - <<if $securityForceActive == 1>> - <br> - <<link "Send a message to The Colonel">> - <<set $finalChoice = "colonel">> + <<if $SF.Toggle && $SF.Active >= 1>> + <br> <<set _N = SFC()>> + <<link "Send a message to _N">> + <<set $finalChoice = "SF">> <<replace "#fate">> - send a message to The Colonel. + send a message to <<print SFC()>>. <</replace>> <</link>> <</if>> @@ -111,4 +111,4 @@ You look up from your desk as the locked door to your office unseals, and a doze <<link "Confirm">> <<goto "eliteTakeOverFight">> <</link>> -<</if>> \ No newline at end of file +<</if>> diff --git a/src/pregmod/eliteTakeOverFight.tw b/src/pregmod/eliteTakeOverFight.tw index 11d33b570ad18502ebe6566a99ef44abee19dcc8..dce7bf2f5ac7ba63e1752bd720c591d171a5577b 100644 --- a/src/pregmod/eliteTakeOverFight.tw +++ b/src/pregmod/eliteTakeOverFight.tw @@ -30,8 +30,8 @@ <<case "mercenaries">> <br>You send a quick message to the leader of your $mercenariesTitle, about your situation, then you pick up the revolver and quickly take aim. <<set $MercenariesMessageSent = 1>> -<<case "colonel">> - <br>You send a quick message to The Colonel about your situation, then you pick up the revolver and quickly take aim. +<<case "SF">> + <br>You send a quick message to <<print SFC()> about your situation, then you pick up the revolver and quickly take aim. <<set $SpecialForcesMessageSent = 1>> <<case "enrage">> <<if $PC.career != "wealth" && $PC.career != "engineer" && $PC.career != "medicine">> @@ -242,8 +242,8 @@ <<set $eliteFate = 2>> <<goto "eliteTakeOverResult">> <</link>> -<<elseif $SpecialForcesMessageSent == 1>> - It is now that a squad of $securityForceName makes their entrance, pointing their guns at the <<if $eliteLeft < $eliteTotal>>remaining<</if>> elite. +<<elseif $SpecialForcesMessageSent>> + It is now that a squad of $SF.Lower makes their entrance, pointing their guns at the <<if $eliteLeft < $eliteTotal>>remaining<</if>> elite. The officer asks "your orders <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>sir<<else>>ma'am<</if>>?" <br> <<link "Open fire">> @@ -299,4 +299,4 @@ <<set $ui = "start">> <br><br> ''GAME OVER'' -<</if>> \ No newline at end of file +<</if>> diff --git a/src/pregmod/eliteTakeOverResult.tw b/src/pregmod/eliteTakeOverResult.tw index 2e5a5778eb80df238e3ed51bb908f0b9c2f7cec6..fc70c7a61838938b869c3b91e3378d2ef325636f 100644 --- a/src/pregmod/eliteTakeOverResult.tw +++ b/src/pregmod/eliteTakeOverResult.tw @@ -44,7 +44,7 @@ <</if>> <<if $MercenariesMessageSent == 1>> <br>The <<if $eliteLeft < $eliteTotal>>remaining<</if>> elite are quickly captured, abused and enslaved. - The officer is thankful for giving the troops a chance to let off some stream. Two soldiers decide to double team an elite; one ass fucks while the other facefucks. + The officer is thankful for giving the troops a chance to let off some stream. Two soldiers decide to double team an elite; one ass fucks while the other facefucks. Another soldier takes a particular interest in an elite and politely asks you "<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>sir<<else>>ma'am<</if>> can I keep her?" <br><span id="choice1"> @@ -60,12 +60,12 @@ For a second your acceptance shocks them. Once they recover they are very grateful. "Thank you <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>sir<<else>>ma'am<</if>>, I'll make sure to look after her. Soon the story spreads of the kind arcology owner, enhancing your reputation. <</replace>> <</link>> - </span> - <<elseif $SpecialForcesMessageSent == 1>> + </span> + <<elseif $SpecialForcesMessageSent>> <br>The <<if $eliteLeft < $eliteTotal>>remaining<</if>> elite are quickly captured, abused and enslaved. - <<if $securityForceDepravity <= 0.3>> + <<if $SF.Depravity <= 0.3>> Two soldiers decide to double team an elite; one gropes her ass while the other gropes her tits. - <<elseif $securityForceDepravity <= 1.2>> + <<elseif $SF.Depravity <= 1.2>> Two soldiers decide to double team an elite; one ass fucks while the other facefucks. <<else>> Two soldiers decide to double team an elite; one breaks out their knife and begins to make little breaks in the elite's skin while the other soldier facefucks them. @@ -85,14 +85,16 @@ For a second your acceptance shocks them. Once they recover they are very grateful. "Thank you <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>sir<<else>>ma'am<</if>>, I'll make sure to look after her. Soon the story spreads of the kind arcology owner, enhancing your reputation. <</replace>> <</link>> - </span> - <<switch $ColonelCore>> - <<case "kind">> - The Colonel is shocked that you would allow her troops to do this but understands that it comes with the territory. <<if _SFHappyEverAfter == 1>>Thanks for being kind to one of my soldiers.<</if>> - <<case "warmonger" "cruel" "sociopathic" "jaded" "brazen" "psychopathic" "mischievous">> - The Colonel is grateful that you let her troops let off some steam. <<if _SFHappyEverAfter == 1>>Thanks for being kind to one of my soldiers.<</if>> - <</switch>> - <<set $securityForceDepravity += 0.05>> + </span> + <<if $SFTradeShow.CanAttend === -1>> + <<switch $ColonelCore>> + <<case "kind">> + The Colonel is shocked that you would allow her troops to do this but understands that it comes with the territory. <<if _SFHappyEverAfter == 1>>Thanks for being kind to one of my soldiers.<</if>> + <<case "warmonger" "cruel" "sociopathic" "jaded" "brazen" "psychopathic" "mischievous">> + The Colonel is grateful that you let her troops let off some steam. <<if _SFHappyEverAfter == 1>>Thanks for being kind to one of my soldiers.<</if>> + <</switch>> + <</if>> + <<set $SF.Depravity += 0.05>> <<elseif $eliteLeft <= 9 && $rep >= 10000>> <<if $arcologies[0].FSDegradationist != "unset">> An evil smile appears on the faces of your loyal citizens, while the surviving elite freeze in terror. The impromptu festivity will go on for hours, getting more and more depraved. diff --git a/src/pregmod/fNippleFuck.tw b/src/pregmod/fNippleFuck.tw index b379ede0e7efddb47d736a2de5434a8744f0bcb8..4f2d4bd85c834563b543307b15675d7e23c4468a 100644 --- a/src/pregmod/fNippleFuck.tw +++ b/src/pregmod/fNippleFuck.tw @@ -67,6 +67,6 @@ As your orgasm begins to build, you roughly grasp $his shoulders and begin to pi As $he reaches $his climax, $his body seems to tense and $he bites $his lip. <</if>> -It only takes few more thrusts before you bottom out inside $his breast and release your load deep inside $him. You pull yourself free with a lewd sound and proudly survey what you’ve wrought. Cum<<if $activeSlave.lactation > 0>> and milk dribble<<else>> dribbling <</if>> from $his gaping nipple. Enjoying the sight, you begin to feel yourself harding and line up your dick at $his left nipple for a repeat performance. +It only takes few more thrusts before you bottom out inside $his breast and release your load deep inside $him. You pull yourself free with a lewd sound and proudly survey what you’ve wrought. Cum<<if $activeSlave.lactation > 0>> and milk dribble<<else>> dribbling <</if>> from $his gaping nipple. Enjoying the sight, you begin to feel yourself hardening and line up your dick at $his left nipple for a repeat performance. Once both $his breasts have been thoroughly fucked, you send $him away to clean $himself up. diff --git a/src/pregmod/widgets/assignmentFilterWidget.tw b/src/pregmod/widgets/assignmentFilterWidget.tw index f3da7f16c42f79e687db1ade21e64608dfe8606d..fb792ea4996fa10f36c1cb93372b7b4f4ae2c9d9 100644 --- a/src/pregmod/widgets/assignmentFilterWidget.tw +++ b/src/pregmod/widgets/assignmentFilterWidget.tw @@ -108,7 +108,7 @@ <<link Penthouse>><<penthouseAssignmentFilter>><<replace $args.full>><<include 'Slave Summary'>><</replace>><</link>><<print " | ">> <<link Schoolroom>><<schoolAssignmentFilter>><<replace $args.full>><<include 'Slave Summary'>><</replace>><</link>><<print " | ">> <<link Spa>><<spaAssignmentFilter>><<replace $args.full>><<include 'Slave Summary'>><</replace>><</link>><<print " | ">> - <<link Nursery>><<nurseryAssignmentFilter>><<replace $args.full>><<include 'Slave Summary'>><<replace>><</link>><<print " | ">> + <<link Nursery>><<nurseryAssignmentFilter>><<replace $args.full>><<include 'Slave Summary'>><</replace>><</link>><<print " | ">> <<link Suite>><<suiteAssignmentFilter>><<replace $args.full>><<include 'Slave Summary'>><</replace>><</link>><<print " | ">> <<link Quarters>><<spaAssignmentFilter>><<replace $args.full>><<include 'Slave Summary'>><</replace>><</link>> <<resetAssignmentFilter>> diff --git a/src/pregmod/widgets/pregmodWidgets.tw b/src/pregmod/widgets/pregmodWidgets.tw index 61e860b324d450f2e6207c9872aff4f99fa72789..21dede9ffffbfa62f05b0abdc09850c17e7493ae 100644 --- a/src/pregmod/widgets/pregmodWidgets.tw +++ b/src/pregmod/widgets/pregmodWidgets.tw @@ -411,6 +411,7 @@ <<set _him2 = $args[0].object>> <<set _himself2 = $args[0].objectReflexive>> <<set _girl2 = $args[0].noun>> + <<if _girl2 == "girl">><<set _woman2 = "woman", _loli2 = "woman">><<else>><<set _woman2 = "man", _loli2 = "shota">><</if>> <<set _He2 = capFirstChar(_he2)>> <<set _His2 = capFirstChar(_his2)>> @@ -425,6 +426,7 @@ <<set $him = $args[0].object>> <<set $himself = $args[0].objectReflexive>> <<set $girl = $args[0].noun>> + <<if $girl == "girl">><<set $woman = "woman", $loli = "loli">><<else>><<set $woman = "man", $loli = "shota">><</if>> <<set $He = capFirstChar($he)>> <<set $His = capFirstChar($his)>> @@ -435,6 +437,16 @@ <</if>> <</widget>> +<<widget "setPlayerPronouns">> + <<set _heP = $PC.pronoun>> + <<set _hisP = $PC.possessive>> + <<set _himP = $PC.object>> + + <<set _HeP = capFirstChar(_heP)>> + <<set _HisP = capFirstChar(_hisP)>> + <<set _HimP = capFirstChar(_himP)>> +<</widget>> + /* Should be called with two slave objects as arguments, the primary and secondary. E.g. <<setSpokenLocalPronouns $activeSlave $subSlave>> _primarySlaveLisp and _secondarySlaveLisp only exist so that we don't have to rely on using the exact variables $activeSlave and $subSlave diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw index f0fcfdf3772449c30ef7e71cd5f4b7dca3101f30..85dcd29d28bb70fcce26d816238ab749ae56d7cc 100644 --- a/src/uncategorized/BackwardsCompatibility.tw +++ b/src/uncategorized/BackwardsCompatibility.tw @@ -657,6 +657,21 @@ <<if ndef $nursery>> <<set $nursery = 0>> <</if>> +<<if ndef $NurseryiIDs>> + <<set $NurseryiIDs = []>> +<</if>> +<<if $NurseryiIDs.length > 0 && typeof $NurseryiIDs[0] === 'object'>> + <<set $NurseryiIDs = $NurseryiIDs.map(function(a) { return a.ID; })>> +<</if>> +<<if ndef $nurserySlaves>> + <<set $nurserySlaves = 0>> +<</if>> +<<if ndef $nurseryBabies>> + <<set $nurseryBabies = 0>> +<</if>> +<<if ndef $Matron>> + <<set $Matron = 0>> +<</if>> <<if ndef $farmyard>> <<set $farmyard = 0>> @@ -937,133 +952,93 @@ <</if>> /*SFVAR*/ -<<if def $SF && $SFSaveRepair === 1>> - <<set $SFMODToggle = $SF.Toggle>> - <<set $SF.Toggle = undefined>> - <<if $SF.Active >= 1>> - <<set $securityForceActive = 1,$securityForceCreate = 1,$securityForceEventSeen = 1>> - <<else>> - <<set $securityForceActive = 0,$securityForceCreate = 0,$securityForceEventSeen = 0>> - <</if>> +<<if ndef $SF>> + <<if $securityForceEventSeen < 1>> <<set $securityForceActive = -1>> <<else>> <<set $securityForceActive = 2>> <</if>> + + <<set $SF = Object.assign({}, $SF, {Toggle:$SFMODToggle, Active:$securityForceActive})>> + <<unset $SFMODToggle, $securityForceActive, $securityForceCreate, $securityForceEventSeen>> + <<if ndef $securityForceName>> <<set $securityForceName = "the special force">> <</if>> + <<if $SF.Active >= 1>> + <<run Object.assign($SF, {Depravity:$securityForceDepravity, + Units:$SFAO, MWU:$securityForceUpgradeTokenReset, U:$securityForceUpgradeToken, + WG:$securityForceGiftToken, SpecOps:0, SpecOpsLock:0, ROE:$securityForceRulesOfEngagement, + Target:$securityForceFocus, Regs:$securityForceAccountability, + Caps:"The Special Force", Lower:$securityForceName, Subsidy:$SubsidyActive})>> + <<unset $securityForceActive, $securityForceRecruit, $securityForceTrade, + $securityForceBooty, $securityForceIncome, $securityForceMissionEfficiency, + $securityForceProfitable, $TierTwoUnlock, $securityForceDepravity, $SFAO, + $securityForceUpgradeTokenReset, $securityForceUpgradeToken, + $securityForceGiftToken, $securityForceRulesOfEngagement, $securityForceFocus, + $securityForceAccountability, $securityForceName, $SubsidyActive>> + <<if $SF.Lower != "the special force">> + <<set $SF.Caps = $SF.Lower.replace("the ", "The ")>> + <</if>> - <<set $securityForceDepravity = $SF.Depravity>> - <<set $SF.MWU = $securityForceUpgradeTokenReset, $SF.U = $securityForceUpgradeToken>> - <<set $securityForceGiftToken = $SF.WG,$securityForceRulesOfEngagement = $SF.ROE>> - <<set $securityForceFocus = $SF.Target,$securityForceAccountability = $SF.Regs>> - <<set $securityForceName = $SF.Lower,$SubsidyActive = $SF.Subsidy>> - - <<set $ColonelCore = $SFColonel.Core,$securityForceColonelToken = $SFColonel.Talk>> - <<set $securityForceColonelSexed = $SFColonel.Fun,$ColonelRelationship = $SFColonel.Status>> - - <<set $OverallTradeShowAttendance = $SFTradeShow.History,$CurrentTradeShowAttendance = $SFTradeShow.CanAttend>> - <<set $TradeShowIncome = $SFTradeShow.Income,$TotalTradeShowIncome = $SFTradeShow.Revenue>> - <<set $TradeShowHelots = $SFTradeShow.Helots,$TotalTradeShowHelots = $SFTradeShow.TotalHelots>> - - <<set $securityForcePersonnel = $SFUnit.Troops,$securityForceInfantryPower = $SFUnit.Armoury>> - <<set $securityForceArcologyUpgrades = $SFUnit.Firebase,$securityForceVehiclePower = $SFUnit.Vehicles>> - <<set $securityForceDronePower = $SFUnit.Drones,$securityForceStimulantPower = $SFUnit.Drugs>> - <<set $securityForceHeavyBattleTank = $SFUnit.PGT,$securityForceAircraftPower = $SFUnit.AirForce>> - <<set $securityForceSpacePlanePower = $SFUnit.SpacePlane,$securityForceAC130 = $SFUnit.GunS>> - <<set $securityForceSatellitePower = $SFUnit.Satellite,$securityForceGiantRobot = $SFUnit.GiantRobot>> - <<set $securityForceMissileSilo = $SFUnit.MissileSilo,$securityForceAircraftCarrier = $SFUnit.AircraftCarrier>> - <<set $securityForceSubmarine = $SFUnit.Sub,$securityForceHeavyAmphibiousTransport = $SFUnit.HAT>> - - <<set $SFAO = $SF.Units>> - <<if $SFAO < 30>> - <<if $securityForceInfantryPower > 5>> <<set $securityForceInfantryPower = 5>> <</if>> - <<if $securityForceArcologyUpgrades > 5>> <<set $securityForceArcologyUpgrades = 5>> <</if>> - <<if $securityForceVehiclePower > 5>> <<set $securityForceVehiclePower = 5>> <</if>> - <<if $securityForceDronePower > 5>> <<set $securityForceDronePower = 5>> <</if>> - <<if $securityForceStimulantPower > 5>> <<set $securityForceStimulantPower = 5>> <</if>> - <<if $securityForceAircraftPower > 5>> <<set $securityForceAircraftPower = 5>> <</if>> + <<if ndef $ColonelCore>> <<set $ColonelCore = "">> <</if>> + <<if ndef $ColonelDiscussion>> <<set $ColonelDiscussion = 0>> <</if>> + <<if ndef $ColonelSexed>> <<set $ColonelSexed = 0>> <</if>> + <<set $SFColonel = Object.assign({}, $SFColonel = {Core:$ColonelCore, Talk:$securityForceColonelToken, + Fun:$securityForceColonelSexed, Status:$ColonelRelationship})>> + <<unset $ColonelCore, $securityForceColonelToken, $securityForceColonelSexed, + $ColonelRelationship>> + + <<if ndef $TradeShowIncome>> <<set $TradeShowIncome = 0>> <</if>> + <<if ndef $TotalTradeShowIncome>> <<set $TotalTradeShowIncome = 0>> <</if>> + <<if ndef $TradeShowHelots>> <<set $TradeShowHelots = 0>> <</if>> + <<if ndef $TotalTradeShowHelots>> <<set $TotalTradeShowHelots = 0>> <</if>> + <<set $SFTradeShow = Object.assign({}, $SFTradeShow, {History:$OverallTradeShowAttendance, + CanAttend:$CurrentTradeShowAttendance, Income:$TradeShowIncome, + Revenue:$TotalTradeShowIncome, Helots:$TradeShowHelots, + TotalHelots:$TotalTradeShowHelots, Mercs:0, TotalMercs:0})>> + <<unset $OverallTradeShowAttendance, $CurrentTradeShowAttendance, + $TradeShowIncome, $TotalTradeShowIncome, $TradeShowHelots, + $TotalTradeShowHelots>> + <<if $SFTradeShow.History > 0>> <<set $SFTradeShow.View = 1>> <</if>> + + <<if ndef $securityForceHeavyBattleTank>> + <<set $securityForceHeavyBattleTank = 0>> <</if>> + <<if ndef $securityForceSpacePlanePower>> + <<set $securityForceSpacePlanePower = 0>> <</if>> + <<if ndef $securityForceAC130>> <<set $securityForceAC130 = 0>> <</if>> + <<if ndef $securityForceSatellitePower>> + <<set $securityForceSatellitePower = 0>> <</if>> + <<if ndef $securityForceGiantRobot>> + <<set $securityForceGiantRobot = 0>> <</if>> + <<if ndef $securityForceMissileSilo>> + <<set $securityForceMissileSilo = 0>> <</if>> + <<if ndef $securityForceAircraftCarrier>> + <<set $securityForceAircraftCarrier = 0>> <</if>> + <<if ndef $securityForceSubmarine>> + <<set $securityForceSubmarine = 0>> <</if>> + <<if ndef $securityForceHeavyAmphibiousTransport>> + <<set $securityForceHeavyAmphibiousTransport = 0>> <</if>> + <<set $SFUnit = Object.assign({}, $SFUnit, {Troops:$securityForcePersonnel, + Armoury:$securityForceInfantryPower, Firebase:$securityForceArcologyUpgrades, + AV:$securityForceVehiclePower, TV:$securityForceVehiclePower, + Drones:$securityForceDronePower, Drugs:$securityForceStimulantPower, + PGT:$securityForceHeavyBattleTank,AA:$securityForceAircraftPower, + TA:$securityForceAircraftPower, SpacePlane:$securityForceSpacePlanePower, + GunS:$securityForceAC130, Satellite:$securityForceSatellitePower, + GiantRobot:$securityForceGiantRobot, MissileSilo:$securityForceMissileSilo, + AircraftCarrier:$securityForceAircraftCarrier, Sub:$securityForceSubmarine, + HAT:$securityForceHeavyAmphibiousTransport})>> <<set $SatLaunched = 0>> + <<unset $securityForcePersonnel, $securityForceInfantryPower, + $securityForceArcologyUpgrades, $securityForceVehiclePower, + $securityForceDronePower, $securityForceStimulantPower, + $securityForceHeavyBattleTank, $securityForceAircraftPower, + $securityForceSpacePlanePower,$securityForceAC130, $securityForceSatellitePower, + $securityForceGiantRobot, $securityForceMissileSilo, + $securityForceAircraftCarrier, $securityForceSubmarine, $securityForceHeavyAmphibiousTransport>> + <<else>> + <<run Object.assign($SF, {Depravity:0, Units:0, MWU:0, U:0, WG:0, SpecOps:0, SpecOpsLock:0, ROE:"hold", Target:"recruit", Regs:"strict", Caps:"The Special Force", Lower:"the special force", Subsidy:1})>> + <<set $SFUnit = Object.assign({}, $SFUnit, {Troops:40, Armoury:0, Firebase:0, AV:0, TV:0, Drones:0, Drugs:0, PGT:0, AA:0, TA:0, SpacePlane:0, GunS:0, Satellite:0, GiantRobot:0, MissileSilo:0, AircraftCarrier:0, Sub:0, HAT:0})>> + <<set $SatLaunched = 0>> + <<set $arcologies[0].SFRaid = 1,$arcologies[0].SFRaidTarget = -1>> <<set $SFColonel = Object.assign({}, $SFColonel, {Core:"", Talk:0, Fun:0, Status:0})>> + <<set $SFTradeShow = Object.assign({}, $SFTradeShow, {History:0, CanAttend:0, Income:0, Revenue:0, Helots:0, TotalHelots:0, Mercs:0, TotalMercs:0})>> <</if>> - <<unset $SF>> <</if>> - -<<if $SFMODToggle == 1 && $securityForceCreate == 1>> - /* SF anon additional Special Force Variables [SFVAR] */ - - /* Personnel/Gear */ - <<if ndef $securityForceHeavyBattleTank>> - <<set $securityForceHeavyBattleTank = 0>> - <</if>> - <<if ndef $securityForceSpacePlanePower>> - <<set $securityForceSpacePlanePower = 0>> - <</if>> - <<if ndef $securityForceFortressZeppelin>> - <<set $securityForceFortressZeppelin = 0>> - <</if>> - <<if ndef $securityForceAC130>> - <<set $securityForceAC130 = 0>> - <</if>> - <<if ndef $securityForceHeavyTransport>> - <<set $securityForceHeavyTransport = 0>> - <</if>> - <<if ndef $securityForceSatellitePower>> - <<set $securityForceSatellitePower = 0>> - <</if>> - <<if $terrain != "oceanic" && $terrain != "marine">> - <<if ndef $securityForceGiantRobot>> - <<set $securityForceGiantRobot = 0>> - <</if>> - <<if ndef $securityForceMissileSilo>> - <<set $securityForceMissileSilo = 0>> - <</if>> - <</if>> - <<if $terrain == "oceanic" || $terrain == "marine">> - <<if ndef $HeavyAmphibiousTransport>> - <<set $HeavyAmphibiousTransport = 0>> - <</if>> - <<if ndef $securityForceAircraftCarrier>> - <<set $securityForceAircraftCarrier = 0>> - <</if>> - <<if ndef $securityForceSubmarine>> - <<set $securityForceSubmarine = 0>> - <</if>> - <</if>> - - /* FacilitySupport */ - <<if ndef $SupportFacility>> - <<set $SupportFacility = 0>> - <</if>> - - /* Colonel /* - <<if ndef $ColonelCore>> - <<set $ColonelCore = "">> - <</if>> - <<if ndef $securityForceColonelToken>> - <<set $securityForceColonelToken = 0>> - <</if>> - <<if ndef $securityForceSexedColonelToken>> - <<set $securityForceSexedColonelToken = 0>> - <</if>> - <<if ndef $securityForceColonelSexed>> - <<set $securityForceColonelSexed = 0>> - <</if>> - - /* TradeShow */ - <<if ndef $TradeShowAttendanceGranted>> - <<set $TradeShowAttendanceGranted = 0>> - <</if>> - <<if ndef $OverallTradeShowAttendance>> - <<set $OverallTradeShowAttendance = 0>> - <</if>> - <<if ndef $CurrentTradeShowAttendance>> - <<set $CurrentTradeShowAttendance = 0>> - <</if>> - <<if ndef $TradeShowIncome>> - <<set $TradeShowIncome = 0>> - <</if>> - <<if ndef $TotalTradeShowIncome>> - <<set $TotalTradeShowIncome = 0>> - <</if>> - <<if ndef $TradeShowHelots>> - <<set $TradeShowHelots = 0>> - <</if>> - <<if ndef $TotalTradeShowHelots>> - <<set $TotalTradeShowHelots = 0>> - <</if>> - +<<if def $SF>> + <<if $SF.Active >= 1 && passage() === "New Game Plus">> <<silently>> <<include "Security Force Proposal">> <</silently>> <</if>> <</if>> <<if ndef $useSlaveSummaryTabs>> diff --git a/src/uncategorized/REFI.tw b/src/uncategorized/REFI.tw index b85d4248be84a0522f065972e3ebeb87a4d6d4e0..098c53700fc9ece2b6f93156999869c4d7613e9e 100644 --- a/src/uncategorized/REFI.tw +++ b/src/uncategorized/REFI.tw @@ -907,6 +907,8 @@ There was a glint of envy <<if canSee($activeSlave)>>in $his eyes when $he saw<< <</link>> <<elseif $PC.belly >= 5000>> <<link "Temper $his interest into an pregnancy obsession">> + <<EventNameDelink $activeSlave>> + <<replace "#result">> <<if !canTalk($activeSlave)>> <<if $activeSlave.accent >= 3>> <<if $activeSlave.amp == 1>> @@ -968,9 +970,12 @@ There was a glint of envy <<if canSee($activeSlave)>>in $his eyes when $he saw<< @@.hotpink;$He has become more devoted to you,@@ and @@.lightcoral;$he has developed a pregnancy fetish.@@ <<set $activeSlave.devotion += 4>> <<set $activeSlave.fetish = "pregnancy", $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 65>> + <</replace>> <</link>> <<elseif canAchieveErection($activeSlave)>> <<link "Temper $his interest into an impregnation obsession">> + <<EventNameDelink $activeSlave>> + <<replace "#result">> <<if !canTalk($activeSlave)>> <<if $activeSlave.accent >= 3>> <<if $activeSlave.amp == 1>> @@ -1024,6 +1029,7 @@ There was a glint of envy <<if canSee($activeSlave)>>in $his eyes when $he saw<< @@.hotpink;$He has become more devoted to you,@@ and @@.lightcoral;$he has developed a pregnancy fetish.@@ <<set $activeSlave.devotion += 4>> <<set $activeSlave.fetish = "pregnancy", $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 65>> + <</replace>> <</link>><<if $activeSlave.toyHole == "dick" && canImpreg($PC, $activeSlave)>>//This option may result in you getting knocked up.<</if>> <<else>> <<link "Turn $him into another fertility whore despite $his barrenness">> diff --git a/src/uncategorized/RETS.tw b/src/uncategorized/RETS.tw index aac46266def9016728a53abbe1838b3521512b96..aee6fe447cccc66413de6ce822babab08d093b5b 100644 --- a/src/uncategorized/RETS.tw +++ b/src/uncategorized/RETS.tw @@ -176,6 +176,7 @@ <<setLocalPronouns $activeSlave>> <<setLocalPronouns $subSlave 2>> +<<setSpokenLocalPronouns $activeSlave $subSlave>> <<run Enunciate($activeSlave)>> @@ -209,27 +210,27 @@ $his breakfast. You pull out a tablet and start getting some work done, enjoying <</if>> _He2's clearly looking for some companionship this morning, but _his2 gears visibly turn for a while before _his2 sleepy head can come up with something to say. Both the slaves are allowed some variety of flavor in their liquid slave food, so _he2 finally settles on that. <<run Enunciate($subSlave)>> -"What flavor did you choo<<s>>e?"she asks $activeSlave.slaveName. +"What flavor did you choo<<s>>e?" _he2 asks $activeSlave.slaveName. <br><br> <<run Enunciate($activeSlave)>> $activeSlave.slaveName <<if $cockFeeder == 1>> - pulls her mouth off her feeder with a luscious pop. + pulls $his mouth off $his feeder with a luscious pop. <<else>> - lowers her cup for a moment. + lowers $his cup for a moment. <</if>> <<if $activeSlave.preg > 20>> - "The <<s>>our pickle flavor," she responds, patting her rounded middle. "I ju<<s>>t can't get enough of it." + "The <<s>>our pickle flavor," $he responds, patting $his rounded middle. "I ju<<s>>t can't get enough of it." <<else>> - "The tart fruity kind," she responds. "It'<<s>> refre<<sh>>ing fir<<s>>t thing in the morning." + "The tart fruity kind," $he responds. "It'<<s>> refre<<sh>>ing fir<<s>>t thing in the morning." <</if>> <br><br> <<run Enunciate($subSlave)>> "Oh," says $subSlave.slaveName. "Um, can I try <<s>>ome?" <br><br> -$activeSlave.slaveName smiles and murmurs, "Mm hm." There is a distinct <<if canSee($activeSlave)>>glint in her eye<<else>>look on her face<</if>>. $He's got a healthy libido, to put it mildly. Like all slaves, $subSlave.slaveName sleeps nude and hasn't gotten dressed yet, and $activeSlave.slaveName has +$activeSlave.slaveName smiles and murmurs, "Mm hm." There is a distinct <<if canSee($activeSlave)>>glint in $his eye<<else>>look on $his face<</if>>. $He's got a healthy libido, to put it mildly. Like all slaves, $subSlave.slaveName sleeps nude and hasn't gotten dressed yet, and $activeSlave.slaveName has <<if canSee($activeSlave)>> -obviously noticed her +obviously noticed $his <<if $subSlave.dick > 4>> enormous cock <<elseif $subSlave.labia > 1>> @@ -252,7 +253,7 @@ obviously noticed her nudity <</if>> <<else>> -noticed her + noticed $his <<if $subSlave.dick > 4>> enormous cock <<elseif $subSlave.boobs > 5000>> @@ -278,19 +279,19 @@ and sleepy willingness to be friendly. $activeSlave.slaveName raises $his cup again and draws <</if>> liquid food into $his mouth. $He turns to $subSlave.slaveName. -"Go ahead," she says carefully, enunciating past her mouthful of fluid, and then purses her lips. $subSlave.slaveName is taken aback for a moment, but decides she's game and steps in, planting her lips on $activeSlave.slaveName's. +"Go ahead," $he says carefully, enunciating past $his mouthful of fluid, and then purses $his lips. $subSlave.slaveName is taken aback for a moment, but decides _he2's game and steps in, planting _his2 lips on $activeSlave.slaveName's. <<if ($activeSlave.boobs > 3000) && ($subSlave.boobs > 3000)>> - (Their tits are so huge that she has to fight to get close enough to kiss.) + (Their tits are so huge that _he2 has to fight to get close enough to kiss.) <<elseif ($activeSlave.boobs > 5000)>> - ($activeSlave.slaveName's tits are so huge that she has to press hard against them to get close enough to kiss.) + ($activeSlave.slaveName's tits are so huge that _he2 has to press hard against them to get close enough to kiss.) <<elseif ($subSlave.boobs > 5000)>> - ($subSlave.slaveName's tits are so huge that she has to press them hard against $activeSlave.slaveName to get close enough to kiss.) + ($subSlave.slaveName's tits are so huge that _he2 has to press them hard against $activeSlave.slaveName to get close enough to kiss.) <<elseif ($activeSlave.belly >= 5000) && ($subSlave.belly >= 5000)>> - (Their bellies are so swollen <<if ($activeSlave.preg > 5) && ($subSlave.preg > 5)>>with life <</if>>that she has to fight to get close enough to kiss.) + (Their bellies are so swollen <<if ($activeSlave.preg > 5) && ($subSlave.preg > 5)>>with life <</if>>that _he2 has to fight to get close enough to kiss.) <<elseif ($activeSlave.belly >= 300000)>> - ($activeSlave.slaveName's <<if ($activeSlave.preg > 5)>>pregnancy<<else>>belly<</if>> is so massive that she has to practically climb atop it to get close enough to kiss.) + ($activeSlave.slaveName's <<if ($activeSlave.preg > 5)>>pregnancy<<else>>belly<</if>> is so massive that _he2 has to practically climb atop it to get close enough to kiss.) <<elseif ($subSlave.belly >= 300000)>> - ($subSlave.slaveName's <<if ($subSlave.preg > 5)>>pregnancy<<else>>belly<</if>> is so massive that she has to practically climb atop it to get close enough to kiss.) + ($subSlave.slaveName's <<if ($subSlave.preg > 5)>>pregnancy<<else>>belly<</if>> is so massive that _he2 has to practically climb atop it to get close enough to kiss.) <<elseif ($activeSlave.belly >= 10000)>> ($activeSlave.slaveName's <<if ($activeSlave.preg > 5)>>pregnancy<<else>>belly<</if>> is so big that _he2 has to press hard against it to get close enough to kiss.) <<elseif ($subSlave.belly >= 10000)>> @@ -298,90 +299,90 @@ liquid food into $his mouth. $He turns to $subSlave.slaveName. <</if>> _He2 stiffens with the lewd feeling of the warm fluid pressing into _his2 mouth. After a moment _he2 tries to back off and concentrate on the food, but $activeSlave.slaveName is having none of that, and uses $his arms to hug $subSlave.slaveName close, making out with $his catch. <<if ($subSlave.energy > 60)>> - $subSlave.slaveName's own powerful sex drive is waking up, and she clearly doesn't mind. + $subSlave.slaveName's own powerful sex drive is waking up, and _he2 clearly doesn't mind. <<else>> - $subSlave.slaveName isn't sexually needy enough or awake enough to be as horny as $activeSlave.slaveName, but she goes along willingly enough. + $subSlave.slaveName isn't sexually needy enough or awake enough to be as horny as $activeSlave.slaveName, but _he2 goes along willingly enough. <</if>> <<case "date please">> After you complete your weekly inspection of <<EventNameLink $activeSlave>>, the $desc -asks if she can beg a favor. Absurd though it sounds, she does exactly that, saying in her <<if $activeSlave.voice > 2>>high<<elseif $activeSlave.voice > 1>>feminine<<else>>bimbo<</if>> voice, "<<Master>>, may I a<<s>>k a favor?" You take a moment to look at her, standing there in front of your desk. $He's devoted to you, willing to please you for the sake of pleasing you, rather than to avoid punishment or make her own life easier. And she's very trusting, confident that she can say such an odd thing without fear. So, you hear her out. +asks if $he can beg a favor. Absurd though it sounds, $he does exactly that, saying in $his <<if $activeSlave.voice > 2>>high<<elseif $activeSlave.voice > 1>>feminine<<else>>bimbo<</if>> voice, "<<Master>>, may I a<<s>>k a favor?" You take a moment to look at $him, standing there in front of your desk. $He's devoted to you, willing to please you for the sake of pleasing you, rather than to avoid punishment or make $his own life easier. And $he's very trusting, confident that $he can say such an odd thing without fear. So, you hear $him out. <br><br> -"Thank you, <<Master>>," she <<say>>s. "I would like to do <<s>>omething for $subSlave.slaveName." You ask if she's worried about her <<if $activeSlave.relationship >= 5>>wife<<else>>girlfriend<</if>> for some reason. "Oh no, <<Master>>," she answers hurriedly. "No, no, that came out wrong. It'<<s>> ju<<s>>t that I love her and I want to, you know, get her <<s>>omething or do <<s>>omething <<s>>pe<<c>>ial for her. We don't really have <<s>>tuff of our own, <<s>>o I can't give her a pre<<s>>ent, and we already do everything either one of u<<s>> want<<s>> in bed, <<s>>o I can't really think of anything." $He <<if canSee($activeSlave)>>looks<<else>>gazes<</if>> at you hopefully. +"Thank you, <<Master>>," $he <<say>>s. "I would like to do <<s>>omething for $subSlave.slaveName." You ask if $he's worried about $his <<if $activeSlave.relationship >= 5>>wife<<else>>girlfriend<</if>> for some reason. "Oh no, <<Master>>," $he answers hurriedly. "No, no, that came out wrong. It'<<s>> ju<<s>>t that I love <<him 2>> and I want to, you know, get <<him 2>> <<s>>omething or do <<s>>omething <<s>>pe<<c>>ial for <<him 2>>. We don't really have <<s>>tuff of our own, <<s>>o I can't give <<him 2>> a pre<<s>>ent, and we already do everything either one of u<<s>> want<<s>> in bed, <<s>>o I can't really think of anything." $He <<if canSee($activeSlave)>>looks<<else>>gazes<</if>> at you hopefully. <<case "anal cowgirl">> -As you approach your office as you return from an unexpected but minor matter, you hear the unmistakable sounds of sexual congress. Reviewing your schedule as you cover the last meters on your way there, you see that indeed, <<EventNameLink $activeSlave>> is due to be inspected. It seems likely that while waiting for your return, she called a fellow slave who was passing your office in to keep her company. And as you enter, you see that this is true. +As you approach your office as you return from an unexpected but minor matter, you hear the unmistakable sounds of sexual congress. Reviewing your schedule as you cover the last meters on your way there, you see that indeed, <<EventNameLink $activeSlave>> is due to be inspected. It seems likely that while waiting for your return, $he called a fellow slave who was passing your office in to keep $him company. And as you enter, you see that this is true. <br><br> -$He's sitting on the end of the couch, though only her legs, crotch and hands are immediately visible. This is because $he has $subSlave.slaveName on top of $him, impaled on <<if canPenetrate($activeSlave)>>$his cock<<else>>a strap-on $he's wearing<</if>>. $subSlave.slaveName is bent almost double. $activeSlave.slaveName has $his $activeSlave.skin hands up on the backs of $subSlave.slaveName's $subSlave.skin knees, holding _his2 legs<<if $activeSlave.belly >= 5000>> to either side of _his2 <<if ($activeSlave.preg > 5)>>pregnancy<<else>>belly<</if>>,<</if>> up against _his2 <<if $subSlave.boobs > 2000>>inconveniently big boobs<<else>>shoulders<</if>>. $subSlave.slaveName is completely helpless, and _he2's being fucked hard: +$He's sitting on the end of the couch, though only $his legs, crotch and hands are immediately visible. This is because $he has $subSlave.slaveName on top of $him, impaled on <<if canPenetrate($activeSlave)>>$his cock<<else>>a strap-on $he's wearing<</if>>. $subSlave.slaveName is bent almost double. $activeSlave.slaveName has $his $activeSlave.skin hands up on the backs of $subSlave.slaveName's $subSlave.skin knees, holding _his2 legs<<if $activeSlave.belly >= 5000>> to either side of _his2 <<if ($activeSlave.preg > 5)>>pregnancy<<else>>belly<</if>>,<</if>> up against _his2 <<if $subSlave.boobs > 2000>>inconveniently big boobs<<else>>shoulders<</if>>. $subSlave.slaveName is completely helpless, and _he2's being fucked hard: <<if canPenetrate($activeSlave)>> <<if ($activeSlave.dick - $subSlave.anus > 2)>> - $activeSlave.slaveName's cock is very big, <<if $subSlave.anus > 2>>even for $subSlave.slaveName's loose anus<<elseif $subSlave.anus > 1>>even for $subSlave.slaveName's experienced anus<<else>>especially for $subSlave.slaveName's tight anus<</if>>, so $activeSlave.slaveName is bouncing her anal bottom up and down only a little way, allowing her to do so fast. + $activeSlave.slaveName's cock is very big, <<if $subSlave.anus > 2>>even for $subSlave.slaveName's loose anus<<elseif $subSlave.anus > 1>>even for $subSlave.slaveName's experienced anus<<else>>especially for $subSlave.slaveName's tight anus<</if>>, so $activeSlave.slaveName is bouncing $his anal bottom up and down only a little way, allowing $him to do so fast. <<elseif ($activeSlave.dick - $subSlave.anus > 0)>> - $activeSlave.slaveName's cock is a good fit for $subSlave.slaveName's <<if $subSlave.anus > 2>>loose<<elseif $subSlave.anus > 1>>welcoming<<else>>tight<</if>> anus, so $activeSlave.slaveName is bouncing her anal bottom up and down fast. + $activeSlave.slaveName's cock is a good fit for $subSlave.slaveName's <<if $subSlave.anus > 2>>loose<<elseif $subSlave.anus > 1>>welcoming<<else>>tight<</if>> anus, so $activeSlave.slaveName is bouncing $his anal bottom up and down fast. <<else>> - $activeSlave.slaveName's cock barely stretches $subSlave.slaveName's <<if $subSlave.anus > 2>>loose<<elseif $subSlave.anus > 1>>welcoming<<else>>tight<</if>> anus, so $activeSlave.slaveName is bouncing her anal bottom up and down as fast as she possibly can. + $activeSlave.slaveName's cock barely stretches $subSlave.slaveName's <<if $subSlave.anus > 2>>loose<<elseif $subSlave.anus > 1>>welcoming<<else>>tight<</if>> anus, so $activeSlave.slaveName is bouncing $his anal bottom up and down as fast as $he possibly can. <</if>> <<else>> - $activeSlave.slaveName is using the biggest dildo $subSlave.slaveName's <<if $subSlave.anus > 2>>loose<<elseif $subSlave.anus > 1>>welcoming<<else>>tight<</if>> anus can handle, and she's bouncing her anal bottom up and down fast. + $activeSlave.slaveName is using the biggest dildo $subSlave.slaveName's <<if $subSlave.anus > 2>>loose<<elseif $subSlave.anus > 1>>welcoming<<else>>tight<</if>> anus can handle, and $he's bouncing $his anal bottom up and down fast. <</if>> Surprisingly, the slave on top doesn't seem too unhappy with this. _He2's no slavishly devoted buttslut, but -<<if ($subSlave.dickAccessory == "chastity" || $subSlave.dickAccessory == "combined chastity")>> - she's taking it well, and even looking a little uncomfortable as the beginnings of a hardon press against her chastity cage. +<<if ($subSlave.dickAccessory == "chastity" || $subSlave.dickAccessory == "combined chastity") && canAchieveErection($subSlave)>> + _he2's taking it well, and even looking a little uncomfortable as the beginnings of a hardon press against _his2 chastity cage. <<elseif $subSlave.belly >= 10000>> - she's taking it well, + _he2's taking it well, <<if $subSlave.bellyPreg >= 8000>> - though her child<<if $subSlave.pregType > 1>>ren seem<<else>> seems<</if>> to expressing their own thought<<if $subSlave.pregType > 1>>s<</if>> as she rubs her pregnant belly. + though _his2 child<<if $subSlave.pregType > 1>>ren seem<<else>> seems<</if>> to expressing their own thought<<if $subSlave.pregType > 1>>s<</if>> as _he2 rubs _his2 pregnant belly. <<elseif $subSlave.bellyImplant >= 8000>> - her implant rounded belly bobbing with each thrust into her. + _his2 implant rounded belly bobbing with each thrust into _him2. <<else>> - though looking a little uncomfortable as she soothes her $subSlave.inflationType-filled belly. + though looking a little uncomfortable as _he2 soothes _his2 $subSlave.inflationType-filled belly. <</if>> <<elseif canAchieveErection($subSlave)>> - her cock is proudly erect, sticking straight up as she reclines against $activeSlave.slaveName beneath her, wiggling a little with the rhythm of the pounding. + _his2 cock is proudly erect, sticking straight up as _he2 reclines against $activeSlave.slaveName beneath _him2, wiggling a little with the rhythm of the pounding. <<elseif $subSlave.bellyFluid >= 2000>> - her $subSlave.inflationType-filled belly wobbling lewdly with the motion of the pounding. + _his2 $subSlave.inflationType-filled belly wobbling lewdly with the motion of the pounding. <<elseif ($subSlave.dick > 0)>> - she looks aroused, though her flopping dick can't show it. + _he2 looks aroused, though _his2 flopping dick can't show it. <<elseif ($subSlave.vaginaLube > 0)>> - her cunt is gushing female lubricant as the pistoning phallus alternately pushes and pulls at her vaginal walls. + _his2 cunt is gushing female lubricant as the pistoning phallus alternately pushes and pulls at _his2 vaginal walls. <<elseif ($subSlave.labia > 0)>> - her generous petals move gently with the motion of the pounding, and they're far from dry. + _his2 generous petals move gently with the motion of the pounding, and they're far from dry. <<elseif ($subSlave.vagina == -1)>> - she's taking it up her only hole just fine. + _he2's taking it up _his2 only hole just fine. <<else>> - her cunt glistens as the pistoning phallus alternately pushes and pulls at her vaginal walls. + _his2 cunt glistens as the pistoning phallus alternately pushes and pulls at _his2 vaginal walls. <</if>> "H-h-hi-i <<if SlaveStatsChecker.checkForLisp($subSlave)>> - <<if $subSlave.customTitleLisp != "" && $subSlave.customTitleLisp != 0>>$subSlave.customTitleLisp<<elseif def $PC.customTitleLisp>>$PC.customTitleLisp<<elseif $PC.title != 0>>M-m-ma-a-th-t-ter<<else>>M-m-mi-i-ith-t-r-r-e-es-s-s<</if>>," she lisps + <<if $subSlave.customTitleLisp != "" && $subSlave.customTitleLisp != 0>>$subSlave.customTitleLisp<<elseif def $PC.customTitleLisp>>$PC.customTitleLisp<<elseif $PC.title != 0>>M-m-ma-a-th-t-ter<<else>>M-m-mi-i-ith-t-r-r-e-es-s-s<</if>>," _he2 lisps <<else>> - <<if $subSlave.customTitle != "" && $subSlave.customTitle != 0>>$subSlave.customTitle<<elseif def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>M-m-ma-a-st-t-ter<<else>>M-m-mi-i-is-st-r-r-e-es-s-s<</if>>," she says + <<if $subSlave.customTitle != "" && $subSlave.customTitle != 0>>$subSlave.customTitle<<elseif def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>M-m-ma-a-st-t-ter<<else>>M-m-mi-i-is-st-r-r-e-es-s-s<</if>>," _he2 says <</if>> -breathlessly, doing her best to greet you properly despite the bouncing. +breathlessly, doing _his2 best to greet you properly despite the bouncing. <br><br> -$activeSlave.slaveName stops thrusting, and her <<if $activeSlave.face > 95>>gorgeous<<elseif $activeSlave.face >= -10>>pretty<<else>>homely<</if>> face instantly appears, craning out from behind $subSlave.slaveName's back to see. "Oh, hi, <<Master>>!" she says with a cheerful smile, <<if $activeSlave.muscles > 30>>not breathing hard at all despite bouncing a girl off her crotch<<elseif $activeSlave.muscles > 5>>barely out of breath despite the effort<<else>>completely out of breath<</if>>. -"I <<if canSee($activeSlave)>><<s>>aw<<else>>heard<</if>> her going by, and I thought <<sh>>e'd look cute with <<if canPenetrate($activeSlave)>>my dick<<else>>a <<s>>trap-on<</if>> up her butthole, +$activeSlave.slaveName stops thrusting, and $his <<if $activeSlave.face > 95>>gorgeous<<elseif $activeSlave.face >= -10>>pretty<<else>>homely<</if>> face instantly appears, craning out from behind $subSlave.slaveName's back to see. "Oh, hi, <<Master>>!" $he says with a cheerful smile, <<if $activeSlave.muscles > 30>>not breathing hard at all despite bouncing a girl off $his crotch<<elseif $activeSlave.muscles > 5>>barely out of breath despite the effort<<else>>completely out of breath<</if>>. +"I <<if canSee($activeSlave)>><<s>>aw<<else>>heard<</if>> <<him>> going by, and I thought <<he>>'d look cute with <<if canPenetrate($activeSlave)>>my dick<<else>>a <<s>>trap-on<</if>> up <<his>> butthole, <<if $universalRulesConsent == 0>> - <<s>>o I told her to get in here and take it." + <<s>>o I told <<him>> to get in here and take it." <<else>> - <<s>>o I a<<s>>ked her to come in, and she did!" + <<s>>o I a<<s>>ked <<him>> to come in, and <<he>> did!" <</if>> $He shrugs. <<if $activeSlave.fetish == "sadist">> - "I thought <<sh>>e wa<<s>> going to whine and <<s>>truggle, but <<sh>>e's kinda di<<s>>appointing." + "I thought <<he>> wa<<s>> going to whine and <<s>>truggle, but <<he>>'<<s>> kinda di<<ss>>appointing." <<elseif $activeSlave.fetish == "pregnancy" && $subSlave.belly >= 10000>> <<if $subSlave.bellyPreg >= 8000>> - "_He2'<<s>> <<s>>o pregnant, I ju<<s>>t had to fuck _him2. I'm <<s>>urpri<<s>>ed _he2's enjoying it <<s>>o much." + "<<He>>'<<s>> <<s>>o pregnant, I ju<<s>>t had to fuck <<him>>. I'm <<s>>urpri<<s>>ed <<he>>'<<s>> enjoying it <<s>>o much." <<else>> - "_His2 belly'<<s>> <<s>>o round, I ju<<s>>t had to fuck _him2. I ju<<s>>t wi<<sh>> _he2 wa<<s>> pregnant." + "<<His>> belly'<<s>> <<s>>o round, I ju<<s>>t had to fuck <<him>>. I ju<<s>>t wi<<sh>> <<he>> wa<<s>> pregnant." <</if>> <<elseif $activeSlave.fetish == "buttslut">> - "I like butt<<s>>e<<x>> so much, it's good to give back." + "I like butt<<s>>e<<x>> <<s>>o much, it'<<s>> good to give back." <<else>> - "I thought <<sh>>e wa<<s>> going to be unhappy about it, but <<sh>>e'<<s>> actually taking it really well." + "I thought <<he>> wa<<s>> going to be unhappy about it, but <<he>>'<<s>> actually taking it really well." <</if>> $He clearly held off on climaxing in case you wanted $his libido undiminished for the inspection, and is obediently waiting for your orders, with the bemused $subSlave.slaveName perched motionless atop $him. @@ -393,42 +394,42 @@ $He clearly held off on climaxing in case you wanted $his libido undiminished fo <<set _headGirlPresent = 0>> <</if>> <</if>> -You pass by the slave quarters during a busy time. Girls are hurrying back and forth, rushing to bathe, eat, and get dressed. <<EventNameLink $activeSlave>> is in a particular hurry, her <<if $activeSlave.belly >= 10000>><<if $activeSlave.bellyPreg >= 8000>>heavy pregnancy<<else>>heavy belly<</if>> and <</if>><<if $activeSlave.boobs > 8000>>gargantuan tits hampering her badly<<else>>huge boobs getting in the way<</if>> as she rushes around. Returning from the shower to the sleeping area, she turns a corner and runs hard into $subSlave.slaveName. Both slaves are nude, and the collision of their massive breasts makes an audibly painful smack. $activeSlave.slaveName has enough momentum that she overbears the top-heavy $subSlave.slaveName entirely. The poor <<if $subSlave.physicalAge > 30>>woman<<else>>girl<</if>> crashes backwards, her <<if $subSlave.butt > 8>>monstrous bottom<<elseif $subSlave.butt > 4>>big behind<<else>>hind end<</if>> hitting the floor with a slap. $activeSlave.slaveName lands on top of her, the fall and the sudden weight of $activeSlave.slaveName on top of her driving the wind out of $subSlave.slaveName with a whoosh. +You pass by the slave quarters during a busy time. Girls are hurrying back and forth, rushing to bathe, eat, and get dressed. <<EventNameLink $activeSlave>> is in a particular hurry, $his <<if $activeSlave.belly >= 10000>><<if $activeSlave.bellyPreg >= 8000>>heavy pregnancy<<else>>heavy belly<</if>> and <</if>><<if $activeSlave.boobs > 8000>>gargantuan tits hampering $him badly<<else>>huge boobs getting in the way<</if>> as $he rushes around. Returning from the shower to the sleeping area, $he turns a corner and runs hard into $subSlave.slaveName. Both slaves are nude, and the collision of their massive breasts makes an audibly painful smack. $activeSlave.slaveName has enough momentum that $he overbears the top-heavy $subSlave.slaveName entirely. The poor <<if $subSlave.physicalAge > 30>>_woman2<<else>>_girl2<</if>> crashes backwards, _his2 <<if $subSlave.butt > 8>>monstrous bottom<<elseif $subSlave.butt > 4>>big behind<<else>>hind end<</if>> hitting the floor with a slap. $activeSlave.slaveName lands on top of _him2, the fall and the sudden weight of $activeSlave.slaveName on top of _him2 driving the wind out of $subSlave.slaveName with a whoosh. <br><br> -"<<S>>orry! I'm <<s>>o <<s>>orry," apologizes $activeSlave.slaveName. $He starts to try to disentangle $himself as $subSlave.slaveName struggles to get _his2 breath back, but you see $activeSlave.slaveName's back stiffen. $He stops trying to get up. As the discomfort of the collision fades, she notices the warmth of $subSlave.slaveName underneath $him, and the way their nipples are pressed against one another. Impulsively, $he kisses $subSlave.slaveName full on the lips, +"<<S>>orry! I'm <<s>>o <<s>>orry," apologizes $activeSlave.slaveName. $He starts to try to disentangle $himself as $subSlave.slaveName struggles to get _his2 breath back, but you see $activeSlave.slaveName's back stiffen. $He stops trying to get up. As the discomfort of the collision fades, $he notices the warmth of $subSlave.slaveName underneath $him, and the way their nipples are pressed against one another. Impulsively, $he kisses $subSlave.slaveName full on the lips, <<if $activeSlave.boobs+$subSlave.boobs > 20000>> even though the mass of boob between them is so massive that $he has to struggle to bring $his mouth down to meet $subSlave.slaveName's. <<elseif $activeSlave.belly >= 5000 && $subSlave.belly >= 5000>> even though their combined <<if $activeSlave.bellyPreg >= 5000>>pregnancies<<else>>bellies<</if>> and breasts complicate things. <<elseif $activeSlave.belly >= 120000 || $subSlave.belly >= 120000>> - even though <<if $activeSlave.belly >= 120000>>her massive <<if $activeSlave.bellyPreg >= 5000>>pregnancy<<else>>belly<</if>> complicates reaching $subSlave.slaveName's<<else>>$subSlave.slaveName's massive <<if $activeSlave.bellyPreg >= 5000>>pregnancy<<else>>belly<</if>> complicates reaching her's<</if>>. + even though <<if $activeSlave.belly >= 120000>>$his massive <<if $activeSlave.bellyPreg >= 5000>>pregnancy<<else>>belly<</if>> complicates reaching $subSlave.slaveName's<<else>>$subSlave.slaveName's massive <<if $activeSlave.bellyPreg >= 5000>>pregnancy<<else>>belly<</if>> complicates reaching _hers2<</if>>. <<else>> - squashing their boobs together hard so she can reach despite the mass of soft flesh between them. + squashing their boobs together hard so $he can reach despite the mass of soft flesh between them. <</if>> <br><br> -"H-hey," $subSlave.slaveName gasps when $activeSlave.slaveName finally breaks the lip lock, but she's clearly not that displeased. $activeSlave.slaveName, who has clearly forgotten running into the other slave entirely and now has other things on her mind, begins to grind against her. When $subSlave.slaveName smiles back at the horny <<if $activeSlave.physicalAge > 30>>woman<<elseif $activeSlave.physicalAge >= 18>>girl<<elseif $activeSlave.physicalAge >= 18>>teenager<<else>>loli<</if>> on top of her, $activeSlave.slaveName +"H-hey," $subSlave.slaveName gasps when $activeSlave.slaveName finally breaks the lip lock, but _he2's clearly not that displeased. $activeSlave.slaveName, who has clearly forgotten running into the other slave entirely and now has other things on $his mind, begins to grind against _him2. When $subSlave.slaveName smiles back at the horny <<if $activeSlave.physicalAge > 30>>$woman<<elseif $activeSlave.physicalAge >= 18>>$girl<<elseif $activeSlave.physicalAge >= 18>>teenager<<else>>$loli<</if>> on top of _him2, $activeSlave.slaveName <<set $activeSlave.penetrativeCount++, $penetrativeTotal++>> <<if canPenetrate($activeSlave)>> <<if !canDoVaginal($subSlave)>> <<if $subSlave.anus == 0 || !canDoAnal($subSlave)>> - reaches down to seat her rapidly hardening dick between $subSlave.slaveName's thighs for a bit of frottage. + reaches down to seat $his rapidly hardening dick between $subSlave.slaveName's thighs for a bit of frottage. <<elseif $activeSlave.dick > 4>> - pushes $subSlave.slaveName's legs apart to rotate her hips, reaches down, and + pushes $subSlave.slaveName's legs apart to rotate _his2 hips, reaches down, and <<if $subSlave.anus > 2>> - rubs a little saliva on her cock before shoving it up $subSlave.slaveName's anus. + rubs a little saliva on $his cock before shoving it up $subSlave.slaveName's anus. <<else>> - carefully pushes her cock up the whimpering $subSlave.slaveName's tight butt. + carefully pushes $his cock up the whimpering $subSlave.slaveName's tight butt. <</if>> <<set $subSlave.analCount++, $analTotal++>> <<if canImpreg($subSlave, $activeSlave)>> <<= knockMeUp($subSlave, 5, 1, $activeSlave.ID, 1)>> <</if>> <<else>> - pushes $subSlave.slaveName's legs apart to rotate her hips, reaches down, and + pushes $subSlave.slaveName's legs apart to rotate _his2 hips, reaches down, and <<if $subSlave.anus > 2>> - shoves her cock up $subSlave.slaveName's anus, which is loose enough that she doesn't need much lubrication. + shoves $his cock up $subSlave.slaveName's anus, which is loose enough that $he doesn't need much lubrication. <<else>> - pushes her cock up the $subSlave.slaveName's willing butt. + pushes $his cock up the $subSlave.slaveName's willing butt. <</if>> <<set $subSlave.analCount++, $analTotal++>> <<if canImpreg($subSlave, $activeSlave)>> @@ -437,13 +438,13 @@ You pass by the slave quarters during a busy time. Girls are hurrying back and f <</if>> <<else>> <<if $subSlave.vagina == 0>> - reaches down to seat her rapidly hardening dick between $subSlave.slaveName's thighs for a bit of frottage. + reaches down to seat $his rapidly hardening dick between $subSlave.slaveName's thighs for a bit of frottage. <<elseif $activeSlave.dick > 4>> reaches down <<if $subSlave.vagina > 1>> - to insert her huge cock into $subSlave.slaveName's loose wet cunt. + to insert $his huge cock into $subSlave.slaveName's loose wet cunt. <<else>> - and carefully pushes her cock into the whimpering $subSlave.slaveName's tight pussy. + and carefully pushes $his cock into the whimpering $subSlave.slaveName's tight pussy. <</if>> <<set $subSlave.vaginalCount++, $vaginalTotal++>> <<if canImpreg($subSlave, $activeSlave)>> @@ -452,9 +453,9 @@ You pass by the slave quarters during a busy time. Girls are hurrying back and f <<else>> reaches down <<if $subSlave.vagina > 1>> - and inserts her dick into $subSlave.slaveName's loose wet cunt. + and inserts $his dick into $subSlave.slaveName's loose wet cunt. <<else>> - to put her dick inside $subSlave.slaveName's tight pussy. + to put $his dick inside $subSlave.slaveName's tight pussy. <</if>> <<set $subSlave.vaginalCount++, $vaginalTotal++>> <<if canImpreg($subSlave, $activeSlave)>> @@ -463,9 +464,9 @@ You pass by the slave quarters during a busy time. Girls are hurrying back and f <</if>> <</if>> <<elseif canAchieveErection($activeSlave) && !["chastity", "combined chastity"].includes($activeSlave.dickAccessory) && $activeSlave.dick >= 8>> - reaches down to seat her rapidly hardening monster of a cock between $subSlave.slaveName's thighs for a bit of frottage. + reaches down to seat $his rapidly hardening monster of a cock between $subSlave.slaveName's thighs for a bit of frottage. <<elseif $activeSlave.dick > 0 && !["chastity", "combined chastity"].includes($activeSlave.dickAccessory)>> - starts to rub her soft bitchclit against $subSlave.slaveName's + starts to rub $his soft bitchclit against $subSlave.slaveName's <<if ["chastity belt", "combined chastity"].includes($subSlave.vaginalAccessory)>> chastity belt. <<elseif ($subSlave.dick > 0)>> @@ -476,7 +477,7 @@ You pass by the slave quarters during a busy time. Girls are hurrying back and f pussy. <</if>> <<elseif $activeSlave.dick > 0 && ["chastity", "combined chastity"].includes($activeSlave.dickAccessory)>> - starts to rub her chastity cage against $subSlave.slaveName's + starts to rub $his chastity cage against $subSlave.slaveName's <<if ["chastity belt", "combined chastity"].includes($subSlave.vaginalAccessory)>> own belt, a rather pathetic display. <<elseif ($subSlave.dick > 0)>> @@ -487,7 +488,7 @@ You pass by the slave quarters during a busy time. Girls are hurrying back and f pussy. <</if>> <<elseif ["chastity belt", "combined chastity"].includes($activeSlave.vaginalAccessory)>> - starts to rub her chastity belt against $subSlave.slaveName's + starts to rub $his chastity belt against $subSlave.slaveName's <<if ["chastity belt", "combined chastity"].includes($subSlave.vaginalAccessory)>> own belt, a rather pathetic display. <<elseif ($subSlave.dick > 0)>> @@ -498,7 +499,7 @@ You pass by the slave quarters during a busy time. Girls are hurrying back and f pussy. <</if>> <<elseif $activeSlave.vagina == -1>> - starts to rub her soft groin against $subSlave.slaveName's + starts to rub $his soft groin against $subSlave.slaveName's <<if ["chastity belt", "combined chastity"].includes($subSlave.vaginalAccessory)>> chastity belt. <<elseif ($subSlave.dick > 0)>> @@ -507,7 +508,7 @@ You pass by the slave quarters during a busy time. Girls are hurrying back and f mons. <</if>> <<else>> - starts to rub her wet pussy against $subSlave.slaveName's + starts to rub $his wet pussy against $subSlave.slaveName's <<if ["chastity belt", "combined chastity"].includes($subSlave.vaginalAccessory)>> chastity belt. <<elseif ($subSlave.dick > 0)>> @@ -518,49 +519,50 @@ You pass by the slave quarters during a busy time. Girls are hurrying back and f mons. <</if>> <</if>> -Once she's gotten herself positioned, $subSlave.slaveName reaches around $activeSlave.slaveName's $activeSlave.skin body to grab her ass. _He2 holds $activeSlave.slaveName against _him2 as $activeSlave.slaveName starts humping gently, and cranes $his neck up to kiss _him2. +Once $he's gotten $himself positioned, $subSlave.slaveName reaches around $activeSlave.slaveName's $activeSlave.skin body to grab $his ass. _He2 holds $activeSlave.slaveName against _him2 as $activeSlave.slaveName starts humping gently, and cranes _his2 neck up to kiss $him. <<case "if you enjoy it">> <<set $subSlave.analCount++, $analTotal++>> -The distinctive sounds of a sexual encounter in which exactly one of the participants is enjoying herself are coming from the dormitory. This is by no means uncommon, but this particular nonconsensual assignation sounds interesting, so you stick your head in on your way by. You're treated to the sight of <<EventNameLink $activeSlave>>'s $activeSlave.skin back and <<if ($activeSlave.butt > 4)>>massive ass<<elseif ($activeSlave.butt > 2)>>plush rear<<else>>cute butt<</if>> as she kneels on one of the bedrolls. It isn't immediately clear what's going on, but <<if canPenetrate($activeSlave)>>she's doing something with her dick<<else>>she's doing something with her hands<</if>>, and there are a pair of $subSlave.skin feet visible on either side of her. $He's clearly got someone shoved down into the bedroll in front of her, doggy style. That's the source of the whining. +The distinctive sounds of a sexual encounter in which exactly one of the participants is enjoying $himself are coming from the dormitory. This is by no means uncommon, but this particular nonconsensual assignation sounds interesting, so you stick your head in on your way by. You're treated to the sight of <<EventNameLink $activeSlave>>'s $activeSlave.skin back and <<if ($activeSlave.butt > 4)>>massive ass<<elseif ($activeSlave.butt > 2)>>plush rear<<else>>cute butt<</if>> as $he kneels on one of the bedrolls. It isn't immediately clear what's going on, but $he's doing something with $his <<if canPenetrate($activeSlave)>>dick<<else>>hands<</if>>, and there are a pair of $subSlave.skin feet visible on either side of $him. $He's clearly got someone shoved down into the bedroll in front of $him, doggy style. That's the source of the whining. <br><br> Advancing to get a better view, you identify the bottom as <<if $subSlave.bellyPreg >= 5000>>the pregnant <</if>>$subSlave.slaveName. $activeSlave.slaveName has <<if canPenetrate($activeSlave)>> <<if $activeSlave.dick > 4>> - her gigantic dick up $subSlave.slaveName's + $his gigantic dick up $subSlave.slaveName's <<if $subSlave.anus > 2>> - loose anus, but $subSlave.slaveName's butthole is so accommodating that it probably isn't anal pain that's troubling her. + loose anus, but $subSlave.slaveName's butthole is so accommodating that it probably isn't anal pain that's troubling _him2. <<else>> - asshole, which must be so stretched to accommodate it that her anguish is probably due in part to anal pain. + asshole, which must be so stretched to accommodate it that _his2 anguish is probably due in part to anal pain. <</if>> <<elseif $activeSlave.dick > 2>> - her dick up $subSlave.slaveName's + $his dick up $subSlave.slaveName's <<if $subSlave.anus > 1>> - experienced anus, but $subSlave.slaveName's butthole sufficiently used to buttsex that it probably isn't anal pain that's troubling her. + experienced anus, but $subSlave.slaveName's butthole sufficiently used to buttsex that it probably isn't anal pain that's troubling _him2. <<else>> - tight little asshole, which must be so stretched to accommodate it that her anguish is probably due in part to anal pain. + tight little asshole, which must be so stretched to accommodate it that _his2 anguish is probably due in part to anal pain. <</if>> <<else>> - her little cock up $subSlave.slaveName's anus. It's so small that it probably isn't anal pain that's troubling $subSlave.slaveName. + $his little cock up $subSlave.slaveName's anus. It's so small that it probably isn't anal pain that's troubling $subSlave.slaveName. <</if>> <<else>> <<if $subSlave.anus > 2>> - three fingers up $subSlave.slaveName's loose butthole, which is so accommodating that it probably isn't anal pain that's troubling her. + three fingers up $subSlave.slaveName's loose butthole, which is so accommodating that it probably isn't anal pain that's troubling _him2. <<elseif $subSlave.anus > 1>> - two fingers up $subSlave.slaveName's butthole, which is experienced enough that it probably isn't anal pain that's troubling her. + two fingers up $subSlave.slaveName's butthole, which is experienced enough that it probably isn't anal pain that's troubling _him2. <<else>> - two fingers up $subSlave.slaveName's tight ass, which must be so stretched to accommodate them that her anguish is probably due in part to anal pain. + two fingers up $subSlave.slaveName's tight ass, which must be so stretched to accommodate them that _his2 anguish is probably due in part to anal pain. <</if>> <</if>> -$activeSlave.slaveName isn't fucking $subSlave.slaveName at all: $he's just <<if canPenetrate($activeSlave)>>holding $his penis stationary<<else>>holding $his fingers<</if>> up $subSlave.slaveName's rear hole. _His2 buttocks has been severely spanked, so some of _his2 unhappiness probably comes from being forced to eat sheets and let $activeSlave.slaveName play with her ass. But then you notice that $activeSlave.slaveName is <<if canPenetrate($activeSlave)>>reaching around<<else>>using her other hand to reach around<</if>> $subSlave.slaveName, and is <<if $subSlave.dick > 0 && !["chastity", "combined chastity"].includes($subSlave.dickAccessory)>>jerking $subSlave.slaveName off<<else>>manually stimulating $subSlave.slaveName<</if>> <<if ($activeSlave.oralSkill >= 60)>>with all her considerable expertise<<elseif ($activeSlave.oralSkill > 30)>>with considerable skill<<else>>with every appearance of effort<</if>>. You're not sure what's going on here. +$activeSlave.slaveName isn't fucking $subSlave.slaveName at all: $he's just <<if canPenetrate($activeSlave)>>holding $his penis stationary<<else>>holding $his fingers<</if>> up $subSlave.slaveName's rear hole. _His2 buttocks has been severely spanked, so some of _his2 unhappiness probably comes from being forced to eat sheets and let $activeSlave.slaveName play with _his2 ass. But then you notice that $activeSlave.slaveName is <<if canPenetrate($activeSlave)>>reaching around<<else>>using $his other hand to reach around<</if>> $subSlave.slaveName, and is <<if $subSlave.dick > 0 && !["chastity", "combined chastity"].includes($subSlave.dickAccessory)>>jerking $subSlave.slaveName off<<else>>manually stimulating $subSlave.slaveName<</if>> <<if ($activeSlave.oralSkill >= 60)>>with all $his considerable expertise<<elseif ($activeSlave.oralSkill > 30)>>with considerable skill<<else>>with every appearance of effort<</if>>. You're not sure what's going on here. <<case "sadistic description">> <<set $subSlave.analCount++, $analTotal++>> <<set _belly = bellyAdjective($subSlave)>> -You look in on your slaves as a group of them heads for bed. $subSlave.slaveName finds <<EventNameLink $activeSlave>> blocking the way to _hers2. Poor $subSlave.slaveName cringes at $activeSlave.slaveName's predatory expression, but the horny slave doesn't pounce at once. Instead, she starts to walk around $subSlave.slaveName, whose $subSlave.skin body is nude for bed, groping and prodding her as $subSlave.slaveName shivers with fear. Finally $activeSlave.slaveName sidles up behind $subSlave.slaveName<<if $activeSlave.belly >= 5000>>, until her bulging belly pushes into her back, before<</if>> snaking her arms around $subSlave.slaveName's +<<setPlayerPronouns>> +You look in on your slaves as a group of them heads for bed. $subSlave.slaveName finds <<EventNameLink $activeSlave>> blocking the way to _hers2. Poor $subSlave.slaveName cringes at $activeSlave.slaveName's predatory expression, but the horny slave doesn't pounce at once. Instead, $he starts to walk around $subSlave.slaveName, whose $subSlave.skin body is nude for bed, groping and prodding _him2 as $subSlave.slaveName shivers with fear. Finally $activeSlave.slaveName sidles up behind $subSlave.slaveName<<if $activeSlave.belly >= 5000>>, until $his bulging belly pushes into $his back, before<</if>> snaking $his arms around $subSlave.slaveName's <<if $subSlave.bellyPreg >= 10000>> pregnant <<elseif $subSlave.weight > 95>> @@ -578,7 +580,7 @@ You look in on your slaves as a group of them heads for bed. $subSlave.slaveName <<else>> skinny <</if>> -waist to cup her <<if $subSlave.dick > 0>>cock<<elseif $subSlave.vagina == -1>>asshole<<else>>pussy<</if>> possessively with one hand. $subSlave.slaveName closes her $subSlave.eyeColor eyes. +waist to cup _his2 <<if $subSlave.dick > 0>>cock<<elseif $subSlave.vagina == -1>>asshole<<else>>pussy<</if>> possessively with one hand. $subSlave.slaveName closes _his2 $subSlave.eyeColor eyes. <br><br> $activeSlave.slaveName chuckles into $subSlave.slaveName's ear, crooning, <<if $subSlave.bellyPreg >= 120000>> @@ -616,7 +618,7 @@ $activeSlave.slaveName chuckles into $subSlave.slaveName's ear, crooning, <<else>> "You <<s>>tupid <<s>>lut. Too bad you never went to <<s>>chool, maybe you could have learned <<s>>omething and not ended up a<<s>> a fuck <<s>>lave." <</if>> -$He grinds against the wilting $subSlave.slaveName, and then continues, "I felt your <<if ($activeSlave.butt > 4)>>fat butt<<elseif ($activeSlave.butt > 2)>>big butt<<else>>tiny little butt<</if>> clench ju<<s>>t now." $He gives $subSlave.slaveName's <<if ($subSlave.balls > 0)>>balls a gentle squeeze<<elseif ($subSlave.dick > 0)>>dick a gentle tug<<elseif $subSlave.vagina == -1>>butthole a gentle massage<<else>>pussylips a gentle massage<</if>>. "<<if $PC.title != 0>>He<<else>><<Sh>>e<</if>> ha<<s>>n't fucked you back there yet, ha<<s>> <<if $PC.title != 0>>he<<else>><<sh>>e<</if>>? It'<<s>> going to hurt, you little bitch. <<if $PC.title != 0>>He<<else>><<Sh>>e<</if>>'<<s>> going to hold you down and <<sh>>ove <<if $PC.title != 0>>hi<<s>><<else>>her<</if>> <<if $PC.dick == 1>>huge cockhead<<else>>bigge<<s>>t <<s>>trap-on<</if>> right up again<<s>>t thi<<s>> tight little hole." $He gropes the quivering slave's virgin anus, careful not to penetrate it. "You're going to do your be<<s>>t to relax like a good little girl. But it'<<s>> going to be so big. It'<<s>> going to burn. And then you're going to panic, and <<s>>truggle, and <<if $PC.title != 0>>he<<else>><<sh>>e<</if>>'<<s>> going to hold you down and rape your butt while you <<s>>cream and cry." +$He grinds against the wilting $subSlave.slaveName, and then continues, "I felt your <<if ($activeSlave.butt > 4)>>fat butt<<elseif ($activeSlave.butt > 2)>>big butt<<else>>tiny little butt<</if>> clench ju<<s>>t now." $He gives $subSlave.slaveName's <<if ($subSlave.balls > 0 && $subslave.scrotum > 0)>>balls a gentle squeeze<<elseif ($subSlave.dick > 0)>>dick a gentle tug<<elseif $subSlave.vagina == -1>>butthole a gentle massage<<else>>pussylips a gentle massage<</if>>. "<<= lispReplace(SlaveTitle(_HeP))>> ha<<s>>n't fucked you back there yet, ha<<s>> <<= lispReplace(SlaveTitle(_heP))>>? It'<<s>> going to hurt, you little bitch. <<= lispReplace(SlaveTitle(_HeP))>>'<<s>> going to hold you down and <<sh>>ove <<= lispReplace(SlaveTitle(_hisP))>> <<if $PC.dick == 1>>huge cockhead<<else>>bigge<<s>>t <<s>>trap-on<</if>> right up again<<s>>t thi<<s>> tight little hole." $He gropes the quivering slave's virgin anus, careful not to penetrate it. "You're going to do your be<<s>>t to relax like a good little _girl2. But it'<<s>> going to be so big. It'<<s>> going to burn. And then you're going to panic, and <<s>>truggle, and <<= lispReplace(SlaveTitle(_heP))>>'<<s>> going to hold you down and rape your butt while you <<s>>cream and cry." <br><br> $subSlave.slaveName keeps _his2 eyes clamped shut and _his2 hands down at _his2 sides, balled into fists, but _his2 self-control finally cracks and _he2 lets out a great gasping sob before bursting into tears. @@ -624,15 +626,15 @@ $subSlave.slaveName keeps _his2 eyes clamped shut and _his2 hands down at _his2 <<set $subSlave.analCount++, $analTotal++>> <<set _belly = bellyAdjective($subSlave)>> -As you pass the showers, you hear what sounds like a muffled altercation over the noise of the showers running. You look in to see $subSlave.slaveName's $subSlave.skin body facing you, pressed hard up against the glass wall of one of the showers. _His2 <<if $subSlave.face > 95>>gorgeous<<elseif $subSlave.face > 40>>beautiful<<elseif $subSlave.face > 10>>pretty<<elseif $subSlave.face >= -10>>attractive<<else>>homely<</if>> face<<if $subSlave.belly >= 5000>> and <<if $subSlave.bellyPreg >= 5000>>pregnant<<else>>_belly<</if>> belly are<<else>> is<</if>> smashed against the glass, <<if $subSlave.belly >= 5000>>her face <</if>>contorted in pain and fear. The apparent mystery is solved when you notice that there are four legs visible: there's a pair of <<if ($activeSlave.muscles > 95)>>ripped<<elseif ($activeSlave.muscles > 30)>>muscular<<elseif ($activeSlave.muscles > 5)>>toned<<else>>soft<</if>> $activeSlave.skin calves behind $subSlave.slaveName's. <span id="name"><<print "[[$activeSlave.slaveName|Long Slave Description][$nextLink = passage(), $eventDescription = 1]]">></span>'s face appears at $subSlave.slaveName's ear, and though you can't hear exactly what she says, it's something along the lines of "Take it, you whiny little bitch." $He's clearly got <<if canPenetrate($activeSlave)>>her cock<<else>>a couple of fingers<</if>> up $subSlave.slaveName's asshole. +As you pass the showers, you hear what sounds like a muffled altercation over the noise of the showers running. You look in to see $subSlave.slaveName's $subSlave.skin body facing you, pressed hard up against the glass wall of one of the showers. _His2 <<if $subSlave.face > 95>>gorgeous<<elseif $subSlave.face > 40>>beautiful<<elseif $subSlave.face > 10>>pretty<<elseif $subSlave.face >= -10>>attractive<<else>>homely<</if>> face<<if $subSlave.belly >= 5000>> and <<if $subSlave.bellyPreg >= 5000>>pregnant<<else>>_belly<</if>> belly are<<else>> is<</if>> smashed against the glass, <<if $subSlave.belly >= 5000>>_his2 face <</if>>contorted in pain and fear. The apparent mystery is solved when you notice that there are four legs visible: there's a pair of <<if ($activeSlave.muscles > 95)>>ripped<<elseif ($activeSlave.muscles > 30)>>muscular<<elseif ($activeSlave.muscles > 5)>>toned<<else>>soft<</if>> $activeSlave.skin calves behind $subSlave.slaveName's. <<EventNameLink $activeSlave>>'s face appears at $subSlave.slaveName's ear, and though you can't hear exactly what $he says, it's something along the lines of "Take it, you whiny little bitch." $He's clearly got <<if canPenetrate($activeSlave)>>$his cock<<else>>a couple of fingers<</if>> up $subSlave.slaveName's asshole. <br><br> -Both slaves notice you at the same time. $subSlave.slaveName's <<if canSee($subSlave)>>$subSlave.eyeColor eyes widen<<else>>face lights up<</if>>, but her momentary look of hope is snuffed out when she remembers who you are. $activeSlave.slaveName, on the other hand, looks a little doubtful. The rules allow her to fuck your other slaves, but she isn't quite sure what the right thing to do is, since she isn't the most dominant force in the showers any more. +Both slaves notice you at the same time. $subSlave.slaveName's <<if canSee($subSlave)>>$subSlave.eyeColor eyes widen<<else>>face lights up<</if>>, but _his2 momentary look of hope is snuffed out when _he2 remembers who you are. $activeSlave.slaveName, on the other hand, looks a little doubtful. The rules allow $him to fuck your other slaves, but $he isn't quite sure what the right thing to do is, since $he isn't the most dominant force in the showers any more. <<case "repressed anal virgin">> -$subSlave.slaveName has been a very good girl this week, so when her <<if $subSlave.anus > 2>>loose asshole<<elseif $subSlave.anus > 1>>big butthole<<else>>tight anus<</if>> catches your eye near the start of a long inspection, you decide to be kind to her as you conduct the rest of your inspection with <<if $PC.dick == 1>>your cock<<else>>a strap-on<</if>>. <<EventNameLink $activeSlave>> is next on the inspection schedule, and when she comes into your office, it's to the <<if canSee($activeSlave)>>sight of $subSlave.slaveName's back and rear<<else>>sound of $subSlave.slaveName<</if>> as she lazily rides her <<= WrittenMaster($subSlave)>>. You've been sitting on the couch, making out with the compliant girl as she rides you, for a good half hour. Poor $subSlave.slaveName was pent up when you started, and she's climaxed already; she's feeling very devoted and relaxed at the moment, and is doing her best to get you off, too. When you finally come, she moans her thanks into your mouth nonverbally, breaks your lip lock, gives you a peck on the nose, and climbs off you. As she does, she lifts her ass off your <<if $PC.dick == 1>>cock<<else>>strap-on<</if>>, her <<if $subSlave.anus > 2>>gaping anus dripping <<if $PC.dick == 1>>cum<<else>>lube<</if>> all over her $subSlave.skin legs<<elseif $subSlave.anus > 1>>well-fucked backdoor taking a few seconds to recover from its gape, dripping a little <<if $PC.dick == 1>>cum<<else>>lube<</if>> down her $subSlave.skin legs<<else>>still-tight backdoor sliding quickly off you, visibly slick with <<if $PC.dick == 1>>cum<<else>>lube<</if>><</if>>. You didn't fuck her too hard, but <<if $PC.dick == 1>>you're not small<<else>>your strap-ons are not small<</if>>, and she walks a little gingerly as she heads for the bathroom. $activeSlave.slaveName, standing there nude for inspection, stares openmouthed at $subSlave.slaveName as _he2 goes. $He's obviously unfamiliar with anal sex. +$subSlave.slaveName has been a very good _girl2 this week, so when _his2 <<if $subSlave.anus > 2>>loose asshole<<elseif $subSlave.anus > 1>>big butthole<<else>>tight anus<</if>> catches your eye near the start of a long inspection, you decide to be kind to _him2 as you conduct the rest of your inspection with <<if $PC.dick == 1>>your cock<<else>>a strap-on<</if>>. <<EventNameLink $activeSlave>> is next on the inspection schedule, and when $he comes into your office, it's to the <<if canSee($activeSlave)>>sight of $subSlave.slaveName's back and rear<<else>>sound of $subSlave.slaveName<</if>> as _he2 lazily rides _his2 <<= WrittenMaster($subSlave)>>. You've been sitting on the couch, making out with the compliant _girl2 as _he2 rides you, for a good half hour. Poor $subSlave.slaveName was pent up when you started, and _he2's climaxed already; _he2's feeling very devoted and relaxed at the moment, and is doing _his2 best to get you off, too. When you finally come, _he2 moans _his2 thanks into your mouth nonverbally, breaks your lip lock, gives you a peck on the nose, and climbs off you. As _he2 does, _he2 lifts _his2 ass off your <<if $PC.dick == 1>>cock<<else>>strap-on<</if>>, _his2 <<if $subSlave.anus > 2>>gaping anus dripping <<if $PC.dick == 1>>cum<<else>>lube<</if>> all over _his2 $subSlave.skin legs<<elseif $subSlave.anus > 1>>well-fucked backdoor taking a few seconds to recover from its gape, dripping a little <<if $PC.dick == 1>>cum<<else>>lube<</if>> down _his2 $subSlave.skin legs<<else>>still-tight backdoor sliding quickly off you, visibly slick with <<if $PC.dick == 1>>cum<<else>>lube<</if>><</if>>. You didn't fuck _him2 too hard, but <<if $PC.dick == 1>>you're not small<<else>>your strap-ons are not small<</if>>, and _he2 walks a little gingerly as _he2 heads for the bathroom. $activeSlave.slaveName, standing there nude for inspection, stares openmouthed at $subSlave.slaveName as _he2 goes. $He's obviously unfamiliar with anal sex. <br><br> -$activeSlave.slaveName coughs and looks doubtful, like she's mulling over a question. You let the poor repressed girl chew on it for a while, and eventually she bursts out, "<<Master $activeSlave>>, what were you doing with $subSlave.slaveName?" The absurdity gives you a moment's pause, but you answer gamely that you were fucking her ass. $activeSlave.slaveName blushes furiously but plunges on, "I'm <<s>>-<<s>>orry, <<Master>>, but I <<s>>till don't under<<s>>tand. I thought <<s>>e<<x>> happened in a v-vagina. I d-didn't think b-butt<<s>> were - were for, you know, that." +$activeSlave.slaveName coughs and looks doubtful, like $he's mulling over a question. You let the poor repressed $girl chew on it for a while, and eventually $he bursts out, "<<Master $activeSlave>>, what were you doing with $subSlave.slaveName?" The absurdity gives you a moment's pause, but you answer gamely that you were fucking _his2 ass. $activeSlave.slaveName blushes furiously but plunges on, "I'm <<s>>-<<s>>orry, <<Master>>, but I <<s>>till don't under<<s>>tand. I thought <<s>>e<<x>> happened in a v-vagina. I d-didn't think b-butt<<s>> were - were for, you know, that." <<set $subSlave.analCount++, $analTotal++>> <<if canImpreg($subSlave, $PC)>> <<= knockMeUp($subSlave, 5, 1, -1, 1)>> @@ -647,11 +649,11 @@ $activeSlave.slaveName coughs and looks doubtful, like she's mulling over a ques <<set _notVirgin = 0>> <</if>> <<set _belly = bellyAdjective($activeSlave)>> -As you stroll past the best part of the slave living area one evening, you hear a lewd slap, slap, slap coming from the room <<EventNameLink $activeSlave>> and $subSlave.slaveName share. It's quite obvious what they're up to, but you look in anyway. $activeSlave.slaveName has clearly had a long day, and is tired, but $he's being a good <<if $activeSlave.relationship > 4>>wife<<else>>lover<</if>> and letting $subSlave.slaveName use $his body. $activeSlave.slaveName is lying face-down on their bed, arms crossed under her head, looking quite relaxed. $He has a couple of pillows tucked under her hips to raise them so that her <<if $activeSlave.relationship > 4>>wife<<else>>sweetheart<</if>> can fuck her comfortably<<if $activeSlave.belly >= 5000>> and to give her _belly <<if $activeSlave.bellyPreg >= 3000>>pregnancy<<else>>belly<</if>> room beneath her<</if>>. They've obviously been at this for a while. $subSlave.slaveName likes to top and is not gentle at it, and she's pounding $activeSlave.slaveName as hard as she can. _He2's <<if $subSlave.muscles > 30>>a very strong girl, and _his2 muscles work noticeably<<elseif $subSlave.muscles > 5>>physically fit, but even so, _he2's showing signs of fatigue<<else>>not very fit, and _he2's gasping tiredly<</if>> as _he2 pistons <<if canPenetrate($subSlave)>>_his2 penis<<else>>the strap-on _he2's wearing<</if>> in and out of the <<if _notVirgin == 1>>asshole<<else>>pussy<</if>> beneath _him2. +As you stroll past the best part of the slave living area one evening, you hear a lewd slap, slap, slap coming from the room <<EventNameLink $activeSlave>> and $subSlave.slaveName share. It's quite obvious what they're up to, but you look in anyway. $activeSlave.slaveName has clearly had a long day, and is tired, but $he's being a good <<if $activeSlave.relationship > 4>>wife<<else>>lover<</if>> and letting $subSlave.slaveName use $his body. $activeSlave.slaveName is lying face-down on their bed, arms crossed under $his head, looking quite relaxed. $He has a couple of pillows tucked under $his hips to raise them so that $his <<if $activeSlave.relationship > 4>>wife<<else>>sweetheart<</if>> can fuck $him comfortably<<if $activeSlave.belly >= 5000>> and to give $his _belly <<if $activeSlave.bellyPreg >= 3000>>pregnancy<<else>>belly<</if>> room beneath $him<</if>>. They've obviously been at this for a while. $subSlave.slaveName likes to top and is not gentle at it, and _he2's pounding $activeSlave.slaveName as hard as _he2 can. _He2's <<if $subSlave.muscles > 30>>a very strong girl, and _his2 muscles work noticeably<<elseif $subSlave.muscles > 5>>physically fit, but even so, _he2's showing signs of fatigue<<else>>not very fit, and _he2's gasping tiredly<</if>> as _he2 pistons <<if canPenetrate($subSlave)>>_his2 penis<<else>>the strap-on _he2's wearing<</if>> in and out of the <<if _notVirgin == 1>>asshole<<else>>pussy<</if>> beneath _him2. <br><br> -For $his part, $activeSlave.slaveName is playing an utterly passive role. $He even has $his eyes closed, though she's obviously conscious; she's smiling<<if ($activeSlave.fetish == "buttslut")>>, and the shameless $desc buttslut loves being treated like this<</if>>. <<set _notVirgin = 0>> +For $his part, $activeSlave.slaveName is playing an utterly passive role. $He even has $his eyes closed, though $he's obviously conscious; $he's smiling<<if ($activeSlave.fetish == "buttslut")>>, and the shameless $desc buttslut loves being treated like this<</if>>. <<set _notVirgin = 0>> <<if _notVirgin == 1>> <<if $activeSlave.anus > 2>> $His welcoming asspussy can take this all night. @@ -696,29 +698,29 @@ For $his part, $activeSlave.slaveName is playing an utterly passive role. $He ev <<= knockMeUp($activeSlave, 10, 0, $subSlave.ID, 1)>> <</if>> <<else>> - $His lover is using a formidable phallus, but she's relaxed and taking it easily. + $His lover is using a formidable phallus, but $he's relaxed and taking it easily. <</if>> <<else>> <<if canPenetrate($subSlave)>> <<if $subSlave.dick > 2>> - $His lover's cock is big enough that it often causes her some pain, but her tight little pussy has clearly been worked in gradually tonight, and she's taking it just fine. + $His lover's cock is big enough that it often causes $him some pain, but $his tight little pussy has clearly been worked in gradually tonight, and $he's taking it just fine. <<else>> - $His lover's little dick is well suited to $his tight little pussy, and she's taking her pounding just fine. + $His lover's little dick is well suited to $his tight little pussy, and $he's taking $his pounding just fine. <</if>> <<if canImpreg($activeSlave, $subSlave)>> <<= knockMeUp($activeSlave, 10, 0, $subSlave.ID, 1)>> <</if>> <<else>> - $His lover is using a formidable phallus, but her tight little pussy has clearly been worked in gradually tonight, and she's taking it just fine. + $His lover is using a formidable phallus, but $his tight little pussy has clearly been worked in gradually tonight, and $he's taking it just fine. <</if>> <</if>> <</if>> -Being the <<if $activeSlave.relationship > 4>>wife<<else>>lover<</if>> of a lusty fucker like $activeSlave.slaveName can be tiring, especially in addition to _his2 other duties. But despite the vigor, the sex looks quite loving. $activeSlave.slaveName goes on smiling comfortably as <<if $activeSlave.butt > 7>>$his enormous ass ripples<<elseif $activeSlave.butt > 4>>$his heavy ass jiggles<<else>>$his cute butt jiggles a bit<</if>> under each hard slap as $subSlave.slaveName brings _his2 hips down to penetrate $him fully, yet again. +Being the <<if $activeSlave.relationship > 4>>wife<<else>>lover<</if>> of a lusty fucker like $subSlave.slaveName can be tiring, especially in addition to $his other duties. But despite the vigor, the sex looks quite loving. $activeSlave.slaveName goes on smiling comfortably as <<if $activeSlave.butt > 7>>$his enormous ass ripples<<elseif $activeSlave.butt > 4>>$his heavy ass jiggles<<else>>$his cute butt jiggles a bit<</if>> under each hard slap as $subSlave.slaveName brings _his2 hips down to penetrate $him fully, yet again. <br><br> <<set _belly = bellyAdjective($subSlave)>> -Mere moments after you absorb this arresting scene, $subSlave.slaveName thrusts <<if canPenetrate($subSlave)>>her cock<<else>>the strap-on<</if>> all the way inside $activeSlave.slaveName's <<if _notVirgin == 1>>ass<<else>>womanhood<</if>> and shudders, <<if canPenetrate($subSlave)>>filling it with her cum<<else>>orgasming<</if>>. Then she collapses, utterly spent. $activeSlave.slaveName <<if canPenetrate($subSlave)>>gasps at the sensation of the ejaculate shooting into $his body<<else>>smiles a little wider as she feels $subSlave.slaveName's muscles tense with climax<</if>>, and then grunts a little as $subSlave.slaveName lies down on top of $him.<<if $subSlave.boobs > 5000>> The enormous weight of her lover's boobs squashes her.<</if>><<if $subSlave.belly >= 5000>> _His2 _belly <<if $subSlave.bellyPreg >= 3000>>pregnancy<<else>>belly<</if>> pushing into the small of $his back.<</if>> After a few seconds, $he wiggles $his hips a little as a wordless question. The sensation <<if canPenetrate($subSlave)>>against $subSlave.slaveName's softening, overstimulated member<<else>>is transmitted through the phallus and its harness to $subSlave.slaveName's overstimulated clit, and this<</if>> makes the exhausted slave on top quiver, eliciting a giggle from the slave underneath her. "I love you, $subSlave.slaveName," she whispers, and receives a mumbled "I love you too" in breathy response, right next to her ear. +Mere moments after you absorb this arresting scene, $subSlave.slaveName thrusts <<if canPenetrate($subSlave)>>_his2 cock<<else>>the strap-on<</if>> all the way inside $activeSlave.slaveName's <<if _notVirgin == 1>>ass<<else>>womanhood<</if>> and shudders, <<if canPenetrate($subSlave)>>filling it with _his2 cum<<else>>orgasming<</if>>. Then _he2 collapses, utterly spent. $activeSlave.slaveName <<if canPenetrate($subSlave)>>gasps at the sensation of the ejaculate shooting into $his body<<else>>smiles a little wider as $h3 feels $subSlave.slaveName's muscles tense with climax<</if>>, and then grunts a little as $subSlave.slaveName lies down on top of $him.<<if $subSlave.boobs > 5000>> The enormous weight of $his lover's boobs squashes $him.<</if>><<if $subSlave.belly >= 5000>> _His2 _belly <<if $subSlave.bellyPreg >= 3000>>pregnancy<<else>>belly<</if>> pushing into the small of $his back.<</if>> After a few seconds, $he wiggles $his hips a little as a wordless question. The sensation <<if canPenetrate($subSlave)>>against $subSlave.slaveName's softening, overstimulated member<<else>>is transmitted through the phallus and its harness to $subSlave.slaveName's overstimulated clit, and this<</if>> makes the exhausted slave on top quiver, eliciting a giggle from the slave underneath _him2. "I love you, $subSlave.slaveName," $he whispers, and receives a mumbled "I love you too" in breathy response, right next to $his ear. <<case "simple assault">> @@ -733,20 +735,20 @@ $activeSlave.slaveName senses your presence above and behind $him, and twists $h <<elseif $activeSlave.fetishKnown && $activeSlave.fetish == "dom">> "The crying almo<<s>>t make<<s>> me feel bad, but fucking a bitch feel<<s>> <<s>>o, <<s>>o good," the dominant $desc admits conversationally. <<elseif $activeSlave.fetishKnown && $activeSlave.fetish == "pregnancy" && _vaginal == 1 && canImpreg($subSlave, $activeSlave)>> - "I couldn't help my<<s>>elf," the $desc admits. "_He2'd look <<s>>o pretty with a pregnant belly and I ju<<s>>t couldn't re<<s>>i<<s>>t giving _him2 one. _He2 tried to <<s>>ay _he2 didn't want to be a mother, <<s>>o..." + "I couldn't help my<<s>>elf," the $desc admits. "<<He 2>>'d look <<s>>o pretty with a pregnant belly and I ju<<s>>t couldn't re<<s>>i<<s>>t giving <<him 2>> one. <<He 2>> tried to <<s>>ay <<he 2>> didn't want to be a mother, <<s>>o..." <<elseif $activeSlave.energy > 95>> "I can't help my<<s>>elf," the nymphomaniac $desc admits breathlessly. "Thank you for letting me take what I need from the other girl<<s>>." <<elseif $activeSlave.energy > 60>> - "I couldn't help my<<s>>elf," the $desc admits. "I wa<<s>> really, really horny and _he2 was ju<<s>>t, um, there. And _he2 tried to <<s>>ay no." + "I couldn't help my<<s>>elf," the $desc admits. "I wa<<s>> really, really horny and <<he 2>> was ju<<s>>t, um, there. And <<he 2>> tried to <<s>>ay no." <<else>> - "I know it'<<s>> not like me," the $desc admits. "But I a<<s>>ked _him2, like, mo<<s>>tly joking, and _he2 tried to <<s>>ay no." + "I know it'<<s>> not like me," the $desc admits. "But I a<<s>>ked <<him 2>>, like, mo<<s>>tly joking, and <<he 2>> tried to <<s>>ay no." <</if>> <br><br> <<run Enunciate($subSlave)>> -$subSlave.slaveName <<if _vaginal>>looks out from under $activeSlave.slaveName<<else>>turns _his2 head<</if>> and <<if canSee($subSlave)>>looks at<<else>>faces<</if>> you too. "<<Master $subSlave>>, plea<<s>>e," _he2 begs. "P-plea<<s>>e, make $him <<s>>-<<s>>top - mhhh -" $activeSlave.slaveName shuts _him2 up by <<if _vaginal>>kissing _his2 unwilling mouth<<else>>shoving _his2 face back against the floor<</if>>. Once $he has $subSlave.slaveName back under control, $activeSlave.slaveName slows $his thrusting, reaches around behind $himself, and <<if $activeSlave.vagina != 0 && canDoVaginal($activeSlave)>>spreads $his futa pussy for you.<<else>>pulls one asscheek aside to offer you $his anus. To make the offer extra clear, $he starts winking it lewdly.<</if>> +$subSlave.slaveName <<if _vaginal>>looks out from under $activeSlave.slaveName<<else>>turns _his2 head<</if>> and <<if canSee($subSlave)>>looks at<<else>>faces<</if>> you too. "<<Master $subSlave>>, plea<<s>>e," _he2 begs. "P-plea<<s>>e, make <<him>> <<s>>-<<s>>top - mhhh -" $activeSlave.slaveName shuts _him2 up by <<if _vaginal>>kissing _his2 unwilling mouth<<else>>shoving _his2 face back against the floor<</if>>. Once $he has $subSlave.slaveName back under control, $activeSlave.slaveName slows $his thrusting, reaches around behind $himself, and <<if $activeSlave.vagina != 0 && canDoVaginal($activeSlave)>>spreads $his futa pussy for you.<<else>>pulls one asscheek aside to offer you $his anus. To make the offer extra clear, $he starts winking it lewdly.<</if>> <br><br> <<run Enunciate($activeSlave)>> -"Plea<<s>>e fuck me while I rape _him2, <<Master>>," $activeSlave.slaveName <<say>>s in a mockery of $subSlave.slaveName's <<if $subSlave.voice > 2>>high-pitched whining<<elseif $subSlave.voice > 1>>begging<<else>>deep-voiced begging<</if>>. "Ooh, or, plea<<s>>e, <<Master>>, may I flip _him2 over? I'd love to feel <<if $PC.dick>>your cock in<<s>>ide _him2 along<<s>>ide mine<<else>>that <<s>>trap-on you u<<s>>e in<<s>>ide _him2 along<<s>>ide my cock<</if>>!" +"Plea<<s>>e fuck me while I rape <<him 2>>, <<Master>>," $activeSlave.slaveName <<say>>s in a mockery of $subSlave.slaveName's <<if $subSlave.voice > 2>>high-pitched whining<<elseif $subSlave.voice > 1>>begging<<else>>deep-voiced begging<</if>>. "Ooh, or, plea<<s>>e, <<Master>>, may I flip <<him 2>> over? I'd love to feel <<if $PC.dick>>your cock in<<s>>ide <<him 2>> along<<s>>ide mine<<else>>that <<s>>trap-on you u<<s>>e in<<s>>ide <<him 2>> along<<s>>ide my cock<</if>>!" <br><br> <<run Enunciate($subSlave)>> "Plea<<s>>e, no," sobs $subSlave.slaveName. @@ -757,66 +759,66 @@ $subSlave.slaveName <<if _vaginal>>looks out from under $activeSlave.slaveName<< <<set $activeSlave.oralCount++, $oralTotal++>> Early in the morning, you run across $subSlave.slaveName using one of the penthouse milking machines. This isn't surprising; <<if $subSlave.lactation == 0>> - she's not lactating, but she's a good semen producer and when she wakes up, she's usually very ready to have one of the machines drain her balls for her. + _he2's not lactating, but _he2's a good semen producer and when _he2 wakes up, _he2's usually very ready to have one of the machines drain _his2 balls for _him2. <<else>> <<if $subSlave.preg > 30>> - it's late in her pregnancy and she wakes up every day with her $subSlave.boobShape breasts sore, painfully swollen with rich, nutritious milk. + it's late in _his2 pregnancy and _he2 wakes up every day with _his2 $subSlave.boobShape breasts sore, painfully swollen with rich, nutritious milk. <<elseif $subSlave.preg > 20>> - she's pregnant and she wakes up every day with her $subSlave.boobShape breasts sore and swollen with rich, nutritious milk. + _he2's pregnant and _he2 wakes up every day with _his2 $subSlave.boobShape breasts sore and swollen with rich, nutritious milk. <<elseif $subSlave.lactation > 1>> - the tiny little slow-release implant in each of her breasts is merciless. It keeps her mammary glands in a permanent state of barely-safe hyperproduction, and she wakes up every day with her terribly sore breasts spontaneously dribbling milk. + the tiny little slow-release implant in each of _his2 breasts is merciless. It keeps _his2 mammary glands in a permanent state of barely-safe hyperproduction, and _he2 wakes up every day with _his2 terribly sore breasts spontaneously dribbling milk. <<else>> - her lactation is natural, but it's still enough that she wakes up most days with full, sore breasts. + _his2 lactation is natural, but it's still enough that _he2 wakes up most days with full, sore breasts. <</if>> - But her udders aren't the only thing producing creamy liquid. The machine is applying generous prostate stimulation to drain her balls, too. + But _his2 udders aren't the only thing producing creamy liquid. The machine is applying generous prostate stimulation to drain _his2 balls, too. <</if>> But the cum is about to be intercepted. There's another slave lying on the floor under $subSlave.slaveName, intertwined with the machine<<if $subSlave.lactation == 0>>; its cum receptacle lying unused<<else>>. The nipple milkers are attached to each of the human cow's nipples, and they're pumping away industriously, keeping the clear lines running away from each udder white with cream. On the other hand, the cum receptacle is lying unused<</if>>. <br><br> -You can't see much of the slave under $subSlave.slaveName, since she's intimately intertwined with the machine and with $subSlave.slaveName, but based on her +You can't see much of the slave under $subSlave.slaveName, since $he's intimately intertwined with the machine and with $subSlave.slaveName, but based on $his <<if $activeSlave.dick > 0>><<if canAchieveErection($activeSlave) && !["chastity", "combined chastity"].includes($activeSlave.dickAccessory)>>stiff prick<<elseif ["chastity", "combined chastity"].includes($activeSlave.dickAccessory)>>uncomfortably filled chastity cage<<else>>pathetically soft but precum-tipped dick<</if>>,<</if>> <<if $activeSlave.vagina > 0>><<if $activeSlave.labia > 0>>generous pussylips<<elseif $activeSlave.clit > 0>>visibly stiff clit<<else>>obviously aroused womanhood<</if>>,<</if>> <<if $activeSlave.dick == 0>><<if $activeSlave.vagina == -1>><<if $activeSlave.scrotum > 0>>lonely ballsack<<else>>smoothly featureless groin<</if>>,<</if>><</if>> -<<if $activeSlave.weight > 100>>fat<<elseif $activeSlave.muscles > 30>>muscular<<elseif $activeSlave.weight > 30>>chubby<<elseif $activeSlave.muscles > 10>>toned<<elseif $activeSlave.weight > 10>>nice soft<<elseif $activeSlave.weight >= -10>>slender<<else>>skinny<</if>> legs, and $activeSlave.skin skin, it's <span id="name"><<print "[[$activeSlave.slaveName|Long Slave Description][$nextLink = passage(), $eventDescription = 1]]">></span>. She's allowed access to cockmilk and she's getting it straight from the source. $subSlave.slaveName +<<if $activeSlave.weight > 100>>fat<<elseif $activeSlave.muscles > 30>>muscular<<elseif $activeSlave.weight > 30>>chubby<<elseif $activeSlave.muscles > 10>>toned<<elseif $activeSlave.weight > 10>>nice soft<<elseif $activeSlave.weight >= -10>>slender<<else>>skinny<</if>> legs, and $activeSlave.skin skin, it's <<EventNameLink $activeSlave>>. $He's allowed access to cockmilk and $he's getting it straight from the source. $subSlave.slaveName <<if $subSlave.dick < 3>> - has a <<if $subSlave.dick < 2>>pathetically tiny penis<<else>>rather modest cock<</if>>, so $activeSlave.slaveName has her head buried between $subSlave.slaveName's quivering thighs. She isn't sucking $subSlave.slaveName's dick so much as she's nursing at it, keeping it entirely within her mouth and applying powerful suction. + has a <<if $subSlave.dick < 2>>pathetically tiny penis<<else>>rather modest cock<</if>>, so $activeSlave.slaveName has $his head buried between $subSlave.slaveName's quivering thighs. $He isn't sucking $subSlave.slaveName's dick so much as $he's nursing at it, keeping it entirely within $his mouth and applying powerful suction. <<elseif $subSlave.dick > 8>> - has an inhumanly monstrous penis that the poor slave's cardiovascular system couldn't possibly bring erect. $activeSlave.slaveName has gotten its huge soft head into her mouth, and is sucking lustily. + has an inhumanly monstrous penis that the poor slave's cardiovascular system couldn't possibly bring erect. $activeSlave.slaveName has gotten its huge soft head into $his mouth, and is sucking lustily. <<elseif !canAchieveErection($subSlave)>> - can't achieve an erection, but $activeSlave.slaveName is sucking her dick anyway. She's got her mouth full of it, and to go by the flexing of her cheeks, is applying her tongue with gusto. + can't achieve an erection, but $activeSlave.slaveName is sucking _his2 dick anyway. $He's got $his mouth full of it, and to go by the flexing of $his cheeks, is applying $his tongue with gusto. <<else>> - is rock hard, of course, and $activeSlave.slaveName is giving her a lusty blowjob, stroking her head busily back and forth. + is rock hard, of course, and $activeSlave.slaveName is giving _him2 a lusty blowjob, stroking _his2 head busily back and forth. <</if>> -The milking machine cum receptacle is designed to be warm, wet, and stimulating, but $subSlave.slaveName is getting much better attention. $activeSlave.slaveName is omitting nothing that could help her extract every last drop of cum. She's sucking, and the machine is applying direct stimulation to $subSlave.slaveName's <<if $subSlave.prostate>>prostate<<else>>insides<</if>> with <<if $subSlave.anus > 2>>a big vibrating dildo that comfortably fills her experienced anus<<elseif $subSlave.anus > 2>>a vibrating dildo that her soft asshole can take comfortably<<else>>a little vibrator that fits comfortably up her tight ass<</if>>, +The milking machine cum receptacle is designed to be warm, wet, and stimulating, but $subSlave.slaveName is getting much better attention. $activeSlave.slaveName is omitting nothing that could help $him extract every last drop of cum. $He's sucking, and the machine is applying direct stimulation to $subSlave.slaveName's <<if $subSlave.prostate>>prostate<<else>>insides<</if>> with <<if $subSlave.anus > 2>>a big vibrating dildo that comfortably fills _his2 experienced anus<<elseif $subSlave.anus > 2>>a vibrating dildo that _his2 soft asshole can take comfortably<<else>>a little vibrator that fits comfortably up _his2 tight ass<</if>>, <<if $subSlave.dick < 3>> - giving $activeSlave.slaveName limited options to further stimulate the poorly-endowed slave. She's using one hand to stroke the soft, precum-slick skin below $subSlave.slaveName's anus. + giving $activeSlave.slaveName limited options to further stimulate the poorly-endowed slave. $He's using one hand to stroke the soft, precum-slick skin below $subSlave.slaveName's anus. <<elseif $subSlave.dick > 8>> - so $activeSlave.slaveName has one hand wrapped around the gigantic soft python of flesh between $subSlave.slaveName's legs, and is squeezing it rhythmically from its base up to where its head enters her wet lips. + so $activeSlave.slaveName has one hand wrapped around the gigantic soft python of flesh between $subSlave.slaveName's legs, and is squeezing it rhythmically from its base up to where its head enters $his wet lips. <<elseif !canAchieveErection($subSlave)>> - so, since $activeSlave.slaveName can't jack off a soft shaft, she's using one hand to stroke the soft, precum-slick skin below $subSlave.slaveName's anus. + so, since $activeSlave.slaveName can't jack off a soft shaft, $he's using one hand to stroke the soft, precum-slick skin below $subSlave.slaveName's anus. <<else>> - so she uses one hand to stroke the hard shaft outside her wet lips, using her saliva and $subSlave.slaveName's precum to perform a messy handjob. + so $he uses one hand to stroke the hard shaft outside $his wet lips, using $his saliva and $subSlave.slaveName's precum to perform a messy handjob. <</if>> -$His other hand is <<if $subSlave.scrotum == 0>>massaging the place where $subSlave.slaveName's scrotum used to be<<elseif $subSlave.scrotum < $activeSlave.balls>>gently massaging $subSlave.slaveName's overfilled scrotum, which her balls fill to the point of discomfort<<elseif $subSlave.scrotum > $activeSlave.balls+1>>playing with $subSlave.slaveName's loose scrotum<<else>>massaging $subSlave.slaveName's balls<</if>>. +$His other hand is <<if $subSlave.scrotum == 0>>massaging the place where $subSlave.slaveName's scrotum used to be<<elseif $subSlave.scrotum < $activeSlave.balls>>gently massaging $subSlave.slaveName's overfilled scrotum, which _his2 balls fill to the point of discomfort<<elseif $subSlave.scrotum > $activeSlave.balls+1>>playing with $subSlave.slaveName's loose scrotum<<else>>massaging $subSlave.slaveName's balls<</if>>. <br><br> -$subSlave.slaveName is getting her dick sucked<<if $subSlave.lactation == 0>> and her ass fucked<<else>>, her ass fucked, and her boobs milked<</if>>. She's so overstimulated that she's shaking; a tremendous orgasm is building within her. She <<if $subSlave.voice != 0>>groans<<else>>makes a harsh rasping noise<</if>>, which $activeSlave.slaveName hears, and $subSlave.slaveName tenses, which $activeSlave.slaveName feels in her mouth and hands. Smiling around the penis in her mouth, pleased by the approach of a gush of delectable semen, $activeSlave.slaveName hums encouragement into $subSlave.slaveName's <<if canAchieveErection($subSlave)>>rock-hard<<else>>soft<</if>> dickhead<<if $subSlave.scrotum>> and visibly tickles $subSlave.slaveName's balls with her naughty pink tongue<</if>>. +$subSlave.slaveName is getting _his2 dick sucked<<if $subSlave.lactation == 0>> and _his2 ass fucked<<else>>, _his2 ass fucked, and _his2 boobs milked<</if>>. _He2's so overstimulated that _he2's shaking; a tremendous orgasm is building within _him2. _He2 <<if $subSlave.voice != 0>>groans<<else>>makes a harsh rasping noise<</if>>, which $activeSlave.slaveName hears, and $subSlave.slaveName tenses, which $activeSlave.slaveName feels in $his mouth and hands. Smiling around the penis in $his mouth, pleased by the approach of a gush of delectable semen, $activeSlave.slaveName hums encouragement into $subSlave.slaveName's <<if canAchieveErection($subSlave)>>rock-hard<<else>>soft<</if>> dickhead<<if $subSlave.scrotum>> and visibly tickles $subSlave.slaveName's balls with $his naughty pink tongue<</if>>. <<case "interslave begging">> <<set _vaginal = 0>> <<if canDoVaginal($subSlave)>><<set _vaginal = 1>><</if>> -Passing the slave quarters late at night, you hear <span id="name"><<print "[[$activeSlave.slaveName|Long Slave Description][$nextLink = passage(), $eventDescription = 1]]">></span>'s <<if $activeSlave.voice > 2>>girly<<elseif $activeSlave.voice > 1>>feminine<<else>>deep<</if>> voice, raised in +Passing the slave quarters late at night, you hear <<EventNameLink $activeSlave>>'s <<if $activeSlave.voice > 2>>girly<<elseif $activeSlave.voice > 1>>feminine<<else>>deep<</if>> voice, raised in <<if $activeSlave.trust <= 20 || ($activeSlave.fetish == "submissive" && $activeSlave.fetishKnown)>> - her usual begging tones. She's + $his usual begging tones. $He's <<if $activeSlave.fetish == "submissive" && $activeSlave.fetishKnown>> a shameless little slut of a sub, and <<else>> got a lot to be afraid of, as a sex slave, so <</if>> - getting down on her metaphorical knees is an hourly occurrence for her. (Not that she doesn't get down on her actual knees, too.) + getting down on $his metaphorical knees is an hourly occurrence for $him. (Not that $he doesn't get down on $his actual knees, too.) <<else>> - begging tones that are unusual for her. + begging tones that are unusual for $him. <</if>> -"Pleeea<<s>>e let me fuck <<if _vaginal>>you<<else>>your butt,<</if>>" she whines. +"Pleeea<<s>>e let me fuck <<if _vaginal>>you<<else>>your butt,<</if>>" $he whines. <br><br> <<run Enunciate($subSlave)>> "I'm tired," <<say>>s @@ -842,29 +844,29 @@ voice. It's $subSlave.slaveName. <<else>> "I'm tired, and I have to $subSlave.assignment tomorrow. I ju<<s>>t want to go to <<s>>leep." <</if>> -_His2 objections sound a bit feigned, and she's obviously in no hurry to put an end to +_His2 objections sound a bit feigned, and _he2's obviously in no hurry to put an end to <<if $activeSlave.relationTarget == $subSlave.ID>> - the unmatched perversion of having her own $subSlave.relation beg her for sex. + the unmatched perversion of having _his2 own $subSlave.relation beg _him2 for sex. <<elseif $activeSlave.mother == $subSlave.ID || $activeSlave.father == $subSlave.ID>> - the unmatched perversion of having her own daughter beg her for sex. + the unmatched perversion of having _his2 own daughter beg _him2 for sex. <<elseif $subSlave.mother == $activeSlave.ID>> - the unmatched perversion of having her own mother beg her for sex. + the unmatched perversion of having _his2 mother beg _him2 for sex. <<elseif $subSlave.father == $activeSlave.ID>> - the unmatched perversion of having her own father beg her for sex. + the unmatched perversion of having _his2 own father beg _him2 for sex. <<elseif areSisters($subSlave, $activeSlave) == 1>> - the unmatched perversion of having her own twin sister beg her for sex. + the unmatched perversion of having _his2 own twin sister beg _him2 for sex. <<elseif areSisters($subSlave, $activeSlave) == 2>> - the unmatched perversion of having her own sister beg her for sex. + the unmatched perversion of having _his2 own sister beg _him2 for sex. <<elseif areSisters($subSlave, $activeSlave) == 3>> - the perversion of having her own half sister beg her for sex. + the perversion of having _his2 own half sister beg _him2 for sex. <<elseif $activeSlave.ID == $HeadGirl.ID>> - <<if canHear($subSlave)>>listening to<<else>>having<</if>> the Head Girl beg to be allowed to put her cock inside her. Usually, it's $activeSlave.slaveName giving the orders. + <<if canHear($subSlave)>>listening to<<else>>having<</if>> the Head Girl beg to be allowed to put $his cock inside _him2. Usually, it's $activeSlave.slaveName giving the orders. <<elseif $activeSlave.fetishKnown && ($activeSlave.fetish == "dom" || $activeSlave.fetish == "sadist")>> - having a dominant $desc like $activeSlave.slaveName beg her for sex. + having a dominant $desc like $activeSlave.slaveName beg _him2 for sex. <<elseif $activeSlave.face > 40>> - having a <<if $activeSlave.face > 95>>perfect<<else>>really very pretty<</if>> $desc beg her for sex. + having a <<if $activeSlave.face > 95>>perfect<<else>>really very pretty<</if>> $desc beg _him2 for sex. <<else>> - having somebody beg her for sex. She's a sex slave, and she doesn't always have the luxury of feeling so wanted. + having somebody beg _him2 for sex. _He's a sex slave, and _he doesn't always have the luxury of feeling so wanted. <</if>> <br><br> <<run Enunciate($activeSlave)>> @@ -872,52 +874,52 @@ _His2 objections sound a bit feigned, and she's obviously in no hurry to put an The slaves are about to go to bed; they're naked, and the horny $activeSlave.slaveName's <<if $activeSlave.dick > 5>>enormous erection is pointed threateningly<<elseif $activeSlave.dick > 2>>stiff dick is pointed straight<<else>>pathetic dick is pointed right<</if>> at $subSlave.slaveName's _belly midsection. Desperate, $activeSlave.slaveName decides to try praise instead. <<set _lewd = 0>> <<if _vaginal && $subSlave.labia > 0>> - "You've got <<s>>uch a beautiful pu<<ss>>y though," she wheedles. "It'<<s>> gorgeou<<s>>. Tho<<s>>e lip<<s>> look <<s>>o <<s>>oft and inviting!" It's true; $subSlave.slaveName's generous petals are a bit engorged. + "You've got <<s>>uch a beautiful pu<<ss>>y though," $he wheedles. "It'<<s>> gorgeou<<s>>. Tho<<s>>e lip<<s>> look <<s>>o <<s>>oft and inviting!" It's true; $subSlave.slaveName's generous petals are a bit engorged. <<set _lewd = 1>> <<elseif _vaginal && $subSlave.vaginaLube > 0>> - "You've got <<s>>uch a naughty pu<<ss>>y though," she wheedles. "It'<<s>> <<s>>o hot. Look, it'<<s>> all wet and ready!" It's true; $subSlave.slaveName's invariably moist pussy is visibly glistening. + "You've got <<s>>uch a naughty pu<<ss>>y though," $he wheedles. "It'<<s>> <<s>>o hot. Look, it'<<s>> all wet and ready!" It's true; $subSlave.slaveName's invariably moist pussy is visibly glistening. <<set _lewd = 1>> <<elseif !_vaginal && $subSlave.analArea > 2>> - "You've got <<s>>uch an a<<ss>>pu<<ss>>y though," she wheedles. "That naughty hole i<<s>> calling to me!" It's true; $subSlave.slaveName's asshole is surrounded by a nice wide area of crinkled skin. She obviously takes it up the butt. + "You've got <<s>>uch an a<<ss>>pu<<ss>>y though," $he wheedles. "That naughty hole i<<s>> calling to me!" It's true; $subSlave.slaveName's asshole is surrounded by a nice wide area of crinkled skin. _He2 obviously takes it up the butt. <<set _lewd = 1>> <<elseif $activeSlave.fetishKnown && $activeSlave.fetish == "pregnancy" && $subSlave.bellyPreg >= 5000>> - "You're <<s>>o hot with that belly," she wheedles. "It'<<s>> ju<<s>>t <<s>>o big, and round, and, um, out there." She swallows, getting distracted. + "You're <<s>>o hot with that belly," $he wheedles. "It'<<s>> ju<<s>>t <<s>>o big, and round, and, um, out there." $He swallows, getting distracted. <<elseif $subSlave.face > 95>> - "You're the prettie<<s>>t <<print SlaveTitle($subSlave)>> in the whole arcology," she wheedles. "I can't look at your perfect $subSlave.faceShape fa<<c>>e and not want to make love to you<<if !_vaginal>>r butt<</if>>!" + "You're the prettie<<s>>t <<= lispReplace(SlaveTitle($subSlave))>> in the whole arcology," $he wheedles. "I can't look at your perfect <<= lispReplace$subSlave.faceShape)>> fa<<c>>e and not want to make love to you<<if !_vaginal>>r butt<</if>>!" <<elseif !_vaginal && $subSlave.butt > 3>> - "You've got <<s>>uch a ni<<c>>e a<<ss>>," she wheedles. "It'<<s>> ju<<s>>t <<s>>o big, and round, and, um, out there." She swallows, getting distracted. + "You've got <<s>>uch a ni<<c>>e a<<ss>>," $he wheedles. "It'<<s>> ju<<s>>t <<s>>o big, and round, and, um, out there." $He swallows, getting distracted. <<elseif $subSlave.boobShape == "perky">> - "Your tit<<s>> are incredible," she wheedles. "<<if $subSlave.boobs > 800>>They're magical. There'<<s>> no other explanation for them being <<s>>o huge and <<s>>till perky.<<elseif $subSlave.boobs > 400>>They're <<s>>o perky and perfect.<<else>>They're <<s>>o tiny and cute!<</if>> I want you<<if !_vaginal>>r a<<ss>><</if>> <<s>>o much!" + "Your tit<<s>> are incredible," $he wheedles. "<<if $subSlave.boobs > 800>>They're magical. There'<<s>> no other explanation for them being <<s>>o huge and <<s>>till perky.<<elseif $subSlave.boobs > 400>>They're <<s>>o perky and perfect.<<else>>They're <<s>>o tiny and cute!<</if>> I want you<<if !_vaginal>>r a<<ss>><</if>> <<s>>o much!" <<elseif $subSlave.boobShape == "torpedo-shaped">> - "Your torpedoe<<s>> are incredible," she wheedles. "<<if $subSlave.boobs > 400>>The way they <<s>>way when you move <<sh>>ould be again<<s>>t the rule<<s>>.<<else>>They're <<s>>o tiny and cute!<</if>> I want you<<if !_vaginal>>r a<<ss>><</if>> <<s>>o much!" + "Your torpedoe<<s>> are incredible," $he wheedles. "<<if $subSlave.boobs > 400>>The way they <<s>>way when you move <<sh>>ould be again<<s>>t the rule<<s>>.<<else>>They're <<s>>o tiny and cute!<</if>> I want you<<if !_vaginal>>r a<<ss>><</if>> <<s>>o much!" <<elseif $subSlave.muscles > 30>> - "You're <<s>>o jacked," she wheedles. "I ju<<s>>t want to <<if _vaginal>>feel tho<<s>>e huge thigh<<s>> wrap around me a<<s>> I fuck you<<else>>feel that mu<<s>>cular booty flex under me a<<s>> I fuck your butt<</if>>!" + "You're <<s>>o jacked," $he wheedles. "I ju<<s>>t want to <<if _vaginal>>feel tho<<s>>e huge thigh<<s>> wrap around me a<<s>> I fuck you<<else>>feel that mu<<s>>cular booty flex under me a<<s>> I fuck your butt<</if>>!" <<elseif $subSlave.entertainSkill > 95>> - "You're <<s>>o beautiful and gra<<c>>eful," she wheedles. "I love watching you walk. Look at you, ju<<s>>t <<s>>tanding there you're <<s>>o perfectly feminine. I want to make love to you<<if !_vaginal>>r butt<</if>>!" + "You're <<s>>o beautiful and gra<<c>>eful," $he wheedles. "I love watching you walk. Look at you, ju<<s>>t <<s>>tanding there you're <<s>>o perfectly feminine. I want to make love to you<<if !_vaginal>>r butt<</if>>!" <<else>> - "You're <<s>>o, um, cute," she wheedles, trying to come up with something to say. "And you have a, very, er, pretty <<if _vaginal>>vagina<<else>>anu<<s>><</if>>?" + "You're <<s>>o, um, cute," $he wheedles, trying to come up with something to say. "And you have a, very, er, pretty <<if _vaginal>>vagina<<else>>anu<<s>><</if>>?" <<set _lewd = 1>> <</if>> <br><br> <<run Enunciate($subSlave)>> -$subSlave.slaveName <<if _lewd>>blushes at the lewd<<else>>smiles at the<</if>> flattery, but after a moment's hesitation she maintains her reluctance. +$subSlave.slaveName <<if _lewd>>blushes at the lewd<<else>>smiles at the<</if>> flattery, but after a moment's hesitation _he2 maintains _his2 reluctance. <<if $activeSlave.releaseRules == "permissive">> - "Why don't you ju<<s>>t jerk off," she asks dismissively. "<<S>>eriou<<s>>ly, you're allowed to." + "Why don't you ju<<s>>t jerk off," _he2 asks dismissively. "<<S>>eriou<<s>>ly, you're allowed to." <<else>> - "Go find <<s>>omeone el<<s>>e," she <<say>>s dismissively. "<<if _vaginal>>There are plenty of other pu<<ss>>ie<<s>> around for you to play with.<<else>>I'm <<s>>ure you can find <<s>>ome other girl who wouldn't mind late night anal.<</if>>" + "Go find <<s>>omeone el<<s>>e," _he2 <<say>>s dismissively. "<<if _vaginal>>There are plenty of other pu<<ss>>ie<<s>> around for you to play with.<<else>>I'm <<s>>ure you can find <<s>>ome other girl who wouldn't mind late night anal.<</if>>" <</if>> -She turns away. +_He2 turns away. <br><br> <<run Enunciate($activeSlave)>> $activeSlave.slaveName is almost in tears. <<if $activeSlave.releaseRules == "permissive">> - "I have," she moans, blue balled. "<<if $activeSlave.aphrodisiacs > 0 || $activeSlave.inflationType == "aphrodisiac">>It'<<s>> the<<s>>e fucking aphrodi<<s>>iac<<s>>. I can't help it. Plea<<s>>e, plea<<s>>e let me try cumming in<<s>>ide you. I won't be able to <<s>>leep.<<else>>It'<<s>> not the <<s>>ame. I need to <<s>>tick my dick in <<s>>omething <<s>>o bad. Plea<<s>>e.<</if>>" + "I have," $he moans, blue balled. "<<if $activeSlave.aphrodisiacs > 0 || $activeSlave.inflationType == "aphrodisiac">>It'<<s>> the<<s>>e fucking aphrodi<<s>>iac<<s>>. I can't help it. Plea<<s>>e, plea<<s>>e let me try cumming in<<s>>ide you. I won't be able to <<s>>leep.<<else>>It'<<s>> not the <<s>>ame. I need to <<s>>tick my dick in <<s>>omething <<s>>o bad. Plea<<s>>e.<</if>>" <<else>> - "But I want you," she moans, blue balled. + "But I want you," $he moans, blue balled. <<if _vaginal>><<set _hole = $subSlave.vagina>><<else>><<set _hole = $subSlave.anus>><</if>> <<if $activeSlave.dick > 4>> <<if _hole > 2>> - "I'm t-too big," she adds sadly, gesturing to her massive erection. "<<S>>ome of the other girl<<s>> can't take me, and I have to be gentle. Plea<<s>>e, let me u<<s>>e you. I need to fuck <<s>>o bad." + "I'm t-too big," $he adds sadly, gesturing to $his massive erection. "<<S>>ome of the other girl<<s>> can't take me, and I have to be gentle. Plea<<s>>e, let me u<<s>>e you. I need to fuck <<s>>o bad." <<else>> "Your <<if _vaginal>>beautiful cunt<<else>><<s>>phincter<</if>> will make me explode. I haven't gotten to fuck anything today and I need it <<s>>o bad. Plea<<s>>e." <</if>> @@ -938,46 +940,46 @@ $activeSlave.slaveName is almost in tears. <<set _mother = "father">> <<set _mommy = "Daddy">> <</if>> -<<if _meal == "breakfast">>At the beginning<<elseif _meal == "lunch">>At the midpoint<<else>>Near the end<</if>> of $subSlave.slaveName's scheduled day, you come across her curled up in her _mother <span id="name"><<print "[[$activeSlave.slaveName|Long Slave Description][$nextLink = passage(), $eventDescription = 1]]">></span>'s lap, face buried in her bosom. $activeSlave.slaveName is running a gentle hand <<if $activeSlave.hLength > 5>>through $subSlave.slaveName's hair<<else>>across $subSlave.slaveName's scalp<</if>>, and is softly <<say>>ing something to her. As you approach, you catch the end of it. +<<if _meal == "breakfast">>At the beginning<<elseif _meal == "lunch">>At the midpoint<<else>>Near the end<</if>> of $subSlave.slaveName's scheduled day, you come across _him2 curled up in _his2 _mother <<EventNameLink $activeSlave>>'s lap, face buried in $his bosom. $activeSlave.slaveName is running a gentle hand <<if $activeSlave.hLength > 5>>through $subSlave.slaveName's hair<<else>>across $subSlave.slaveName's scalp<</if>>, and is softly <<say>>ing something to _him2. As you approach, you catch the end of it. <<if $activeSlave.genes == "XX" && $subSlave.tankBaby < 1>> - "I mi<<ss>>ed doing thi<<s>> for you <<s>>o much," she murmurs. "It'<<s>> <<s>>o ni<<c>>e to do it again." + "I mi<<ss>>ed doing thi<<s>> for you <<s>>o much," $he murmurs. "It'<<s>> <<s>>o ni<<c>>e to do it again." <<elseif $activeSlave.genes == "XY">> "Thi<<s>> feel<<s>> <<s>>o good," $he murmers. "I could get u<<s>>ed to thi<<s>>." <<else>> - "I never got to do thi<<s>> for you when you were a baby," she murmurs. "It'<<s>> <<s>>o ni<<c>>e to do it now." + "I never got to do thi<<s>> for you when you were a baby," $he murmurs. "It'<<s>> <<s>>o ni<<c>>e to do it now." <</if>> <br><br> -$subSlave.slaveName is nursing, lustily sucking at one of $activeSlave.slaveName's breasts, her $subSlave.skin throat bobbing as she drinks swallow after swallow of her _mother's milk. +$subSlave.slaveName is nursing, lustily sucking at one of $activeSlave.slaveName's breasts, _his2 $subSlave.skin throat bobbing as _he2 drinks swallow after swallow of _his2 _mother's milk. <br><br> $activeSlave.slaveName shifts a little, and giggles. <<if $activeSlave.genes == "XX" && $subSlave.tankBaby < 1>> "Of cour<<s>>e it'<<s>> a little bit different now. Ooh, <<elseif $activeSlave.genes == "XY">> - "And it'<<s>> even more fun when you do that too. Ooh, + "And it'<<s>> even more fun when you do that too. Ooh, <<else>> "And it'<<s>> even more fun <<s>>in<<c>>e we're doing it now. Ooh, <</if>> <<set _hands = "anus">> <<if $activeSlave.dick > 0 && $activeSlave.dickAccessory == "none">> - harder, <<s>>weetie." $subSlave.slaveName's hands aren't visible, but her lewd movements make it obvious that she's <<if canAchieveErection($activeSlave)>>giving her _mother a handjob<<else>>playing with her _mother's limp dick<</if>> + harder, <<s>>weetie." $subSlave.slaveName's hands aren't visible, but $his lewd movements make it obvious that $he's <<if canAchieveErection($activeSlave)>>giving $his _mother a handjob<<else>>playing with $his _mother's limp dick<</if>> <<set $activeSlave.oralCount++, $subSlave.oralCount++, $oralTotal+2>> <<set _hands = "dick">> <<elseif canDoVaginal($activeSlave)>> - deeper, <<s>>weetie." $subSlave.slaveName's hands aren't visible, but she's obviously using <<if $activeSlave.vagina > 2>>a fist to fuck her _mother's loose pussy<<elseif $activeSlave.vagina > 1>>a couple of fingers to pleasure her _mother's pussy<<else>>a finger to pleasure her _mother's tight pussy<</if>> + deeper, <<s>>weetie." $subSlave.slaveName's hands aren't visible, but $he's obviously using <<if $activeSlave.vagina > 2>>a fist to fuck $his _mother's loose pussy<<elseif $activeSlave.vagina > 1>>a couple of fingers to pleasure $his _mother's pussy<<else>>a finger to pleasure $his _mother's tight pussy<</if>> <<set $activeSlave.vaginalCount++, $subSlave.oralCount++, $vaginalTotal++, $oralTotal++>> <<set _hands = "vagina">> <<elseif canDoAnal($activeSlave)>> - deeper, <<s>>weetie." $subSlave.slaveName's hands aren't visible, but she obviously has <<if $activeSlave.anus > 2>>a fist up her _mother's huge asspussy<<elseif $activeSlave.anus > 1>>a couple of fingers up her _mother's butt<<else>>a finger up her _mother's tight ass<</if>> + deeper, <<s>>weetie." $subSlave.slaveName's hands aren't visible, but $he obviously has <<if $activeSlave.anus > 2>>a fist up $his _mother's huge asspussy<<elseif $activeSlave.anus > 1>>a couple of fingers up $his _mother's butt<<else>>a finger up $his _mother's tight ass<</if>> <<set $activeSlave.analCount++, $subSlave.oralCount++, $analTotal++, $oralTotal++>> <<else>> - ju<<s>>t like that, <<s>>weetie." $subSlave.slaveName's hands aren't visible, but it's obvious she's using them to manually pleasure her _mother + ju<<s>>t like that, <<s>>weetie." $subSlave.slaveName's hands aren't visible, but it's obvious $he's using them to manually pleasure $his _mother <<set $activeSlave.oralCount++, $subSlave.oralCount++, $oralTotal+2>> <</if>> -while she nurses. $activeSlave.slaveName notices you first, of course, and <<if canSee($activeSlave)>>looks up at<<else>>turns to<</if>> you complacently. "Hi, <<Master>>," she <<say>>s quietly, her <<if $activeSlave.voice > 2>>bimbo's<<elseif $activeSlave.voice > 1>>pretty<<else>>deep<</if>> voice thick with arousal. +while _he2 nurses. $activeSlave.slaveName notices you first, of course, and <<if canSee($activeSlave)>>looks up at<<else>>turns to<</if>> you complacently. "Hi, <<Master>>," $he <<say>>s quietly, $his <<if $activeSlave.voice > 2>>bimbo's<<elseif $activeSlave.voice > 1>>pretty<<else>>deep<</if>> voice thick with arousal. <<if $subSlave.dietMilk>> - "I'm feeding my daughter her _meal," + "I'm feeding my daughter <<his 2>> _meal," <<elseif $subSlave.sexualQuirk == "perverted">> - "She'<<s>> <<s>>uch a fun little pervert," + "<<He 2>>'<<s>> <<s>>uch a fun little pervert," <<elseif $activeSlave.sexualQuirk == "perverted">> "It'<<s>> perverted of me to enjoy thi<<s>>, but I can't help it," <<elseif $activeSlave.relationship > 2 && $activeSlave.relationshipTarget == $subSlave.ID>> @@ -985,7 +987,7 @@ while she nurses. $activeSlave.slaveName notices you first, of course, and <<if <<else>> "I know milk i<<s>>n't a big part of my daughter'<<s>> diet, but thi<<s>> i<<s>> mo<<s>>tly for fun," <</if>> -she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of her <<if $subSlave.lips > 95>>facepussy<<elseif $subSlave.lipsImplant > 0>>fake lips<<elseif $subSlave.lips > 20>>big lips<<else>>mouth<</if>> so she can turn around and greet you too, but she hurries back to the nipple afterward, and doesn't stop stimulating her _mother for a moment. +$he adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of _his2 <<if $subSlave.lips > 95>>facepussy<<elseif $subSlave.lipsImplant > 0>>fake lips<<elseif $subSlave.lips > 20>>big lips<<else>>mouth<</if>> so _he2 can turn around and greet you too, but _he2 hurries back to the nipple afterward, and doesn't stop stimulating _his2 _mother for a moment. @@ -1000,7 +1002,7 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<case "taste test">> <<link "This belongs on a live feed">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> You let them continue kissing, but use your tablet to slave one of the plaza's bigger screens to a feed of their nude makeout session. They have no way of knowing, and progress innocently from deep kissing to open mutual masturbation. This is a common sex act among your slaves: it's quick and clean and lets them achieve release before getting back to their duties. When they've both climaxed, you manipulate the situation again, setting a wallscreen in the kitchen to display a feed of the crowd in the plaza enjoying the feed of the situation in the kitchen. <<if ($activeSlave.fetish == "humiliation") && ($activeSlave.fetishKnown == 1) && ($subSlave.fetish == "humiliation") && ($subSlave.fetishKnown == 1)>> @@ -1023,22 +1025,22 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <</replace>> <</link>> <br><<link "Get involved in the taste testing">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> <<run Enunciate($activeSlave)>> - You move in. $activeSlave.slaveName <<if canSee($activeSlave)>>catches sight of<<else>>notices<</if>> your approach, and you see the corners of her mouth quirk upward. She breaks the lip lock and says breathily, "Hey $subSlave.slaveName, I think there'<<s>> <<s>>omething el<<s>>e you <<sh>>ould ta<<s>>te te<<s>>t." + You move in. $activeSlave.slaveName <<if canSee($activeSlave)>>catches sight of<<else>>notices<</if>> your approach, and you see the corners of $his mouth quirk upward. $He breaks the lip lock and says breathily, "Hey $subSlave.slaveName, I think there'<<s>> <<s>>omething el<<s>>e you <<sh>>ould ta<<s>>te te<<s>>t." <br><br> <<run Enunciate($subSlave)>> - "Whaa-" the slave starts to ask warily before $activeSlave.slaveName pushes her to her knees, spinning her around as she does so. This brings $subSlave.slaveName face to face with your <<if $PC.dick == 1>>stiff prick, a bead of precum already present at its tip<<else>>wet cunt, a bead of pussyjuice already trailing down your inner thigh<</if>>. "Oh, um, hi <<Master $subSlave>>," she stammers, and then starts to <<if $PC.dick == 1>>suck your dick<<if $PC.vagina == 1>> and <</if>><</if>><<if $PC.vagina == 1>>eat your pussy<</if>>. This leaves poor $activeSlave.slaveName without anyone to make out with, so you step in there, grabbing her and pulling the giggling slave in to kiss her deeply. $His mouth is indeed a bit <<if $activeSlave.preg > 20>>sour<<else>>tart<</if>>. She moans into your mouth as she feels her nipples press against <<if $PC.boobs == 1>>yours<<else>>your hard chest<</if>>, and then again as your tongue invades her. When you <<if $PC.dick == 1>>fill $subSlave.slaveName's mouth with cum<<else>>climax wetly against $subSlave.slaveName's mouth<</if>>, you pull away slightly, letting the slave on her knees below you gasp "You ta<<s>>te great, <<Master>>!" before you spin her around in turn so she can give $activeSlave.slaveName her own allotment of oral sex. You leave them to it. They @@.mediumaquamarine;trust you a bit more@@ after such a lighthearted little escapade. + "Whaa-" the slave starts to ask warily before $activeSlave.slaveName pushes _him2 to _his2 knees, spinning _him2 around as $he does so. This brings $subSlave.slaveName face to face with your <<if $PC.dick == 1>>stiff prick, a bead of precum already present at its tip<<else>>wet cunt, a bead of pussyjuice already trailing down your inner thigh<</if>>. "Oh, um, hi <<Master $subSlave>>," _he2 stammers, and then starts to <<if $PC.dick == 1>>suck your dick<<if $PC.vagina == 1>> and <</if>><</if>><<if $PC.vagina == 1>>eat your pussy<</if>>. This leaves poor $activeSlave.slaveName without anyone to make out with, so you step in there, grabbing $him and pulling the giggling slave in to kiss $him deeply. $His mouth is indeed a bit <<if $activeSlave.preg > 20>>sour<<else>>tart<</if>>. $He moans into your mouth as $he feels $his nipples press against <<if $PC.boobs == 1>>yours<<else>>your hard chest<</if>>, and then again as your tongue invades $him. When you <<if $PC.dick == 1>>fill $subSlave.slaveName's mouth with cum<<else>>climax wetly against $subSlave.slaveName's mouth<</if>>, you pull away slightly, letting the slave on _his2 knees below you gasp "You ta<<s>>te great, <<Master>>!" before you spin _him2 around in turn so _he2 can give $activeSlave.slaveName $his own allotment of oral sex. You leave them to it. They @@.mediumaquamarine;trust you a bit more@@ after such a lighthearted little escapade. <<set $activeSlave.trust += 2, $subSlave.trust += 2, $subSlave.oralCount += 2>> <<set $oralTotal += 2>> <<set $slaves[$slaveIndices[$subSlave.ID]] = $subSlave>> <</replace>> <</link>> <br><<link "Look, a bare butt">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> - You move in, looking intently at $subSlave.slaveName's bare, vulnerable butt. $activeSlave.slaveName <<if canSee($activeSlave)>>catches sight of your approach, and then follows the line of your gaze<<else>>notices your approach<</if>>, the realization of what your intent likely quickly dawns on her. You see the corners of her mouth quirk upward with horny maliciousness. She leans back against the edge of the kitchen counter, pulling $subSlave.slaveName with her, and then reaches down and + You move in, looking intently at $subSlave.slaveName's bare, vulnerable butt. $activeSlave.slaveName <<if canSee($activeSlave)>>catches sight of your approach, and then follows the line of your gaze<<else>>notices your approach<</if>>, the realization of what your intent likely quickly dawns on $him. You see the corners of $his mouth quirk upward with horny maliciousness. $He leans back against the edge of the kitchen counter, pulling $subSlave.slaveName with $him, and then reaches down and <<if ($subSlave.butt > 6)>> grabs handfuls of $subSlave.slaveName's massive ass, <<elseif ($subSlave.butt > 3)>> @@ -1046,7 +1048,7 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<else>> grabs $subSlave.slaveName's cute butt, <</if>> - pulling her upward. $subSlave.slaveName thinks she gets the idea, and hops up, wrapping her legs around $activeSlave.slaveName's <<if $activeSlave.belly >= 5000>><<if $activeSlave.bellyPreg >= 2000>>gravid<<else>>rounded<</if>> middle<<else>>waist<</if>> and her arms around $activeSlave.slaveName's shoulders<<if $subSlave.belly >= 5000>>, pushing their <<if $activeSlave.bellyPreg >= 2000>>pregnancies<<else>>bellies<</if>> together<</if>>. $activeSlave.slaveName<<if ($subSlave.butt > 6)>> + pulling _him2 upward. $subSlave.slaveName thinks _he2 gets the idea, and hops up, wrapping _his2 legs around $activeSlave.slaveName's <<if $activeSlave.belly >= 5000>><<if $activeSlave.bellyPreg >= 2000>>gravid<<else>>rounded<</if>> middle<<else>>waist<</if>> and _his2 arms around $activeSlave.slaveName's shoulders<<if $subSlave.belly >= 5000>>, pushing their <<if $activeSlave.bellyPreg >= 2000>>pregnancies<<else>>bellies<</if>> together<</if>>. $activeSlave.slaveName<<if ($subSlave.butt > 6)>> hauls $subSlave.slaveName's huge buttocks apart to reveal the <<elseif ($subSlave.butt > 3)>> pulls $subSlave.slaveName's healthy asscheeks apart to reveal the @@ -1060,7 +1062,7 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<else>> pretty rosebud <</if>> - between them. $subSlave.slaveName has only a brief moment to wonder why her butt is being spread this way before she feels + between them. $subSlave.slaveName has only a brief moment to wonder why _his2 butt is being spread this way before _he2 feels <<if ($PC.dick == 1)>> your cockhead <<elseif ($subSlave.anus > 2)>> @@ -1070,7 +1072,7 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<else>> two fingers <</if>> - press against and then inside her butthole. She tries to turn away from $activeSlave.slaveName and greet you properly, but $activeSlave.slaveName won't let her, so she tries to mumble a greeting into $activeSlave.slaveName's mouth and then settles for a spastic wave of one hand. This is an alluringly awkward process made desperate by the distracting feeling of you fucking her ass. You could have done something more inventive with the situation, but the feeling of <<if ($PC.dick == 1)>>an anal sphincter around the base of your dick<<else>>finger fucking a compliant slave's submissive asspussy while you look after yourself with your other hand<</if>> never gets old. Why complicate things? An hour later you leave your fucktoys stumbling tiredly towards the shower, @@.hotpink;sexually satiated@@ and anally dominated. + press against and then inside _his2 butthole. _He2 tries to turn away from $activeSlave.slaveName and greet you properly, but $activeSlave.slaveName won't let _him2, so _he2 tries to mumble a greeting into $activeSlave.slaveName's mouth and then settles for a spastic wave of one hand. This is an alluringly awkward process made desperate by the distracting feeling of you fucking _his2 ass. You could have done something more inventive with the situation, but the feeling of <<if ($PC.dick == 1)>>an anal sphincter around the base of your dick<<else>>finger fucking a compliant slave's submissive asspussy while you look after yourself with your other hand<</if>> never gets old. Why complicate things? An hour later you leave your fucktoys stumbling tiredly towards the shower, @@.hotpink;sexually satiated@@ and anally dominated. <<set $activeSlave.trust += 2, $activeSlave.analCount += 2>> <<set $subSlave.trust += 2, $subSlave.analCount += 2>> <<set $analTotal += 4>> @@ -1087,39 +1089,37 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<case "date please">> <<link "Give them a night off together">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> - Rather than answering her directly, you tell $assistantName to clear $activeSlave.slaveName's and $subSlave.slaveName's schedules for the evening. She <<if canSee($activeSlave)>>looks<<else>>smiles<</if>> at you with happy anticipation, but is puzzled when you don't give her any further orders. "Um, thank you, <<Master>>," she asks hesitantly. "But, I don't under<<s>>tand. What are we going to do?" Whatever you want, you tell her. She furrows her brow, looking troubled, as though the concept is somehow alien to her. After some thought, she brightens and asks if she can go tell her <<if $activeSlave.relationship >= 5>>wife<<else>>girlfriend<</if>>. She can, you respond, and the slave bounces over to give you a kiss before running out. It costs you a small sum in upkeep and other trifles to cover an unexpected unavailability of both slaves, but they deserve it. Their busy lives mean that their shifts rarely align exactly, and this is more time than they've had together in a long time. It isn't particularly exciting, but they enjoy themselves. They eat a meal in the kitchen together, watch the sunset from one of the penthouse balconies, make love out there, share a long shower, and then go to bed, spending the rest of the night cuddling and chatting quietly. The next morning, they come to see you hand in hand, and @@.hotpink;thank you in unison.@@ As they leave, $activeSlave.slaveName looks back over her shoulder at you, and mouths 'that was perfect, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Master<<else>>Mistress<</if>>!' + Rather than answering $him directly, you tell $assistantName to clear $activeSlave.slaveName's and $subSlave.slaveName's schedules for the evening. $He <<if canSee($activeSlave)>>looks<<else>>smiles<</if>> at you with happy anticipation, but is puzzled when you don't give $him any further orders. "Um, thank you, <<Master>>," $he asks hesitantly. "But, I don't under<<s>>tand. What are we going to do?" Whatever you want, you tell $him. $He furrows $his brow, looking troubled, as though the concept is somehow alien to $him. After some thought, $he brightens and asks if $he can go tell $his <<if $activeSlave.relationship >= 5>>wife<<else>>girlfriend<</if>>. $He can, you respond, and the slave bounces over to give you a kiss before running out. It costs you a small sum in upkeep and other trifles to cover an unexpected unavailability of both slaves, but they deserve it. Their busy lives mean that their shifts rarely align exactly, and this is more time than they've had together in a long time. It isn't particularly exciting, but they enjoy themselves. They eat a meal in the kitchen together, watch the sunset from one of the penthouse balconies, make love out there, share a long shower, and then go to bed, spending the rest of the night cuddling and chatting quietly. The next morning, they come to see you hand in hand, and @@.hotpink;thank you in unison.@@ As they leave, $activeSlave.slaveName looks back over $his shoulder at you, and mouths 'that was perfect, <<= WrittenMaster($activeSlave)>>!' <<set $cash -= 500>> <<set $subSlave.devotion += 2>> <<set $activeSlave.devotion += 2>> <<set $slaves[$slaveIndices[$subSlave.ID]] = $subSlave>> <</replace>> <</link>> //This will cost <<print cashFormat(500)>>// -<<if $Attendant != 0>> -<<if $Attendant.ID != $activeSlave.ID>> -<<if $Attendant.ID != $subSlave.ID>> -<br><<link "Give them a night at the Spa together">> - <<replace "#name">>$activeSlave.slaveName<</replace>> - <<replace "#result">> - Rather than answering her directly, you tell $assistantName to clear $activeSlave.slaveName's and $subSlave.slaveName's schedules for the evening, and then contact $Attendant.slaveName, the Attendant of your Spa, to instruct her to expect the two slaves for some quality time together. $Attendant.slaveName, of course, is all for it ("Leave it to me, <<Master $Attendant>>!"). She greets the couple at the steamy entrance to the Spa an hour later, and takes charge of them with a matronly air, telling them to undress and relax. - <br><br> - It costs you a small sum in upkeep and other trifles to cover an unexpected unavailability of both slaves, but they deserve it, and your Attendant does not disappoint. After the slaves have soaked in the main pool for a while, she gives them a series of mud packs, hot rock massages, and skin treatments, always setting them up right next to each other. They chat a bit at first, but soon relax into companionable silence, holding hands and enjoying the pampering.<<if $Attendant.lactation > 0>> $Attendant.slaveName has their evening meal sent down, and supplements it with milk drunk fresh from her own nipples.<</if>> This being your penthouse, her services become quite sexual later in the night, as the Attendant applies all her talents in choosing positions that emphasize $activeSlave.slaveName and $subSlave.slaveName being close to each other<<if $Attendant.bellyPreg >= 10000 && $activeSlave.bellyPreg >= 10000 && $subSlave.bellyPreg >= 10000>>, a difficult task given that they are all heavily pregnant,<<elseif $Attendant.belly >= 10000 && $activeSlave.belly >= 10000 && $subSlave.belly >= 10000>>, a difficult task given how big everyone's bellies are,<</if>> as they share $Attendant.slaveName's body. Much later, the Attendant sends you a brief message relaying their @@.hotpink;heartfelt thanks,@@ which she's passing to you because they're asleep together. - <<set $cash -= 500>> - <<set $subSlave.devotion += 3>> - <<set $activeSlave.devotion += 3>> - <<set $slaves[$slaveIndices[$subSlave.ID]] = $subSlave>> - <</replace>> -<</link>> //This will cost <<print cashFormat(500)>>// -<</if>> -<</if>> -<</if>> +<<if $Attendant != 0 && $Attendant.ID != $activeSlave.ID && $Attendant.ID != $subSlave.ID>> + <br><<link "Give them a night at the Spa together">> + <<EventNameDelink $activeSlave>> + <<replace "#result">> + <<set _attendantPronouns = getPronouns($Attendant)>> + <<set _heA = _attendantPronouns.pronoun, _himA = _attendantPronouns.object, _hisA = _attendantPronouns.possessive>> + <<set _HeA = capFirstChar(_heA)>> + Rather than answering $him directly, you tell $assistantName to clear $activeSlave.slaveName's and $subSlave.slaveName's schedules for the evening, and then contact $Attendant.slaveName, the Attendant of your Spa, to instruct _himA to expect the two slaves for some quality time together. $Attendant.slaveName, of course, is all for it ("Leave it to me, <<Master $Attendant>>!"). _HeA greets the couple at the steamy entrance to the Spa an hour later, and takes charge of them with a matronly air, telling them to undress and relax. + <br><br> + It costs you a small sum in upkeep and other trifles to cover an unexpected unavailability of both slaves, but they deserve it, and your Attendant does not disappoint. After the slaves have soaked in the main pool for a while, _heA gives them a series of mud packs, hot rock massages, and skin treatments, always setting them up right next to each other. They chat a bit at first, but soon relax into companionable silence, holding hands and enjoying the pampering.<<if $Attendant.lactation > 0>> $Attendant.slaveName has their evening meal sent down, and supplements it with milk drunk fresh from _hisA own nipples.<</if>> This being your penthouse, _hisA services become quite sexual later in the night, as the Attendant applies all _hisA talents in choosing positions that emphasize $activeSlave.slaveName and $subSlave.slaveName being close to each other<<if $Attendant.bellyPreg >= 10000 && $activeSlave.bellyPreg >= 10000 && $subSlave.bellyPreg >= 10000>>, a difficult task given that they are all heavily pregnant,<<elseif $Attendant.belly >= 10000 && $activeSlave.belly >= 10000 && $subSlave.belly >= 10000>>, a difficult task given how big everyone's bellies are,<</if>> as they share $Attendant.slaveName's body. Much later, the Attendant sends you a brief message relaying their @@.hotpink;heartfelt thanks,@@ which _heA's passing to you because they're asleep together. + <<set $cash -= 500>> + <<set $subSlave.devotion += 3>> + <<set $activeSlave.devotion += 3>> + <<set $slaves[$slaveIndices[$subSlave.ID]] = $subSlave>> + <</replace>> + <</link>> //This will cost <<print cashFormat(500)>>// <br><<link "Trust them with a night out">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> - Rather than answering her directly, you tell $assistantName to clear $activeSlave.slaveName's and $subSlave.slaveName's schedules for the evening. She looks at you with happy anticipation, but this is nothing to her gratitude when you tell her that you'll arrange a date night for them. Trusted slaves are often seen unchaperoned in your arcology, and there are several establishments that cater to slaveowners who wish to bring their girls out or even send them out alone. You tell her you've made a reservation for her and her <<if $activeSlave.relationship >= 5>>wife<<else>>girlfriend<</if>> at one of the less formal places, an ethnic restaurant that manages to add spice to liquid slave nutrition without ruining its good qualities. They're to spend the night out, and can wear what they like. She hurries off to collect her girl and get dressed, but also tries to keep thanking you on her way out, and almost runs into the doorframe as she goes. + Rather than answering $him directly, you tell $assistantName to clear $activeSlave.slaveName's and $subSlave.slaveName's schedules for the evening. $He looks at you with happy anticipation, but this is nothing to $his gratitude when you tell $him that you'll arrange a date night for them. Trusted slaves are often seen unchaperoned in your arcology, and there are several establishments that cater to slaveowners who wish to bring their girls out or even send them out alone. You tell $him you've made a reservation for $him and $his <<if $activeSlave.relationship >= 5>>wife<<else>>girlfriend<</if>> at one of the less formal places, an ethnic restaurant that manages to add spice to liquid slave nutrition without ruining its good qualities. They're to spend the night out, and can wear what they like. $He hurries off to collect $his _girl2 and get dressed, but also tries to keep thanking you on her way out, and almost runs into the doorframe as $he goes. <br><br> - Since she trusts you, they dress very daringly for slaves. That is, they dress about as conservatively as slaves can dress, in comfortable pants and soft sweaters whose high collars they roll down to keep their collars visible. Any hesitations citizens who see them might have are banished by their obvious love for each other, and their total lack of shame about having it seen. Indeed, as the night wears on they attract more than a few @@.green;admiring glances@@ from citizens who envy you the favors of the pair of girls occupying one side of the corner booth. After all, they'd rather lean against each other than look at each other from across a table. The next day, they both come to you individually and @@.mediumaquamarine;thank you almost gravely,@@ quite aware of the trust you've placed in them. + Since $he trusts you, they dress very daringly for slaves. That is, they dress about as conservatively as slaves can dress, in comfortable pants and soft sweaters whose high collars they roll down to keep their collars visible. Any hesitations citizens who see them might have are banished by their obvious love for each other, and their total lack of shame about having it seen. Indeed, as the night wears on they attract more than a few @@.green;admiring glances@@ from citizens who envy you the favors of the pair of <<if $girl == _girl2>>$girl<<else>>slave<</if>>s occupying one side of the corner booth. After all, they'd rather lean against each other than look at each other from across a table. The next day, they both come to you individually and @@.mediumaquamarine;thank you almost gravely,@@ quite aware of the trust you've placed in them. <<set $cash -= 1000>> <<set $rep += 100>> <<set $subSlave.trust += 2, $activeSlave.trust += 2>> @@ -1129,38 +1129,38 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<case "anal cowgirl">> -<<link "Make sure she looks after her bottom">> - <<replace "#name">>$activeSlave.slaveName<</replace>> +<<link "Make sure $he looks after $his bottom">> + <<EventNameDelink $activeSlave>> <<replace "#result">> - You tell her you'll inspect her after she's done, but add that $subSlave.slaveName is clearly being a very good little anal slut, and she deserves to be rewarded. Hearing this, $subSlave.slaveName @@.hotpink;looks at you very gratefully,@@ and mouths a quiet thanks. "Ye<<s>> <<Master>>!" comes the response. $activeSlave.slaveName shifts her bitch to one side, and cranes her head upward to make out with the compliant slave. $subSlave.slaveName kisses her back with gusto, surprising $activeSlave.slaveName again. She recoils in shock at how much tongue $subSlave.slaveName gives her, but moans aggressively and gets her revenge by dropping one of $subSlave.slaveName's knees and + You tell $him you'll inspect $him after $he's done, but add that $subSlave.slaveName is clearly being a very good little anal slut, and _he2 deserves to be rewarded. Hearing this, $subSlave.slaveName @@.hotpink;looks at you very gratefully,@@ and mouths a quiet thanks. "Ye<<s>> <<Master>>!" comes the response. $activeSlave.slaveName shifts $his bitch to one side, and cranes $his head upward to make out with the compliant slave. $subSlave.slaveName kisses $him back with gusto, surprising $activeSlave.slaveName again. $He recoils in shock at how much tongue $subSlave.slaveName gives $him, but moans aggressively and gets $his revenge by dropping one of $subSlave.slaveName's knees and <<if ["chastity", "combined chastity"].includes($subSlave.dickAccessory)>> - playing with one of her nipples. + playing with one of _his2 nipples. <<elseif canAchieveErection($subSlave)>> - jacking her off. + jacking _him2 off. <<elseif ($subSlave.dick > 0)>> - playing with her soft cock. + playing with _his2 soft cock. <<elseif ($subSlave.clit > 1)>> - rubbing her ridiculous clit. + rubbing _his2 ridiculous clit. <<elseif ($subSlave.labia > 0)>> - fingering her glorious labia. + fingering _his2 glorious labia. <<elseif ($subSlave.vagina == -1)>> - fingering her anus. + fingering _his2 anus. <<else>> - fingering her clit. + fingering _his2 clit. <</if>> - Jerking at the stimulation, $subSlave.slaveName urges her butt down against $activeSlave.slaveName's hips, physically begging for a resumption of the sodomy. $activeSlave.slaveName applies herself, forcing a growing whine out of $subSlave.slaveName as her asspussy is mercilessly fucked. + Jerking at the stimulation, $subSlave.slaveName urges _his2 butt down against $activeSlave.slaveName's hips, physically begging for a resumption of the sodomy. $activeSlave.slaveName applies $himself, forcing a growing whine out of $subSlave.slaveName as _his2 asspussy is mercilessly fucked. <<if ["chastity", "combined chastity"].includes($subSlave.dickAccessory)>> - _His2 chastity cage prevents her from orgasming, but when $activeSlave.slaveName climaxes and lets her up, + _His2 chastity cage prevents _him2 from orgasming, but when $activeSlave.slaveName climaxes and lets _him2 up, <<elseif canAchieveErection($subSlave)>> - _He2 cums all over her own <<if $subSlave.belly >= 5000>><<if $subSlave.bellyPreg >= 3000>>pregnant<<else>>rounded<</if>> belly<<else>>chest and belly<</if>>, the droplets of semen oozing down her as $activeSlave.slaveName reaches her own climax. When $activeSlave.slaveName lets her up, + _He2 cums all over _his2 own <<if $subSlave.belly >= 5000>><<if $subSlave.bellyPreg >= 3000>>pregnant<<else>>rounded<</if>> belly<<else>>chest and belly<</if>>, the droplets of semen oozing down _him2 as $activeSlave.slaveName reaches $his own climax. When $activeSlave.slaveName lets _him2 up, <<elseif ($subSlave.vagina == -1)>> - _He2 cums weakly, the droplets of watery ejaculate running down her as $activeSlave.slaveName reaches her own climax. When $activeSlave.slaveName lets her up, + _He2 cums weakly, the droplets of watery ejaculate running down _him2 as $activeSlave.slaveName reaches $his own climax. When $activeSlave.slaveName lets _him2 up, <<elseif ($subSlave.vaginaLube > 0)>> - _He2 orgasms powerfully, femcum squirting out of her pussy as $activeSlave.slaveName reaches her own climax. When $activeSlave.slaveName lets her up, + _He2 orgasms powerfully, femcum squirting out of _his2 pussy as $activeSlave.slaveName reaches $his own climax. When $activeSlave.slaveName lets _him2 up, <<else>> - _He2 orgasms powerfully, her abs tightening. When $activeSlave.slaveName lets her up, + _He2 orgasms powerfully, _his2 abs tightening. When $activeSlave.slaveName lets _him2 up, <</if>> - she looks pleased with herself, and @@.mediumaquamarine;a little more confident,@@ too. + _he2 looks pleased with _himself, and @@.mediumaquamarine;a little more confident,@@ too. <<set $subSlave.devotion += 2, $subSlave.trust += 2, $subSlave.analCount++>> <<set $analTotal++>> <<set $activeSlave.penetrativeCount++>> @@ -1172,14 +1172,14 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <</replace>> <</link>> <br><<link "Dominate the slave on top">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> - You make no reply, but <<if $PC.dick == 1>>advance on the couch, stripping down to reveal a raging erection<<if $PC.vagina == 1>> and ready cunt<</if>>.<<else>>move to a side table, selecting a formidable strap-on.<</if>> <<if canSee($activeSlave)>>Seeing<<else>>Hearing<</if>> this, $activeSlave.slaveName @@.hotpink;giggles with anticipation,@@ and pulls $subSlave.slaveName's knees back farther. The slave whines at the stretch, and then gasps as the invading phallus pops free of her asshole. _His2 anus <<if $subSlave.anus > 2>>gapes lewdly, its sphincter so well stretched that it stays invitingly open,<<elseif $subSlave.anus > 1>>gapes slightly, its sphincter remaining just barely open,<<else>>closes up again immediately once it's no longer being penetrated. Its rosebud is<</if>> glistening with lube<<if canPenetrate($activeSlave)>> and precum from $activeSlave.slaveName's cock<</if>>. But you decide to be more circumspect. Pressing your <<if $PC.dick == 1>>dickhead<<else>>phallus<</if>> into $subSlave.slaveName's mouth, you tell _him2 to be thorough with _his2 saliva<<if $PC.vagina == 1>> and not to worry about your pussy<</if>>. _His2 eyes widen at the implication, and _he2 starts to suck lushly. + You make no reply, but <<if $PC.dick == 1>>advance on the couch, stripping down to reveal a raging erection<<if $PC.vagina == 1>> and ready cunt<</if>>.<<else>>move to a side table, selecting a formidable strap-on.<</if>> <<if canSee($activeSlave)>>Seeing<<else>>Hearing<</if>> this, $activeSlave.slaveName @@.hotpink;giggles with anticipation,@@ and pulls $subSlave.slaveName's knees back farther. The slave whines at the stretch, and then gasps as the invading phallus pops free of _his2 asshole. _His2 anus <<if $subSlave.anus > 2>>gapes lewdly, its sphincter so well stretched that it stays invitingly open,<<elseif $subSlave.anus > 1>>gapes slightly, its sphincter remaining just barely open,<<else>>closes up again immediately once it's no longer being penetrated. Its rosebud is<</if>> glistening with lube<<if canPenetrate($activeSlave)>> and precum from $activeSlave.slaveName's cock<</if>>. But you decide to be more circumspect. Pressing your <<if $PC.dick == 1>>dickhead<<else>>phallus<</if>> into $subSlave.slaveName's mouth, you tell _him2 to be thorough with _his2 saliva<<if $PC.vagina == 1>> and not to worry about your pussy<</if>>. _His2 eyes widen at the implication, and _he2 starts to suck lushly. <br><br> - Suddenly, she jerks and squeals into your <<if $PC.dick == 1>>dick<<else>>crotch<</if>>. With you standing there, $activeSlave.slaveName can't really see much, and she can't drop $subSlave.slaveName's legs without throwing everything into confusion. So, she's reduced to blind jabs to get her <<if canPenetrate($activeSlave)>>cock<<else>>strap-on<</if>> back up the poor slave's butt. It takes her quite a while to manage it, and when she's finally seated, $subSlave.slaveName gives as huge a sigh as she can manage with a phallus down her throat. _His2 relief is short lived, however, because soon afterward, you withdraw, leaving a string of spit between her wet lips and the <<if $PC.dick == 1>>head of your turgid cock<<else>>massive head of your strap-on<</if>>. + Suddenly, _he2 jerks and squeals into your <<if $PC.dick == 1>>dick<<else>>crotch<</if>>. With you standing there, $activeSlave.slaveName can't really see much, and $he can't drop $subSlave.slaveName's legs without throwing everything into confusion. So, $he's reduced to blind jabs to get $his <<if canPenetrate($activeSlave)>>cock<<else>>strap-on<</if>> back up the poor slave's butt. It takes $him quite a while to manage it, and when $he's finally seated, $subSlave.slaveName gives as huge a sigh as _he2 can manage with a phallus down _his2 throat. _His2 relief is short lived, however, because soon afterward, you withdraw, leaving a string of spit between _his2 wet lips and the <<if $PC.dick == 1>>head of your turgid cock<<else>>massive head of your strap-on<</if>>. <br><br> <<if $subSlave.vagina > 0>> - With $activeSlave.slaveName occupying $subSlave.slaveName's rear hole, your next step is obvious to everyone involved, and she groans with fullness as she feels her cunt accommodate you. $activeSlave.slaveName matches her rhythm to yours, and <<if canPenetrate($activeSlave)>>orgasms promptly, since she's less accustomed than you are to the delectable sensation of a girl tightened by a phallus in her other hole<<else>>climaxes quickly despite having no sensation in her fake dick, since she finds the situation so arousing<</if>>. + With $activeSlave.slaveName occupying $subSlave.slaveName's rear hole, your next step is obvious to everyone involved, and _he2 groans with fullness as _he2 feels _his2 cunt accommodate you. $activeSlave.slaveName matches $his rhythm to yours, and <<if canPenetrate($activeSlave)>>orgasms promptly, since $he's less accustomed than you are to the delectable sensation of a _girl2 tightened by a phallus in _his2 other hole<<else>>climaxes quickly despite having no sensation in $his fake dick, since $he finds the situation so arousing<</if>>. <<if canImpreg($subSlave, $PC)>> <<= knockMeUp($subSlave, 5, 0, -1, 1)>> <</if>> @@ -1187,7 +1187,7 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<= knockMeUp($subSlave, 5, 1, $activeSlave.ID, 1)>> <</if>> <<elseif $subSlave.anus > 2>> - $subSlave.slaveName's rear hole is such a loose slit that double anal shouldn't be too much trouble for her. It isn't, though her breath definitely quickens as she feels a second rod push its way past her stretched sphincter. $activeSlave.slaveName <<if canPenetrate($activeSlave)>>orgasms promptly, unable to prolong sex when she's feeling her cock slide against you inside another slave's anus<<else>>climaxes quickly despite having no sensation in her fake dick, since she finds the situation so arousing<</if>>. + $subSlave.slaveName's rear hole is such a loose slit that double anal shouldn't be too much trouble for _him2. It isn't, though _his2 breath definitely quickens as _he2 feels a second rod push its way past _his2 stretched sphincter. $activeSlave.slaveName <<if canPenetrate($activeSlave)>>orgasms promptly, unable to prolong sex when $he's feeling $his cock slide against you inside another slave's anus<<else>>climaxes quickly despite having no sensation in $his fake dick, since $he finds the situation so arousing<</if>>. <<if canImpreg($subSlave, $PC)>> <<= knockMeUp($subSlave, 5, 1, -1, 1)>> <</if>> @@ -1195,7 +1195,7 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<= knockMeUp($subSlave, 5, 1, $activeSlave.ID, 1)>> <</if>> <<else>> - $subSlave.slaveName's rear hole is a bit tight for double anal, and she's already quite dominated; you mean to use her thoroughly, not destroy her. So, you and $activeSlave.slaveName switch off: you use $subSlave.slaveName's butt while $activeSlave.slaveName pins her for you, and then you go back to $subSlave.slaveName's mouth for a while and let $activeSlave.slaveName take over sodomizing duties. She <<if canPenetrate($activeSlave)>>orgasms promptly, since she finds a hole warm from your use very hot<<else>>climaxes quickly despite having no sensation in her fake dick, since she finds the situation so arousing<</if>>. + $subSlave.slaveName's rear hole is a bit tight for double anal, and _he2's already quite dominated; you mean to use _him2 thoroughly, not destroy _him2. So, you and $activeSlave.slaveName switch off: you use $subSlave.slaveName's butt while $activeSlave.slaveName pins _him2 for you, and then you go back to $subSlave.slaveName's mouth for a while and let $activeSlave.slaveName take over sodomizing duties. $He <<if canPenetrate($activeSlave)>>orgasms promptly, since $he finds a hole warm from your use very hot<<else>>climaxes quickly despite having no sensation in $his fake dick, since $he finds the situation so arousing<</if>>. <<if canImpreg($subSlave, $PC)>> <<= knockMeUp($subSlave, 5, 1, -1, 1)>> <</if>> @@ -1203,7 +1203,7 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<= knockMeUp($subSlave, 5, 1, $activeSlave.ID, 1)>> <</if>> <</if>> - When $subSlave.slaveName has stumbled off to the shower, $activeSlave.slaveName presents herself for inspection, smelling of sex and @@.mediumaquamarine;smiling trustingly.@@ + When $subSlave.slaveName has stumbled off to the shower, $activeSlave.slaveName presents $himself for inspection, smelling of sex and @@.mediumaquamarine;smiling trustingly.@@ <<set $activeSlave.devotion += 2, $activeSlave.trust += 2, $activeSlave.penetrativeCount++>> <<set $subSlave.analCount++>> <<set $analTotal++, $penetrativeTotal++>> @@ -1214,27 +1214,27 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<case "boob collision">> <<link "Fuck them">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> - You approach the fucking slaves, kneeling next to them and running a possessive hand over $activeSlave.slaveName's butt. The slave doesn't even have to look, recognizing you by your grip, and greets you cheerfully: "Hi <<Master>>!" $subSlave.slaveName giggles and cranes around to <<if canSee($subSlave)>>see<<else>>greet you<</if>>. "Hi <<Master $subSlave>>," she choruses. $activeSlave.slaveName wiggles her bottom under your hand, @@.mediumaquamarine;trusting your judgment,@@ and $subSlave.slaveName <<if canSee($subSlave)>>watches<<else>>waits<</if>> to see what you'll do @@.mediumaquamarine;with anticipation.@@ + You approach the fucking slaves, kneeling next to them and running a possessive hand over $activeSlave.slaveName's butt. The slave doesn't even have to look, recognizing you by your grip, and greets you cheerfully: "Hi <<Master>>!" $subSlave.slaveName giggles and cranes around to <<if canSee($subSlave)>>see<<else>>greet you<</if>>. "Hi <<Master $subSlave>>," _he2 choruses. $activeSlave.slaveName wiggles $his bottom under your hand, @@.mediumaquamarine;trusting your judgment,@@ and $subSlave.slaveName <<if canSee($subSlave)>>watches<<else>>waits<</if>> to see what you'll do @@.mediumaquamarine;with anticipation.@@ <<if $PC.dick == 0>> - You decide to make use of the position the slaves have gotten themselves into. Once naked, you get on all fours ahead of them, and then back yourself between them until you're effectively sitting on the massive cushion formed between them by their breasts. This puts your pussy against $subSlave.slaveName's mouth, and your butt right in front of $activeSlave.slaveName's face. $subSlave.slaveName starts to eat you out with dedication, and after planting a wet kiss on each of your thighs, $activeSlave.slaveName runs her tongue from the base of your cunt and along your perineum, and then begins to kiss your asshole. The universe of warm wetness created by their mouths is so intense that your arms almost buckle. + You decide to make use of the position the slaves have gotten themselves into. Once naked, you get on all fours ahead of them, and then back yourself between them until you're effectively sitting on the massive cushion formed between them by their breasts. This puts your pussy against $subSlave.slaveName's mouth, and your butt right in front of $activeSlave.slaveName's face. $subSlave.slaveName starts to eat you out with dedication, and after planting a wet kiss on each of your thighs, $activeSlave.slaveName runs $his tongue from the base of your cunt and along your perineum, and then begins to kiss your asshole. The universe of warm wetness created by their mouths is so intense that your arms almost buckle. <<set $subSlave.oralCount++, $activeSlave.oralCount++>> <<set $oralTotal += 2>> <<else>> They don't have long to wait. There's no need to be excessively creative. You get behind them and start from the top, laying your cock against $activeSlave.slaveName's back, which produces an anticipatory shudder. Moving down, you <<if !canDoAnal($activeSlave)>> - <<if $PC.vagina == 1>>trail your hot cunt across the tops of her buttocks and then <</if>>trace your dickhead around $activeSlave.slaveName's chastity belt before continuing. You move your cockhead, beaded with precum, down her soft perineum + <<if $PC.vagina == 1>>trail your hot cunt across the tops of $his buttocks and then <</if>>trace your dickhead around $activeSlave.slaveName's chastity belt before continuing. You move your cockhead, beaded with precum, down $his soft perineum <<elseif $activeSlave.anus == 0>> - <<if $PC.vagina == 1>>trail your hot cunt across the tops of her buttocks and then <</if>>tease your dickhead against $activeSlave.slaveName's virgin butt for a moment before continuing. You move your cockhead, beaded with precum, down her soft perineum + <<if $PC.vagina == 1>>trail your hot cunt across the tops of $his buttocks and then <</if>>tease your dickhead against $activeSlave.slaveName's virgin butt for a moment before continuing. You move your cockhead, beaded with precum, down $his soft perineum <<elseif $activeSlave.anus < 3>> - push your cock against $activeSlave.slaveName's tight asshole, causing her to stiffen and struggle momentarily before it pops inside her. After giving her butt a thorough fuck, you move your wet cockhead down her soft perineum + push your cock against $activeSlave.slaveName's tight asshole, causing $him to stiffen and struggle momentarily before it pops inside $him. After giving $his butt a thorough fuck, you move your wet cockhead down $his soft perineum <<set $activeSlave.analCount++, $analTotal++>> <<if canImpreg($activeSlave, $PC)>> <<= knockMeUp($activeSlave, 5, 1, -1, 1)>> <</if>> <<else>> - push your cock up $activeSlave.slaveName's asspussy, which accepts it with ease. After giving it a good hard reaming, you move your wet cockhead down her soft perineum + push your cock up $activeSlave.slaveName's asspussy, which accepts it with ease. After giving it a good hard reaming, you move your wet cockhead down $his soft perineum <<set $activeSlave.analCount++, $analTotal++>> <<if canImpreg($activeSlave, $PC)>> <<= knockMeUp($activeSlave, 5, 1, -1, 1)>> @@ -1243,16 +1243,16 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<if !canDoVaginal($activeSlave) || ($activeSlave.vagina == 0)>> and into the warm space between the two slaves for a little while. <<else>> - and into her cunt, giving it a good hard fuck. + and into $his cunt, giving it a good hard fuck. <<set $activeSlave.vaginalCount++, $vaginalTotal++>> <<if canImpreg($activeSlave, $PC)>> <<= knockMeUp($activeSlave, 5, 0, -1, 1)>> <</if>> <</if>> - Then you see to $subSlave.slaveName beneath her, + Then you see to $subSlave.slaveName beneath $him, <<if !canDoVaginal($subSlave) || ($subSlave.vagina == 0)>> <<else>> - giving her a turn with her owner's cock inside her womanhood before + giving _him2 a turn with _his2 owner's cock inside _his2 womanhood before <<set $subSlave.vaginalCount++, $vaginalTotal++>> <<if canImpreg($subSlave, $PC)>> <<= knockMeUp($subSlave, 5, 0, -1, 1)>> @@ -1261,7 +1261,7 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<if $subSlave.anus == 0 || !canDoAnal($subSlave)>> using the slave's smashed-together buttocks to rub against. <<else>> - giving her as hard a buttfuck as you can manage with $activeSlave.slaveName between you. + giving _him2 as hard a buttfuck as you can manage with $activeSlave.slaveName between you. <<set $subSlave.analCount++, $analTotal++>> <<if canImpreg($subSlave, $PC)>> <<= knockMeUp($subSlave, 5, 1, -1, 1)>> @@ -1275,32 +1275,32 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <</link>> <<if $activeSlave.anus > 0 && _notVirgin == 1>> <br><<link "Dominate the clumsy slave's ass">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> - You tell $activeSlave.slaveName that that was very clumsy of her. The slaves start with surprise, since they didn't know you were watching, producing a delightful jiggle of smashed-together boob. - "Ye<<s>> <<Master>>," $activeSlave.slaveName says obediently, suspecting that you aren't done. She's right. In an idle, speculative tone, you muse that with her huge boobs <<if $activeSlave.belly >= 10000>>and big belly <</if>>pinning her to the ground and $subSlave.slaveName holding her butt like that, she can't get up. "Ye<<s>> <<Master>>," she agrees. - Quite helpless, you continue. "Ye<<s>> <<Master>>," she parrots. - Unable to escape, you conclude. "Ye<<s>> <<Master>>," she moans. + You tell $activeSlave.slaveName that that was very clumsy of $him. The slaves start with surprise, since they didn't know you were watching, producing a delightful jiggle of smashed-together boob. + "Ye<<s>> <<Master>>," $activeSlave.slaveName <<say>>s obediently, suspecting that you aren't done. $He's right. In an idle, speculative tone, you muse that with $his huge boobs <<if $activeSlave.belly >= 10000>>and big belly <</if>>pinning $him to the ground and $subSlave.slaveName holding $his butt like that, $he can't get up. "Ye<<s>> <<Master>>," $he agrees. + Quite helpless, you continue. "Ye<<s>> <<Master>>," $he parrots. + Unable to escape, you conclude. "Ye<<s>> <<Master>>," $he moans. <br><br> You tell $subSlave.slaveName to <<if canPenetrate($subSlave)>> - sodomize her. $subSlave.slaveName obeys hurriedly, shoving a hand between their hips to + sodomize $him. $subSlave.slaveName obeys hurriedly, shoving a hand between their hips to <<if $subSlave.dick > 4>> <<if $activeSlave.anus > 2>> - shove her cock up $activeSlave.slaveName's loose anus. + shove _his2 cock up $activeSlave.slaveName's loose anus. <<else>> - carefully push her cock inside $activeSlave.slaveName's tight butthole. + carefully push _his2 cock inside $activeSlave.slaveName's tight butthole. <</if>> - $activeSlave.slaveName rides $subSlave.slaveName hard, knowing that the looser her ass is, the easier whatever you're planning will be. $subSlave.slaveName's big tool gapes her hole quickly. + $activeSlave.slaveName rides $subSlave.slaveName hard, knowing that the looser $his ass is, the easier whatever you're planning will be. $subSlave.slaveName's big tool gapes $his hole quickly. <<else>> <<if $activeSlave.anus > 2>> - shove her dick inside $activeSlave.slaveName's loose anus. + shove _his2 dick inside $activeSlave.slaveName's loose anus. <<else>> - push push her dick up $activeSlave.slaveName's tight butthole. + push push _his2 dick up $activeSlave.slaveName's tight butthole. <</if>> - $activeSlave.slaveName rides $subSlave.slaveName hard, knowing that the looser her ass is, the easier whatever you're planning will be. $subSlave.slaveName's penis isn't big enough to gape her very much, so $activeSlave.slaveName, trying to be prepared, reaches around to shove an extra finger in alongside it. + $activeSlave.slaveName rides $subSlave.slaveName hard, knowing that the looser $his ass is, the easier whatever you're planning will be. $subSlave.slaveName's penis isn't big enough to gape $him very much, so $activeSlave.slaveName, trying to be prepared, reaches around to shove an extra finger in alongside it. <</if>> - You<<if $PC.dick == 0>> put on a strap-on,<</if>> stop her desperate humping<<if $PC.dick == 0>>,<</if>> and shove her <<if $activeSlave.bellyPreg >= 1500>>gravid <<elseif $activeSlave.belly >= 1500>>bloated <</if>>torso back down against $subSlave.slaveName's boobs. $subSlave.slaveName grabs hold of $activeSlave.slaveName's buttocks and pulls them as far apart as she possibly can, removing all protection from $activeSlave.slaveName's already-full asshole. $activeSlave.slaveName takes a deep breath and lets it out slowly as she feels <<if $PC.dick == 0>>the head of the strap-on<<else>>your cockhead<</if>> press insistently against the outside of her anus and then, centimeter by agonizing centimeter, seat itself up her butt alongside $subSlave.slaveName's cock. She shudders when you begin to thrust. $subSlave.slaveName, overstimulated, climaxes first; as the edge comes off her hardon, her cock slides out of $activeSlave.slaveName's ass, letting you be utterly merciless to the loosened, cum-soaked hole. + You<<if $PC.dick == 0>> put on a strap-on,<</if>> stop $his desperate humping<<if $PC.dick == 0>>,<</if>> and shove $his <<if $activeSlave.bellyPreg >= 1500>>gravid <<elseif $activeSlave.belly >= 1500>>bloated <</if>>torso back down against $subSlave.slaveName's boobs. $subSlave.slaveName grabs hold of $activeSlave.slaveName's buttocks and pulls them as far apart as _he2 possibly can, removing all protection from $activeSlave.slaveName's already-full asshole. $activeSlave.slaveName takes a deep breath and lets it out slowly as $he feels <<if $PC.dick == 0>>the head of the strap-on<<else>>your cockhead<</if>> press insistently against the outside of $his anus and then, centimeter by agonizing centimeter, seat itself up $his butt alongside $subSlave.slaveName's cock. $He shudders when you begin to thrust. $subSlave.slaveName, overstimulated, climaxes first; as the edge comes off _his2 hardon, _his2 cock slides out of $activeSlave.slaveName's ass, letting you be utterly merciless to the loosened, cum-soaked hole. <<set $activeSlave.analCount++>> <<set $analTotal++>> <<set $subSlave.penetrativeCount++>> @@ -1312,26 +1312,26 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<= knockMeUp($activeSlave, 5, 1, $subSlave.ID, 1)>> <</if>> <<else>> - fingerfuck her. $subSlave.slaveName obeys hurriedly, reaching inward and + fingerfuck $him. $subSlave.slaveName obeys hurriedly, reaching inward and <<if $subSlave.anus > 2>> pushing two fingers from each hand inside $activeSlave.slaveName's loose anus. <<else>> carefully pushing a finger from each hand up $activeSlave.slaveName's tight butthole. <</if>> - $activeSlave.slaveName begs $subSlave.slaveName to fuck her butt, knowing that the looser her ass is, the easier whatever you're planning will be. $subSlave.slaveName does her best, using her fingers to stretch $activeSlave.slaveName's sphincter as much as she can without hurting her. + $activeSlave.slaveName begs $subSlave.slaveName to fuck $his butt, knowing that the looser $his ass is, the easier whatever you're planning will be. $subSlave.slaveName does _his2 best, using _his2 fingers to stretch $activeSlave.slaveName's sphincter as much as _he2 can without hurting $him. <<set $activeSlave.analCount++>> <<set $analTotal++>> <<set $subSlave.penetrativeCount++>> <<set $penetrativeTotal++>> - Once you're satisfied that she can take what's coming, you<<if $PC.dick == 0>> put on a strap-on,<</if>> steady her hips<<if $PC.dick == 0>>,<</if>> and shove her <<if $activeSlave.bellyPreg >= 1500>>gravid <<elseif $activeSlave.belly >= 1500>>bloated <</if>>torso back down against $subSlave.slaveName's boobs. $subSlave.slaveName pulls to either side, gaping $activeSlave.slaveName's hole for you. $activeSlave.slaveName takes a deep breath and lets it out slowly as she feels <<if $PC.dick == 0>>the head of the strap-on<<else>>your cockhead<</if>> slide between $subSlave.slaveName's fingers, centimeter by agonizing centimeter, and seat itself up her butt. She shudders when you begin to thrust. $subSlave.slaveName keeps her fingers where they are, doing her best to use them to give you a handjob inside $activeSlave.slaveName's ass. + Once you're satisfied that $he can take what's coming, you<<if $PC.dick == 0>> put on a strap-on,<</if>> steady $his hips<<if $PC.dick == 0>>,<</if>> and shove $his <<if $activeSlave.bellyPreg >= 1500>>gravid <<elseif $activeSlave.belly >= 1500>>bloated <</if>>torso back down against $subSlave.slaveName's boobs. $subSlave.slaveName pulls to either side, gaping $activeSlave.slaveName's hole for you. $activeSlave.slaveName takes a deep breath and lets it out slowly as $he feels <<if $PC.dick == 0>>the head of the strap-on<<else>>your cockhead<</if>> slide between $subSlave.slaveName's fingers, centimeter by agonizing centimeter, and seat itself up $his butt. $He shudders when you begin to thrust. $subSlave.slaveName keeps _his2 fingers where they are, doing _his2 best to use them to give you a handjob inside $activeSlave.slaveName's ass. <<if canImpreg($activeSlave, $PC)>> <<= knockMeUp($activeSlave, 5, 1, -1, 1)>> <</if>> <</if>> <<run Enunciate($subSlave)>> - When you're done, you pull out, leaving $activeSlave.slaveName to collapse, whimpering and shaking, onto $subSlave.slaveName's boobs. $subSlave.slaveName <<if canSee($subSlave)>>winks<<else>>smiles<</if>> at you over her shoulder. "That wa<<s>> fun <<Master $subSlave>>," she <<say>>s brightly. "@@.hotpink;Can we do that again@@ <<s>>oon, plea<<s>>e?" + When you're done, you pull out, leaving $activeSlave.slaveName to collapse, whimpering and shaking, onto $subSlave.slaveName's boobs. $subSlave.slaveName <<if canSee($subSlave)>>winks<<else>>smiles<</if>> at you over _his2 shoulder. "That wa<<s>> fun <<Master $subSlave>>," _he2 <<say>>s brightly. "@@.hotpink;Can we do that again@@ <<s>>oon, plea<<s>>e?" <br><br> - "Ohh fffuck," $activeSlave.slaveName moans into her boobs, to no one in particular. + "Ohh fffuck," $activeSlave.slaveName moans into $his boobs, to no one in particular. <<set $subSlave.devotion += 4>> <<run Enunciate($activeSlave)>> <<if $activeSlave.anus < 3>> @@ -1345,21 +1345,21 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<if ($activeSlave.relationship == 0) || ($activeSlave.relationship == -1)>> <<if ($subSlave.relationship == 0) || ($subSlave.relationship == -1)>> <br><<link "What a cute couple">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> You tell them they make a cute couple. The slaves start with surprise, since they didn't know you were watching, producing a delightful jiggle of smashed-together boob. "Thank you, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Master<<else>>Mistress<</if>>," they chorus correctly, before turning back to look at each other. They take your comment quite seriously, both of them seemingly forgetting that they're in the middle of having sex to consider it. $activeSlave.slaveName speaks first. "I gue<<ss>> I never really thought about you that way," - she says to the huge-boobed <<if $subSlave.physicalAge > 30>>woman<<elseif $subSlave.physicalAge > 18>>girl<<elseif $subSlave.physicalAge > 12>>teen<<else>>loli<</if>> trapped beneath her. + $he says to the huge-boobed <<if $subSlave.physicalAge > 30>>_woman2<<elseif $subSlave.physicalAge > 18>>_girl2<<elseif $subSlave.physicalAge > 12>>teen<<else>>_loli2<</if>> trapped beneath $him. <br><br> <<run Enunciate($subSlave)>> - $subSlave.slaveName, who is still holding $activeSlave.slaveName's buttocks, gives them a squeeze. "Well, you <<s>>illy girl, what do you think about it now?" + $subSlave.slaveName, who is still holding $activeSlave.slaveName's buttocks, gives them a squeeze. "Well, you <<s>>illy $girl, what do you think about it now?" <br><br> - $activeSlave.slaveName stiffens with sudden embarrassment. "Uh, um," she stammers, before saying in a rush, "$subSlave.slaveName, will you go out with me?" + $activeSlave.slaveName stiffens with sudden embarrassment. "Uh, um," $he stammers, before saying in a rush, "$subSlave.slaveName, will you go out with me?" <br><br> - $subSlave.slaveName laughs, a pure, unclouded sound, and gives $activeSlave.slaveName a cute little peck on the tip of her nose. "@@.lightgreen;Of cour<<s>>e I will,@@" she purrs, and runs her hands up $activeSlave.slaveName's back to hug her tightly. + $subSlave.slaveName laughs, a pure, unclouded sound, and gives $activeSlave.slaveName a cute little peck on the tip of $his nose. "@@.lightgreen;Of cour<<s>>e I will,@@" _he2 purrs, and runs _his2 hands up $activeSlave.slaveName's back to hug $him tightly. <br><br> <<run Enunciate($activeSlave)>> - The encounter becomes far more heartfelt than it was before you spoke up. $activeSlave.slaveName, who seems affected, says self-consciously, "Um, doe<<s>> thi<<s>> mean I get a girlfriend every time I'm clum<<s>>y?" $subSlave.slaveName giggles and shushes her. They begin to kiss earnestly while they fuck, and you leave them to it. Each of them comes to you later to @@.hotpink;thank you@@ for permitting them to be together. + The encounter becomes far more heartfelt than it was before you spoke up. $activeSlave.slaveName, who seems affected, says self-consciously, "Um, doe<<s>> thi<<s>> mean I get a <<= _girl2>>friend every time I'm clum<<s>>y?" $subSlave.slaveName giggles and shushes $him. They begin to kiss earnestly while they fuck, and you leave them to it. Each of them comes to you later to @@.hotpink;thank you@@ for permitting them to be together. <<set $subSlave.devotion += 2, $activeSlave.devotion += 2>> <<set $subSlave.relationship = 3, $subSlave.relationshipTarget = $activeSlave.ID>> <<set $activeSlave.relationship = 3, $activeSlave.relationshipTarget = $subSlave.ID>> @@ -1372,16 +1372,16 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<case "if you enjoy it">> <<link "Just watch">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> - You settle down to watch what happens. $activeSlave.slaveName, who has a devoted slave's sixth sense about $his <<= WrittenMaster($activeSlave)>>'s presence, realizes you're there and turns toward you. <<if canSee($activeSlave)>>You've already got a reassuring, silent hand raised, and you gesture that $he should continue<<elseif canHear($activeSlave)>>Not hearing any comments, $he takes it as a gesture to continue<<else>>Not sensing your touch, $he eventually decides to continue<</if>>. She smiles naughtily at you, @@.mediumaquamarine;pleased with your trust in her,@@ before going back to $subSlave.slaveName. She <<if canPenetrate($activeSlave)>>hauls $subSlave.slaveName's <<if $subSlave.belly >= 5000>>gravid <</if>>torso partway up<<else>>bends over the poor girl<</if>> so she can speak directly into her ear, and <<say>>s quietly, "You're <<s>>tarting to enjoy thi<<s>>, aren't you, bitch?" $subSlave.slaveName, still unaware you're there, shakes _his2 head unhappily, tears starting to leak out the corners of _his2 eyes. + You settle down to watch what happens. $activeSlave.slaveName, who has a devoted slave's sixth sense about $his <<= WrittenMaster($activeSlave)>>'s presence, realizes you're there and turns toward you. <<if canSee($activeSlave)>>You've already got a reassuring, silent hand raised, and you gesture that $he should continue<<elseif canHear($activeSlave)>>Not hearing any comments, $he takes it as a gesture to continue<<else>>Not sensing your touch, $he eventually decides to continue<</if>>. $He smiles naughtily at you, @@.mediumaquamarine;pleased with your trust in $him,@@ before going back to $subSlave.slaveName. $He <<if canPenetrate($activeSlave)>>hauls $subSlave.slaveName's <<if $subSlave.belly >= 5000>>gravid <</if>>torso partway up<<else>>bends over the poor _girl2<</if>> so $he can speak directly into _his2 ear, and <<say>>s quietly, "You're <<s>>tarting to enjoy thi<<s>>, aren't you, bitch?" $subSlave.slaveName, still unaware you're there, shakes _his2 head unhappily, tears starting to leak out the corners of _his2 eyes. <br><br> <<run Enunciate($subSlave)>> "N-no," _he2 gasps. "I'm not! Plea<<s>>e t-take <<if canPenetrate($activeSlave)>>it<<else>>them<</if>> out!" <<run Enunciate($activeSlave)>> - $activeSlave.slaveName makes no verbal reply, but continues $his manual stimulation, and sticks $his tongue into $subSlave.slaveName's ear. The poor girl lets out a startled yelp that trails off into a moan as $activeSlave.slaveName's <<if ($activeSlave.oralSkill >= 60)>>excellent<<elseif ($activeSlave.oralSkill > 1)>>skillful<<else>>enthusiastic<</if>> ministrations really begin to have an effect on her. + $activeSlave.slaveName makes no verbal reply, but continues $his manual stimulation, and sticks $his tongue into $subSlave.slaveName's ear. The poor _girl2 lets out a startled yelp that trails off into a moan as $activeSlave.slaveName's <<if ($activeSlave.oralSkill >= 60)>>excellent<<elseif ($activeSlave.oralSkill > 1)>>skillful<<else>>enthusiastic<</if>> ministrations really begin to have an effect on _him2. <br><br> - $activeSlave.slaveName laughs unpleasantly at the desperately uncomfortable slave, and <<say>>s, "Tell you what, <<s>>lut. I'll leave you alone if thi<<s>> doe<<s>>n't get you off." Already realizing her predicament, $subSlave.slaveName begins to protest, but $activeSlave.slaveName cuts her off. "<<Sh>>ut your fucking cockhol<<s>>ter, bitch, I'm talking. I'll leave you alone if thi<<s>> doe<<s>>n't get you off, but if you come, you've obviou<<s>>ly been lying to me, and you obviou<<s>>ly want me to buttfuck you all night long." $subSlave.slaveName tries very hard, taking a huge breath of air and holding it in, biting her lip, shutting her eyes tight, and more, but it's all for naught. Before long, she stiffens <<if $subSlave.balls > 0 || $subSlave.prostate > 0>>and makes a mess on the bedroll<<else>>with orgasm<</if>>, moaning as her anal sphincter tightens against the invading <<if canPenetrate($activeSlave)>>cock<<else>>fingers<</if>>. Once the climax leaves her, she begins to sob, knowing what this means. $activeSlave.slaveName takes her hand away from the crying girl's crotch and begins to massage her back with surprising tenderness. "<<S>>hh, <<s>>weetie, it'<<s>> all right. I promi<<s>>e you'll enjoy thi<<s>>, if you let your<<s>>elf." You leave quietly, letting $activeSlave.slaveName have her fun. As the week goes on, $subSlave.slaveName's @@.lightcoral;attitude towards anal sex@@ improves quickly, though she feels rather conflicted about $activeSlave.slaveName for forcing this on her. + $activeSlave.slaveName laughs unpleasantly at the desperately uncomfortable slave, and <<say>>s, "Tell you what, <<s>>lut. I'll leave you alone if thi<<s>> doe<<s>>n't get you off." Already realizing _his2 predicament, $subSlave.slaveName begins to protest, but $activeSlave.slaveName cuts _him2 off. "<<Sh>>ut your fucking cockhol<<s>>ter, bitch, I'm talking. I'll leave you alone if thi<<s>> doe<<s>>n't get you off, but if you come, you've obviou<<s>>ly been lying to me, and you obviou<<s>>ly want me to buttfuck you all night long." $subSlave.slaveName tries very hard, taking a huge breath of air and holding it in, biting _his2 lip, shutting _his2 eyes tight, and more, but it's all for naught. Before long, _he2 stiffens <<if $subSlave.balls > 0 || $subSlave.prostate > 0>>and makes a mess on the bedroll<<else>>with orgasm<</if>>, moaning as _his2 anal sphincter tightens against the invading <<if canPenetrate($activeSlave)>>cock<<else>>fingers<</if>>. Once the climax leaves _him2, _he2 begins to sob, knowing what this means. $activeSlave.slaveName takes _his2 hand away from the crying _girl2's crotch and begins to massage _his2 back with surprising tenderness. "<<S>>hh, <<s>>weetie, it'<<s>> all right. I promi<<s>>e you'll enjoy thi<<s>>, if you let your<<s>>elf." You leave quietly, letting $activeSlave.slaveName have $his fun. As the week goes on, $subSlave.slaveName's @@.lightcoral;attitude towards anal sex@@ improves quickly, though _he2 feels rather conflicted about $activeSlave.slaveName for forcing this on _him2. <<set $activeSlave.trust += 4>> <<if canPenetrate($activeSlave)>> <<set $activeSlave.penetrativeCount += 4, $penetrativeTotal += 4>> @@ -1395,7 +1395,7 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <</replace>> <</link>> <br><<link "$He's being too gentle">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> You advance on the slaves. $activeSlave.slaveName, who has a devoted slave's sixth sense about $his <<= WrittenMaster($activeSlave)>>'s presence, realizes you're there and turns toward you. <<if canSee($activeSlave)>>Silently but forcefully, you use a simple hand gesture to instruct $him unequivocally<<else>>$He can feel<</if>> that $he's to stop fucking around and pound the bitch's butt. $He looks a little taken aback, but obeys instantly, <<if canPenetrate($activeSlave)>>pumping $his dick in and out of $subSlave.slaveName<<else>>fingerfucking $subSlave.slaveName's ass<</if>> without mercy. The slave screams at the sudden change of pace, thrashing a little. _His2 struggles bring <<if canSee($subSlave)>>_his2 head around, and _he2's surprised to come face to face with your ankles. With dawning comprehension, _his2 eyes track rapidly up your <<if $arcologies[0].FSPhysicalIdealist != "unset">> @@ -1441,7 +1441,7 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<else>> pretty breasts <</if>> - to rest on your unforgiving face<<else>>a pleased chuckle out of you. With dawning comprehension, her face rapidly moves to face yours<</if>>. She wilts. $activeSlave.slaveName thinks this is hilarious, and laughs so hard at the slave's reaction to your appearance that she almost loses hold of $subSlave.slaveName's <<if $subSlave.dick > 0>>cock<<elseif $subSlave.clit > 0>>clit<<else>>ass<</if>>. There's nothing quite like oral from a girl who's moaning with anal pain, so you sit on the head of the bedroll and <<if $PC.dick == 1>>stick your dick in $subSlave.slaveName's mouth<<else>>pull $subSlave.slaveName's mouth against your cunt<</if>>. $activeSlave.slaveName is still giggling, but leans over the unhappy slave speared between the two of you to @@.hotpink;plant a kiss@@ on you. She misses, smearing her kiss along your cheek and past your ear, but you take her face in your hands and kiss her properly as $subSlave.slaveName begins to do her best to relax and get you off, @@.gold;fearful@@ that worse is in store if she doesn't @@.hotpink;submit.@@ + to rest on your unforgiving face<<else>>a pleased chuckle out of you. With dawning comprehension, _his2 face rapidly moves to face yours<</if>>. _He2 wilts. $activeSlave.slaveName thinks this is hilarious, and laughs so hard at the slave's reaction to your appearance that $he almost loses hold of $subSlave.slaveName's <<if $subSlave.dick > 0>>cock<<elseif $subSlave.clit > 0>>clit<<else>>ass<</if>>. There's nothing quite like oral from a _girl2 who's moaning with anal pain, so you sit on the head of the bedroll and <<if $PC.dick == 1>>stick your dick in $subSlave.slaveName's mouth<<else>>pull $subSlave.slaveName's mouth against your cunt<</if>>. $activeSlave.slaveName is still giggling, but leans over the unhappy slave speared between the two of you to @@.hotpink;plant a kiss@@ on you. $He misses, smearing $his kiss along your cheek and past your ear, but you take $his face in your hands and kiss $him properly as $subSlave.slaveName begins to do _his2 best to relax and get you off, @@.gold;fearful@@ that worse is in store if _he2 doesn't @@.hotpink;submit.@@ <<set $activeSlave.devotion += 4>> <<if canPenetrate($activeSlave)>> <<set $activeSlave.penetrativeCount++, $penetrativeTotal++>> @@ -1458,11 +1458,11 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<case "sadistic description">> <<link "$He's not wrong">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> - You ask $activeSlave.slaveName what $he said in a neutral tone. $He gives you a quick glance, not sure whether to be aroused or afraid, but takes a breath to steady $himself and begins. For her part, $subSlave.slaveName vainly tries to stop crying in front of you. When $activeSlave.slaveName reaches "<<if $PC.title != 0>>He<<else>><<Sh>>e<</if>>'<<s>> going to hold you down and <<sh>>ove <<if $PC.title != 0>>hi<<s>><<else>>her<</if>> <<if $PC.dick == 1>>huge cockhead<<else>>bigge<<s>>t <<s>>trap-on<</if>> right up again<<s>>t thi<<s>> tight little hole," you hold up a hand to get her to pause. She does, and you suddenly shove $subSlave.slaveName towards the couch. She crashes face-down into the cushions, already sobbing in terror. You place a hand on her $activeSlave.skin back to hold her down and then use the other to apply some lube to your <<if $PC.dick == 1>>penis<<else>>strap-on<</if>> before pressing it against the quivering slave's virgin anus. She shakes with anguish, causing <<if $PC.dick == 1>>your cock to rub deliciously<<else>>the strap-on to slide amusingly<</if>> up and down her asscrack. You make a come-on gesture to $activeSlave.slaveName, and she continues, "You're going to do your be<<s>>t to relax like a good little girl." - $subSlave.slaveName desperately takes in a huge breath. $activeSlave.slaveName, who has gotten the idea (and to go by her furious masturbation, clearly likes it), gasps out, "But it'<<s>> going to be <<s>>o big! It'<<s>> going to burn!" Here you begin to apply inexorable pressure. $subSlave.slaveName manages one more deep breath, but it becomes a squeal of anguish and she tries frantically to burrow into the couch, away from the penetrating <<if $PC.dick == 1>>cock<<else>>strap-on<</if>>. "You're going to panic, and <<s>>truggle, and <<if $PC.title != 0>>he<<else>><<sh>>e<</if>>'<<s>> going to hold you down and rape your butt while you <<s>>cream and cry..." - $activeSlave.slaveName trails off as she shakes with orgasm; she doesn't say any more, but the @@.hotpink;wild satisfaction@@ <<if canSee($activeSlave)>>in her $activeSlave.eyeColor eyes<<else>>on her face<</if>> says it for her. $subSlave.slaveName, meanwhile, is a mess, but hurries @@.gold;fearfully@@ to obey your instructions to go clean _himself2, and hides _his2 @@.mediumorchid;hatred@@ as _he2 gingerly applies an enema to _his2 @@.lime;loosened butt.@@ + You ask $activeSlave.slaveName what $he said in a neutral tone. $He gives you a quick glance, not sure whether to be aroused or afraid, but takes a breath to steady $himself and begins. For _his2 part, $subSlave.slaveName vainly tries to stop crying in front of you. When $activeSlave.slaveName reaches "<<= lispReplace(SlaveTitle(_HeP))>>'<<s>> going to hold you down and <<sh>>ove <<= lispReplace(SlaveTitle(_hisP))>> <<if $PC.dick == 1>>huge cockhead<<else>>bigge<<s>>t <<s>>trap-on<</if>> right up again<<s>>t thi<<s>> tight little hole," you hold up a hand to get $him to pause. $He does, and you suddenly shove $subSlave.slaveName towards the couch. _He crashes face-down into the cushions, already sobbing in terror. You place a hand on _his2 $activeSlave.skin back to hold _him2 down and then use the other to apply some lube to your <<if $PC.dick == 1>>penis<<else>>strap-on<</if>> before pressing it against the quivering slave's virgin anus. _He2 shakes with anguish, causing <<if $PC.dick == 1>>your cock to rub deliciously<<else>>the strap-on to slide amusingly<</if>> up and down _his2 asscrack. You make a come-on gesture to $activeSlave.slaveName, and $he continues, "You're going to do your be<<s>>t to relax like a good little _girl2." + $subSlave.slaveName desperately takes in a huge breath. $activeSlave.slaveName, who has gotten the idea (and to go by $his furious masturbation, clearly likes it), gasps out, "But it'<<s>> going to be <<s>>o big! It'<<s>> going to burn!" Here you begin to apply inexorable pressure. $subSlave.slaveName manages one more deep breath, but it becomes a squeal of anguish and _he2 tries frantically to burrow into the couch, away from the penetrating <<if $PC.dick == 1>>cock<<else>>strap-on<</if>>. "You're going to panic, and <<s>>truggle, and <<= lispReplace(SlaveTitle(_heP))>>'<<s>> going to hold you down and rape your butt while you <<s>>cream and cry..." + $activeSlave.slaveName trails off as $he shakes with orgasm; $he doesn't say any more, but the @@.hotpink;wild satisfaction@@ <<if canSee($activeSlave)>>in $his $activeSlave.eyeColor eyes<<else>>on $his face<</if>> says it for $him. $subSlave.slaveName, meanwhile, is a mess, but hurries @@.gold;fearfully@@ to obey your instructions to go clean _himself2, and hides _his2 @@.mediumorchid;hatred@@ as _he2 gingerly applies an enema to _his2 @@.lime;loosened butt.@@ <<set $activeSlave.devotion += 5>> <<set $subSlave.trust -= 10, $subSlave.devotion -= 5, $subSlave.analCount++, $subSlave.anus = 1>> <<set $analTotal++>> @@ -1473,11 +1473,11 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <</replace>> <</link>> //This option will take anal virginity// <br><<link "That sounds like the voice of experience">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> - You approach and observe to $activeSlave.slaveName that it sounds like $he's speaking from experience. $He glances at you nervously, but agrees. You tell $him to go on, so she turns to the mystified $subSlave.slaveName and mumbles, "It wa<<s>>n't ea<<s>>y for me the fir<<s>>t time either." - She gasps as you slide around behind her, your hands snaking around her <<if $activeSlave.boobs > 2000>>massive tits<<elseif $activeSlave.boobs > 1000>>big boobs<<elseif $activeSlave.boobs > 400>>prominent breasts<<else>>chest<</if>> to pinch her $activeSlave.nipples nipples. You whisper into her ear, ordering her to tell her little story again, slowly. "<<if $PC.title != 0>>He<<else>><<Sh>>e<</if>>'<<s>> going to hold you down and <<sh>>ove <<if $PC.title != 0>>hi<<s>><<else>>her<</if>> <<if $PC.dick == 1>>huge cockhead<<else>>bigge<<s>>t <<s>>trap-on<</if>> right up again<<s>>t thi<<s>> tight little hole," she tells $subSlave.slaveName. The poor girl doesn't know what to do, so she just stands and listens, <<if canSee($subSlave)>>watching<<else>>staring<</if>> dumbly as $activeSlave.slaveName talks. She's a lot less intimidating this time around, gasping out the words as you maneuver your <<if $PC.dick == 1>>cock<<else>>strap-on<</if>> against her <<if $activeSlave.anus > 2>>loose butthole<<elseif $activeSlave.anus > 1>>experienced ass<<else>>tight butthole<</if>> for some standing anal. "You're going to do your be<<s>>t to relax like a good little girl," she moans. <<if ($activeSlave.dick > 0) && !canAchieveErection($activeSlave)>>$His limp dick hangs lamely as you press against her backdoor, but it's dripping precum.<<elseif $activeSlave.dick > 0>>She has a throbbing erection.<<elseif $activeSlave.clit > 0>>As you shove her into place, your hand brushes against her enormously erect clit.<<else>>As you shove her into place, your hand brushes against moisture coating her inner thighs.<</if>> The bitch is getting off on this. - "But it'<<s>> going to be <<s>>o big - it'<<s>> going to bu-hu-hur-hurn... oh..." You're up her ass and pounding away, <<if $subSlave.belly >= 5000>>with one hand on her hips and the other around her gravid belly<<else>>holding her hips with both hands and<</if>> bouncing her butt against your crotch as your <<if $PC.dick == 1>>cock<<else>>strap-on<</if>> slides in and out of her. You administer a hard slap to her ass and tell her to keep going. She shakes her head and manages to get back on track, grunting out, "You're going to panic - and - and - oh - <<s>>-<<s>>truggle, and <<if $PC.title != 0>>he<<else>><<sh>>e<</if>>'<<s>> going t-to h-ho-oh-old you d-down, oh ow, and r-ra-rape your b-butt while, oh p-plea<<s>>e <<Master>>, you <<s>>cream, ooh, and c-cry... o-oh... ah." She feels your <<if $PC.dick == 1>>hot seed jet into her asshole<<else>>own orgasm<</if>> and your hands release their grip, and slides wetly off you, <<if ($activeSlave.dick > 0) && !canAchieveErection($activeSlave)>>her own messy little orgasm running down her legs to join the cum dripping out of her ass<<elseif $activeSlave.dick > 0>>stepping around the mess she shot onto the floor and trying to keep your load inside her ass<<else>>her feminine juices running down her legs to join the cum dripping out of her ass<</if>>. She walks gingerly to the bathroom for a cleanup, looking a lot more @@.hotpink;submissive@@ than when you walked in. $subSlave.slaveName is still staring <<if canSee($subSlave)>>at<<else>>towards<</if>> you. There's a little @@.gold;fear@@ there, but some @@.hotpink;awe,@@ too. + You approach and observe to $activeSlave.slaveName that it sounds like $he's speaking from experience. $He glances at you nervously, but agrees. You tell $him to go on, so $he turns to the mystified $subSlave.slaveName and mumbles, "It wa<<s>>n't ea<<s>>y for me the fir<<s>>t time either." + $He gasps as you slide around behind $him, your hands snaking around $his <<if $activeSlave.boobs > 2000>>massive tits<<elseif $activeSlave.boobs > 1000>>big boobs<<elseif $activeSlave.boobs > 400>>prominent breasts<<else>>chest<</if>> to pinch $his $activeSlave.nipples nipples. You whisper into $his ear, ordering $him to tell $his little story again, slowly. "<<= lispReplace(SlaveTitle(_HeP))>>'<<s>> going to hold you down and <<sh>>ove <<= lispReplace(SlaveTitle(_hisP))>> <<if $PC.dick == 1>>huge cockhead<<else>>bigge<<s>>t <<s>>trap-on<</if>> right up again<<s>>t thi<<s>> tight little hole," $he tells $subSlave.slaveName. The poor _girl2 doesn't know what to do, so _he2 just stands and listens, <<if canSee($subSlave)>>watching<<else>>staring<</if>> dumbly as $activeSlave.slaveName talks. $he's a lot less intimidating this time around, gasping out the words as you maneuver your <<if $PC.dick == 1>>cock<<else>>strap-on<</if>> against $his <<if $activeSlave.anus > 2>>loose butthole<<elseif $activeSlave.anus > 1>>experienced ass<<else>>tight butthole<</if>> for some standing anal. "You're going to do your be<<s>>t to relax like a good little _girl2," $he moans. <<if ($activeSlave.dick > 0) && !canAchieveErection($activeSlave)>>$His limp dick hangs lamely as you press against $his backdoor, but it's dripping precum.<<elseif $activeSlave.dick > 0>>$He has a throbbing erection.<<elseif $activeSlave.clit > 0>>As you shove $him into place, your hand brushes against $his enormously erect clit.<<else>>As you shove $him into place, your hand brushes against moisture coating $his inner thighs.<</if>> The bitch is getting off on this. + "But it'<<s>> going to be <<s>>o big - it'<<s>> going to bu-hu-hur-hurn... oh..." You're up $his ass and pounding away, <<if $subSlave.belly >= 5000>>with one hand on $his hips and the other around $his gravid belly<<else>>holding $his hips with both hands and<</if>> bouncing $his butt against your crotch as your <<if $PC.dick == 1>>cock<<else>>strap-on<</if>> slides in and out of $him. You administer a hard slap to $his ass and tell $him to keep going. $He shakes $his head and manages to get back on track, grunting out, "You're going to panic - and - and - oh - <<s>>-<<s>>truggle, and <<= lispReplace(SlaveTitle(_heP))>>'<<s>> going t-to h-ho-oh-old you d-down, oh ow, and r-ra-rape your b-butt while, oh p-plea<<s>>e <<Master>>, you <<s>>cream, ooh, and c-cry... o-oh... ah." $He feels your <<if $PC.dick == 1>>hot seed jet into $his asshole<<else>>own orgasm<</if>> and your hands release their grip, and slides wetly off you, <<if ($activeSlave.dick > 0) && !canAchieveErection($activeSlave)>>$his own messy little orgasm running down $his legs to join the cum dripping out of $his ass<<elseif $activeSlave.dick > 0>>stepping around the mess $he shot onto the floor and trying to keep your load inside $his ass<<else>>$his feminine juices running down $his legs to join the cum dripping out of $his ass<</if>>. $He walks gingerly to the bathroom for a cleanup, looking a lot more @@.hotpink;submissive@@ than when you walked in. $subSlave.slaveName is still staring <<if canSee($subSlave)>>at<<else>>towards<</if>> you. There's a little @@.gold;fear@@ there, but some @@.hotpink;awe,@@ too. <<set $activeSlave.devotion += 5, $activeSlave.analCount++>> <<set $analTotal++>> <<if canImpreg($activeSlave, $PC)>> @@ -1491,9 +1491,9 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<case "shower force">> <<link "Instruct $him to be a little nicer">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> - Even though you already have everyone's rapt attention, you rap on the glass for emphasis<<if canSee($activeSlave) && canSee($subSlave)>>, watched closely by four huge eyes<</if>>. You politely admonish $activeSlave.slaveName, and tell her to do a better job of looking after her anal bottom's pleasure. She nods vigorously and snakes a hand around $subSlave.slaveName, to where <<if ($subSlave.dick > 0) && !canAchieveErection($subSlave)>>her limp dick is smashed against the glass<<elseif $subSlave.dick > 0>>her dick, shamefully half-hard despite her unwillingness, is smashed against the glass<<elseif $subSlave.vagina == -1>>her featureless groin is hidden between her forced-together legs<<else>>her neglected pussy is hidden between her forced-together legs<</if>>. $activeSlave.slaveName goes back to the anal, but gives $subSlave.slaveName a serviceable reach around as she does. $subSlave.slaveName does not orgasm, but she looks a little less unhappy and @@.mediumaquamarine;thanks you@@ for your intervention after $activeSlave.slaveName <<if canPenetrate($activeSlave)>>grunts, fills _his2 asshole with cum, and pulls $himself out.<<else>>shakes with orgasm and removes her fingers.<</if>> + Even though you already have everyone's rapt attention, you rap on the glass for emphasis<<if canSee($activeSlave) && canSee($subSlave)>>, watched closely by four huge eyes<</if>>. You politely admonish $activeSlave.slaveName, and tell $him to do a better job of looking after $his anal bottom's pleasure. $He nods vigorously and snakes a hand around $subSlave.slaveName, to where <<if ($subSlave.dick > 0) && !canAchieveErection($subSlave)>>_his2 limp dick is smashed against the glass<<elseif $subSlave.dick > 0>>_his2 dick, shamefully half-hard despite _his2 unwillingness, is smashed against the glass<<elseif $subSlave.vagina == -1>>_his2 featureless groin is hidden between _his2 forced-together legs<<else>>_his2 neglected pussy is hidden between _his2 forced-together legs<</if>>. $activeSlave.slaveName goes back to the anal, but gives $subSlave.slaveName a serviceable reach around as $he does. $subSlave.slaveName does not orgasm, but _he2 looks a little less unhappy and @@.mediumaquamarine;thanks you@@ for your intervention after $activeSlave.slaveName <<if canPenetrate($activeSlave)>>grunts, fills _his2 asshole with cum, and pulls $himself out.<<else>>shakes with orgasm and removes $his fingers.<</if>> <<if canPenetrate($activeSlave)>> <<set $activeSlave.penetrativeCount++, $penetrativeTotal++>> <</if>> @@ -1506,9 +1506,9 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <</replace>> <</link>> <br><<link "Double anal">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> - You tell $activeSlave.slaveName to get out of the shower. She looks crushed, and $subSlave.slaveName looks hopeful, until you tell her to bring the bitch. $activeSlave.slaveName grabs $subSlave.slaveName by the wrist and drags her protesting victim along. You sit on the counter and tell $activeSlave.slaveName to pass you the anal slave. She does, giggling maliciously, openly masturbating as you pull the recalcitrant $subSlave.slaveName up onto your lap, seat <<if $PC.dick == 0>>a strap-on<<else>>your cock<</if>> firmly up her already-fucked <<if $subSlave.anus > 2>>anal slit<<elseif $subSlave.anus > 1>>asshole<<else>>anus<</if>>, seize the backs of her knees, and pull her up into a crouching position atop you. You lift her up and down on <<if $PC.dick == 0>>the strap-on<<else>>your dick<</if>> for a while, letting $activeSlave.slaveName continue her <<if canPenetrate($activeSlave)>>jerking<<else>>rubbing<</if>>, before telling her to join you. She hesitates for a moment before you explain that she should join you up $subSlave.slaveName's butthole. Your victim begins to cry openly but knows better than to beg. $activeSlave.slaveName <<if canPenetrate($activeSlave)>>pushes her iron-hard prick up alongside yours,<<else>>shoves first one and then two fingers up alongside your prick,<</if>> eliciting a long wail from <<if $subSlave.belly >= 10000>>the overfilled <</if>>$subSlave.slaveName. The position isn't the best for pounding's sake, but the sadistic thrill of $subSlave.slaveName's anguish is plenty to bring both you and $activeSlave.slaveName to prompt orgasm. $subSlave.slaveName stumbles painfully back to the shower with @@.gold;ill-concealed terror,@@ while $activeSlave.slaveName impulsively gives you a @@.hotpink;quick hug.@@ + You tell $activeSlave.slaveName to get out of the shower. $He looks crushed, and $subSlave.slaveName looks hopeful, until you tell $him to bring the bitch. $activeSlave.slaveName grabs $subSlave.slaveName by the wrist and drags $his protesting victim along. You sit on the counter and tell $activeSlave.slaveName to pass you the anal slave. $He does, giggling maliciously, openly masturbating as you pull the recalcitrant $subSlave.slaveName up onto your lap, seat <<if $PC.dick == 0>>a strap-on<<else>>your cock<</if>> firmly up _his2 already-fucked <<if $subSlave.anus > 2>>anal slit<<elseif $subSlave.anus > 1>>asshole<<else>>anus<</if>>, seize the backs of _his2 knees, and pull _him2 up into a crouching position atop you. You lift _him2 up and down on <<if $PC.dick == 0>>the strap-on<<else>>your dick<</if>> for a while, letting $activeSlave.slaveName continue $his <<if canPenetrate($activeSlave)>>jerking<<else>>rubbing<</if>>, before telling $him to join you. $He hesitates for a moment before you explain that $he should join you up $subSlave.slaveName's butthole. Your victim begins to cry openly but knows better than to beg. $activeSlave.slaveName <<if canPenetrate($activeSlave)>>pushes $his iron-hard prick up alongside yours,<<else>>shoves first one and then two fingers up alongside your prick,<</if>> eliciting a long wail from <<if $subSlave.belly >= 10000>>the overfilled <</if>>$subSlave.slaveName. The position isn't the best for pounding's sake, but the sadistic thrill of $subSlave.slaveName's anguish is plenty to bring both you and $activeSlave.slaveName to prompt orgasm. $subSlave.slaveName stumbles painfully back to the shower with @@.gold;ill-concealed terror,@@ while $activeSlave.slaveName impulsively gives you a @@.hotpink;quick hug.@@ <<set $activeSlave.devotion += 4>> <<if canPenetrate($activeSlave)>> <<set $activeSlave.penetrativeCount++, $penetrativeTotal++>> @@ -1528,39 +1528,39 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<case "repressed anal virgin">> <<link "Girls' butts are for loving">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> - You tell her that her butt is for lovemaking, just like $subSlave.slaveName's. She looks horrified. You clear her schedule and sit her down on the couch (she carefully avoids the spot where you and $subSlave.slaveName embraced) before continuing with your day. $subSlave.slaveName was your first inspection of the day, so $activeSlave.slaveName has nothing to do for hours and hours other than sit there and <<if canSee($activeSlave)>>watch you<<else>>listen to your actions<</if>>. She's a healthy girl,<<if $activeSlave.preg > 20>> ripe with pregnancy,<</if>> and her food is laced with mild aphrodisiacs. The boredom and her building arousal begin to torture her, until finally she grinds out a hesitant "P-plea<<s>>e fuck me, <<Master>>." You glance at her and she quickly looks down, blushing. You go back to your work, and an hour later she manages a more confident "Plea<<s>>e fuck me, <<Master>>." + You tell $him that $his butt is for lovemaking, just like $subSlave.slaveName's. $He looks horrified. You clear $his schedule and sit $him down on the couch ($he carefully avoids the spot where you and $subSlave.slaveName embraced) before continuing with your day. $subSlave.slaveName was your first inspection of the day, so $activeSlave.slaveName has nothing to do for hours and hours other than sit there and <<if canSee($activeSlave)>>watch you<<else>>listen to your actions<</if>>. $He's a healthy $girl,<<if $activeSlave.preg > 20>> ripe with pregnancy,<</if>> and $his food is laced with mild aphrodisiacs. The boredom and $his building arousal begin to torture $him, until finally $he grinds out a hesitant "P-plea<<s>>e fuck me, <<Master>>." You glance at $him and $he quickly looks down, blushing. You go back to your work, and an hour later $he manages a more confident "Plea<<s>>e fuck me, <<Master>>." <br><br> - Judging her ready, you tell her to kneel on the couch. She does, trembling with fear and arousal; + Judging $him ready, you tell $him to kneel on the couch. $He does, trembling with fear and arousal; <<if ["chastity", "combined chastity"].includes($activeSlave.dickAccessory)>> - her caged cock does not show it, but she's flushed and willing. + $his caged cock does not show it, but $he's flushed and willing. <<elseif ($activeSlave.dick > 0) && !canAchieveErection($activeSlave)>> - as she <<if $activeSlave.belly >= 100000>>struggles to pull her gravid body<<elseif $activeSlave.belly >= 10000>>hefts her gravid body<<elseif $activeSlave.belly >= 5000>>cradles her belly and carefully climbs<<else>>clambers<</if>> up onto the couch, she dribbles precum across the leather. + as $he <<if $activeSlave.belly >= 100000>>struggles to pull $his gravid body<<elseif $activeSlave.belly >= 10000>>hefts $his gravid body<<elseif $activeSlave.belly >= 5000>>cradles $his belly and carefully climbs<<else>>clambers<</if>> up onto the couch, $he dribbles precum across the leather. <<elseif $activeSlave.dick > 0>> - she has a painful hardon. + $he has a painful hardon. <<elseif $activeSlave.clit > 0>> - her big clit is visibly erect. + $his big clit is visibly erect. <<elseif $activeSlave.vagina == -1>> - and is unconsciously presenting her ass. + and is unconsciously presenting $his ass. <<else>> - her pussylips are flushed and moist. + $his pussylips are flushed and moist. <</if>> - You tell her to relax, and push a single lubed finger into her anus. She gasps, but does not resist, burrowing her face down into the couch and doing her best to calm herself. After a few minutes, you withdraw your finger and press the slick tip of your <<if $PC.dick == 1>>dick<<else>>strap-on<</if>> against her virgin rosebud. She starts in spite of herself, but breathes out obediently, relaxing her butthole enough to let you in. She squeals at the sudden invasion, but you hold her and let her get used to you gradually. After a few minutes you encourage her to + You tell $him to relax, and push a single lubed finger into $his anus. $He gasps, but does not resist, burrowing $his face down into the couch and doing $his best to calm $himself. After a few minutes, you withdraw your finger and press the slick tip of your <<if $PC.dick == 1>>dick<<else>>strap-on<</if>> against $his virgin rosebud. $He starts in spite of $himself, but breathes out obediently, relaxing $his butthole enough to let you in. $He squeals at the sudden invasion, but you hold $him and let $him get used to you gradually. After a few minutes you encourage $him to <<if ["chastity", "combined chastity"].includes($activeSlave.dickAccessory)>> - stimulate her own nipples, + stimulate $his own nipples, <<elseif ($activeSlave.dick > 0) && !canAchieveErection($activeSlave)>> - play with her soft cock, + play with $his soft cock, <<elseif $activeSlave.dick > 0>> jack off, <<elseif $activeSlave.clit > 0>> - rub her clit, + rub $his clit, <<elseif $activeSlave.vagina == 1>> - frantically rub her perineum, + frantically rub $his perineum, <<else>> - play with her pussy, + play with $his pussy, <</if>> - and she almost sobs with relief. After she's almost forgotten the phallus in her ass, you begin to fuck her gradually. She climaxes before too long, her tight sphincter <<if $PC.dick == 1>>hugging your shaft wonderfully<<else>>visibly compressing the strap-on<</if>>. Confused, she mumbles into the couch, "<<Master>>, I c-came. I came to your thing in my butt. A-am I - doe<<s>> that make me a <<s>>lut?" You assure her that it does. Surprisingly, she does not break down, but exhales slowly and squares her shoulders, visibly resolving to @@.hotpink;be a slut@@ if she has to. She even takes a bit longer than strictly necessary giving herself her @@.lime;first@@ post-sex enema. + and $he almost sobs with relief. After $he's almost forgotten the phallus in $his ass, you begin to fuck $him gradually. $He climaxes before too long, $his tight sphincter <<if $PC.dick == 1>>hugging your shaft wonderfully<<else>>visibly compressing the strap-on<</if>>. Confused, $he mumbles into the couch, "<<Master>>, I c-came. I came to your thing in my butt. A-am I - doe<<s>> that make me a <<s>>lut?" You assure $him that it does. Surprisingly, $he does not break down, but exhales slowly and squares $his shoulders, visibly resolving to @@.hotpink;be a slut@@ if $he has to. $He even takes a bit longer than strictly necessary giving $himself $his @@.lime;first@@ post-sex enema. <<set $activeSlave.devotion += 5, $activeSlave.anus += 1, $activeSlave.analCount++>> <<set $analTotal++>> <<if canImpreg($activeSlave, $PC)>> @@ -1568,10 +1568,10 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <</if>> <</replace>> <</link>> //This option will take anal virginity// -<br><<link "Girls' butts are for pounding">> - <<replace "#name">>$activeSlave.slaveName<</replace>> +<br><<link "$Girls' butts are for pounding">> + <<EventNameDelink $activeSlave>> <<replace "#result">> - You tell her that her butt is your property, just like $subSlave.slaveName's. She looks @@.gold;terrified.@@ You continue, telling her to bring your property over to you. She stumbles over, begging, "P-plea<<s>>e, fuck me <<Master>>, plea<<s>>e don't do <<s>>tuff to my butt. It'<<s>> going t-to h-hurt.<<if $activeSlave.preg > 20>> And I-I'm r-really pregnant.<<elseif $activeSlave.pregKnown == 1>> And I-I'm p-pregnant.<</if>>" You push her down across her desk, giving her a swat across the rump to warn her to shut up. She does, though she makes a little squealing noise when you begin to grope her ass, working your way in towards her virgin backdoor. When she feels <<if $PC.dick == 1>>your lubed cockhead<<else>>a lubed strap-on<</if>> sliding between her buttocks and then pressing against her anus, she bursts out, "Plea<<s>>e no, <<Master>>! Plea<<s>>e not my - AAAH! OW!" and bursts into tears. You give her a few seconds to get used to your girth and then begin to fuck her delicious little virgin behind. Despite the pain, the <<if $activeSlave.vagina != -1>>stimulation gets her wet<<elseif $activeSlave.prostate != 0>>prostate stimulation gets her hard<<else>>stimulation brings a little fluid out of her<</if>>, and you tell her that she clearly wants it. She doesn't know what to say in response, so she just cries harder as <<if $activeSlave.dick == 0>>you reach around to cup her soaking cunt possessively<<else>>she starts to leak despite her displeasure<</if>>. $His butthole is so wonderfully tight that you orgasm quickly, throwing her unresisting butt over onto the couch for another round. She's @@.green;no longer repressed,@@ but she now @@.red;hates@@ having her @@.lime;newly loosened butt@@ fucked. + You tell $him that $his butt is your property, just like $subSlave.slaveName's. $He looks @@.gold;terrified.@@ You continue, telling $him to bring your property over to you. $He stumbles over, begging, "P-plea<<s>>e, fuck me <<Master>>, plea<<s>>e don't do <<s>>tuff to my butt. It'<<s>> going t-to h-hurt.<<if $activeSlave.preg > 20>> And I-I'm r-really pregnant.<<elseif $activeSlave.pregKnown == 1>> And I-I'm p-pregnant.<</if>>" You push $him down across your desk, giving $him a swat across the rump to warn $him to shut up. $He does, though $he makes a little squealing noise when you begin to grope $his ass, working your way in towards $his virgin backdoor. When $he feels <<if $PC.dick == 1>>your lubed cockhead<<else>>a lubed strap-on<</if>> sliding between $his buttocks and then pressing against $his anus, $he bursts out, "Plea<<s>>e no, <<Master>>! Plea<<s>>e not my - AAAH! OW!" and bursts into tears. You give $him a few seconds to get used to your girth and then begin to fuck $his delicious little virgin behind. Despite the pain, the <<if $activeSlave.vagina != -1>>stimulation gets $him wet<<elseif $activeSlave.prostate != 0>>prostate stimulation gets $him hard<<else>>stimulation brings a little fluid out of $him<</if>>, and you tell $him that $he clearly wants it. $He doesn't know what to say in response, so $he just cries harder as <<if $activeSlave.dick == 0>>you reach around to cup $his soaking cunt possessively<<else>>$he starts to leak despite $his displeasure<</if>>. $His butthole is so wonderfully tight that you orgasm quickly, throwing $his unresisting butt over onto the couch for another round. $He's @@.green;no longer repressed,@@ but $he now @@.red;hates@@ having $his @@.lime;newly loosened butt@@ fucked. <<set $activeSlave.behavioralFlaw = 0, $activeSlave.sexualFlaw = "hates anal", $activeSlave.trust -= 5, $activeSlave.anus += 1, $activeSlave.analCount++>> <<set $analTotal++>> <<if canImpreg($activeSlave, $PC)>> @@ -1580,16 +1580,16 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <</replace>> <</link>> //This option will take anal virginity// <br><<link "$His butt is being saved for later">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> - You tell $him to sit down on the couch and listen. $He obeys, carefully avoiding the spot where you and $subSlave.slaveName embraced. You explain that $subSlave.slaveName is an experienced anal slave, and that you enjoy having sex with her there. You point out how much $subSlave.slaveName enjoyed herself ($activeSlave.slaveName studiously avoids <<if canSee($activeSlave)>>looking at<<else>>facing<</if>> the moist spot on the couch that evidences this), and tell her that anal sex can be very enjoyable. She <<if canSee($activeSlave)>>looks at<<else>>listens to<</if>> you uncomprehendingly,<<if $activeSlave.belly >= 5000>> her hand resting on her rounded middle,<</if>> so you try a different tack. You tell her that her anal virginity has a price: it makes her a more valuable slave. She'll probably be fucked back there someday soon, but it's not something you plan to do lightly. And in any case, she'll be trained to enjoy the experience when it happens. Hesitantly, she <<say>>s, "I under<<s>>tand, <<Master>>. I @@.mediumaquamarine;tru<<s>>t you.@@" She seems more confident for the rest of the inspection, and when it's done, she leaves with less worry on $his face. + You tell $him to sit down on the couch and listen. $He obeys, carefully avoiding the spot where you and $subSlave.slaveName embraced. You explain that $subSlave.slaveName is an experienced anal slave, and that you enjoy having sex with _him2 there. You point out how much $subSlave.slaveName enjoyed _himself2 ($activeSlave.slaveName studiously avoids <<if canSee($activeSlave)>>looking at<<else>>facing<</if>> the moist spot on the couch that evidences this), and tell $him that anal sex can be very enjoyable. $He <<if canSee($activeSlave)>>looks at<<else>>listens to<</if>> you uncomprehendingly,<<if $activeSlave.belly >= 5000>> $his hand resting on $his rounded middle,<</if>> so you try a different tack. You tell $him that $his anal virginity has a price: it makes $him a more valuable slave. $He'll probably be fucked back there someday soon, but it's not something you plan to do lightly. And in any case, $he'll be trained to enjoy the experience when it happens. Hesitantly, $he <<say>>s, "I under<<s>>tand, <<Master>>. I @@.mediumaquamarine;tru<<s>>t you.@@" $He seems more confident for the rest of the inspection, and when it's done, $he leaves with less worry on $his face. <<set $activeSlave.trust += 5>> <</replace>> <</link>> <br><<link "$His butt is being sold today">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> - You tell her that her butt is your property, just like $subSlave.slaveName's. She looks @@.gold;terrified,@@ but this is nothing to her reaction when another slave arrives to bring her out for an auction of $his virgin anus. She's dragged out, whining, "P-plea<<s>>e, <<Master>>, plea<<s>>e don't <<s>>ell my butthole! I'll do anything! Plea<<s>>e!" Her pleas are unavailing. <<if $assistantName == "your personal assistant">>Your personal assistant<<else>>$assistantName<</if>> conducts a brisk streetside auction of the weeping slave girl, using compliance systems to force her to spread her quivering buttocks for the crowd. The @@.yellowgreen;winning bidder@@ uses a public stall to do the deed; its thin walls are nowhere near enough to disguise her whining and sobbing as he @@.lime;takes $his anal virginity.@@ $He now @@.red;hates anal.@@ + You tell $him that $his butt is your property, just like $subSlave.slaveName's. $He looks @@.gold;terrified,@@ but this is nothing to $his reaction when another slave arrives to bring $him out for an auction of $his virgin anus. $He's dragged out, whining, "P-plea<<s>>e, <<Master>>, plea<<s>>e don't <<s>>ell my butthole! I'll do anything! Plea<<s>>e!" $His pleas are unavailing. <<if $assistantName == "your personal assistant">>Your personal assistant<<else>>$assistantName<</if>> conducts a brisk streetside auction of the weeping slave $girl, using compliance systems to force $him to spread $his quivering buttocks for the crowd. The @@.yellowgreen;winning bidder@@ uses a public stall to do the deed; its thin walls are nowhere near enough to disguise $his whining and sobbing as he @@.lime;takes $his anal virginity.@@ $He now @@.red;hates anal.@@ <<set $cash += 500>> <<set $activeSlave.sexualFlaw = "hates anal", $activeSlave.trust -= 5, $activeSlave.anus += 1, $activeSlave.analCount++, $activeSlave.publicCount++>> <<set $analTotal++>> @@ -1602,9 +1602,15 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<case "top exhaustion">> <<link "They're not done yet">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> - $subSlave.slaveName is out of it, and doesn't realize you're there. The first indication she gets of your presence is the <<if $PC.dick == 1>>head of your penis<<else>>tip of your strap-on<</if>> <<if $subSlave.anus > 2>>sliding easily inside her soft butthole<<elseif $subSlave.anus > 1>>pushing firmly up her relaxed anus<<else>>penetrating her tight little asshole<</if>>. She groans, but greets you properly, slurring a little from sheer fatigue and overstimulation. Nevertheless, she reaches clumsily around to spread her cheeks for you. As you begin to fuck her butt, your invading <<if $PC.dick == 1>>cock<<else>>phallus<</if>> <<if canPenetrate($subSlave)>>presses against her prostate, forcing her hard again<<else>>and thrusting hips get her moving again, too<</if>>. Beneath her, $activeSlave.slaveName shifts uncomfortably at the resumed sex and the extra weight. To relieve her, you haul her <<if $activeSlave.relationship > 4>>wife<<else>>lover<</if>> into a more upright position so she can fuck and be fucked while straddling $activeSlave.slaveName's pressed-together thighs. You fuck $subSlave.slaveName just as hard as she was fucking $activeSlave.slaveName, taking your pleasure from her without mercy. Despite this, the sexed-out slave orgasms again. + $subSlave.slaveName is out of it, and doesn't realize you're there. The first indication _he2 gets of your presence is the <<if $PC.dick == 1>>head of your penis<<else>>tip of your strap-on<</if>> <<if $subSlave.anus > 2>>sliding easily inside _his2 soft butthole<<elseif $subSlave.anus > 1>>pushing firmly up _his2 relaxed anus<<else>>penetrating _his2 tight little asshole<</if>>. _He2 groans, but greets you properly, slurring a little from sheer fatigue and overstimulation. Nevertheless, _he2 reaches clumsily around to spread _his2 cheeks for you. As you begin to fuck _his2 butt, your invading <<if $PC.dick == 1>>cock<<else>>phallus<</if>> + <<if canPenetrate($subSlave)>> + <<if $subSlave.prostate>>presses against _his2 prostate<<else>>stirs up _his2 insides<</if>>, forcing _him2 hard again. + <<else>> + and thrusting hips get _him2 moving again, too. + <</if>> + Beneath _him2, $activeSlave.slaveName shifts uncomfortably at the resumed sex and the extra weight. To relieve $him, you haul $his <<if $activeSlave.relationship > 4>>wife<<else>>lover<</if>> into a more upright position so _he2 can fuck and be fucked while straddling $activeSlave.slaveName's pressed-together thighs. You fuck $subSlave.slaveName just as hard as _he2 was fucking $activeSlave.slaveName, taking your pleasure from _him2 without mercy. Despite this, the sexed-out slave orgasms again. <<if ($PC.dick == 1) && (canPenetrate($subSlave))>>Deciding to really fill $activeSlave.slaveName, you shove $subSlave.slaveName's quivering body off to one side without ceremony, shove yourself inside the $desc on the bottom, and add your cum to the two loads already inside $him.<<else>>You climax yourself, and then stand.<</if>> Pleased, you head off to find more amusement, leaving the sex-stained slaves dozing in each other's arms, @@.hotpink;not thinking for a moment@@ about how profoundly sexual pleasure dominates their lives. <<= SimpleVCheck()>> @@ -1627,46 +1633,46 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <</replace>> <</link>> <br><<link "Rinse off with them">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> - You announce that they definitely need to rinse off before bed. They both start with surprise and then greet you as best they can, though $subSlave.slaveName groans a little at having to get up so soon after exhausting herself and then climaxing. Giggling, $activeSlave.slaveName heaves her to her feet, and between the two of you, you get her to the showers. She's really spent; her legs are wobbly, and she slithers down to crouch under the warm water as soon as she can. Uncoordinated, she fumbles for the soap and washes her sore body, only vaguely noticing the sex going on mere centimeters over her head. Since $activeSlave.slaveName was being such a good girl and looking after her <<if $activeSlave.relationship > 4>>wife's<<else>>lover's<</if>> needs, you take her in the way she likes it best, + You announce that they definitely need to rinse off before bed. They both start with surprise and then greet you as best they can, though $subSlave.slaveName groans a little at having to get up so soon after exhausting _himself2 and then climaxing. Giggling, $activeSlave.slaveName heaves _him2 to _his2 feet, and between the two of you, you get _him2 to the showers. _He2's really spent; _his2 legs are wobbly, and _he2 slithers down to crouch under the warm water as soon as _he2 can. Uncoordinated, _he2 fumbles for the soap and washes _his2 sore body, only vaguely noticing the sex going on mere centimeters over _his2 head. Since $activeSlave.slaveName was being such a good $girl and looking after $his <<if $activeSlave.relationship > 4>>wife's<<else>>lover's<</if>> needs, you take $him in the way $he likes it best, <<switch $activeSlave.fetish>> <<case "submissive">> - holding the submissive $desc up against the shower wall and giving her a second reaming. + holding the submissive $desc up against the shower wall and giving $him a second reaming. <<= SimpleVCheck()>> <<case "cumslut">> - giving the cumslut a soapy massage as she <<if $PC.dick == 1>>sucks your cock<<if $PC.vagina == 1>> and <</if>><</if>><<if $PC.vagina == 1>>eats you out<</if>>. + giving the cumslut a soapy massage as $he <<if $PC.dick == 1>>sucks your cock<<if $PC.vagina == 1>> and <</if>><</if>><<if $PC.vagina == 1>>eats you out<</if>>. <<set $activeSlave.oralCount += 1>> <<set $oralTotal += 1>> <<case "humiliation">> - holding the humiliation slut up against the shower wall so passing slaves can see her get fucked. + holding the humiliation slut up against the shower wall so passing slaves can see $him get fucked. <<= SimpleVCheck()>> <<case "buttslut">> - holding the submissive $desc up against the shower wall and giving her a second anal reaming. + holding the submissive $desc up against the shower wall and giving $him a second anal reaming. <<= AnalVCheck()>> <<case "boobs">> - fucking the boob fetishist from behind so you can play with her nipples, + fucking the boob fetishist from behind so you can play with $his nipples, <<= SimpleVCheck()>> <<case "pregnancy">> <<if $activeSlave.bellyPreg >= 1500>> - massaging the pregnant slut's belly as you fuck her. + massaging the pregnant slut's belly as you fuck $him. <<elseif $activeSlave.belly >= 1500>> - massaging the slut's belly as you fuck her. + massaging the slut's belly as you fuck $him. <<else>> - pushing the impregnation slut into a corner and pretending you're knocking her up. + pushing the impregnation slut into a corner and pretending you're knocking $him up. <</if>> <<= SimpleVCheck()>> <<case "dom" "sadist">> - holding the sexually aggressive $desc against the wall so she can push herself back against you. + holding the sexually aggressive $desc against the wall so $he can push $himself back against you. <<= SimpleVCheck()>> <<case "masochist">> - pushing the pain slut into a corner and spanking her while you fuck her. + pushing the pain slut into a corner and spanking $him while you fuck $him. <<= SimpleVCheck()>> <<default>> - pushing the vanilla girl's back against the wall and kissing her lovingly. + pushing the vanilla $girl's back against the wall and kissing $him lovingly. <<= SimpleVCheck()>> <</switch>> - As $activeSlave.slaveName orgasms in your arms, you feel $subSlave.slaveName hug your thighs lightly before starting to <<if $PC.dick == 1>>blow you<<else>>lick your pussy<</if>> herself. Afterward, you bring the tired pair back to their bed and get them tucked in. They @@.mediumaquamarine;find the gesture comforting,@@ and are asleep in an instant. + As $activeSlave.slaveName orgasms in your arms, you feel $subSlave.slaveName hug your thighs lightly before starting to <<if $PC.dick == 1>>blow you<<else>>lick your pussy<</if>> _himself2. Afterward, you bring the tired pair back to their bed and get them tucked in. They @@.mediumaquamarine;find the gesture comforting,@@ and are asleep in an instant. <<= SimpleVCheck()>> <<set $activeSlave.trust += 4>> <<set $subSlave.oralCount++, $subSlave.penetrativeCount++, $subSlave.trust += 4>> @@ -1678,11 +1684,11 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<case "simple assault">> <<link "Slide in behind">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> - You order $activeSlave.slaveName to go back to what she was doing. She's a little disappointed you're not joining in, but she obeys, pounding the crying $subSlave.slaveName without mercy. Then $activeSlave.slaveName feels the head of <<if $PC.dick>>your dick<<else>>a strap-on<</if>> brush her butt. + You order $activeSlave.slaveName to go back to what $he was doing. $He's a little disappointed you're not joining in, but $he obeys, pounding the crying $subSlave.slaveName without mercy. Then $activeSlave.slaveName feels the head of <<if $PC.dick>>your dick<<else>>a strap-on<</if>> brush $his butt. <<run Enunciate($activeSlave)>> - "Ooh!" she squeals, @@.hotpink;pleased she was wrong after all.@@ "Ye<<s>>, thank you, <<Master>>! Fuck me! Fuck me while I rape her!" Underneath her, $subSlave.slaveName cries harder, even though $activeSlave.slaveName has to stop her thrusting for a moment to let you inside. In fact, you reflect as you hammer $activeSlave.slaveName's <<if $activeSlave.vagina != 0 && canDoVaginal($activeSlave)>><<if $activeSlave.vagina > 2>>roomy<<elseif $activeSlave.vagina > 1>>delectable<<else>>tight little<</if>> cunt<<else>><<if $activeSlave.anus > 2>>gaping<<elseif $activeSlave.anus > 1>>relaxed<<else>>poor little<</if>> asspussy<</if>>, it's a little strange that $subSlave.slaveName @@.gold;seems to think this is worse@@ than just being raped by $activeSlave.slaveName. After all, having your <<if $PC.dick>>turgid cock<<else>>formidable strap-on<</if>> sliding energetically in and out of her <<if $activeSlave.vagina != 0 && canDoVaginal($activeSlave)>>womanhood<<else>>rectum<</if>> is cramping $activeSlave.slaveName's style a bit. Maybe it's that $subSlave.slaveName is a little squashed under there. + "Ooh!" $he squeals, @@.hotpink;pleased $he was wrong after all.@@ "Ye<<s>>, thank you, <<Master>>! Fuck me! Fuck me while I rape <<him 2>>!" Underneath $him, $subSlave.slaveName cries harder, even though $activeSlave.slaveName has to stop $his thrusting for a moment to let you inside. In fact, you reflect as you hammer $activeSlave.slaveName's <<if $activeSlave.vagina != 0 && canDoVaginal($activeSlave)>><<if $activeSlave.vagina > 2>>roomy<<elseif $activeSlave.vagina > 1>>delectable<<else>>tight little<</if>> cunt<<else>><<if $activeSlave.anus > 2>>gaping<<elseif $activeSlave.anus > 1>>relaxed<<else>>poor little<</if>> asspussy<</if>>, it's a little strange that $subSlave.slaveName @@.gold;seems to think this is worse@@ than just being raped by $activeSlave.slaveName. After all, having your <<if $PC.dick>>turgid cock<<else>>formidable strap-on<</if>> sliding energetically in and out of $his <<if $activeSlave.vagina != 0 && canDoVaginal($activeSlave)>>womanhood<<else>>rectum<</if>> is cramping $activeSlave.slaveName's style a bit. Maybe it's that $subSlave.slaveName is a little squashed under there. <<set $activeSlave.devotion += 4>> <<set $activeSlave.penetrativeCount++, $penetrativeTotal++>> <<if $activeSlave.vagina != 0 && canDoVaginal($activeSlave)>> @@ -1712,25 +1718,25 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <</replace>> <</link>> <br><<link "Slide in alongside">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> You order $activeSlave.slaveName to flip $subSlave.slaveName over and let you in too. Just as you expected, $activeSlave.slaveName responds with a vicious giggle, and $subSlave.slaveName cries even harder. <<run Enunciate($subSlave)>> - "Plea<<s>>e!" she screams. "<<Master $subSlave>>, it'll hurt! Plea<<s>>e don't!" + "Plea<<s>>e!" _he2 screams. "<<Master $subSlave>>, it'll hurt! Plea<<s>>e don't!" <<set _fit = 0>> <<if _vaginal>><<if $subSlave.vagina > 2>><<set _fit = 1>><</if>><<else>><<if $subSlave.anus > 2>><<set _fit = 1>><</if>><</if>> <<if _fit>> - It's not clear what she's so worked up about. _His2 cavernous <<if _vaginal>>cunt<<else>>asshole<</if>> should be able to take two dicks without trouble. + It's not clear what _he2's so worked up about. _His2 cavernous <<if _vaginal>>cunt<<else>>asshole<</if>> should be able to take two dicks without trouble. <<else>> <<if $activeSlave.dick < 5>> - It's not clear what she's so worked up about. <<if $PC.dick>>You're quite large<<else>>You use a big strap-on<</if>>, but $activeSlave.slaveName's penis is reasonably sized. It's not like $subSlave.slaveName's <<if _vaginal>>cunt<<else>>asshole<</if>> is going to be permanently damaged or anything. + It's not clear what _he2's so worked up about. <<if $PC.dick>>You're quite large<<else>>You use a big strap-on<</if>>, but $activeSlave.slaveName's penis is reasonably sized. It's not like $subSlave.slaveName's <<if _vaginal>>cunt<<else>>asshole<</if>> is going to be permanently damaged or anything. <<else>> - She's right to be concerned. <<if $PC.dick>>You're quite large<<else>>You use a big strap-on<</if>>, and $activeSlave.slaveName's penis is huge too. $subSlave.slaveName's <<if _vaginal>>cunt<<else>>asshole<</if>> is in serious peril. + _He2's right to be concerned. <<if $PC.dick>>You're quite large<<else>>You use a big strap-on<</if>>, and $activeSlave.slaveName's penis is huge too. $subSlave.slaveName's <<if _vaginal>>cunt<<else>>asshole<</if>> is in serious peril. <</if>> <</if>> - $activeSlave.slaveName pulls out, sits her bare butt down on the floor, and hauls a struggling $subSlave.slaveName onto her lap, shoving her stiff prick back where it belongs. Then $activeSlave.slaveName hauls $subSlave.slaveName's legs back, offering you her already-occupied hole. - <<if $subSlave.vagina != 0 && _vaginal == 0>>$subSlave.slaveName has another hole, and she tearfully begs you to use it, but in vain.<</if>> - You jam yourself inside, enjoying $subSlave.slaveName's wriggling<<if !_fit>> and the extreme tightness of her overfilled insides. She spasms with pain as you force your way inside her<</if>>. $activeSlave.slaveName can't thrust much from where she is, and serves mostly to tighten $subSlave.slaveName for you, but she <<if canSee($activeSlave)>>stares into your eyes lovingly<<else>>lovingly smiles at you<</if>>. Playing such an equal sexual role with you definitely @@.mediumaquamarine;builds her trust@@ in her role. For her part, $subSlave.slaveName is @@.gold;thoroughly degraded,@@ <<if _fit>>but physically unhurt.<<else>>and @@.orange;stretched out.@@<</if>> + $activeSlave.slaveName pulls out, sits $his bare butt down on the floor, and hauls a struggling $subSlave.slaveName onto $his lap, shoving $his stiff prick back where it belongs. Then $activeSlave.slaveName hauls $subSlave.slaveName's legs back, offering you _his2 already-occupied hole. + <<if $subSlave.vagina != 0 && _vaginal == 0>>$subSlave.slaveName has another hole, and _he2 tearfully begs you to use it, but in vain.<</if>> + You jam yourself inside, enjoying $subSlave.slaveName's wriggling<<if !_fit>> and the extreme tightness of _his2 overfilled insides. _He2 spasms with pain as you force your way inside _him2<</if>>. $activeSlave.slaveName can't thrust much from where $he is, and serves mostly to tighten $subSlave.slaveName for you, but $he <<if canSee($activeSlave)>>stares into your eyes lovingly<<else>>lovingly smiles at you<</if>>. Playing such an equal sexual role with you definitely @@.mediumaquamarine;builds $his trust@@ in #his role. For _his2 part, $subSlave.slaveName is @@.gold;thoroughly degraded,@@ <<if _fit>>but physically unhurt.<<else>>and @@.orange;stretched out.@@<</if>> <<set $activeSlave.trust += 4, $activeSlave.penetrativeCount++, $penetrativeTotal++>> <<set $subSlave.trust -= 4>> <<if _vaginal>> @@ -1755,14 +1761,14 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <</replace>> <</link>> <br><<link "Put a stop to it">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> You order $activeSlave.slaveName to stop raping $subSlave.slaveName. <<run Enunciate($activeSlave)>> - "Ye<<s>>, <<Master>>," $he <<say>>s automatically, and gets up, pulling her dick out of $subSlave.slaveName's poor <<if _vaginal>>pussy<<else>>asshole<</if>>. $activeSlave.slaveName doesn't understand, and her prick softens quickly with her confusion. $He thought $he didn't need consent to fuck other slaves, and $he @@.gold;doubts $himself.@@ + "Ye<<s>>, <<Master>>," $he <<say>>s automatically, and gets up, pulling $his dick out of $subSlave.slaveName's poor <<if _vaginal>>pussy<<else>>asshole<</if>>. $activeSlave.slaveName doesn't understand, and $his prick softens quickly with $his confusion. $He thought $he didn't need consent to fuck other slaves, and $he @@.gold;doubts $himself.@@ <br><br> <<run Enunciate($subSlave)>> - $subSlave.slaveName gets to her feet too, using a hand to massage her outraged hole. "Thank you, <<Master $subSlave>>, thank you," she repeats over and over, @@.mediumaquamarine;weeping with relief.@@ + $subSlave.slaveName gets to _his2 feet too, using a hand to massage _his2 outraged hole. "Thank you, <<Master $subSlave>>, thank you," _he2 repeats over and over, @@.mediumaquamarine;weeping with relief.@@ <<set $activeSlave.trust -= 4, $activeSlave.penetrativeCount++, $penetrativeTotal++>> <<set $subSlave.trust += 4>> <<if _vaginal>><<set $subSlave.vaginalCount++, $vaginalTotal++>><<else>><<set $subSlave.analCount++, $analTotal++>><</if>> @@ -1773,33 +1779,33 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<case "cockmilk interception">> <<link "Step in for the stimulator">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> <<set $subSlave.analCount++, $analTotal++>> <<if canImpreg($subSlave, $PC)>> <<= knockMeUp($subSlave, 5, 1, -1, 1)>> <</if>> - You command the machine to cease stimulating<<if $subSlave.anus < 3 || canDoVaginal($subSlave)>> and leave $subSlave.slaveName's ass alone for now. She<<else>>, but leave its dildo where it is, for now. $subSlave.slaveName<</if>> <<if $subSlave.voice != 0>>moans with frustration<<else>>wriggles uncomfortably<</if>>, incipient orgasm ruined. Below her, $activeSlave.slaveName makes a whining noise past her mouth full of dick, not understanding what's happened. She makes to start getting out from under $subSlave.slaveName and the machine, to investigate, but before she can even put the dick down, she <<if canSee($activeSlave)>>sees a pair of <<if $PC.title>>strong<<else>>feminine<</if>> hands reach around either side of $subSlave.slaveName's torso and seize hold of her <<else>>hears a pair of hands seize hold of $subSlave.slaveName's <</if>><<if $subSlave.lactation == 0>>milkless breasts<<else>>milk-filled udders<</if>>. $activeSlave.slaveName can't see<<if canSee($activeSlave)>> who it is<</if>>, but she knows it's you. "Mhhf, hi, <<Master>>," she manages, letting $subSlave.slaveName's <<if canAchieveErection($subSlave)>>hard cockhead spring free of her mouth with a pop<<else>>soft dick fall out of her mouth with a wet noise<</if>>. "Should I, um, get out from under here?" + You command the machine to cease stimulating<<if $subSlave.anus < 3 || canDoVaginal($subSlave)>> and leave $subSlave.slaveName's ass alone for now. _He2<<else>>, but leave its dildo where it is, for now. $subSlave.slaveName<</if>> <<if $subSlave.voice != 0>>moans with frustration<<else>>wriggles uncomfortably<</if>>, incipient orgasm ruined. Below _him2, $activeSlave.slaveName makes a whining noise past $his mouth full of dick, not understanding what's happened. $He makes to start getting out from under $subSlave.slaveName and the machine, to investigate, but before $he can even put the dick down, $he <<if canSee($activeSlave)>>sees a pair of <<if $PC.title>>strong<<else>>feminine<</if>> hands reach around either side of $subSlave.slaveName's torso and seize hold of _his2 <<else>>hears a pair of hands seize hold of $subSlave.slaveName's <</if>><<if $subSlave.lactation == 0>>milkless breasts<<else>>milk-filled udders<</if>>. $activeSlave.slaveName can't see<<if canSee($activeSlave)>> who it is<</if>>, but $he knows it's you. "Mhhf, hi, <<Master>>," $he manages, letting $subSlave.slaveName's <<if canAchieveErection($subSlave)>>hard cockhead spring free of $his mouth with a pop<<else>>soft dick fall out of $his mouth with a wet noise<</if>>. "Should I, um, get out from under here?" <br><br> - You order her to stay where she is, and go back to sucking dick. "Ye<<s>>, <<Master>>," she giggles, and then shuts up as her mouth is occupied once more. $subSlave.slaveName, who's been obediently still under you as she waits for your pleasure, stiffens as she feels her dickhead surrounded by warm wetness once more. She's got more coming. + You order $him to stay where $he is, and go back to sucking dick. "Ye<<s>>, <<Master>>," $he giggles, and then shuts up as $his mouth is occupied once more. $subSlave.slaveName, who's been obediently still under you as _he2 waits for your pleasure, stiffens as _he2 feels _his2 dickhead surrounded by warm wetness once more. _He2's got more coming. <<if canDoVaginal($subSlave)>> - She's got a cock and two fuckholes, so you instruct the machine to go back to stimulating, and adroitly lift her hips a little so that when the machine reinserts its stimulator, it penetrates her vagina and fucks that instead. Then you insert your <<if $PC.dick>>cock<<else>>strap-on<</if>> into her conveniently pre-fucked ass and start pounding<<if $PC.dick>>, feeling the vibration from inside her pussy on your dick through her insides<</if>>. + _He2's got a cock and two fuckholes, so you instruct the machine to go back to stimulating, and adroitly lift _his2 hips a little so that when the machine reinserts its stimulator, it penetrates _his2 vagina and fucks that instead. Then you insert your <<if $PC.dick>>cock<<else>>strap-on<</if>> into _his2 conveniently pre-fucked ass and start pounding<<if $PC.dick>>, feeling the vibration from inside _his2 pussy on your dick through _his2 insides<</if>>. <<elseif $subSlave.anus > 2>> - _His2 ass is so relaxed that your <<if $PC.dick>>cock<<else>>strap-on<</if>> slides in alongside the stimulator without much trouble. Once you're inserted, you instruct the machine to start stimulating again, and mercilessly double penetrate her ass<<if $PC.dick>>, enjoying the vibration against your cock as it slides against the stimulator<</if>>. + _His2 ass is so relaxed that your <<if $PC.dick>>cock<<else>>strap-on<</if>> slides in alongside the stimulator without much trouble. Once you're inserted, you instruct the machine to start stimulating again, and mercilessly double penetrate _his2 ass<<if $PC.dick>>, enjoying the vibration against your cock as it slides against the stimulator<</if>>. <<else>> - The stimulator is effective enough, but it can't match <<if $PC.dick>>a real cock<<else>>a strap-on wielded by a consummate master of the art<</if>>, which is of course what $subSlave.slaveName has up her ass in short order. + The stimulator is effective enough, but it can't match <<if $PC.dick>>a real cock<<else>>a strap-on wielded by a consummate master of the art<</if>>, which is of course what $subSlave.slaveName has up _his2 ass in short order. <</if>> - She was on the edge of orgasm when you stepped in, and this is just too much. She climaxes with indecent speed, involuntarily humping against the machine, shooting rope after rope of her cum into $activeSlave.slaveName's mouth<<if $PC.dick>> and spasming against your invading penis wonderfully<</if>>. You hold the quivering $subSlave.slaveName down and keep hammering her until you're certain she's fed $activeSlave.slaveName every drop she has. Then you let her up. + _He2 was on the edge of orgasm when you stepped in, and this is just too much. _He2 climaxes with indecent speed, involuntarily humping against the machine, shooting rope after rope of _his2 cum into $activeSlave.slaveName's mouth<<if $PC.dick>> and spasming against your invading penis wonderfully<</if>>. You hold the quivering $subSlave.slaveName down and keep hammering _him2 until you're certain _he2's fed $activeSlave.slaveName every drop _he2 has. Then you let _him2 up. <br><br> - As $subSlave.slaveName stumbles off, looking @@.hotpink;rather submissive,@@ $activeSlave.slaveName scoots out from underneath the machine. "<<Master>>," she <<say>>s @@.hotpink;devotedly,@@ "that ta<<s>>ted incredible. It ta<<s>>te<<s>> <<s>>o much better when you fuck it out of her!" She rubs her<<if $activeSlave.belly >= 5000>> rounded<</if>> tummy with exaggerated satisfaction, and then realizes that you weren't fucking for nearly long enough to have gotten off yourself. + As $subSlave.slaveName stumbles off, looking @@.hotpink;rather submissive,@@ $activeSlave.slaveName scoots out from underneath the machine. "<<Master>>," $he <<say>>s @@.hotpink;devotedly,@@ "that ta<<s>>ted incredible. It ta<<s>>te<<s>> <<s>>o much better when you fuck it out of <<him 2>>!" $He rubs $his<<if $activeSlave.belly >= 5000>> rounded<</if>> tummy with exaggerated satisfaction, and then realizes that you weren't fucking for nearly long enough to have gotten off yourself. <<if $activeSlave.lactation || $activeSlave.balls>> - "I need to be milked now, too," she <<say>>s flirtily, and turns to mount the machine in turn. "Plea<<s>>e, plea<<s>>e do me too!" The machine hasn't had a turn first, this time, so she's much tighter<<if $PC.dick>>, and when she's done being milked, she's got a load of your cum inside her<</if>>. + "I need to be milked now, too," $he <<say>>s flirtily, and turns to mount the machine in turn. "Plea<<s>>e, plea<<s>>e do me too!" The machine hasn't had a turn first, this time, so $he's much tighter<<if $PC.dick>>, and when $he's done being milked, $he's got a load of your cum inside $him<</if>>. <<set $activeSlave.analCount++, $analTotal++>> <<if canImpreg($activeSlave, $PC)>> <<= knockMeUp($activeSlave, 5, 1, -1, 1)>> <</if>> <<else>> - "Plea<<s>>e, plea<<s>>e let me drink your<<s>>, too," she moans, and gets down on her knees, opening her mouth and sticking out her tongue, begging for <<if $PC.dick>>your cock. You stick it straight down her throat, and soon add a second load of cum<<else>>you to mount her face. You do, and soon add a generous helping of femcum<</if>> to her breakfast. + "Plea<<s>>e, plea<<s>>e let me drink your<<s>>, too," $he moans, and gets down on $his knees, opening $his mouth and sticking out $his tongue, begging for <<if $PC.dick>>your cock. You stick it straight down $his throat, and soon add a second load of cum<<else>>you to mount $his face. You do, and soon add a generous helping of femcum<</if>> to $his breakfast. <<set $activeSlave.oralCount++, $oralTotal++>> <</if>> <<set $activeSlave.devotion += 3, $subSlave.devotion += 3>> @@ -1808,19 +1814,19 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <</link>> <<if $subSlave.lactation>> <br><<link "Make sure the cumslut gets a balanced diet">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> You stand by and watch the arresting scene until $subSlave.slaveName cums. The milking stations are designed to be pleasurable, so they're calibrated to drain girls' balls about as fast as they drain their udders, allowing them to enjoy both kinds of relief for the whole session. But $activeSlave.slaveName has falsified that for once; <<if $activeSlave.oralSkill > 95>> - the inside of her wet, hot mouth is really a delightful place for a penis, and she puts the machine's dick receptacle to shame. $subSlave.slaveName + the inside of $his wet, hot mouth is really a delightful place for a penis, and $he puts the machine's dick receptacle to shame. $subSlave.slaveName <<elseif $activeSlave.oralSkill > 60>> - she's a skilled cocksucker, and her wet, hot mouth is a much more stimulating place for a penis than the machine's dick receptacle. $subSlave.slaveName + $he's a skilled cocksucker, and $his wet, hot mouth is a much more stimulating place for a penis than the machine's dick receptacle. $subSlave.slaveName <<else>> - she's no oral master, but her mouth is wet and hot, and $subSlave.slaveName clearly likes it more than machine's dick receptacle. She + $he's no oral master, but $his mouth is wet and hot, and $subSlave.slaveName clearly likes it more than machine's dick receptacle. _He2 <</if>> - can feel that her breasts aren't nearly empty of milk yet, and of course the milkers are tugging at her teats as industriously as ever, so she relaxes luxuriantly as $activeSlave.slaveName starts to climb out from under her. + can feel that _his2 breasts aren't nearly empty of milk yet, and of course the milkers are tugging at _his2 teats as industriously as ever, so _he2 relaxes luxuriantly as $activeSlave.slaveName starts to climb out from under _him2. <br><br> - You announce your presence by ordering $activeSlave.slaveName to stay where $he is. Startled, $he sticks $his head out from under $subSlave.slaveName and chirps "Ye<<s>>, <<Master>>!" and scoots back under, waiting to see what you're planning. You straddle $subSlave.slaveName's face; as <<if canSee($subSlave)>>her vision is filled by your <<if $PC.dick>>erect dick<<else>>wet pussy<</if>><<else>>her nose samples the scent of <<if $PC.dick>>the precum budding at the tip of your erect dick<<else>>your wet pussy<</if>><</if>>, she opens her mouth compliantly and <<if $PC.dick>>receives her owner's hot cock, pressed past her lips and down her throat. She starts sucking<<else>>is rewarded with her owner's hot womanhood, pressed against her lips. She starts eating you out<</if>> obediently, until you reach down to her still-jiggling udders and tug one of the milkers loose. $subSlave.slaveName starts with discomfort, moaning uncomfortably into your <<if $PC.dick>>member<<else>>cunt<</if>> before getting back to work. _His2 <<if $subSlave.lactation > 1>>lactation is unnaturally copious<<else>>milk is really flowing<</if>>, and a thin stream of cream squirts out of her. It lands on $activeSlave.slaveName's face below, surprising her. She splutters comically, but obeys eagerly when you squeeze $subSlave.slaveName's freed boob and order $activeSlave.slaveName to start drinking. After all, you point out, a balanced diet is important. $activeSlave.slaveName @@.mediumaquamarine;giggles complaisantly@@ and reaches for the proffered tit. $subSlave.slaveName is still basking in the afterglow of her orgasm and shudders silently with overstimulation as she feels $activeSlave.slaveName's lips <<if $subSlave.nipples != "fuckable">>latch around<<else>>encircle<</if>> her $subSlave.nipples nipple. + You announce your presence by ordering $activeSlave.slaveName to stay where $he is. Startled, $he sticks $his head out from under $subSlave.slaveName and chirps "Ye<<s>>, <<Master>>!" and scoots back under, waiting to see what you're planning. You straddle $subSlave.slaveName's face; as <<if canSee($subSlave)>>_his2 vision is filled by your <<if $PC.dick>>erect dick<<else>>wet pussy<</if>><<else>>_his2 nose samples the scent of <<if $PC.dick>>the precum budding at the tip of your erect dick<<else>>your wet pussy<</if>><</if>>, _he2 opens _his2 mouth compliantly and <<if $PC.dick>>receives _his2 owner's hot cock, pressed past _his2 lips and down _his2 throat. _He2 starts sucking<<else>>is rewarded with _his2 owner's hot womanhood, pressed against _his2 lips. _He2 starts eating you out<</if>> obediently, until you reach down to _his2 still-jiggling udders and tug one of the milkers loose. $subSlave.slaveName starts with discomfort, moaning uncomfortably into your <<if $PC.dick>>member<<else>>cunt<</if>> before getting back to work. _His2 <<if $subSlave.lactation > 1>>lactation is unnaturally copious<<else>>milk is really flowing<</if>>, and a thin stream of cream squirts out of _him2. It lands on $activeSlave.slaveName's face below, surprising $him. $He splutters comically, but obeys eagerly when you squeeze $subSlave.slaveName's freed boob and order $activeSlave.slaveName to start drinking. After all, you point out, a balanced diet is important. $activeSlave.slaveName @@.mediumaquamarine;giggles complaisantly@@ and reaches for the proffered tit. $subSlave.slaveName is still basking in the afterglow of _his2 orgasm and shudders silently with overstimulation as _he2 feels $activeSlave.slaveName's lips <<if $subSlave.nipples != "fuckable">>latch around<<else>>encircle<</if>> _his2 $subSlave.nipples nipple. <<set $subSlave.oralCount++, $oralTotal++, $subSlave.mammaryCount++, $mammaryTotal++>> <<set $activeSlave.oralCount++, $oralTotal++>> <<set $activeSlave.trust += 5>> @@ -1830,38 +1836,38 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <</if>> <<if $PC.dick>> <br><<link "Substitute your cum">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> - You order $activeSlave.slaveName to put the dick back where it belongs and come out from under there. There's a lewd noise as she spits out $subSlave.slaveName's penis. "Ye<<s>>, <<Master>>!" she <<say>>s automatically, knowing your voice, and she scrabbles to obey, stuffing poor moaning $subSlave.slaveName's member back in its proper cum receptacle before hurriedly scooting out from under, - <<if $activeSlave.clitSetting == "cumslut">>gasping with the stimulation applied by her smart piercing, which is encouraging her to suck dick. - <<elseif $activeSlave.belly >= 10000>>a struggle considering just how big her <<if $activeSlave.bellyPreg >= 8000>>pregnancy<<else>>belly<</if>> is. - <<elseif $activeSlave.dick > 4>>her own <<if canAchieveErection($activeSlave)>>monster erection waving<<else>>monstrously limp dick flopping<</if>> around comedically as she does. + You order $activeSlave.slaveName to put the dick back where it belongs and come out from under there. There's a lewd noise as $he spits out $subSlave.slaveName's penis. "Ye<<s>>, <<Master>>!" $he <<say>>s automatically, knowing your voice, and $he scrabbles to obey, stuffing poor moaning $subSlave.slaveName's member back in its proper cum receptacle before hurriedly scooting out from under, + <<if $activeSlave.clitSetting == "cumslut">>gasping with the stimulation applied by $his smart piercing, which is encouraging $him to suck dick. + <<elseif $activeSlave.belly >= 10000>>a struggle considering just how big $his <<if $activeSlave.bellyPreg >= 8000>>pregnancy<<else>>belly<</if>> is. + <<elseif $activeSlave.dick > 4>>$his own <<if canAchieveErection($activeSlave)>>monster erection waving<<else>>monstrously limp dick flopping<</if>> around comedically as $he does. <<elseif $activeSlave.boobs > 4000>>a process made much more involved and a little funny by $activeSlave.slaveName's own gargantuan tits. - <<else>>her bare buttocks smacking painfully against the floor in her haste.<</if>> - She starts to scramble up to a standing position, but she only gets halfway before she notices that there's a<<if canAchieveErection($subSlave)>>nother<</if>> massively erect dick <<if canSee($activeSlave)>>pointed<<else>>poking<</if>> at her face. Yours. + <<else>>$his bare buttocks smacking painfully against the floor in $his haste.<</if>> + $He starts to scramble up to a standing position, but $he only gets halfway before $he notices that there's a<<if canAchieveErection($subSlave)>>nother<</if>> massively erect dick <<if canSee($activeSlave)>>pointed<<else>>poking<</if>> at $his face. Yours. <br><br> - $activeSlave.slaveName <<if $activeSlave.trust > 20>>wasn't really worried that she was in trouble; your tone was not angry and she wasn't breaking the rules. Even so, she giggles<<else>>was worried that she was in trouble; even through your tone wasn't angry, and even though she wasn't breaking the rules, she's afraid of you. So she giggles with relief<</if>> when she <<if canSee($activeSlave)>>sees<<else>>realizes<</if>> that she's going to get her drink of cum, just from a different source. + $activeSlave.slaveName <<if $activeSlave.trust > 20>>wasn't really worried that $he was in trouble; your tone was not angry and $he wasn't breaking the rules. Even so, $he giggles<<else>>was worried that $he was in trouble; even through your tone wasn't angry, and even though $he wasn't breaking the rules, $he's afraid of you. So $he giggles with relief<</if>> when $he <<if canSee($activeSlave)>>sees<<else>>realizes<</if>> that $he's going to get $his drink of cum, just from a different source. <<if $activeSlave.trust > 20>> - She runs her <<if $activeSlave.tonguePiercing>>pierced<<else>>pink<</if>> tongue over her lips hungrily, staring meaningfully at the cockhead centimeters in front of her face. "I'm <<s>>o happy, <<Master>>," she purrs. "You have the be<<s>>t cum.<<if $PC.balls > 1>> I'll never go hungry with you either.<</if>>" She's still right up against $subSlave.slaveName, and she reaches back to pat $subSlave.slaveName's butt reassuringly. "Your<<s>> is ni<<c>>e, but there'<<s>> only one <<Master>>." Then she starts sucking your dick. + $He runs $his <<if $activeSlave.tonguePiercing>>pierced<<else>>pink<</if>> tongue over $his lips hungrily, staring meaningfully at the cockhead centimeters in front of $his face. "I'm <<s>>o happy, <<Master>>," $he purrs. "You have the be<<s>>t cum.<<if $PC.balls > 1>> I'll never go hungry with you either.<</if>>" $He's still right up against $subSlave.slaveName, and $he reaches back to pat $subSlave.slaveName's butt reassuringly. "Your<<s>> is ni<<c>>e, but there'<<s>> only one <<Master>>." Then $he starts sucking your dick. <<else>> - "Thank you, <<Master>>," she <<say>>s dutifully. "Your, um, your cum i<<s>> the be<<s>>t.<<if $PC.balls > 1>> I'll never go hungry with you either.<</if>>" Momentarily unsure of herself, she blushes, and decides to take refuge in dicksucking. + "Thank you, <<Master>>," $he <<say>>s dutifully. "Your, um, your cum i<<s>> the be<<s>>t.<<if $PC.balls > 1>> I'll never go hungry with you either.<</if>>" Momentarily unsure of herself, $he blushes, and decides to take refuge in dicksucking. <</if>> <<if $activeSlave.oralSkill > 60>> - She's a well-trained cocksucker, and as the suction and her active tongue go to work, she reaches up and <<if $PC.vagina>>begins to lavish attention on your pussy with both hands. She fingers your labia lovingly before starting to dip her fingers inside you in time with her oral strokes at your shaft.<<else>>cups your<<if $PC.ballsImplant > 3>>monstrous balls<<elseif $PC.ballsImplant == 3>>hand-filling <<elseif $PC.ballsImplant == 2>>huge <<elseif $PC.ballsImplant == 1>>big <</if>>balls lovingly. A testicular massage during a blowjob might not actually increase ejaculation volume, but the care she shows suggests that the hungry slut might believe it does.<</if>> + $He's a well-trained cocksucker, and as the suction and $his active tongue go to work, $he reaches up and <<if $PC.vagina>>begins to lavish attention on your pussy with both hands. $He fingers your labia lovingly before starting to dip $his fingers inside you in time with $his oral strokes at your shaft.<<else>>cups your<<if $PC.ballsImplant > 3>>monstrous balls<<elseif $PC.ballsImplant == 3>>hand-filling <<elseif $PC.ballsImplant == 2>>huge <<elseif $PC.ballsImplant == 1>>big <</if>>balls lovingly. A testicular massage during a blowjob might not actually increase ejaculation volume, but the care $he shows suggests that the hungry slut might believe it does.<</if>> <<else>> - She's not an outstanding oral slave, so after she's working away reasonably well, you take her head in both hands and fuck her face. Not cruelly, but with comprehensive dominance. She can breathe, but she has to concentrate to do so, letting you rape her throat like a good little bitch. + $He's not an outstanding oral slave, so after $he's working away reasonably well, you take $his head in both hands and fuck $his face. Not cruelly, but with comprehensive dominance. $He can breathe, but $he has to concentrate to do so, letting you rape $his throat like a good little bitch. <</if>> When you cum, you thrust as far inside as you can manage and <<if $PC.balls == 3>> - pump oversized load after oversized load down her throat, steadily swelling her stomach with your jizz. + pump oversized load after oversized load down $his throat, steadily swelling $his stomach with your jizz. <<elseif $PC.balls == 2>> - pump your massive load into her until she gags. + pump your massive load into $him until $he gags. <<elseif $PC.balls == 1>> - unload your massive cumshot deep into her. + unload your massive cumshot deep into $him. <<else>> - shoot your load deep into her. + shoot your load deep into $him. <</if>> - Denied the taste of most of your semen, deposited far back and beyond her taste buds, she forms a tight seal around your shaft as she pulls her head back and off your cock, sucking the residual drops out of you and onto her tongue. She swallows, gives a <<if $activeSlave.trust > 20>>contented<<else>>relieved<</if>> sigh, and looks up at you @@.hotpink;devotedly.@@ + Denied the taste of most of your semen, deposited far back and beyond $his taste buds, $he forms a tight seal around your shaft as $he pulls $his head back and off your cock, sucking the residual drops out of you and onto $his tongue. $He swallows, gives a <<if $activeSlave.trust > 20>>contented<<else>>relieved<</if>> sigh, and looks up at you @@.hotpink;devotedly.@@ <<set $activeSlave.oralCount++, $oralTotal++>> <<set $activeSlave.devotion += 5>> <<set $slaves[$slaveIndices[$subSlave.ID]] = $subSlave>> @@ -1871,21 +1877,21 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<case "interslave begging">> -<<link "Give the poor slave what she's asking for">> - <<replace "#name">>$activeSlave.slaveName<</replace>> +<<link "Give the poor slave what $he's asking for">> + <<EventNameDelink $activeSlave>> <<replace "#result">> <<run Enunciate($subSlave)>> <<set _belly = bellyAdjective($subSlave)>> - You resolve to give the poor slave what she's asking for: $subSlave.slaveName<<if !_vaginal>>'s ass<</if>>. Your slaves might have the right to refuse each other, but they have to obey you. You clear your throat, getting both slaves' attention, and then fix your gaze on $subSlave.slaveName. You tilt your head ever so slightly in $activeSlave.slaveName's direction. That's all that's necessary. "Ye<<s>>, <<Master $subSlave>>!" says $subSlave.slaveName obediently, and <<if _vaginal>>gets right down at $activeSlave.slaveName's feet, lying on her back, legs spread<<if $subSlave.belly >= 5000>> to either side of her <<if $subSlave.bellyPreg >= 3000>>_belly pregnancy<<else>>_belly rounded belly<</if>><</if>>, compliantly offering up her pussy<<else>>turns her back to $activeSlave.slaveName, bends a little, cocks her hips, and spreads her buttocks, compliantly offering her asspussy<</if>>. She's yours to do with as you please, and you've decided to give her to $activeSlave.slaveName, at least for right now. + You resolve to give the poor slave what $he's asking for: $subSlave.slaveName<<if !_vaginal>>'s ass<</if>>. Your slaves might have the right to refuse each other, but they have to obey you. You clear your throat, getting both slaves' attention, and then fix your gaze on $subSlave.slaveName. You tilt your head ever so slightly in $activeSlave.slaveName's direction. That's all that's necessary. "Ye<<s>>, <<Master $subSlave>>!" <<say>>s $subSlave.slaveName obediently, and <<if _vaginal>>gets right down at $activeSlave.slaveName's feet, lying on _his2 back, legs spread<<if $subSlave.belly >= 5000>> to either side of _his2 <<if $subSlave.bellyPreg >= 3000>>_belly pregnancy<<else>>_belly rounded belly<</if>><</if>>, compliantly offering up _his2 pussy<<else>>turns _his2 back to $activeSlave.slaveName, bends a little, cocks _his2 hips, and spreads _his2 buttocks, compliantly offering _his2 asspussy<</if>>. _He2's yours to do with as you please, and you've decided to give _him2 to $activeSlave.slaveName, at least for right now. <br><br> <<run Enunciate($activeSlave)>> "Thank you, <<Master>>," <<say>>s $activeSlave.slaveName @@.hotpink;devotedly.@@ - <<if !_vaginal || $subSlave.vaginaLube > 1>>She lets a gob of her saliva fall onto her cockhead, <<if !_vaginal>>out of politeness to $subSlave.slaveName's asshole<<elseif $subSlave.vaginaLube > 0>>out of politeness, since she knows $subSlave.slaveName might not be really wet for her<<else>>since she knows that $subSlave.slaveName has a chronically dry cunt<</if>>.<</if>> - Then she + <<if !_vaginal || $subSlave.vaginaLube > 1>>$He lets a gob of $his saliva fall onto $his cockhead, <<if !_vaginal>>out of politeness to $subSlave.slaveName's asshole<<elseif $subSlave.vaginaLube > 0>>out of politeness, since $he knows $subSlave.slaveName might not be really wet for $him<<else>>since $he knows that $subSlave.slaveName has a chronically dry cunt<</if>>.<</if>> + Then $he <<if _vaginal>> - gets down between $subSlave.slaveName's legs, guiding herself inside the <<print SlaveTitle($subSlave)>>'s womanhood. $subSlave.slaveName kisses $activeSlave.slaveName on the lips, wordlessly encouraging her, and the randy <<print SlaveTitle($activeSlave)>> starts fucking her harder, moaning with satisfaction. + gets down between $subSlave.slaveName's legs, guiding $himself inside the <<print SlaveTitle($subSlave)>>'s womanhood. $subSlave.slaveName kisses $activeSlave.slaveName on the lips, wordlessly encouraging $him, and the randy <<print SlaveTitle($activeSlave)>> starts fucking _him2 harder, moaning with satisfaction. <<else>> - turns to $subSlave.slaveName, shoving her dick up the <<print SlaveTitle($subSlave)>>'s butt. $subSlave.slaveName gasps, wriggles herself into a more comfortable position, and then flexes her ass a little, letting the <<print SlaveTitle($activeSlave)>> whose cock is inside her anus know that she can go for it. $activeSlave.slaveName does, thrusting happily. + turns to $subSlave.slaveName, shoving $his dick up the <<print SlaveTitle($subSlave)>>'s butt. $subSlave.slaveName gasps, wriggles _himself2 into a more comfortable position, and then flexes _his2 ass a little, letting the <<print SlaveTitle($activeSlave)>> whose cock is inside _his2 anus know that $he can go for it. $activeSlave.slaveName does, thrusting happily. <</if>> <<set $activeSlave.devotion += 5, $activeSlave.penetrativeCount++, $penetrativeTotal++>> <<if _vaginal>> @@ -1905,15 +1911,15 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<if $subSlave.energy > 40>> <<if $subSlave.fetishKnown>> <br><<link "Effect a trade">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> - $subSlave.slaveName has a perfectly healthy libido; there has to be something she'd like getting from $activeSlave.slaveName in turn. You clear your throat, getting the slaves' attention, and ask $subSlave.slaveName if there's anything she'd like $activeSlave.slaveName to do for her in return for sex. $activeSlave.slaveName is so desperate that she makes a suggestion before $subSlave.slaveName can open her mouth. Everyone knows $subSlave.slaveName + $subSlave.slaveName has a perfectly healthy libido; there has to be something _he2'd like getting from $activeSlave.slaveName in turn. You clear your throat, getting the slaves' attention, and ask $subSlave.slaveName if there's anything _he2'd like $activeSlave.slaveName to do for _him2 in return for sex. $activeSlave.slaveName is so desperate that $he makes a suggestion before $subSlave.slaveName can open _his2 mouth. Everyone knows $subSlave.slaveName <<run Enunciate($activeSlave)>> <<switch $subSlave.fetish>> <<case "submissive">> - is a shameless submissive and loves to be fucked. $activeSlave.slaveName must know she's being had, at least a little. "$subSlave.slaveName," she purrs, "I'll fuck you until your toe<<s>> curl." + is a shameless submissive and loves to be fucked. $activeSlave.slaveName must know $he's being had, at least a little. "$subSlave.slaveName," $he purrs, "I'll fuck you until your toe<<s>> curl." <<case "cumslut">> - loves the taste of cum. "I promi<<s>>e to pull out and let you drink my cum, <<s>>traight from my cock," she purrs. + loves the taste of cum. "I promi<<s>>e to pull out and let you drink my cum, <<s>>traight from my cock," $he purrs. <<set $activeSlave.penetrativeCount++, $penetrativeTotal++>> <<set $subSlave.oralCount++, $oralTotal++>> <<case "humiliation">> @@ -1923,9 +1929,9 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<if canDoAnal($subSlave)>> $activeSlave.slaveName <<if $activeSlave.dick > 3>> - strokes herself a couple of times, showing off her <<if $activeSlave.dick > 5>>monstrous penis<<else>>big dick<</if>>. "Come on, don't you want thi<<s>> thing up your a<<ss>>?" she asks. + strokes $himself a couple of times, showing off $his <<if $activeSlave.dick > 5>>monstrous penis<<else>>big dick<</if>>. "Come on, don't you want thi<<s>> thing up your a<<ss>>?" $he asks. <<else>> - gestures to her <<if $activeSlave.dick > 1>>modest<<else>>pathetic<</if>> penis. "I know it'<<s>> really <<s>>mall," she <<say>>s. "But I'll u<<s>>e finger<<s>>, too. I'll make sure you get off." + gestures to $his <<if $activeSlave.dick > 1>>modest<<else>>pathetic<</if>> penis. "I know it'<<s>> really <<s>>mall," $he <<say>>s. "But I'll u<<s>>e finger<<s>>, too. I'll make sure you get off." <</if>> <<else>> "I know you can't take it up your a<<ss>> right now," says $activeSlave.slaveName, "but can't I rim you for a while fir<<s>>t?" @@ -1934,31 +1940,31 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <</if>> <<case "boobs">> <<if $subSlave.lactation>> - loves nothing more than to have her udders lovingly sucked dry. "I'll drain you," <<say>>s $activeSlave.slaveName, sticking her tongue out to make her meaning lewdly clear. "I'll nur<<s>>e from you until you come." + loves nothing more than to have _his2 udders lovingly sucked dry. "I'll drain you," <<say>>s $activeSlave.slaveName, sticking $his tongue out to make $his meaning lewdly clear. "I'll nur<<s>>e from you until you come." <<else>> - can't resist having her breasts pampered. "I'll give you a boob ma<<ss>>age," <<say>>s $activeSlave.slaveName, and puts up her hands, flexing her fingers lewdly. "A really good one. I'll be thorough!" + can't resist having _his2 breasts pampered. "I'll give you a boob ma<<ss>>age," <<say>>s $activeSlave.slaveName, and puts up $his hands, flexing $his fingers lewdly. "A really good one. I'll be thorough!" <</if>> <<case "pregnancy">> loves to be inseminated, <<if $subSlave.pregKnown == 1>> - even though she's already pregnant. "Come on, you know you want my <<s>>emen," <<say>>s $activeSlave.slaveName, idly toying with the precum gathering at her tip. "<<if _vaginal>>I'll do my be<<s>>t to shoot it all the way up into your womb. I might even make you pregnant twi<<c>>e, I'll cum in you <<s>>o hard<<else>>I'll fill your a<<ss>> up<</if>>." + even though _he2's already pregnant. "Come on, you know you want my <<s>>emen," <<say>>s $activeSlave.slaveName, idly toying with the precum gathering at $his tip. "<<if _vaginal>>I'll do my be<<s>>t to shoot it all the way up into your womb. I might even make you pregnant twi<<c>>e, I'll cum in you <<s>>o hard<<else>>I'll fill your a<<ss>> up<</if>>." <<else>> - regardless of whether she can actually get pregnant <<if _vaginal>>right this second<<else>>in her anus<</if>>. "Come on, you know you want my <<s>>emen," <<say>>s $activeSlave.slaveName, idly toying with the precum gathering at her tip. "I'll fill you up." + regardless of whether _he2 can actually get pregnant <<if _vaginal>>right this second<<else>>in _his2 anus<</if>>. "Come on, you know you want my <<s>>emen," <<say>>s $activeSlave.slaveName, idly toying with the precum gathering at $his tip. "I'll fill you up." <</if>> <<case "dom">> prefers to be on top. "Of cour<<s>>e you can fuck me too," $activeSlave.slaveName hurries to add. <<if canDoVaginal($activeSlave.slaveName)>> - She reaches down and spreads her<<if $subSlave.labia > 0>> ample<</if>> labia, showing off her pink channel. + $He reaches down and spreads $his<<if $subSlave.labia > 0>> ample<</if>> labia, showing off $his pink channel. <<elseif canDoAnal($activeSlave.slaveName)>> - She spins, cocks her hips, spreads her asscheeks, and winks her anus invitingly. + $He spins, cocks $his hips, spreads $his asscheeks, and winks $his anus invitingly. <<else>> - She gets right down on her knees and uses her hands to spread her lips as wide as they'll go. "'ou can 'a<<c>>e 'uck me," she intones with difficulty. + $He gets right down on $his knees and uses $his hands to spread $his lips as wide as they'll go. "'ou can 'a<<c>>e 'uck me," $he intones with difficulty. <</if>> "You can go fir<<s>>t! <<if canAchieveErection($subSlave)>>Get your cock out<<else>>Grab a <<s>>trap-on<</if>>, let'<<s>> trade hole<<s>>!" <<case "sadist">> - is a sexual sadist. $activeSlave.slaveName swallows nervously, visibly weighing whether she wants to offer what she'll need to offer, and then takes the plunge. "You can hurt me," she says in a small voice. + is a sexual sadist. $activeSlave.slaveName swallows nervously, visibly weighing whether $he wants to offer what $he'll need to offer, and then takes the plunge. "You can hurt me," $he says in a small voice. <<case "masochist">> - is a slut for pain. "I'll hurt you," <<say>>s $activeSlave.slaveName hesitantly. Seeing that this is well received, she plunges on. "I'll rape you. Come on, I'm going to pound you <<s>>o hard and twi<<s>>t your nipple<<s>> until you don't know what hurt<<s>> wor<<s>>t, your tit<<s>> or your <<if _vaginal>>cunt<<else>>butthole<</if>>." + is a slut for pain. "I'll hurt you," <<say>>s $activeSlave.slaveName hesitantly. Seeing that this is well received, $he plunges on. "I'll rape you. Come on, I'm going to pound you <<s>>o hard and twi<<s>>t your nipple<<s>> until you don't know what hurt<<s>> wor<<s>>t, your tit<<s>> or your <<if _vaginal>>cunt<<else>>butthole<</if>>." <<default>> is pretty vanilla in bed. "Come on," <<say>>s $activeSlave.slaveName reassuringly. "You'll come more than I do, I promi<<s>>e. Fir<<s>>t I'll <<if $subSlave.dick > 0>>blow you<<else>>eat you out<</if>>. Then we'll make love. <<if $activeSlave.dick > 2>>Thi<<s>> dick will make you shudder<<else>>I'm kind of <<s>>mall down there, but I'll u<<s>>e my hand<<s>> too<</if>>." <<set $activeSlave.oralCount++, $oralTotal++>> @@ -1966,10 +1972,10 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <</switch>> <br><br> <<run Enunciate($subSlave)>> - $subSlave.slaveName is a seasoned sex slave but that doesn't stop her from blushing a little at such a blunt suggestion. "Okay," she says, biting her <<if $activeSlave.lips > 40>>absurdly generous<<elseif $activeSlave.lips > 10>>full<<else>>thin<</if>> lower lip cutely. "I wa<<s>> actually going to <<s>>ay ye<<s>> anyway, but it'<<s>> really ni<<c>>e to have <<s>>omeone like you a<<s>>k me for it like that. I'm <<s>>orry I made you beg." + $subSlave.slaveName is a seasoned sex slave but that doesn't stop _him2 from blushing a little at such a blunt suggestion. "Okay," _he2 says, biting _his2 <<if $activeSlave.lips > 40>>absurdly generous<<elseif $activeSlave.lips > 10>>full<<else>>thin<</if>> lower lip cutely. "I wa<<s>> actually going to <<s>>ay ye<<s>> anyway, but it'<<s>> really ni<<c>>e to have <<s>>omeone like you a<<s>>k me for it like that. I'm <<s>>orry I made you beg." <br><br> <<run Enunciate($activeSlave)>> - "Don't care!" <<say>>s $activeSlave.slaveName exultantly, and grabs her conquest, planting a lusty kiss on $subSlave.slaveName's giggling mouth and <<if _vaginal>>rubbing her erection against $subSlave.slaveName's<<if $subSlave.labia > 0>> puffy<</if>> pussylips<<else>>reaching around $subSlave.slaveName to start teasing her asshole<</if>>. "Don't care, a<<s>> long a<<s>> I get to fuck your <<if _vaginal>>hot cunt<<else>>beautiful a<<ss>><</if>>!" Your work here is done, and once she's done blowing her load inside $subSlave.slaveName<<if !_vaginal>>'s anus<</if>>, $activeSlave.slaveName should remember to be @@.mediumaquamarine;grateful@@ to you for the reminder on how to seduce + "Don't care!" <<say>>s $activeSlave.slaveName exultantly, and grabs $his conquest, planting a lusty kiss on $subSlave.slaveName's giggling mouth and <<if _vaginal>>rubbing $his erection against $subSlave.slaveName's<<if $subSlave.labia > 0>> puffy<</if>> pussylips<<else>>reaching around $subSlave.slaveName to start teasing _his2 asshole<</if>>. "Don't care, a<<s>> long a<<s>> I get to fuck your <<if _vaginal>>hot cunt<<else>>beautiful a<<ss>><</if>>!" Your work here is done, and once $he's done blowing $his load inside $subSlave.slaveName<<if !_vaginal>>'s anus<</if>>, $activeSlave.slaveName should remember to be @@.mediumaquamarine;grateful@@ to you for the reminder on how to seduce <<switch $subSlave.fetish>> <<case "submissive">>coquettish subs. <<case "cumslut">>tired cumsluts. @@ -1980,7 +1986,7 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<case "dom">>tired doms. <<case "sadist">>tired sadists. <<case "masochist">>silly masochists. - <<default>>vanilla girls. + <<default>>vanilla _girl2s. <</switch>> <<set $activeSlave.trust += 5, $activeSlave.penetrativeCount++, $penetrativeTotal++>> <<if _vaginal>> @@ -2000,11 +2006,11 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <</if>> <</if>> <br><<link "Assert your dominance">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> <<run Enunciate($activeSlave)>> <<set _belly = bellyAdjective($activeSlave)>> - You brush past $activeSlave.slaveName without a word. "Um, <<Master>>," she starts to greet you, and then loses track of the greeting as she sees what you're doing. You stride forward, grab $subSlave.slaveName by her + You brush past $activeSlave.slaveName without a word. "Um, <<Master>>," $he starts to greet you, and then loses track of the greeting as $he sees what you're doing. You stride forward, grab $subSlave.slaveName by _his2 <<if $subSlave.hips > 1>> door-jamming hips <<elseif $subSlave.belly >= 100000>> @@ -2032,19 +2038,19 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<else>> hips <</if>> - and set her on the nearest convenient waist-high object. Then you <<if _vaginal>>pound her pussy<<else>>fuck her butt<</if>>. + and set _him2 on the nearest convenient waist-high object. Then you <<if _vaginal>>pound _his2 pussy<<else>>fuck _his2 butt<</if>>. <br><br> - Poor $activeSlave.slaveName can do nothing but stand there and watch. You haven't dismissed her, so she's forced to helplessly spectate as you do exactly what she so desperately wants to do. You can't see her face, but you don't have to. $subSlave.slaveName + Poor $activeSlave.slaveName can do nothing but stand there and watch. You haven't dismissed $him, so $he's forced to helplessly spectate as you do exactly what $he so desperately wants to do. You can't see $his face, but you don't have to. $subSlave.slaveName <<if _vaginal>> <<if $subSlave.vagina == 1>>has a tight pussy, and<<elseif $subSlave.vagina == 2>>isn't tight, but<<else>>has a loose pussy, but<</if>> <<else>> <<if $subSlave.anus == 1>>has a tight little ass, and<<elseif $subSlave.anus == 2>>is no anal virgin, but<<else>>has a very experienced asshole, but<</if>> <</if>> - <<if $PC.dick>>you have a big dick<<else>>you use a formidable strap-on<</if>> and are ramming it into $subSlave.slaveName's fuckhole industriously. She moans and writhes, being a good sex slave with your <<if $PC.dick>>hard shaft<<else>>instrument<</if>> sliding in and out of her, in and out of her. You plunder her without restraint, bending to plant dominant kisses on her panting mouth while you fuck her, and then straightening up again to grab and maul her <<if $subSlave.boobsImplant > 0>>fake tits<<else>>$subSlave.boobShape boobs<</if>> with both hands. <<if $PC.dick>>When you're through, you thrust deep inside, blasting her <<if _vaginal>>cervix<<else>>bowels<</if>> with a hot torrent of your semen<<if $PC.balls == 3>> until her belly begins to visibly swell from your load<<elseif $PC.balls == 2>>, thoroughly filling her with your massive load<</if>>.<<else>>Finally you orgasm, thrusting yourself hard against your strap-on harness, driving it as far inside your fucktoy as it'll go and holding it there as you shudder with climax.<</if>> Then you pull out and shove the @@.hotpink;dominated,@@ sweaty, fucked-out<<if $PC.dick>>, cum-dripping<</if>> $subSlave.slaveName towards the showers, giving her a swat on the butt when she's slow to get moving. Then you turn to $activeSlave.slaveName. + <<if $PC.dick>>you have a big dick<<else>>you use a formidable strap-on<</if>> and are ramming it into $subSlave.slaveName's fuckhole industriously. _He2 moans and writhes, being a good sex slave with your <<if $PC.dick>>hard shaft<<else>>instrument<</if>> sliding in and out of _him2, in and out of _him2. You plunder _him2 without restraint, bending to plant dominant kisses on _him2 panting mouth while you fuck _him2, and then straightening up again to grab and maul _his2 <<if $subSlave.boobsImplant > 0>>fake tits<<else>>$subSlave.boobShape boobs<</if>> with both hands. <<if $PC.dick>>When you're through, you thrust deep inside, blasting _his2 <<if _vaginal>>cervix<<else>>bowels<</if>> with a hot torrent of your semen<<if $PC.balls == 3>> until _his2 belly begins to visibly swell from your load<<elseif $PC.balls == 2>>, thoroughly filling _him2 with your massive load<</if>>.<<else>>Finally you orgasm, thrusting yourself hard against your strap-on harness, driving it as far inside your fucktoy as it'll go and holding it there as you shudder with climax.<</if>> Then you pull out and shove the @@.hotpink;dominated,@@ sweaty, fucked-out<<if $PC.dick>>, cum-dripping<</if>> $subSlave.slaveName towards the showers, giving _him2 a swat on the butt when _he2's slow to get moving. Then you turn to $activeSlave.slaveName. <br><br> - She's painfully aroused, of course. She just got to watch a <<if $PC.title>>handsome guy fuck a<<else>>hot girl fuck another<</if>> hot girl<<if !_vaginal>>'s ass<</if>>, right in front of her. And this while already laboring under a severe case of blue balls. "<<Master>>," she <<say>>s nonspecifically. She knows you did that in front of her for her benefit, at least partly, and she wouldn't know what to make of it or how to respond, even if she were in possession of her faculties. Which she isn't. All her blood is very obviously located in <<if $activeSlave.vagina > -1>>her lovely futanari hardon<<else>>her desperately erect penis<</if>>. You point to where $subSlave.slaveName just got fucked, and announce that $activeSlave.slaveName can get off if she wants, but not by fucking $subSlave.slaveName. She gets to come with <<if $PC.dick>>your cock<<else>>a strap-on<</if>> <<if canDoVaginal($activeSlave)>>fucking her<<else>>up her ass<</if>>. + $He's painfully aroused, of course. $He just got to watch a <<if $PC.title>>handsome guy fuck a<<else>>hot girl fuck another<</if>> hot girl<<if !_vaginal>>'s ass<</if>>, right in front of $him. And this while already laboring under a severe case of blue balls. "<<Master>>," $he <<say>>s nonspecifically. $He knows you did that in front of $him for $his benefit, at least partly, and $he wouldn't know what to make of it or how to respond, even if $he were in possession of $his faculties. Which $he isn't. All $his blood is very obviously located in <<if $activeSlave.vagina > -1>>$his lovely futanari hardon<<else>>$his desperately erect penis<</if>>. You point to where $subSlave.slaveName just got fucked, and announce that $activeSlave.slaveName can get off if $he wants, but not by fucking $subSlave.slaveName. $He gets to come with <<if $PC.dick>>your cock<<else>>a strap-on<</if>> <<if canDoVaginal($activeSlave)>>fucking $him<<else>>up $his ass<</if>>. <br><br> - $activeSlave.slaveName is familiar with your libido, but even so, she's impressed. She's also in dire need of relief, and at this point, she's so horny that the prospect of any sex is attractive, even if it isn't the kind of sex she was originally planning. So she hops up eagerly enough and opens her legs for you, her erect member <<if $activeSlave.belly >= 10000>>uncomfortably trapped by her <<if $activeSlave.bellyPreg >= 8000>>_belly pregnancy<<else>>_belly belly<</if>><<else>>sticking out forgotten<</if>> as she <<if canDoVaginal($activeSlave)>>spreads her pussy<<else>>offers you her asshole<</if>>. You fuck it, even more roughly than you fucked $subSlave.slaveName's <<if _vaginal>>cunt<<else>>anus<</if>>, and since you've just climaxed recently, it's a while before you orgasm again. $activeSlave.slaveName cums long before you, spattering herself messily, moaning "Oh, M-<<Master>>, ye<<s>>, oh fuck ye<<s>>, my <<if _vaginal>>pu<<ss>>y, my fucking pu<<ss>>y<<else>>a<<ss>>, my fucking a<<ss>>hole<</if>>" so @@.hotpink;whorishly@@ that there's no indication she was ever even considering fucking anyone. + $activeSlave.slaveName is familiar with your libido, but even so, $he's impressed. $He's also in dire need of relief, and at this point, $he's so horny that the prospect of any sex is attractive, even if it isn't the kind of sex $he was originally planning. So $he hops up eagerly enough and opens $his legs for you, $his erect member <<if $activeSlave.belly >= 10000>>uncomfortably trapped by $his <<if $activeSlave.bellyPreg >= 8000>>_belly pregnancy<<else>>_belly belly<</if>><<else>>sticking out forgotten<</if>> as $he <<if canDoVaginal($activeSlave)>>spreads $his pussy<<else>>offers you $his asshole<</if>>. You fuck it, even more roughly than you fucked $subSlave.slaveName's <<if _vaginal>>cunt<<else>>anus<</if>>, and since you've just climaxed recently, it's a while before you orgasm again. $activeSlave.slaveName cums long before you, spattering $himself messily, moaning "Oh, M-<<Master>>, ye<<s>>, oh fuck ye<<s>>, my <<if _vaginal>>pu<<ss>>y, my fucking pu<<ss>>y<<else>>a<<ss>>, my fucking a<<ss>>hole<</if>>" so @@.hotpink;whorishly@@ that there's no indication $he was ever even considering fucking anyone. <<set $activeSlave.devotion += 3>> <<if canDoVaginal($activeSlave)>> <<set $activeSlave.vaginalCount++, $vaginalTotal++>> @@ -2060,32 +2066,32 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<if _vaginal>> <<set $subSlave.devotion += 3, $subSlave.vaginalCount++, $vaginalTotal++>> <<if canImpreg($subSlave, $PC)>> - <<= knockMeUp($subSlave, 5, 0, -1, 1)>> + <<= knockMeUp($subSlave, 15, 0, -1, 1)>> <</if>> <<else>> <<set $subSlave.devotion += 3, $subSlave.analCount++, $analTotal++>> <<if canImpreg($subSlave, $PC)>> - <<= knockMeUp($subSlave, 5, 1, -1, 1)>> + <<= knockMeUp($subSlave, 15, 1, -1, 1)>> <</if>> <</if>> <<set $slaves[$slaveIndices[$subSlave.ID]] = $subSlave>> <</replace>> <</link>> <br><<link "Rescind the rule against rape">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> <<set $universalRulesConsent = 0>> <<set _belly = bellyAdjective($subSlave)>> You clear your throat for the slaves' attention and verbally order $assistantName to rescind the penthouse rule against interslave rape. <<if $assistant>>Her<<else>>Its<</if>> avatar pops up nearby and confirms the rules change. <<if $assistant>>"Done," she says. "And I approve. Poor girls like $activeSlave.slaveName should be able to take what they need."<<else>>"Done," it says.<</if>> <br><br> - You give no explicit command to the pair of slaves in front of you, but they understand you perfectly. $subSlave.slaveName pales; <<if $subSlave.fetishKnown && $subSlave.fetish == "sub">>she likes getting fucked, but having someone ordered to rape her is a bit much<<elseif $subSlave.fetishKnown && $subSlave.fetish == "masochist">>she likes being hurt, but having the flirty interchange converted instantly into a situation in which she has no control at all kills her mood<<else>>she wasn't seriously adverse to having sex, but being laid open to rape isn't her idea of a good time<</if>>. $activeSlave.slaveName, meanwhile, looks <<if $subSlave.fetishKnown && $subSlave.fetish == "dom">>rather pleased. She likes being on top enough that she's willing to use force if necessary<<elseif $subSlave.fetishKnown && $subSlave.fetish == "sadist">>positively predatory. The sadistic bitch actually prefers it this way<<else>>rather conflicted. She's obviously relieved she'll be getting relief, but obviously has some mixed feelings about using force to get what she wants<</if>>. + You give no explicit command to the pair of slaves in front of you, but they understand you perfectly. $subSlave.slaveName pales; <<if $subSlave.fetishKnown && $subSlave.fetish == "sub">>_he2 likes getting fucked, but having someone ordered to rape _him2 is a bit much<<elseif $subSlave.fetishKnown && $subSlave.fetish == "masochist">>_he2 likes being hurt, but having the flirty interchange converted instantly into a situation in which _he2 has no control at all kills _his2 mood<<else>>_he2 wasn't seriously adverse to having sex, but being laid open to rape isn't _his2 idea of a good time<</if>>. $activeSlave.slaveName, meanwhile, looks <<if $subSlave.fetishKnown && $subSlave.fetish == "dom">>rather pleased. $He likes being on top enough that $he's willing to use force if necessary<<elseif $subSlave.fetishKnown && $subSlave.fetish == "sadist">>positively predatory. The sadistic bitch actually prefers it this way<<else>>rather conflicted. $He's obviously relieved $he'll be getting relief, but obviously has some mixed feelings about using force to get what $he wants<</if>>. <br><br> <<if $activeSlave.fetishKnown && ($activeSlave.fetish == "dom" || $activeSlave.fetish == "sadist")>> - $subSlave.slaveName tries to get down <<if _vaginal>>on the floor and offer her pussy<<else>>down on her knees and offer her asspussy<</if>> without resistance, but $activeSlave.slaveName has other ideas, and shoves the poor slave down hard. $subSlave.slaveName's <<if _vaginal>>butt hits the floor with a smack<<else>>knees hit the floor painfully<</if>> and she moans unhappily as $activeSlave.slaveName penetrates her. + $subSlave.slaveName tries to get down <<if _vaginal>>on the floor and offer _his2 pussy<<else>>down on _his2 knees and offer _his2 asspussy<</if>> without resistance, but $activeSlave.slaveName has other ideas, and shoves the poor slave down hard. $subSlave.slaveName's <<if _vaginal>>butt hits the floor with a smack<<else>>knees hit the floor painfully<</if>> and _he2 moans unhappily as $activeSlave.slaveName penetrates _him2. <<else>> - $activeSlave.slaveName clears her throat uncomfortably, not really sure what to do, and obviously reluctant to grab $subSlave.slaveName and rape her. $subSlave.slaveName resolves her dilemma for her, and <<if _vaginal>>gets down on the ground, spreading her legs<<if $subSlave.belly >= 5000>> to either side of her <<if $subSlave.bellyPreg >= 3000>>_belly pregnancy<<else>>_belly rounded belly<</if>><</if>> and offering her pussy<<else>>gets down on her knees, arching her back and presenting her asspussy<</if>> without resistance. Relieved, $activeSlave.slaveName gets <<if _vaginal>>on top of her<<else>>behind her<</if>> and starts to fuck. + $activeSlave.slaveName clears $his throat uncomfortably, not really sure what to do, and obviously reluctant to grab $subSlave.slaveName and rape $him. $subSlave.slaveName resolves $his dilemma for $him, and <<if _vaginal>>gets down on the ground, spreading _his2 legs<<if $subSlave.belly >= 5000>> to either side of _his2 <<if $subSlave.bellyPreg >= 3000>>_belly pregnancy<<else>>_belly rounded belly<</if>><</if>> and offering _his2 pussy<<else>>gets down on _his2 knees, arching _his2 back and presenting _his2 asspussy<</if>> without resistance. Relieved, $activeSlave.slaveName gets <<if _vaginal>>on top of _him2<<else>>behind _him2<</if>> and starts to fuck. <</if>> - "Thank<<s>>, <<Master>>," pants $activeSlave.slaveName as she humps away. "I'm @@.mediumaquamarine;looking forward@@ to being able to do thi<<s>> whenever I want." $subSlave.slaveName gasps, from <<if _vaginal>>down under $activeSlave.slaveName<<else>>where $activeSlave.slaveName has her face ground against the floor<</if>>. Apparently, she hadn't realized that this wasn't a onetime thing, and is @@.gold;none too pleased@@ by having to give $activeSlave.slaveName her <<if _vaginal>>pussy<<else>>ass<</if>> whenever she wants it. + "Thank<<s>>, <<Master>>," pants $activeSlave.slaveName as $he humps away. "I'm @@.mediumaquamarine;looking forward@@ to being able to do thi<<s>> whenever I want." $subSlave.slaveName gasps, from <<if _vaginal>>down under $activeSlave.slaveName<<else>>where $activeSlave.slaveName has _his2 face ground against the floor<</if>>. Apparently, _he2 hadn't realized that this wasn't a onetime thing, and is @@.gold;none too pleased@@ by having to give $activeSlave.slaveName _his2 <<if _vaginal>>pussy<<else>>ass<</if>> whenever $he wants it. <<set $activeSlave.trust += 3, $activeSlave.penetrativeCount++, $penetrativeTotal++>> <<if _vaginal>> <<set $subSlave.trust -= 3, $subSlave.vaginalCount++, $vaginalTotal++>> @@ -2105,20 +2111,20 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<case "incestuous nursing">> <<link "That looks delicious">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> - The motherly $desc's breast milk looks delicious. She's lactating <<if $activeSlave.lactation > 1>>so unnaturally that each jiggle transmitted to her unoccupied breast by $subSlave.slaveName's nursing produces a spurt from the free nipple.<<else>> naturally, but in such healthy profusion that a milky stream is running down her unoccupied breast.<</if>> You get down beside $subSlave.slaveName and start nursing too. "Oh, <<Master>>," gasps $activeSlave.slaveName, as much from surprise as from the additional stimulation. Then she sighs contentedly, and goes back to petting $subSlave.slaveName's head. She picks up her other hand and hesitates, not sure whether she should stroke her owner's hair, but you take her hand in yours and place it on the back of your head. There's a @@.mediumaquamarine;sharp intake of breath@@ in the chest behind the breast you're nursing from, and she strokes your head with a motherly caress, gently holding you against her milky tit as you drain it of its cream. + The motherly $desc's breast milk looks delicious. $He's lactating <<if $activeSlave.lactation > 1>>so unnaturally that each jiggle transmitted to $his unoccupied breast by $subSlave.slaveName's nursing produces a spurt from the free nipple.<<else>> naturally, but in such healthy profusion that a milky stream is running down $his unoccupied breast.<</if>> You get down beside $subSlave.slaveName and start nursing too. "Oh, <<Master>>," gasps $activeSlave.slaveName, as much from surprise as from the additional stimulation. Then $he sighs contentedly, and goes back to petting $subSlave.slaveName's head. $He picks up $his other hand and hesitates, not sure whether $he should stroke $his owner's hair, but you take $his hand in yours and place it on the back of your head. There's a @@.mediumaquamarine;sharp intake of breath@@ in the chest behind the breast you're nursing from, and $he strokes your head with a motherly caress, gently holding you against $his milky tit as you drain it of its cream. <br><br> $subSlave.slaveName @@.mediumaquamarine;reaches out to touch you, too,@@ and before long you and $subSlave.slaveName are sharing $activeSlave.slaveName's loving lap. By the time you and $subSlave.slaveName have drunk your fill, all three of you have climaxed at least once. <<if $subSlave.balls>> <<if $PC.dick>> - Both you and $subSlave.slaveName blew your loads all over $activeSlave.slaveName's lap<<if $activeSlave.belly >= 5000>> and underbelly<</if>>, making quite a mess. $subSlave.slaveName <<if $subSlave.fetishKnown && $subSlave.fetish == "cumslut">>greedily<<else>>dutifully<</if>> licks it all up, sparing so much oral attention for her _mother's <<if canAchieveErection($activeSlave)>>softening<<elseif $activeSlave.dick > 0>>soft cock<<else>>pussy<</if>> that she orgasms yet again, moaning her daughter's name. + Both you and $subSlave.slaveName blew your loads all over $activeSlave.slaveName's lap<<if $activeSlave.belly >= 5000>> and underbelly<</if>>, making quite a mess. $subSlave.slaveName <<if $subSlave.fetishKnown && $subSlave.fetish == "cumslut">>greedily<<else>>dutifully<</if>> licks it all up, sparing so much oral attention for _his2 _mother's <<if canAchieveErection($activeSlave)>>softening<<elseif $activeSlave.dick > 0>>soft cock<<else>>pussy<</if>> that $he orgasms yet again, moaning $his daughter's name. <<else>> - $subSlave.slaveName <<if canAchieveErection($subSlave)>>blew her load all over<<else>>leaked her cum out onto<</if>> her _mother's lap<<if $activeSlave.belly >= 5000>> and underbelly<</if>>; as she heads off to shower, $activeSlave.slaveName scoops it off herself <<if $activeSlave.fetishKnown && $activeSlave.fetish == "cumslut">>and greedily sucks it down<<else>>and licks it off her fingers<</if>>. + $subSlave.slaveName <<if canAchieveErection($subSlave)>>blew _his2 load all over<<else>>leaked _his2 cum out onto<</if>> _his2 _mother's lap<<if $activeSlave.belly >= 5000>> and underbelly<</if>>; as _he2 heads off to shower, $activeSlave.slaveName scoops it off $himself <<if $activeSlave.fetishKnown && $activeSlave.fetish == "cumslut">>and greedily sucks it down<<else>>and licks it off $his fingers<</if>>. <</if>> - <<elseif $activeSlave.lactation>> + <<elseif $subSlave.lactation>> <<set _belly = bellyAdjective($activeSlave)>> - $subSlave.slaveName's own breasts responded to all the stimulation by leaking all over $activeSlave.slaveName's <<if $activeSlave.belly >= 5000>> _belly <<if $activeSlave.bellyPreg >= 3000>>pregnant <</if>>belly<</if>>; as she heads off to shower, $activeSlave.slaveName laughingly chides $subSlave.slaveName for making such a milky mess of her own _mother. + $subSlave.slaveName's own breasts responded to all the stimulation by leaking all over $activeSlave.slaveName's <<if $activeSlave.belly >= 5000>> _belly <<if $activeSlave.bellyPreg >= 3000>>pregnant <</if>>belly<</if>>; as _he2 heads off to shower, $activeSlave.slaveName laughingly chides $subSlave.slaveName for making such a milky mess of _his2 own _mother. <</if>> <<set $activeSlave.trust += 3, $activeSlave.oralCount++, $oralTotal++, $activeSlave.mammaryCount++, $mammaryTotal++>> <<set $subSlave.trust += 3, $subSlave.oralCount++, $oralTotal++, $subSlave.mammaryCount++, $mammaryTotal++>> @@ -2131,25 +2137,25 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <<if $subSlave.relationship <= 4 && $subSlave.relationship >= 0>> <<if canTalk($subSlave)>> <br><<link "This is clearly a basis for a relationship">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> - Deciding that this should be encouraged, you praise $activeSlave.slaveName for her close relationship to her daughter. "Thank you, <<Master>>," she <<say>>s. "I try to be the be<<s>>t mom I can." She bends and kisses the top of $subSlave.slaveName's head. + Deciding that this should be encouraged, you praise $activeSlave.slaveName for $his close relationship to $his daughter. "Thank you, <<Master>>," $he <<say>>s. "I try to be the be<<s>>t <<if $subSlave.mother == $activeSlave.ID>>mom<<else>>dad<</if>> I can." $He bends and kisses the top of $subSlave.slaveName's head. <br><br> <<run Enunciate($subSlave)>> - $subSlave.slaveName <<if $activeSlave.nipples != "fuckable">>lets the nipple pop free of<<else>>releases the nipple from<</if>> her mouth and looks up at $activeSlave.slaveName. "That'<<s>> <<s>>illy, _mommy," she scolds, using an exaggeratedly whiny tone. I'm + $subSlave.slaveName <<if $activeSlave.nipples != "fuckable">>lets the nipple pop free of<<else>>releases the nipple from<</if>> _his2 mouth and looks up at $activeSlave.slaveName. "That'<<s>> <<s>>illy, _mommy," _he2 scolds, using an exaggeratedly whiny tone. I'm <<if $activeSlave.dick > 0 && $activeSlave.dickAccessory == "none">>jerking you off, <<elseif canDoVaginal($activeSlave)>>fingerbanging you, <<elseif canDoAnal($activeSlave)>>fingerfucking your butthole, <<else>>giving you a handjob, <</if>> - and you're totally enjoying it!" She sticks out her tongue, and does something with her hands that makes $activeSlave.slaveName shudder helplessly. "Admit it, you're ba<<s>>ically my fuckbuddy, or even my girlfriend!" + and you're totally enjoying it!" _He2 sticks out _his2 tongue, and does something with _his2 hands that makes $activeSlave.slaveName shudder helplessly. "Admit it, you're ba<<s>>ically my fuckbuddy, or even my <<print $girl>>friend!" <br><br> <<run Enunciate($activeSlave)>> - <<if $subSlave.sexualQuirk == "perverted">>"You're one t-to t-talk, you little perv," she gasps. - <<elseif $activeSlave.sexualQuirk == "perverted">>"I c-can't h-help it," she gasps. "You're <<s>>o h-hot, <<s>>weetie. I d-dream about you." - <<else>>"W-we're f-fuck<<s>>slaves, <<s>>weetie," she gasps. "I h-have to." + <<if $subSlave.sexualQuirk == "perverted">>"You're one t-to t-talk, you little perv," $he gasps. + <<elseif $activeSlave.sexualQuirk == "perverted">>"I c-can't h-help it," $he gasps. "You're <<s>>o h-hot, <<s>>weetie. I d-dream about you." + <<else>>"W-we're f-fuck<<s>>slaves, <<s>>weetie," $he gasps. "I h-have to." <</if>> - She pulls herself together and continues. "And I think we're going t-to be b-both. Both _mother and daughter, and lover<<s>>." She pulls $subSlave.slaveName up into an embrace and kisses her hungrily. "My pretty little _mother lover." $subSlave.slaveName @@.hotpink;giggles and kisses@@ $activeSlave.slaveName back. The older slave is suffused with lust, any lingering shriek of revulsion inside her head @@.hotpink;drowned out@@ by <<if $activeSlave.sexualQuirk == "perverted">>sexual perversion<<else>>the urge to satisfy her needs<</if>>. "Come here," she moans, + $He pulls herself together and continues. "And I think we're going t-to be b-both. Both _mother and daughter, and lover<<s>>." $He pulls $subSlave.slaveName up into an embrace and kisses _him2 hungrily. "My pretty little _mother lover." $subSlave.slaveName @@.hotpink;giggles and kisses@@ $activeSlave.slaveName back. The older slave is suffused with lust, any lingering shriek of revulsion inside $his head @@.hotpink;drowned out@@ by <<if $activeSlave.sexualQuirk == "perverted">>sexual perversion<<else>>the urge to satisfy $his needs<</if>>. "Come here," $he moans, <<if $activeSlave.fetishKnown>> <<switch _Slave.fetish>> <<case "submissive">> @@ -2235,36 +2241,36 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of <</if>> <</if>> <br><<link "Shame them">> - <<replace "#name">>$activeSlave.slaveName<</replace>> + <<EventNameDelink $activeSlave>> <<replace "#result">> - $activeSlave.slaveName and $subSlave.slaveName are properly trained sex slaves, and you wonder whether they still understand exactly how perverted it is to, respectively, nurse one's adult child while getting masturbated by her, and drink one's _mother's milk while playing with her private parts. So, you decide to explain it to them. You start with $activeSlave.slaveName, cuttingly asking whether she understands that her relationship with her daughter is irrevocably polluted by incest. + $activeSlave.slaveName and $subSlave.slaveName are properly trained sex slaves, and you wonder whether they still understand exactly how perverted it is to, respectively, nurse one's adult child while getting masturbated by _him2, and drink one's _mother's milk while playing with $his private parts. So, you decide to explain it to them. You start with $activeSlave.slaveName, cuttingly asking whether $he understands that $his relationship with $his daughter is irrevocably polluted by incest. <<if $activeSlave.fetish == "humiliation">> <<if $activeSlave.fetishKnown>> - Getting her nipples sucked on and her _hands played with by her own daughter out in the open already had the humiliation slut's cheeks flaming with shame and arousal, and your words are so deliciously crushing that she gasps once, twice, and then, on her daughter's next stroke with her hand, climaxes, crying with @@.hotpink;abject overstimulation.@@ + Getting $his nipples sucked on and $his _hands played with by $his own daughter out in the open already had the humiliation slut's cheeks flaming with shame and arousal, and your words are so deliciously crushing that $he gasps once, twice, and then, on $his daughter's next stroke with _his2 hand, climaxes, crying with @@.hotpink;abject overstimulation.@@ <<set $activeSlave.devotion += 3>> - <<if $activeSlave.fetishStrength <= 95>>This is some of the strongest sexual humiliation she's ever experienced, and she @@.lightsalmon;only wants more.@@<<set $activeSlave.fetishStrength += 5>><</if>> + <<if $activeSlave.fetishStrength <= 95>>This is some of the strongest sexual humiliation $he's ever experienced, and $he @@.lightsalmon;only wants more.@@<<set $activeSlave.fetishStrength += 5>><</if>> <<else>> - She begins to cry, strangely, choking and gagging on her tears. Something is troubling her even more than you expected, and it soon becomes obvious what it is: she's getting off on being taunted this way. $subSlave.slaveName hesitates, but her _mother begs her to keep playing with her _hands, sobbing all the while, until she finally climaxes. She's a @@.lightsalmon;humiliation fetishist,@@ and @@.hotpink;all the more devoted@@ to you now that she knows what a slut for degradation she really is. + $He begins to cry, strangely, choking and gagging on $his tears. Something is troubling $him even more than you expected, and it soon becomes obvious what it is: $he's getting off on being taunted this way. $subSlave.slaveName hesitates, but _his2 _mother begs _him2 to keep playing with $his _hands, sobbing all the while, until $he finally climaxes. $He's a @@.lightsalmon;humiliation fetishist,@@ and @@.hotpink;all the more devoted@@ to you now that $he knows what a slut for degradation $he really is. <<set $activeSlave.fetishKnown = 1, $activeSlave.devotion += 5>> <</if>> <<else>> - She starts, thinks for a moment, and then begins to cry, tears running down her $activeSlave.skin cheeks and pattering onto $subSlave.slaveName's head. Doubtful, $subSlave.slaveName slows her heavy petting, but you order her to keep doing it, making $activeSlave.slaveName sob harder. She's @@.gold;terrified@@ at what she's become, and @@.hotpink;convinced@@ she's lost to sexual slavery forever. She wails as she climaxes, very much against her will. + $He starts, thinks for a moment, and then begins to cry, tears running down $his $activeSlave.skin cheeks and pattering onto $subSlave.slaveName's head. Doubtful, $subSlave.slaveName slows _his2 heavy petting, but you order _him2 to keep doing it, making $activeSlave.slaveName sob harder. $He's @@.gold;terrified@@ at what $he's become, and @@.hotpink;convinced@@ $he's lost to sexual slavery forever. $He wails as $he climaxes, very much against $his will. <<set $activeSlave.trust -= 3, $activeSlave.devotion += 3>> <</if>> <br><br> - $subSlave.slaveName is left in the crying $activeSlave.slaveName's lap, with her _mother's <<if _hands == "dick">>cum all over her hands<<elseif _hands == "vagina">>pussyjuice all over her hands<<else>>anal sphincter squeezing her fingers as her orgasm fades<</if>>. + $subSlave.slaveName is left in the crying $activeSlave.slaveName's lap, with _his2 _mother's <<if _hands == "dick">>cum all over _his2 hands<<elseif _hands == "vagina">>pussyjuice all over _his2 hands<<else>>anal sphincter squeezing _his2 fingers as $his orgasm fades<</if>>. <<if $subSlave.fetish == "humiliation">> - You don't even have to explicitly shame her. + You don't even have to explicitly shame _him2. <<if $activeSlave.fetishKnown>> - She keeps drinking from her weeping _mother's tits, her cheeks flaming red with lust and arousal. The humiliation slut shivers, @@.hotpink;extremely aware@@ of your eyes on her naked back. + _He2 keeps drinking from _his2 weeping _mother's tits, _his2 cheeks flaming red with lust and arousal. The humiliation slut shivers, @@.hotpink;extremely aware@@ of your eyes on _his2 naked back. <<set $subSlave.devotion += 3>> - <<if $subSlave.fetishStrength <= 95>>She's crying too, some remaining sense of self control screaming at her on the inside, but she visibly stamps on it, @@.lightsalmon;giving herself up to the shame.@@<<set $subSlave.fetishStrength += 5>><</if>> + <<if $subSlave.fetishStrength <= 95>>_He2's crying too, some remaining sense of self control screaming at _him2 on the inside, but _he2 visibly stamps on it, @@.lightsalmon;giving _himself2 up to the shame.@@<<set $subSlave.fetishStrength += 5>><</if>> <<else>> - She's more affected by all this than even you expected. It seems she's a @@.lightsalmon;humiliation fetishist,@@ and she buries her face in her _mother's boobs, shaking with arousal and shame, goosebumps springing up across her skin as she focuses on her @@.hotpink;new feelings.@@ + _He2's more affected by all this than even you expected. It seems _he2's a @@.lightsalmon;humiliation fetishist,@@ and _he2 buries _his2 face in _his2 _mother's boobs, shaking with arousal and shame, goosebumps springing up across _his2 skin as _he2 focuses on _his2 @@.hotpink;new feelings.@@ <<set $subSlave.fetishKnown = 1, $subSlave.devotion += 5>> <</if>> <<else>> - You ask her if she knows what she's just done, rhetorically, and then helpfully explain that it's a little weird to nurse at age $subSlave.actualAge, and bit perverted to play with her _mother's _hands. $subSlave.slaveName hangs her head, and then makes to bury it in her weeping _mother's heaving breasts to hide her face in shame, but stops when she realizes what she's doing. She's @@.gold;scared,@@ unable to find anything she can do to make this better, and @@.hotpink;takes refuge@@ in your merciful orders to go clean herself up. + You ask _him2 if _he2 knows what _he2's just done, rhetorically, and then helpfully explain that it's a little weird to nurse at age $subSlave.actualAge, and bit perverted to play with _his2 _mother's _hands. $subSlave.slaveName hangs _his2 head, and then makes to bury it in _his2 weeping _mother's heaving breasts to hide _his2 face in shame, but stops when _he2 realizes what _he2's doing. _He2's @@.gold;scared,@@ unable to find anything _he2 can do to make this better, and @@.hotpink;takes refuge@@ in your merciful orders to go clean _himself2 up. <<set $subSlave.trust -= 3, $subSlave.devotion += 3>> <</if>> <<set $slaves[$slaveIndices[$subSlave.ID]] = $subSlave>> diff --git a/src/uncategorized/REroyalblood.tw b/src/uncategorized/REroyalblood.tw index 87ed821241f60b813be1982105a058f2ed5a2431..b9c314aed4cfcb8ba48fc1395138cfcf55a7fd40 100644 --- a/src/uncategorized/REroyalblood.tw +++ b/src/uncategorized/REroyalblood.tw @@ -159,7 +159,7 @@ Though the King himself is dead, murdered in his bed by bloodthirsty revolutiona <br><br> -Time is short, but you are well placed to acquire some choice slaves. With an adequate donation<<if $securityForceActive == 1>>, or the use of $securityForceName<</if>>, of course. +Time is short, but you are well placed to acquire some choice slaves. With an adequate donation<<if $SF.Toggle && $SF.Active >= 1>>, or the use of $SF.Lower<</if>>, of course. <br><br> @@ -188,10 +188,10 @@ Time is short, but you are well placed to acquire some choice slaves. With an ad //You lack the necessary funds and reputation to enslave a princess.// <</if>> -<<if $securityForceActive == 1>> -<br><<link "Dispatch a $securityForceName on a night time raid to acquire a pretty princess.">> +<<if $SF.Toggle && $SF.Active >= 1>> +<br><<link "Dispatch a $SF.Lower on a night time raid to acquire a pretty princess.">> <<replace "#result">> - Seizing a tablet, you quickly send a message to The Colonel. After dark, a flight of VTOLs land in the new arcology laden with troops. When they take off again they have the princess aboard clad in chains and make a direct course towards your waiting penthouse. + Seizing a tablet, you quickly send a message to <<print SFC()>>. After dark, a flight of VTOLs land in the new arcology laden with troops. When they take off again they have the princess aboard clad in chains and make a direct course towards your waiting penthouse. <br><br> Eventually she arrives in your penthouse, the perfect image of a demure yet composed princess. Her clearly practiced facade of poise and grace fades under scrutiny, however. The slightest trembling of her balled up fists, the minute tremors that mar her immaculate posture, her inability to meet your eyes with her own - all signs that she is still a scared girl despite all her royal trappings. Nonetheless, though the princess's court training is unlikely to be very beneficial to her in her new life in the penthouse, it does stand in stark contrast to her more common slave peers. <br><br> @@ -789,4 +789,4 @@ Time is short, but you are well placed to acquire some choice slaves. With an ad <</replace>> <</link>> //You will be loathed for this action and trade will be crippled.// <</if>> -</span> \ No newline at end of file +</span> diff --git a/src/uncategorized/SFMBarracks.tw b/src/uncategorized/SFMBarracks.tw deleted file mode 100644 index 579927ed7ab0b7da2b63f72e76d5cfbee3d058ee..0000000000000000000000000000000000000000 --- a/src/uncategorized/SFMBarracks.tw +++ /dev/null @@ -1,168 +0,0 @@ -:: SFM Barracks [nobr] - -<<set _Name = "<<if $CurrentTradeShowAttendance == 1 && $LieutenantColonel == 2>>Lieutenant Colonel <<= SlaveFullName($LieutenantColonel)>> <<elseif $CurrentTradeShowAttendance == 1 && $LieutenantColonel != 2>> a soldier <<elseif $CurrentTradeShowAttendance == 0>> The Colonel<</if>>">> - -<<if ndef $ColonelRelationship>> - <<set $ColonelRelationship = 0>> /* 0 - Employee and boss, 10 - Friend, 25 - Close friend, 45 - Girlfriend, 65 - Lover */ -<</if>> -<<if $ColonelRelationship == 0>> - <<set _RelationshipTitle = "boss">> -<<elseif $ColonelRelationship >= 10>> - <<set _RelationshipTitle = "friend">> -<<elseif $ColonelRelationship >= 25>> - <<set _RelationshipTitle = "close friend">> -<<elseif $ColonelRelationship >= 45>> - <<if $PC.title == 1>> - <<set _RelationshipTitle = "boyfriend">> - <<else>> - <<set _RelationshipTitle = "girlfriend">> - <</if>> -<<elseif $ColonelRelationship >= 65>> - <<set _RelationshipTitle = "lover">> -<</if>> -<<set $Env = simpleWorldEconomyCheck()>> -<<switch $Env>> - <<case 4>> - <<set $EnvCash2 = 450, $EnvCash3 = 200, $EnvCash4 = 100, $EnvProsp = 3, _BaseDiscount = _BaseDiscount-.005>> - <<case 3>> - <<set $EnvCash2 = 500, $EnvCash3 = 250, $EnvCash4 = 150, $EnvProsp = 5, _BaseDiscount = _BaseDiscount>> - <<case 2>> - <<set $EnvCash2 = 550, $EnvCash3 = 300, $EnvCash4 = 200, $EnvProsp = 7, _BaseDiscount = _BaseDiscount+.005>> -<</switch>> - -<<if ndef $TierTwoUnlock>> <<set $TierTwoUnlock = 0>> <</if>> -<<include "SpecialForceUpgradeTree">> - -<<if $SFNO > 0>> - <<set $SFAO = $SFNO>> -<<elseif $SFO > 0>> - <<set $SFAO = $SFO>> -<<else>> - <<set $SFAO = 0>> -<</if>> - -<<if ndef $FacilitySupport>> - <<set $FacilitySupport = 0>> -<</if>> - -<<if ndef $securityForceUpgradeTokenReset || $SFAO == 0>> - <<set $securityForceUpgradeTokenReset = 0>> -<</if>> - -<<set $nextButton = "Back to Main", $nextLink = "Main", $returnTo = "Barracks">> - -<<if $cheatMode == 1>> - <<link "Cheat edit vars">> - <<goto "SpecialForceBarracksCheatEdit">> - <</link>> - <br> -<</if>> - -//The barracks of <<textbox "$securityForceName" $securityForceName "SFM Barracks">> is located in the lower levels of $arcologies[0].name, occupying unneeded warehouse space. It is not accessible to the general citizenry, but your personal elevator has express service to it. As you step off, two soldiers in combat armour manning the entry checkpoint tense and raise their weapons, before nodding respectfully and stepping aside, allowing their patron entry. The barracks is cavernous, containing areas for the soldiers to sleep and keep their belongings, areas for the storage and maintenance of their weapons and equipment, and common areas for them to amuse themselves, since they rarely mix with your citizens on the upper levels. You survey the facilities.// - -<br><br> -<<include "SpecialForceUpgradeDec">> -<br><br> - -<<include "SpecialForceBarracksFlavourText">> - -<<if $securityForceGiftToken == 0>> -<br> - <span id="result"> - <<link "Ask _Name for some extra cash">> - <<replace "#result">> - /*<<set $CashGift = ((Math.ceil((Math.abs($cash)*0.05)*(Math.max(0.99,$SFAO))))*($arcologies[0].prosperity/100))*$Env>> OLD*/ - <<set $CashGift = 25000*(Math.max(0.99,$SFAO/10))*$Env>> - <<if random(1,100) > 50>> - <<if random(1,100) > 50>> - _Name nods. "Sure boss," she says, "we had a bit of a haul this week. One of my sergeants convinced a woman to tell us where she had hidden her shit. Cut her up pretty bad, but she told us. Bunch of nice jewelry, I kept a nice piece for myself." She picks up a tablet on the table, tapping a few commands on it. "@@.yellowgreen;There's your cut,@@ <<print cashFormat(Math.ceil($CashGift))>>." - <<else>> - _Name smiles widely. "Sure boss," she says, "we pulled in some good shit this week. One of the boys found a real nice family hiding in a basement. 18-year old triplets. Brought in a good bit of cash." She picks up a tablet on the table, tapping a few commands on it. "@@.yellowgreen;There's your cut,@@ <<print cashFormat(Math.ceil($CashGift))>>." - <</if>> - <<else>> - _Name picks up a tablet. "Sure boss," she says, "we had a nice score this week. Looters fucked up and left a bunch of nice shit behind." She taps a few commands on the tablet. "@@.yellowgreen;There's your cut,@@ <<print cashFormat(Math.ceil($CashGift))>>." - <</if>> - <<set $securityForceGiftToken = 1>> - <<set $cash += $CashGift>> - <br> - <</replace>> - <</link>> - <<if $rep < 20000 && $CurrentTradeShowAttendance == 0>> - <br><<link "Ask The Colonel to put in a good word for you with her contacts">> - <<replace "#result">> - <<set $GoodWords1 += 250+(Math.ceil(Math.max(0.99,$SFAO))*$Env)>> - <<set $GoodWords1 = (Number($GoodWords1) ? $GoodWords1 : 500)>> - <<if random(1,100) > 50>> - <<if random(1,100) > 50>> - The Colonel nods. "Sure boss," she says, "I still know a lot of people out there and they know my word means something. I'll tell them that yours does as well." She picks up a tablet on the table, tapping a few commands on it. "I just put the word out, boss. Your @@.green;reputation should be a bit better@@ now." - <<else>> - The Colonel smiles widely. "Sure boss," she says, "I can put in a good word for you with some of my contacts out there. A lot of them know other big shots in the Cities." She picks up a tablet on the table, tapping a few commands on it. "I just put the word out, boss. Your @@.green;reputation should be a bit better@@ now." - <</if>> - <<else>> - The Colonel picks up a tablet. "Sure boss," she says, "I can talk you up a bit. This new gig has impressed a lot of people; they'll definitely listen when I speak." She taps a few commands on the tablet. "I just put the word out, boss. Your @@.green;reputation should be a bit better@@ now." - <</if>> - <<set $securityForceGiftToken = 1>> - <<set $rep += $GoodWords1>> - <br> - <</replace>> - <</link>> - <</if>> - <<if $arcologies[0].prosperity < $AProsperityCap && $CurrentTradeShowAttendance == 0>> - <br><<link "Ask The Colonel to use her contacts to help the arcology's business community">> - <<replace "#result">> - <<set $GoodWords2 = $EnvProsp+(Math.max(0.99,$SFAO)/100)*$Env>> - <<if random(1,100) > 50>> - <<if random(1,100) > 50>> - The Colonel nods. "Sure boss," she says, "I can convince some of my contacts to run their business through the markets here rather than another City." She picks up a tablet on the table, tapping a few commands on it. "@@.green;There should be a small increase in prosperity,@@ boss." - <<else>> - The Colonel smiles widely. "Sure boss," she says, "I can make sure that our suppliers only run their goods through the markets here, rather than one of the markets out there." She picks up a tablet on the table, tapping a few commands on it. "@@.green;There should be a small increase in prosperity,@@ boss." - <</if>> - <<else>> - The Colonel picks up a tablet. "Sure boss," she says, "I can ensure that the soldiers only use the escrow services here for their business." She taps a few commands on the tablet. "@@.green;There should be a small increase in prosperity,@@ boss." - <</if>> - <<set $securityForceGiftToken = 1>> - <<set $arcologies[0].prosperity += $GoodWords2>> - <br> - <<if $arcologies[0].prosperity + $GoodWords2 > $AProsperityCap>> - <<set $arcologies[0].prosperity = $AProsperityCap>> - <</if>> - <</replace>> - <</link>> - <</if>> - </span> -<</if>> - -<<if $securityForceUpgradeToken == 1 && ($SFAO < _max)>> - <br>//_Name is working to improve $securityForceName this week.// -<<elseif $TierTwoUnlock == 1 && $TradeShowAttendanceGranted == 0>> - <br>//You receive a message from The Colonel "There is a trade show coming up soon with exotic upgrades but I'll get laughed out unless we bring the best gear we can get now."// -<<elseif $SFAO >= _max>> - <br>//$securityForceName is fully equipped and upgraded - nothing else can be done.// -<</if>> - -<<if $TierTwoUnlock == 0>> <<= TierTwoUnlockCalc()>> - <br>You have <<print (30-$SFAO)>> upgrades left before you can move unlock the next tier. ''StimulantLab:'' $securityForceStimulantPower/5 ''Barracks:'' $securityForceArcologyUpgrades/5 ''Garage:'' $securityForceVehiclePower/5 ''Armoury:'' $securityForceInfantryPower/5 ''DroneBay:'' $securityForceDronePower/5 ''Airforce:'' $securityForceAircraftPower/5 - <<if $securityForceVehiclePower == 5>> <<set _T1FullUpgradesGarage = "True">> <</if>> <<if $securityForceAircraftPower == 5>> <<set _T1FullUpgradesAirforce = "True">> <</if>> <<if 30-$SFAO == 0>> <<set $TierTwoUnlock = 1>> <</if>> -<</if>> -<<if $securityForceGiftToken == 1>> - <br>//_Name has already provided you with extra tribute this week.// -<</if>> -<<if $CurrentTradeShowAttendance == 0 && ($securityForceColonelToken == 1 || $securityForceSexedColonelToken == 1)>> - <br>//The Colonel has already spent time with you this week or is unable able to find time in her busy week to <<if $securityForceSexedColonelToken == 1>>'relax'<<elseif $securityForceColonelToken == 1>>relax<</if>> with you.// -<</if>> - -<<set _securityForceUpgradeResetTokenCurrentCost = Math.abs($cash)*.05>> -<<if $securityForceUpgradeToken == 1 && $securityForceUpgradeTokenReset >= 0 && $SFAO > 0>> - <br><br>_Name "says certainly <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>sir<<else>>ma'am<</if>>, it is possible to upgrade $securityForceName more than once per week, however, it will cost you." - <br> - <<link "Would you like to discus upgrading $securityForceName again?">> - <<set $securityForceUpgradeToken = 0, $securityForceUpgradeTokenReset += 1, $cash -= _securityForceUpgradeResetTokenCurrentCost>> - <<goto "SFM Barracks">> - <</link>> <br>It will cost 5% of your currently displayed cash, which is <<print cashFormat(Math.trunc(_securityForceUpgradeResetTokenCurrentCost))>>. -<</if>> -<<if $securityForceUpgradeTokenReset >= 1>> - <br>Total multi week $securityForceName upgrades: $securityForceUpgradeTokenReset <br> -<</if>> - -<<include "SpecialForceUpgradeOptions">> -<<include "SpecialForceBarracksAdditionalColonelInteractions">> diff --git a/src/uncategorized/corporationDevelopments.tw b/src/uncategorized/corporationDevelopments.tw index e2dd544a3baebe5ada418dc6837e8344d4ba25ec..933061777e1e2b676ba9b627755ebbf12bf054c1 100644 --- a/src/uncategorized/corporationDevelopments.tw +++ b/src/uncategorized/corporationDevelopments.tw @@ -21,9 +21,21 @@ <<set $corpCash = Math.trunc($corpCash + $corpProfit)>> Your corporation was valued at @@.yellowgreen;<<print cashFormat($corpValue)>>@@ and made a profit of @@.yellowgreen;<<print cashFormat($corpProfit)>>@@ last week. <<set _addedSlaves = Math.ceil(Math.log($captureAssets+$entrapmentAssets))>> -<<if $mercenariesHelpCorp > 0>> - The $mercenariesTitle assist it with difficult enslavement targets. Otherwise, it - <<set _addedSlaves = Math.ceil(_addedSlaves * (1 + .04 * $mercenaries))>> /* increase by 12-20% ($mercenaries == 3 - 5) */ +<<if $mercenariesHelpCorp > 0 || ($SF.Units >= 10 && $SFSupportLevel >= 4)>> + <<if $mercenariesHelpCorp > 0>> + The $mercenariesTitle + <<set _addedSlaves += Math.ceil(_addedSlaves * (1.04*$mercenaries))>> /* increase by 12-20% ($mercenaries == 3 - 5) */ + <</if>> + <<if $mercenariesHelpCorp > 0 && $SF.Units >= 10>> + and a + <<elseif $SF.Units >= 10>> + A + <</if>> + <<if $SF.Units >= 10>> + small portion of $SF.Lower + <<set _addedSlaves += Math.ceil(_addedSlaves * (1.04*($SF.Units/10)))>> + <</if>> + assist it with difficult enslavement targets. Otherwise, it <<else>> It <</if>> diff --git a/src/uncategorized/costsReport.tw b/src/uncategorized/costsReport.tw index af4b0d7f7cfccc0f37f681061b0e2963352e62ef..38a57dfda34649e3049ec7fa47893b35fe05365e 100644 --- a/src/uncategorized/costsReport.tw +++ b/src/uncategorized/costsReport.tw @@ -48,6 +48,9 @@ your __personal living expenses__ are <<print cashFormat(($girls*(250+($economy* <<print cashFormat($peacekeepers.undermining)>> to undermine political support for the nearby old world peacekeeping mission. <</if>> +<<if $SF.Toggle && $SF.Active >= 1 && $SF.Subsidy>> + <br>__Finacinally supporting $SF.Caps unitll self sufficiency:__ <<print cashFormat(Math.ceil((10000*($SFUnit.Troops/10))*1+($arcologies[0].prosperity/100)*1+($SF.Units/100)))>> +<</if>> <<if $mercenaries > 0>> <<set _mercCosts = $mercenaries*2000>> <<if $barracks>><<set _mercCosts *= 0.5>><</if>> diff --git a/src/uncategorized/fsDevelopments.tw b/src/uncategorized/fsDevelopments.tw index aaa5221f734083fecf1e426daf8298b51bcbe321..2a10f22ea9055f2465295e4f6905ab1bc0a36dc7 100644 --- a/src/uncategorized/fsDevelopments.tw +++ b/src/uncategorized/fsDevelopments.tw @@ -94,6 +94,10 @@ /* Spending, terrain, rep effects */ <<set _broadProgress = 0>> +<<if $SF.Toggle && $SF.Active >= 1 && $SF.SpecOps > 0>> + Assigning a <<if $SF.SpecOps === 1>>small<<else>>large<</if>> portion of $SF.Lower to under cover work helps forward your goals for the arcology's future. + <<set _broadProgress += $SFUC/10>> <br> +<</if>> <<if $FSSpending > 1>> Your @@.yellowgreen;societal spending@@ helps forward your goals for the arcology's future. <<set _broadProgress += Math.trunc($FSSpending/(1000-(500*$arcologies[0].FSEdoRevivalistLaw)-(250*$arcologies[0].FSArabianRevivalistLaw)))>> diff --git a/src/uncategorized/main.tw b/src/uncategorized/main.tw index 15ee026696ade7e46d10349510c3f7af31024891..417cf2d11697fe4d446a2868f89448f60f4902e8 100644 --- a/src/uncategorized/main.tw +++ b/src/uncategorized/main.tw @@ -3,7 +3,9 @@ <<unset $Flag>> <<resetAssignmentFilter>> <<if $releaseID >= 1000 || $ver.includes("0.9") || $ver.includes("0.8") || $ver.includes("0.7") || $ver.includes("0.6")>> - <<if $releaseID >= 1022>> + <<if $releaseID >= 1030>> + <<elseif $releaseID >= 1022 && ndef $SF>> + ''@@.red;INCOMPATIBILITY WARNING:@@'' your saved game was created using version $ver build $releaseID. Due to a major changes to the Security Force Mod, you must run backwards compatibility. <<elseif $releaseID >= 1019>> ''@@.red;INCOMPATIBILITY WARNING:@@'' your saved game was created using version $ver build $releaseID. Due to a major change to nationality weighting, you must run backwards compatibility. <<else>> diff --git a/src/uncategorized/manageArcology.tw b/src/uncategorized/manageArcology.tw index af5496b00bae169cc00d61570e63dafb42bf8fd4..0d2c45963c9903e0f4641db469fd41cdc329770f 100644 --- a/src/uncategorized/manageArcology.tw +++ b/src/uncategorized/manageArcology.tw @@ -278,10 +278,10 @@ Your slaves have participated in approximately <<print commaNum($oralTotal+$vagi <<if $secExp == 1 && $battlesEnabled == 1>> <br><br> -<<if $securityForceCreate == 0>> +<<if $SF.Toggle ==== 0||$SF.Active === 0>> Your army counts <<print commaNum($militiaEmployedManpower + $slavesEmployedManpower + $mercEmployedManpower)>> total soldiers. -<<else>> - Your army counts <<print commaNum($militiaEmployedManpower + $slavesEmployedManpower + $mercEmployedManpower + $securityForcePersonnel)>> total soldiers of which <<print commaNum($securityForcePersonnel)>> under the security force command and the rest under your direct control. +<<elseif $SF.Toggle && $SF.Active >= 1>> + Your army counts <<print commaNum($militiaEmployedManpower + $slavesEmployedManpower + $mercEmployedManpower + $SFUnit.Troops)>> total soldiers of which <<print commaNum($SFUnit.Troops)>> under the special force command and the rest under your direct control. <</if>> <<if $hasFoughtOnce == 1>> Your troops were involved in <<print commaNum($battlesCount)>> battles of which <<print commaNum($majorBattlesCount)>> were major engagements. You won diff --git a/src/uncategorized/managePenthouse.tw b/src/uncategorized/managePenthouse.tw index c782d99037a75ce3c0109bf1e9c2408829853a71..b95652b9b192aae0d867e671e3b6140aae8e977d 100644 --- a/src/uncategorized/managePenthouse.tw +++ b/src/uncategorized/managePenthouse.tw @@ -76,7 +76,7 @@ __Penthouse Facilities__ <<if $cheatMode == 1>> <<if $nursery == 0>> - [[Build a nursery to raise chilren from birth|Manage Penthouse][$cash -= Math.trunc(5000*$upgradeMultiplierArcology), $nursery = 5, $PC.engineering += 1]] @@.red;ALPHA CONTENT@@ + [[Build a nursery to raise children from birth|Manage Penthouse][$cash -= Math.trunc(5000*$upgradeMultiplierArcology), $nursery = 5, $PC.engineering += 1]] @@.red;ALPHA CONTENT@@ //Costs <<print cashFormat(Math.trunc(5000*$upgradeMultiplierArcology))>>// <<else>> The penthouse has a nursery built where infants can be brought up. diff --git a/src/uncategorized/nextWeek.tw b/src/uncategorized/nextWeek.tw index db9ea93914e2dd7a095321d1dd879dda3447a769..154ce0fc17725631cc429db3d2dc6837a6e7d4fe 100644 --- a/src/uncategorized/nextWeek.tw +++ b/src/uncategorized/nextWeek.tw @@ -326,4 +326,7 @@ <<script>>Save.autosave.save("Week Start Autosave")<</script>> <</if>> +<<if $SF.Toggle && $SF.Active >= 1 && $SFTradeShow.CanAttend > -1 && $SFTradeShow.CanAttend > -2>> + <<set $SFTradeShow.CanAttend = -1>> +<</if>> <<goto "Main">> diff --git a/src/uncategorized/nonRandomEvent.tw b/src/uncategorized/nonRandomEvent.tw index b93d083eee15698689b2e71c89c078dfdf7fe9c8..10f2817344400988f5c28236d9008df8e89d5545 100644 --- a/src/uncategorized/nonRandomEvent.tw +++ b/src/uncategorized/nonRandomEvent.tw @@ -98,6 +98,8 @@ <</if>> <<elseif (_effectiveWeek == 72)>> <<goto "P coup aftermath">> +<<elseif $SF.Toggle && _effectiveWeek >= 72 && $SF.Active === -1>> + <<goto "Security Force Proposal">> <<elseif $failedElite > 300 && $eugenicsFullControl != 1>> <<goto "eliteTakeOver">> <<elseif (_effectiveWeek > 5) && ($rep > 3000) && ($FSAnnounced == 0)>> @@ -126,10 +128,6 @@ <<goto "P peacekeepers independence">> <<elseif def $peacekeepers && $peacekeepers.strength >= 50 && $peacekeepers.influenceAnnounced == 0>> <<goto "P peacekeepers influence">> -<<elseif (_effectiveWeek > 80) && (random(1,100) > 66) && ($securityForceCreate != 1) && ($securityForceEventSeen != 1) && ($SFMODToggle == 1)>> - <<goto "Security Force Proposal">> -<<elseif ($securityForceCreate == 1) && ($securityForceActive == 0)>> - <<goto "Security Force Naming-Colonel">> <<elseif ($cash > 30000) && ($rep > 4000) && ($corpAnnounced == 0)>> <<goto "P Corp Announcement">> <<elseif ($rivalOwner > 0)>> @@ -166,8 +164,6 @@ <<goto "secExpSmilingMan">> <<elseif $rivalOwner == 0 && $smilingManProgress == 3 && $secExp == 1>> <<goto "secExpSmilingMan">> -<<elseif $TierTwoUnlock == 1 && ($securityForceCreate == 1) && ($SFMODToggle == 1) && $OverallTradeShowAttendance == 0>> - <<goto "securityForceTradeShow">> <<else>> <<if random(1,100) > _effectiveWeek+25>> <<goto "RIE Eligibility Check">> diff --git a/src/uncategorized/options.tw b/src/uncategorized/options.tw index fd0bc85ba9a7ca577ea97319982233f40e501189..26076861acf6c1f39a3e102c3f0e03d2b375982a 100644 --- a/src/uncategorized/options.tw +++ b/src/uncategorized/options.tw @@ -423,19 +423,12 @@ Curative side effects are @@.red;DISABLED@@. [[Enable|Options][$curativeSideEffe <br><br> ''MODS'' -<br> -<<if ($SFMODToggle == 0)>> - The Special Force Mod is @@.red;DISABLED@@. [[Enable|Options][$SFMODToggle = 1]] +<br>The Special Force Mod is currently +<<if ($SF.Toggle === 0)>> + @@.red;DISABLED@@. [[Enable|Options][$SF.Toggle = 1]] <<else>> - The Special Force Mod is currently @@.cyan;ENABLED@@. [[Disable|Options][$SFMODToggle = 0]] + @@.cyan;ENABLED@@. [[Disable|Options][$SF.Toggle = 0]] <</if>> //Will not affect mod content that has already been encountered.// -<<if ndef $SFSaveRepair>> <<set $SFSaveRepair = 1>> <</if>> -<br> Save repair is -<<if ($SFSaveRepair === 1)>> - @@.cyan;ENABLED@@. [[Disable|Options][$SFSaveRepair = 0]] -<<else>> - @@.red;DISABLED@@. [[Enable|Options][$SFSaveRepair = 1]] -<</if>> //If the SF barracks has disappeared leave it enabled then run BC. Else disable and then run BC.// <br> diff --git a/src/uncategorized/persBusiness.tw b/src/uncategorized/persBusiness.tw index 150461e1e8bb5ddc425333314cd99441491c5f56..09e9ce0facd2dd3a7e630de8a7dc802fcb0fbf74 100644 --- a/src/uncategorized/persBusiness.tw +++ b/src/uncategorized/persBusiness.tw @@ -848,9 +848,9 @@ Routine upkeep of your demesne costs @@.yellow;<<print cashFormat($costs)>>.@@ <</if>> <</if>> - <<if $taxTrade == 1>> - <br>Fees on transitioning goods this week made @@.yellowgreen;<<print cashFormat($trade * random(80,120))>>.@@ - <<set $cash += $trade * 100>> + <<if $taxTrade == 1>> <<set _tradeTax = Math.ceil($trade * random(80,120))>> + <br>Fees on transitioning goods this week made @@.yellowgreen;<<print cashFormat(_tradeTax)>>.@@ + <<set $cash += Math.ceil(_tradeTax)>> <</if>> <</if>> @@ -913,6 +913,4 @@ Routine upkeep of your demesne costs @@.yellow;<<print cashFormat($costs)>>.@@ <<set $menialDemandFactor += random(-250, 250)>> <</if>> -<<if $securityForceActive == 1>> - <<include "Security Force EOW Report">> -<</if>> +<<if $SF.Toggle && $SF.Active >= 1>> <<include "SF_Report">> <</if>> diff --git a/src/uncategorized/randomNonindividualEvent.tw b/src/uncategorized/randomNonindividualEvent.tw index d891ba2decdd1a248e780254f3cb79ba194b2168..006cbf759403c0f2146f33c6bbd685fd0d3e6995 100644 --- a/src/uncategorized/randomNonindividualEvent.tw +++ b/src/uncategorized/randomNonindividualEvent.tw @@ -1281,6 +1281,10 @@ <</if>> <</if>> + <<if $SF.Toggle && $SF.Active >= 1>> + <<set $events.push("Trick Shot Night")>> + <</if>> + <<if $RegularParties == 1>> <<if ($PC.vagina == 1 && $PC.title == 0) && (random(0,99) < $seeDicks)>> <<set $events.push("RE male citizen hookup")>> diff --git a/src/uncategorized/reAWOL.tw b/src/uncategorized/reAWOL.tw index b3b9091633d9b0b9f50669ebd69bf9a76f62072e..d396608c2bed140f5e6c4b7bb239a54233f6e04c 100644 --- a/src/uncategorized/reAWOL.tw +++ b/src/uncategorized/reAWOL.tw @@ -42,16 +42,16 @@ Your window of opportunity to act is closing. If you have plans for punishing th <br> -<<if $securityForceActive == 1>> - <<link "Let your $securityForceName handle her">> +<<if $SF.Toggle && $SF.Active >= 1>> + <<link "Let your $SF.Lower handle her">> <<replace "#result">> - You take a tablet and send The Colonel a notice about the mutinous mercenary. When you have the majority of the pertinent details committed to text, all that remains is to decide the fate of your quarry. + You take a tablet and send <<print SFC()>> a notice about the mutinous mercenary. When you have the majority of the pertinent details committed to text, all that remains is to decide the fate of your quarry. <br><br> <span id="SFresult"> <<link "You want her dead">> <<replace "#SFresult">> - Despite the trouble she has caused you, the culmination of this mercenary's wanton flight from the rest of the $mercenariesTitle is decidedly anti-climatic. The last you hear of her is in the footnote of one of your daily reports, with some minute yet suitably gory pictures as an accompaniment. When the stolen weapons are returned to their rightful place in your arcology, the unfortunate matter is concluded once and for all. @@.green;Your reputation improves@@, a result of the fear of crossing you that your result have inspired. Also the @@.green;arcology's prosperity improves@@, a result of showing your citizens that you are willing and able to deal with such matters in-house. + Despite the trouble she has caused you, the culmination of this mercenary's wanton flight from the rest of the $mercenariesTitle is decidedly anti-climatic. The last you hear of her is in the footnote of one of your daily reports, with some minute yet suitably gory pictures as an accompaniment. When the stolen weapons are returned to their rightful place in your arcology, the unfortunate matter is concluded once and for all. @@.green;Your reputation and $arcologies[0].name's prosperity improves@@, a result of the fear crossing you will bring, in addition toshowing your citizens that you are willing and able to deal with such matters in-house. <<set $rep += 1000,$arcologies[0].prosperity += 2>> <<if $arcologies[0].prosperity > $AProsperityCap>> <<set $arcologies[0].prosperity = $AProsperityCap>> @@ -63,7 +63,7 @@ Your window of opportunity to act is closing. If you have plans for punishing th <<link "You want her alive">> <<replace "#SFresult">> - It doesn't take long for a squad of $securityForceName, to track her down. Soon you have the troublesome turncoat before you in chains. + It doesn't take long for a squad of $SF.Lower, to track her down. Soon you have the troublesome turncoat before you in chains. <br><br> <span id="aliveresult"> diff --git a/src/uncategorized/saLiveWithHG.tw b/src/uncategorized/saLiveWithHG.tw index 7ceab718c4db7c5a3b4f875b4a60c2f8ad5e70cb..ca27d5812c7fbd96b0d8729922ad511fbf603146 100644 --- a/src/uncategorized/saLiveWithHG.tw +++ b/src/uncategorized/saLiveWithHG.tw @@ -389,7 +389,7 @@ <<set _cervixPump = 0>> <<if ($HeadGirl.fetishKnown == 1)>> <<if ($HeadGirl.energy > 95)>> - $slaves[$i].slaveName spends a lot of time getting fucked in whichever hole $HeadGirl.slaveName decides to shove _his2 <<if canPenetrate($HeadGirl)>>dick<<else>>strap-on<</if>> into next. + $slaves[$i].slaveName spends a lot of time getting fucked in whichever hole or cranny $HeadGirl.slaveName decides to shove _his2 <<if canPenetrate($HeadGirl)>>dick<<else>>strap-on<</if>> into next. <<set _oralUse += 5>> <<if canDoAnal($slaves[$i])>> <<set _analUse += 5>> diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw index 72140c9016a810320b40f2ba8f2f9856b9869600..803acf6961e417853835b387a99c6740e60f1c40 100644 --- a/src/uncategorized/saLongTermEffects.tw +++ b/src/uncategorized/saLongTermEffects.tw @@ -8226,11 +8226,11 @@ <<if $slaves[$i].curatives == 1>> <<set _deathSeed += 200>> <</if>> - <<if random(1,1000) > (800+_deathSeed)>> + <<if random(1,1000) > (400+_deathSeed)>> <<set $slaves[$i].death = "health">> <<set $slaveDeath = 1>> <</if>> - <<if ($slaves[$i].aphrodisiacs > 0 || $slaves[$i].inflationType == "aphrodisiac") && random(1,1000) > (600+_deathSeed)>> + <<if ($slaves[$i].aphrodisiacs > 0 || $slaves[$i].inflationType == "aphrodisiac") && random(1,1000) > (200+_deathSeed)>> <<set $slaves[$i].death = "OD">> <<set $slaveDeath = 1>> <</if>> diff --git a/src/uncategorized/seIndependenceDay.tw b/src/uncategorized/seIndependenceDay.tw index 1825758a4366b106f6ca350fe51d1f6796d33357..9b4030b9f951edddf2b0e0fcb80f2c9ae5e13437 100644 --- a/src/uncategorized/seIndependenceDay.tw +++ b/src/uncategorized/seIndependenceDay.tw @@ -375,88 +375,83 @@ In the Free Cities, Independence Day falls on the day when the Free City achieve <span id="result2"> <br><<link "Pay for a lavish fireworks display">> <<replace "#result2">> - Once darkness falls outside the arcology, a traditional fireworks display erupts from mortars mounted on your penthouse balconies. The noise and light @@.green;delights@@ your citizens, terrifies the arcology's stupider slaves, and serves a useful ancillary purpose in defense preparedness. The arcology's radar and laser sensors track the display, using it as an opportunity to calibrate the point defense systems on real targets. There is general agreement that this sort of thing should be a yearly tradition here, just like it was in some parts of the old world: old ideas aren't all bad. + <br><br>Once darkness falls outside the arcology, a traditional fireworks display erupts from mortars mounted on your penthouse balconies. The noise and light @@.green;delights@@ your citizens, terrifies the arcology's stupider slaves, and serves a useful ancillary purpose in defense preparedness. The arcology's radar and laser sensors track the display, using it as an opportunity to calibrate the point defense systems on real targets. There is general agreement that this sort of thing should be a yearly tradition here, just like it was in some parts of the old world: old ideas aren't all bad. <<set $rep += 1000, $cash -= 10000>> <</replace>> -<</link>> //Costs <<print cashFormat(10000)>>// +<</link>> //Costs @@.yellowgreen;<<print cashFormat(10000)>>@@// </span> -<<if $securityForceActive == 1>> +<<if $SF.Toggle && $SF.Active >= 1>> <span id="result3"> <br><<link "Host a parade">> - <<replace "#result2">> - <<if $securityForcePersonnel < 100>> - The tiny size of $securityForceName does not inspire confidence in your citizens. + <<replace "#result3">><br><br> + <<if $SFUnit.Troops < 100>> + The tiny size of $SF.Lower does not inspire confidence in your citizens. <<set $rep -= 200>> - <<elseif $securityForcePersonnel < 1500>> - The almost full size of $securityForceName inspires confidence in your citizens. - <<set $rep += 100>> + <<elseif $SFUnit.Troops < 2000>> + The almost full size of $SF.Lower inspires confidence in your citizens. + <<set $rep += 250>> <</if>> - <<if $securityForceInfantryPower == 0>> - Seeing the soldiers of $securityForceName with high-quality personal weapons and light armor, but little in the way of exceptional armament, provides little confidence in $securityForceName. + <<if $SFUnit.Armoury === 0>> + Seeing the soldiers of $SF.Lower with high-quality personal weapons and light armor, but little in the way of exceptional armament, provides little confidence in $SF.Lower. <<set $rep -= 200>> - <<elseif $securityForceInfantryPower == 11>> - The citizens of $arcologies[0].name are relieved to see that $securityForceName's troops are out fitted the absolutely latest in gear. - <<set $rep += 100>> + <<else>> + The citizens of $arcologies[0].name are relieved to see that $SF.Lower's troops are out fitted the absolutely latest in gear. + <<set $rep += 250>> <</if>> - <<if $securityForceStimulantPower == 0>> - Seeing $securityForceName being relaxed inspires confidence that they are unlikely to get a face full of lead. - <<set $rep += 100>> - <<elseif $securityForceStimulantPower == 7>> - The slight twitchiness and high-end alertness of $securityForceName's troops makes your citizens afraid that they may get a face full of lead. + <<if $SFUnit.Drugs === 0>> + Seeing $SF.Lower being relaxed inspires confidence that they are unlikely to + <<set $rep += 250>> + <<else>> + The slight twitchiness and high-end alertness of $SF.Lower's troops makes your citizens afraid that they may <<set $rep -= 200>> - <</if>> - <<if $securityForceVehiclePower == 0>> - The use of basic, unarmored mainly high-end civilian vehicles with jury-rigged crew-served weapons by $securityForceName does not inspire confidence in your citizens. + <</if>> get a face full of lead. + <<if $SFUnit.AV < 1 && $SFUnit.TV < 1>> + The use of basic, unarmored mainly high-end civilian vehicles with jury-rigged crew-served weapons by $SF.Lower does not <<set $rep -= 200>> - <<elseif $securityForceVehiclePower == 7>> - $securityForceName's use of the most advanced heavy armored and support vehicles possible inspires confidence in your citizens. - <<set $rep += 100>> - <</if>> - <<if $securityForceAircraftPower == 0>> - Seeing $securityForceName's air force primarily consist of light transport VTOLs equipped with non-lethal weaponry, does not assure your citizens. + <<elseif $SFUnit.AV < 11 && $SFUnit.TV < 11>> + $SF.Lower's use of the most advanced heavy armored and support vehicles possible + <<set $rep += 250>> + <</if>> inspires confidence in your citizens. + <<if $SFUnit.AA < 1 && $SFUnit.TA < 1>> + Seeing $SF.Lower's air force only number enough to be a squadron and armed with just a Gatling cannon does not assure your citizens. <<set $rep -= 200>> - <<elseif $securityForceAircraftPower == 7>> - Seeing $securityForceName's air force using latest equipment assures your citizens that they are safe from the air. - <<set $rep += 100>> + <<elseif $SFUnit.AA < 11 && $SFUnit.TA < 11>> + Seeing $SF.Lower's air force using more advanced equipment assures your citizens that they are safe from the air. + <<set $rep += 250>> <</if>> - <<if $securityForceDronePower == 0>> + <<if $SFUnit.Drones === 0>> Seeing "re-purposed" non-military drones from the arcology's original contingent flying around, does not inspire confidence in your citizens. <<set $rep -= 200>> - <<elseif $securityForceDronePower == 5>> + <<else>> Seeing the latest and greatest drones buzzing over head assures your citizens that they are unmatched. - <<set $rep += 100>> + <<set $rep += 250>> <</if>> - <<if $securityForceGiantRobot == 1>> + <<if $SFUnit.GiantRobot === 1>> Seeing a basic old world rusted looking Giant Robot, doesn't provide your citizens with much assurance that they are protected. <<set $rep -= 200>> - <<elseif $securityForceGiantRobot == 7>> + <<else>> Seeing that the Giant Robot has been fully upgraded provides your citizens with a feeling of safety. - <<set $rep += 100>> + <<set $rep += 250>> <</if>> - <<if ($securityForceRulesOfEngagement == "hold") && ($securityForceDepravity >= 1.5)>> - The sight of $securityForceName's forcing their captured slaves to suck them off while swinging their swords and other none lethal tools around trigger fingers twitch inspires terror in your citizens. + <<if ($SF.ROE === "hold") && ($SF.Depravity >= 1.5)>> + The sight of $SF.Lower's forcing their captured slaves to suck them off while swinging their swords and other none lethal tools around trigger fingers twitch inspires terror in your citizens. <<set $rep -= 200>> - <<elseif ($securityForceRulesOfEngagement == "limited") && ($securityForceDepravity >= 1.5)>> - The sight of $securityForceName's forcing their captured slaves to suck them off with itchy trigger fingers inspires terror in your citizens. + <<elseif ($SF.ROE === "limited") && ($SF.Depravity >= 1.5)>> + The sight of $SF.Lower's forcing their captured slaves to suck them off with itchy trigger fingers inspires terror in your citizens. <<set $rep -= 200>> - <<elseif ($securityForceRulesOfEngagement == "free") && ($securityForceDepravity >= 1.5)>> - The sight of $securityForceName's forcing their captured slaves to suck them off while frequently firing without any care into the air, inspiring terror in your citizens. + <<elseif ($SF.ROE === "free") && ($SF.Depravity >= 1.5)>> + The sight of $SF.Lower's forcing their captured slaves to suck them off while frequently firing without any care into the air, inspiring terror in your citizens. <<set $rep -= 200>> <</if>> - <<if ($securityForceRulesOfEngagement == "hold") && ($securityForceDepravity <= 0.3)>> - The sight of $securityForceName's professionally holstering their weapons provides your citizens with a sense of safety. - <<set $rep += 100>> - <<elseif ($securityForceRulesOfEngagement == "limited") && ($securityForceDepravity <= 0.3)>> - The sight of $securityForceName's professionally keeping their finger on the trigger provides your citizens with a sense of safety. - <<set $rep += 100>> - <<elseif ($securityForceRulesOfEngagement == "free") && ($securityForceDepravity <= 0.3)>> - The sight of $securityForceName's professionally being alert and to ready to act at a moment's notice provides your citizens with a sense of safety. - <<set $rep += 100>> + <<if ($SF.ROE === "hold") && ($SF.Depravity <= 0.3)>> + The sight of $SF.Lower's professionally holstering their weapons provides your citizens with a sense of safety. + <<set $rep += 250>> + <<elseif ($SF.ROE === "limited") && ($SF.Depravity <= 0.3)>> + The sight of $SF.Lower's professionally keeping their finger on the trigger provides your citizens with a sense of safety. + <<set $rep += 250>> + <<elseif ($SF.ROE === "free") && ($SF.Depravity <= 0.3)>> + The sight of $SF.Lower's professionally being alert and to ready to act at a moment's notice provides your citizens with a sense of safety. + <<set $rep += 250>> <</if>> - /*Maybe a random chance attack by the Daughter's of Liberty if they haven't been already defeated or if they have by a cell that managed to survive. The size of the attack could depend the time since their last encounter. The amount of damage inflicted would depend primarily on if the hacker's support was acquired, $bodyguard's combat skill, the player's combat skill, SF upgrades and finally some RNG. If a low amount of damage is inflicted then there will be a low hit to rep and some criminals can be acquired or dealt with in the usual manner. Higher amounts of damage leads to higher hits to rep and a chance that fewer attackers will survive. Without a bodyguard there is a chance that PC may die or be held hostage with a chance of being killed if the rescue attempt is botched. */ - - /* I was thinking providing a option (potentially #result3) of giving a speech with it being a duplicate of the above speech just for completeness sake however it would be redundant except for a line or two about the outcome of attack if it fired (i.e listing the number of dead/captured attackers (potentially #result4) and dead soldiers with a couple of potential options (potentially #result5) ;to erect a statute or such acknowledge them and if one is already present to add them on to it, to provide support for their families. Also the amount of monetary damage, did $bodyguard die or just get wounded and if so how severely. Finally a closing message with how the PC wishes to react to it (potentially #result6); e.g. be vigilant, it's a one off, act of war, we will not give into terrorist attacks, etc. */ - <</replace>> -<</link>> -<</if>> -</span> \ No newline at end of file + /* I was thinking providing a option (potentially #result3) of giving a speech with it being a duplicate of the above speech just for completeness sake however it would be redundant except for a line or two about the outcome of attack if it fired (i.e listing the number of dead/captured attackers (potentially #result4) and dead soldiers with a couple of potential options (potentially #result5) ;to erect a statute or such acknowledge them and if one is already present to add them on to it, to provide support for their families. Also the amount of monetary damage, did $bodyguard die or just get wounded and if so how severely. Finally a closing message with how the PC wishes to react to it (potentially #result6); e.g. be vigilant, it's a one off, act of war, we will not give into terrorist attacks, etc. */ + <</replace>> <</link>> </span> <</if>> diff --git a/src/uncategorized/seRaiding.tw b/src/uncategorized/seRaiding.tw index e24fd2c5479fc1f774af8f66ab69fc0542323a6a..5dbe46ec9f57e23c0f100e9835dca0d126437ebd 100644 --- a/src/uncategorized/seRaiding.tw +++ b/src/uncategorized/seRaiding.tw @@ -3,8 +3,22 @@ <<set $nextLink = "Scheduled Event", $returnTo = "Scheduled Event", $nextButton = "Continue", $raided = $week>> The leader of your $mercenariesTitle has contacted you from the world outside your arcology. It seems that your $mercenariesTitle have enjoyed a profitable series of raids in their time outside the arcology and have decided to push their luck by plundering one last location on their way back to the arcology. As their nominal leader, they ask your opinion of a small number of potential targets. Given the distance from the arcology and the time sensitivity of conducting such a mission, you have little to base your decision on besides a brief description. -<<if $securityForceSatellitePower >= 1>> - By having access to the use of $securityForceName's Satellite it is less likely that the target will escape. +<<if $SF.Toggle && $SF.Active >= 1 && (($SFUnit.Satellite >= 1 && $SatLaunched > 0) || $SFUnit.SpacePlane >= 1)>> + By having access to the use of $SF.Lower's + <<if $SFUnit.Satellite >= 1 && $SatLaunched > 0>> + satellite + <</if>> + <<if $SFUnit.SpacePlane >= 1>> + space plane + <</if>> + <<if ($SFUnit.Satellite >= 1 && $SatLaunched > 0) && $SFUnit.SpacePlane >= 1>> + satellite and space plane + <</if>> + it is + <<if $SFUnit.Satellite >= 1 && $SatLaunched > 0 && $SFUnit.SpacePlane >= 1>> + even + <</if>> + less likely that the target will escape. <</if>> <br><br> diff --git a/src/uncategorized/seRaidingAssault.tw b/src/uncategorized/seRaidingAssault.tw index 448f4be348c37eff05bf75d3c805a1954c43f22e..853a8476a8c6380dc6f990399dd26eedbbdc263f 100644 --- a/src/uncategorized/seRaidingAssault.tw +++ b/src/uncategorized/seRaidingAssault.tw @@ -2,13 +2,21 @@ You make your selection and direct your $mercenariesTitle to attack the target. -<<if $securityForceSatellitePower >= 1>> - <<set _MercCapture = random(-3,5)>> - <<set _raidescape = random(1,2)>> -<<else>> - <<set _MercCapture = random(-4,4)>> - <<set _raidescape = random(1,3)>> +<<set _MercCaptureL = -4,_MercCaptureU = 4>> +<<set _raidescapeL = 1,_raidescapeU = 3>> + +<<if $SF.Toggle && $SF.Active >= 1>> + <<if $SFUnit.Satellite >= 1 && $SatLaunched > 0>> + <<set _MercCaptureL += 1,_MercCaptureU +1>> + <<set _raidescapeL -= 1,_raidescapeU -= 1>> + <</if>> + <<if $SFUnit.SpacePlane >= 1>> + <<set _MercCaptureL += 1,_MercCaptureU +1>> + <<set _raidescapeL -= 1>> + <</if>> <</if>> +<<set _MercCapture = random(_MercCaptureL,_MercCaptureU)>> +<<set _raidescape = random(_raidescapeL,_raidescapeU)>> <<switch $origin>> <<case "housewife">> @@ -205,4 +213,4 @@ You make your selection and direct your $mercenariesTitle to attack the target. <<if ($targetEscape >= _MercCapture) || (_raidescape == 1)>> Your $mercenariesTitle return without their final prize, but remain in high spirits given their other successes out in the field. <</if>> -<<unset $targetEscape, $origin>> \ No newline at end of file +<<unset $targetEscape, $origin>> diff --git a/src/uncategorized/securityForceEOWReport.tw b/src/uncategorized/securityForceEOWReport.tw deleted file mode 100644 index bd757372e21b01f45158bd07bee5b9e5fc75089f..0000000000000000000000000000000000000000 --- a/src/uncategorized/securityForceEOWReport.tw +++ /dev/null @@ -1,425 +0,0 @@ -:: Security Force EOW Report - -<<silently>> - -<<include "SpecialForceUpgradeTree">> -<<set _SFNOPercentage = _maxNO*_RaidingEfficiency>> -<<set _SFOPercentage = _maxO*_RaidingEfficiency>> - -/* Manpower Fluctuation Calculations - loss from attrition, random casualties, etc. Baseline is ~3%/week. Heavier for raiding/slaving, reduced for securing trade. Maxes out between 1000-1500, though never exactly that. If over 1500 for some reason, set to 1455-1495. If under 100, cannot fluctuate further negatively. */ - - /* Check for too many troopers, set to mid 1400s if so */ - <<if $securityForcePersonnel > 1500>> - <<set $securityForcePersonnel = random(1455,1495)>> - <</if>> - - /* Force attrition, scales with size of force, increases when raiding and decreases when training. Securing trade is the 'neutral state', though attrition still of course happens */ - <<if $securityForcePersonnel < 100>> - <<if $securityForceFocus == "recruit">> <<set $securityForcePersonnel += random(2,5)>> <<elseif $securityForceFocus == "raiding">> <<set $securityForcePersonnel += random(2,5)>> <<else>> <<set $securityForcePersonnel += random(2,5)>> - <</if>> - <<elseif $securityForcePersonnel < 200>> - <<if $securityForceFocus == "recruit">> <<set $securityForcePersonnel += random(-4,0)>> <<elseif $securityForceFocus == "raiding">> <<set $securityForcePersonnel += random(-8,-4)>> <<else>> <<set $securityForcePersonnel += random(-6,-2)>> - <</if>> - <<elseif $securityForcePersonnel < 300>> - <<if $securityForceFocus == "recruit">> <<set $securityForcePersonnel += random(-6,-2)>> <<elseif $securityForceFocus == "raiding">> <<set $securityForcePersonnel += random(-10,-6)>> <<else>> <<set $securityForcePersonnel += random(-8,-4)>> - <</if>> - <<elseif $securityForcePersonnel < 400>> - <<if $securityForceFocus == "recruit">> <<set $securityForcePersonnel += random(-8,-4)>> <<elseif $securityForceFocus == "raiding">> <<set $securityForcePersonnel += random(-12,-8)>> <<else>> <<set $securityForcePersonnel += random(-10,-6)>> - <</if>> - <<elseif $securityForcePersonnel < 500>> - <<if $securityForceFocus == "recruit">> <<set $securityForcePersonnel += random(-12,-8)>> <<elseif $securityForceFocus == "raiding">> <<set $securityForcePersonnel += random(-16,-12)>> <<else>> <<set $securityForcePersonnel += random(-14,-10)>> - <</if>> - <<elseif $securityForcePersonnel < 600>> - <<if $securityForceFocus == "recruit">> <<set $securityForcePersonnel += random(-14,-12)>> <<elseif $securityForceFocus == "raiding">> <<set $securityForcePersonnel += random(-18,-16)>> <<else>> <<set $securityForcePersonnel += random(-16,-14)>> - <</if>> - <<elseif $securityForcePersonnel < 700>> - <<if $securityForceFocus == "recruit">> <<set $securityForcePersonnel += random(-16,-14)>> <<elseif $securityForceFocus == "raiding">> <<set $securityForcePersonnel += random(-20,-18)>> <<else>> <<set $securityForcePersonnel += random(-18,-16)>> - <</if>> - <<elseif $securityForcePersonnel < 800>> - <<if $securityForceFocus == "recruit">> <<set $securityForcePersonnel += random(-20,-16)>> <<elseif $securityForceFocus == "raiding">> <<set $securityForcePersonnel += random(-24,-20)>> <<else>> <<set $securityForcePersonnel += random(-22,-18)>> - <</if>> - <<elseif $securityForcePersonnel < 900>> - <<if $securityForceFocus == "recruit">> <<set $securityForcePersonnel += random(-24,-20)>> <<elseif $securityForceFocus == "raiding">> <<set $securityForcePersonnel += random(-28,-24)>> <<else>> <<set $securityForcePersonnel += random(-26,-22)>> - <</if>> - <<elseif $securityForcePersonnel < 1000>> - <<if $securityForceFocus == "recruit">> <<set $securityForcePersonnel += random(-28,-24)>> <<elseif $securityForceFocus == "raiding">> <<set $securityForcePersonnel += random(-30,-28)>> <<else>> <<set $securityForcePersonnel += random(-30,-26)>> - <</if>> - <<elseif $securityForcePersonnel < 1100>> - <<if $securityForceFocus == "recruit">> <<set $securityForcePersonnel += random(-30,-28)>> <<elseif $securityForceFocus == "raiding">> <<set $securityForcePersonnel += random(-32,-32)>> <<else>> <<set $securityForcePersonnel += random(-34,-28)>> - <</if>> - <<elseif $securityForcePersonnel < 1200>> - <<if $securityForceFocus == "recruit">> <<set $securityForcePersonnel += random(-32,-34)>> <<elseif $securityForceFocus == "raiding">> <<set $securityForcePersonnel += random(-34,-36)>> <<else>> <<set $securityForcePersonnel += random(-38,-30)>> - <</if>> - <<elseif $securityForcePersonnel < 1300>> - <<if $securityForceFocus == "recruit">> <<set $securityForcePersonnel += random(-34,-38)>> <<elseif $securityForceFocus == "raiding">> <<set $securityForcePersonnel += random(-36,-40)>> <<else>> <<set $securityForcePersonnel += random(-42,-32)>> - <</if>> - <<elseif $securityForcePersonnel < 1400>> - <<if $securityForceFocus == "recruit">> <<set $securityForcePersonnel += random(-36,-42)>> <<elseif $securityForceFocus == "raiding">> <<set $securityForcePersonnel += random(-38,-44)>> <<else>> <<set $securityForcePersonnel += random(-46,-34)>> - <</if>> - <<elseif $securityForcePersonnel < 1500>> - <<if $securityForceFocus == "recruit">> <<set $securityForcePersonnel += random(-48,-46)>> <<elseif $securityForceFocus == "raiding">> <<set $securityForcePersonnel += random(-40,-48)>> <<else>> <<set $securityForcePersonnel += random(-50,-36)>> - <</if>> - <<else>> - <<set $securityForcePersonnel += random(-1,1)>> - <</if>> - -/* Recruitment Calculations. Base of 10/week, so can get to about 250 personnel without upgrades/rep changes. Increases with reputation, either positive (I get to work for a solid private force!) or negative (I get to shoot people and take their shit with nobody caring!). Increases with cumulative upgrade sum (a better equipped force is more attractive for recruits). Infantry upgrades are worth twice as much (I get crazy combat armor, for free?). */ - - /* Universal recruitment base */ - <<set $securityForceRecruit = 10>> - - /* Extra recruitment from upgrades, up to an extra 5 per upgrade track (10 for infantry), to a sum of an extra 35/week at full upgrades. */ - <<if $securityForceArcologyUpgrades > 0>> - <<set $securityForceRecruit += ($securityForceArcologyUpgrades)>> <</if>> - <<if $securityForceInfantryPower > 0>> - <<set $securityForceRecruit += ($securityForceInfantryPower*2)>> <</if>> - <<if $securityForceStimulantPower > 0>> - <<set $securityForceRecruit += ($securityForceStimulantPower)>> <</if>> - - <<if $securityForceArcologyUpgrades >= 1>> - <<if $securityForceVehiclePower > 0>> - <<set $securityForceRecruit += ($securityForceVehiclePower)>> <</if>> - <</if>> - - <<if $securityForceArcologyUpgrades >= 4>> - <<if $securityForceAircraftPower > 0>> - <<set $securityForceRecruit += ($securityForceAircraftPower)>> <</if>> - <<if $securityForceSpacePlanePower > 0>> - <<set $securityForceRecruit += ($securityForceSpacePlanePower)>> <</if>> - <<if $securityForceFortressZeppelin > 0>> - <<set $securityForceRecruit += ($securityForceFortressZeppelin)>> <</if>> - <<if $securityForceAC130 > 0>> - <<set $securityForceRecruit += ($securityForceAC130)>> <</if>> - <</if>> - - <<if $securityForceArcologyUpgrades >= 2>> - <<if $securityForceDronePower > 0>> - <<set $securityForceRecruit += ($securityForceDronePower)>> <</if>> - <</if>> - - <<if $securityForceArcologyUpgrades >= 4>> - <<if $securityForceSatellitePower > 0>> - <<set $securityForceRecruit += ($securityForceSatellitePower)>> <</if>> - <<if $securityForceGiantRobot > 0 && ($terrain != "oceanic" && $terrain != "marine")>> - <<set $securityForceRecruit += ($securityForceGiantRobot)>> <</if>> - <</if>> - - <<if $terrain == "oceanic" || $terrain == "marine">> - <<if $securityForceAircraftCarrier > 0>> - <<set $securityForceRecruit += ($securityForceAircraftCarrier)>> <</if>> - <<if $securityForceSubmarine > 0>> - <<set $securityForceRecruit += ($securityForceSubmarine)>> <</if>> - <</if>> - - <<switch $ColonelCore>> - <<case "kind" "collected">> - <<set $securityForceRecruit += 2>> - <</switch>> - - /* If focus is recruit/train, 95% of the above is added to the personnel total of the SF. Else, 25% (which will, at medium/high personnel levels, not wholly counteract attrition, needing some recruitment every so often to keep the total high). */ - <<if $securityForceFocus == "recruit">> - <<set $securityForceRecruit += (Math.trunc($securityForceRecruit*0.95))>> - <<elseif $securityForceFocus == "secure">> - <<set $securityForceRecruit += (Math.trunc($securityForceRecruit*0.25))>> - <<elseif $securityForceFocus == "raiding">> - <<set $securityForceRecruit += (Math.trunc($securityForceRecruit*0.25))>> - <</if>> - - /* Final addition of recruits to force personnel pool */ - <<set $securityForcePersonnel += ($securityForceRecruit)>> - - /* Final Check to ensure not over 1500 members. If so, set it to the mid/high 1400s. Recruitment will be wasteful at this point. */ - <<if $securityForcePersonnel > 1500>> - <<set $securityForcePersonnel = random(1455,1495)>> - <</if>> - -/* Trade Protection Calculations. Protecting trade is a reputation/prosperity builder and provides a few event triggers. Base rep build of 2.5%/week. Each upgrade adds 0.25%, drones and barracks are twice as powerful (swarms to patrol smaller routes while the troops secure the major ones and improved coordination, etc.), to reach a theoretical max of 5% rep boost per week from that (before subsequent modifiers and calculations at EOW). Personnel gates apply a further 0.5% modifier per gate. Prosperity builds at the same rate (adds an extra 5% prosperity per week along the same guidelines as rep using the same logic), and is then applied to the prosperity if the result would be less than/equal to the current prosperity cap. Positive reputation applies a significant positive multiplier (lets go trade with the nice people!), negative reputation applies a significant negative multiplier (trade routes are safe, yeah, but you know, they, uh, murder people for their jewelry and then enslave their children). */ - - /* Base rep/prosperity gain */ - <<set $securityForceTrade = 0.025>> - - /* Extra rep/prosperity from upgrades, an extra 0.25% per upgrade. ArcologyUpgrades and drones are worth double. */ - <<if $securityForceArcologyUpgrades > 0>> - <<set $securityForceTrade += (0.5*($securityForceArcologyUpgrades))>> <</if>> - <<if $securityForceInfantryPower > 0>> - <<set $securityForceTrade += (0.25*($securityForceInfantryPower))>> <</if>> - <<if $securityForceStimulantPower > 0>> - <<set $securityForceTrade += (0.25*($securityForceStimulantPower))>> <</if>> - - <<if $securityForceArcologyUpgrades >= 1>> - <<if $securityForceVehiclePower > 0>> - <<set $securityForceTrade += (0.25*($securityForceVehiclePower))>> <</if>> - <<if $securityForceHeavyBattleTank > 0>> - <<set $securityForceTrade += (0.25*($securityForceHeavyBattleTank))>> <</if>> - <</if>> - - <<if $securityForceArcologyUpgrades >= 4>> - <<if $securityForceAircraftPower > 0>> - <<set $securityForceTrade += (0.25*($securityForceAircraftPower))>> <</if>> - <<if $securityForceSpacePlanePower > 0>> - <<set $securityForceTrade += (0.25*($securityForceSpacePlanePower))>> <</if>> - <<if $securityForceFortressZeppelin > 0>> - <<set $securityForceTrade += (0.25*($securityForceFortressZeppelin))>> <</if>> - <<if $securityForceAC130 > 0>> - <<set $securityForceTrade += (0.25*($securityForceAC130))>> <</if>> - <<if $securityForceHeavyTransport > 0>> - <<set $securityForceTrade += (0.25*($securityForceHeavyTransport))>> <</if>> - <</if>> - - <<if $securityForceArcologyUpgrades >= 2>> - <<if $securityForceDronePower > 0>> - <<set $securityForceTrade += (0.5*($securityForceDronePower))>> <</if>> - <</if>> - - <<if $securityForceArcologyUpgrades >= 4>> - <<if $securityForceSatellitePower > 0>> - <<set $securityForceTrade += (0.25*($securityForceSatellitePower))>> <</if>> - <<if $securityForceGiantRobot > 0 && $terrain != "oceanic" && $terrain != "marine">> - <<set $securityForceTrade += (0.25*($securityForceGiantRobot))>> <</if>> - <<if $securityForceMissileSilo > 0 && $terrain != "oceanic" && $terrain != "marine">> - <<set $securityForceTrade += (0.25*($securityForceMissileSilo))>> <</if>> - <</if>> - - <<if $terrain == "oceanic" || $terrain == "marine">> - <<if $securityForceAircraftCarrier > 0>> - <<set $securityForceTrade += (0.25*($securityForceAircraftCarrier))>> <</if>> - <<if $securityForceSubmarine > 0>> - <<set $securityForceTrade += (0.25*($securityForceSubmarine))>> <</if>> - <<if $securityForceHeavyAmphibiousTransport > 0>> - <<set $securityForceTrade += (0.25*($securityForceHeavyAmphibiousTransport))>> <</if>> - <</if>> - - <<switch $ColonelCore>> - <<case "kind" "collected">> - <<set $securityForceTrade += 0.15>> - <</switch>> - - /* Manpower effects - extra 0.5% per 100-gate in terms of manpower. Kicks in at over 200, since some of the SF is on overhead, logistics, repairs, rest, etc. */ - <<if $securityForcePersonnel > 200>> - <<set $securityForceTrade += (0.005*Math.trunc($securityForcePersonnel/100))>> - <</if>> - - /* If focus is secure trade, 95% of the above is added to the players rep/prosperity. Else, 25%. */ - <<if $securityForceFocus == "secure">> - <<set $rep += (Math.trunc($rep*($securityForceTrade*0.95)))>> - <<set $arcologies[0].prosperity = (Math.trunc($arcologies[0].prosperity+($securityForceTrade*0.95)))>> - <<elseif $securityForceFocus == "recruit">> - <<set $rep += (Math.trunc($rep*($securityForceTrade*0.25)))>> - <<set $arcologies[0].prosperity = (Math.trunc($arcologies[0].prosperity+($securityForceTrade*0.25)))>> - <<elseif $securityForceFocus == "raiding">> - <<set $rep += (Math.trunc($rep*($securityForceTrade*0.25)))>> - <<set $arcologies[0].prosperity = (Math.trunc($arcologies[0].prosperity+($securityForceTrade*0.25)))>> - <</if>> - - /* If the rep or prosperity is now above the cap, set it to the cap. */ - <<if $rep > 20000>> - <<set $rep = 20000>> - <</if>> - <<if $arcologies[0].prosperity > $AProsperityCap>> - <<set $arcologies[0].prosperity = $AProsperityCap>> - <</if>> - -/* Raiding/Slaving Calculations. This brings in cash and activates event triggers. Base raiding brings in 75000/week, but this scales significantly with personnel and upgrades. */ - - /* Base raiding take, zero the summative variables */ - <<set $securityForceBooty = 75000>> - <<set $securityForceIncome = 0>> - <<set $securityForceMissionEfficiency = 1>> - - /* Impact of manpower on raiding. An extra 3500/100-gate, kicking in at over 200 personnel */ - <<if $securityForcePersonnel > 200>> - <<set $securityForceBooty += 3500*Math.trunc($securityForcePersonnel/100)>> - <</if>> - - <<set _RaidingEfficiency = .1>> - - /* Raiding Efficiency Modifier Calculations - /* Drugs make them better at everything, but especially much better at raiding - much easier to murder and pillage when you're fucked out of your mind on a mix of meth, pcp, and lsd. Having an effective; CIC (Combat Information Center) at the barracks, air force, Satellite, AC-130, major and more efficient facility support massively improves raiding efficiency. If we are dealing with an oceanic arcology the sub and carrier massively improve efficiency. */ - - /* Facilities */ - - <<if $securityForceArcologyUpgrades > 0>> - <<set $securityForceMissionEfficiency *= 1+($securityForceArcologyUpgrades*_RaidingEfficiency)>> <</if>> - <<if $securityForceInfantryPower > 0>> - <<set $securityForceMissionEfficiency *= 1+($securityForceInfantryPower*_RaidingEfficiency)>> <</if>> - <<if $securityForceStimulantPower > 0>> - <<set $securityForceMissionEfficiency *= 1+($securityForceStimulantPower*_RaidingEfficiency)>> <</if>> - - <<if $securityForceArcologyUpgrades >= 1>> - <<if $securityForceVehiclePower > 0>> - <<set $securityForceMissionEfficiency *= 1+($securityForceVehiclePower*_RaidingEfficiency)>> <</if>> - <<if $securityForceHeavyBattleTank > 0>> - <<set $securityForceMissionEfficiency *= 1+($securityForceHeavyBattleTank*_RaidingEfficiency)>> <</if>> - <</if>> - - <<if $securityForceArcologyUpgrades >= 4>> - <<if $securityForceAircraftPower > 0>> - <<set $securityForceMissionEfficiency *= 1+($securityForceAircraftPower*_RaidingEfficiency)>> <</if>> - <<if $securityForceSpacePlanePower > 0>> - <<set $securityForceMissionEfficiency *= 1+($securityForceSpacePlanePower*_RaidingEfficiency)>> <</if>> - <<if $securityForceFortressZeppelin > 0>> - <<set $securityForceMissionEfficiency *= 1+($securityForceFortressZeppelin*_RaidingEfficiency)>> <</if>> - <<if $securityForceAC130 > 0>> - <<set $securityForceMissionEfficiency *= 1+($securityForceAC130*_RaidingEfficiency)>> <</if>> - <</if>> - - <<if $securityForceArcologyUpgrades >= 2>> - <<if $securityForceDronePower > 0>> - <<set $securityForceMissionEfficiency *= 1+($securityForceDronePower*_RaidingEfficiency)>> <</if>> - <</if>> - - <<if $securityForceArcologyUpgrades >= 4>> - <<if $securityForceSatellitePower > 0>> - <<set $securityForceMissionEfficiency *= 1+($securityForceSatellitePower*_RaidingEfficiency)>> <</if>> - <<if $securityForceGiantRobot > 0 && ($terrain != "oceanic" && $terrain != "marine")>> - <<set $securityForceMissionEfficiency *= 1+($securityForceGiantRobot*_RaidingEfficiency)>> <</if>> - <<if $securityForceMissileSilo > 0 && ($terrain != "oceanic" && $terrain != "marine")>> - <<set $securityForceMissionEfficiency *= 1+($securityForceMissileSilo*_RaidingEfficiency)>> <</if>> - <</if>> - - <<if $terrain == "oceanic" || $terrain == "marine">> - <<if $securityForceAircraftCarrier > 0>> - <<set $securityForceMissionEfficiency *= 1+($securityForceAircraftCarrier*_RaidingEfficiency)>> <</if>> - <<if $securityForceSubmarine > 0>> - <<set $securityForceMissionEfficiency *= 1+($securityForceSubmarine*_RaidingEfficiency)>> <</if>> - <<if $securityForceHeavyAmphibiousTransport > 0>> - <<set $securityForceMissionEfficiency *= 1+($securityForceHeavyAmphibiousTransport*_RaidingEfficiency)>> <</if>> - <</if>> - - /* Colonel */ - <<switch $ColonelCore>> - <<case "warmonger" "cruel" "psychopathic">> - <<set $securityForceMissionEfficiency *= 1+(_RaidingEfficiency)>> - <</switch>> - <<if $securityForceSexedColonel > 0>> - <<set $securityForceMissionEfficiency *= 1+($securityForceSexedColonel*_RaidingEfficiency)>> - <</if>> - <<if $OverallTradeShowAttendance > 0>> - <<set $securityForceMissionEfficiency *= 1+($OverallTradeShowAttendance*_RaidingEfficiency)>> - <</if>> - - LieutenantColonel and Facility Support - <<if $LieutenantColonel == 2>> - <<set $securityForceMissionEfficiency *= 1+($LieutenantColonel*_RaidingEfficiency)>> - <</if>> - <<if $FacilitySupportEfficiency > 1>> - <<set $securityForceMissionEfficiency *= 1+($FacilitySupportEfficiency*_RaidingEfficiency)>> - <</if>> - - /* Apply the efficiency boost to the booty. Let's hope that meth made them better at ripping out some poor bastard's gold teeth */ - <<set $securityForceBooty = ($securityForceBooty*$securityForceMissionEfficiency)>> - - /* Check to see if total booty is over 15k. This is the 'profitability point' of the SF. It has no upkeep, but unless you get over 15k, The Colonel uses the entire take to keep the force together. Still very profitable at higher levels though (Who thought having a 1000-man private military dedicated to slamming meth and pillaging the world would be profitable? It's quite crazy tbh). Technically the booty calcs should be affected if the force is recruiting/securing (less income from raids), but that would be frustrating for the player at high levels of development - we still want them to feel like they're getting the cash. Uses a flag for the eventual description. */ - <<if $securityForceBooty > 15000>> - <<set $securityForceProfitable = 1>> - - /* Finally, add dat cash to the bank. C.R.E.A.M. */ - <<if $securityForceFocus == "raiding">> - <<set $securityForceIncome = Math.trunc(($securityForceBooty*0.95))>> - <<set $cash = ($cash+$securityForceIncome)>> - <<elseif $securityForceFocus == "recruit">> - <<set $securityForceIncome = Math.trunc(($securityForceBooty*0.25))>> - <<set $cash = ($cash+$securityForceIncome)>> - <<elseif $securityForceFocus == "secure">> - <<set $securityForceIncome = Math.trunc(($securityForceBooty*0.25))>> - <<set $cash = ($cash+$securityForceIncome)>> - <</if>> - <<else>> - <<set $securityForceProfitable = 0>> - <</if>> - -/* Depravity calculations - hidden stat representing how violent/hedonistic/etc the SF is. Rises with raiding/free fire/low accountability, The Colonel personality choice and lowers with reduced settings (though much slower since it's easier to go criminal then it is to go straight afterward, etc. Middle options have no effect. Each setting is independent of the others. */ - - <<if $securityForceFocus == "raiding">> - <<set $securityForceDepravity += 0.05>> - <<elseif $securityForceFocus == "secure">> - <<set $securityForceDepravity -= 0.02>> - <</if>> - - <<if $securityForceRulesOfEngagement == "free">> - <<set $securityForceDepravity += 0.05>> - <<elseif $securityForceRulesOfEngagement == "hold">> - <<set $securityForceDepravity -= 0.02>> - <</if>> - - <<if $securityForceAccountability == "none">> - <<set $securityForceDepravity += 0.05>> - <<elseif $securityForceAccountability == "strict">> - <<set $securityForceDepravity -= 0.02>> - <</if>> - - <<switch $ColonelCore>> - <<case "kind">> - <<set $securityForceDepravity -= 0.02>> - <<case "collected">> - <<set $securityForceDepravity -= 0.015>> - <<set $securityForceDepravity += 0.015>> - - <<case "cruel">> - <<set $securityForceDepravity += 0.05>> - <<case "psychopathic">> - <<set $securityForceDepravity += 0.10>> - <<case "sociopathic">> - <<set $securityForceDepravity += 0.15>> - - <<case "brazen">> - <<set $securityForceDepravity += 1.05>> - <<set $securityForceDepravity -= 1.05>> - <</switch>> - -/* Reset the token counters for speaking or such to The Colonel in the barracks */ - <<set $securityForceUpgradeToken = 0>> - <<set $securityForceGiftToken = 0>> - <<set $securityForceColonelToken = 0>> - <<set $securityForceSexedColonelToken = 0>> - -/* securityForceTradeShow */ -<<if $CurrentTradeShowAttendance == 1>> - <<set $CurrentTradeShowAttendance = 0>> - <<set $TradeShowIncome = 0>> - <<set $TradeShowHelots = 0>> -<</if>> - -<<if $securityForceStimulantPower == 8 || $securityForceStimulantPower == 10>> - <<set _OverdoseSurvivalChance = 5, _OverdoseDeaths = 0>> - <<if _Env == _N1>> - <<set _OverdoseSurvivalChance = _OverdoseSurvivalChance-.5>> - <<elseif _Env == _N2>> - <<set _OverdoseSurvivalChance = _OverdoseSurvivalChance>> - <<elseif _Env == _N3>> - <<set _OverdoseSurvivalChance = _OverdoseSurvivalChance+.5>> - <</if>> - - <<if $securityForceStimulantPower == 8 && random(0,100) > _OverdoseSurvivalChance>> - <<set _OverdoseDeaths = random(0,10)>> - <<elseif $securityForceStimulantPower == 10 && random(0,100) > _OverdoseSurvivalChance>> - <<set _OverdoseDeaths = random(0,20)>> - <</if>> - - <<if _OverdoseDeaths > 0>> - <<set $securityForcePersonnel -= _OverdoseDeaths>> - <</if>> - -<</if>> - -/* Take all the above and display the EOW text and control panel. */ -<</silently>> -<<nobr>> - __Status and Activities of the $securityForceName __: - <br>This week, $securityForceName, <<print commaNum($securityForcePersonnel)>> strong, focused on <<if $securityForceFocus == "recruit">>recruiting and training more personnel. Smaller parties ventured out to protect the arcology's trade routes and strike targets of opportunity.<<elseif $securityForceFocus == "secure">>securing the trade routes between the arcology and the surrounding area. Smaller parties ventured out to strike targets of opportunity and process new recruits. - <<elseif $securityForceFocus == "raiding">>locating and striking targets of opportunity, capturing both material loot and new slaves. Smaller parties secured the most important of the arcology's trade routes and processed new recruits.<</if>> <<if $securityForceStimulantPower == 8 || $securityForceStimulantPower == 10 && _OverdoseDeaths > 0>> <<print (_OverdoseDeaths)>> soldiers fatally overdosed on the drug cocktail, The Colonel's much heavier than average drug use saves her from this side effect.<</if>> These activities have, overall, @@.green;improved@@ your arcology's prosperity. <<if $securityForceProfitable == 1>>The goods procured by the $securityForceName this week, after accounting for the spoils retained by individual soldiers, were @@.green;more than sufficient@@ to cover expenses. Excess material and human assets totaling @@.yellowgreen;<<print cashFormat($securityForceIncome)>>@@ (after liquidation) were transferred to your accounts. <<elseif $securityForceProfitable == 0>>The goods procured by the special force were, after accounting for the spoils retained by individual soldiers, @@.red;barely enough@@ to cover expenses. More growth will be needed to ensure profitability.<</if>> $securityForceName managed to recruit $securityForceRecruit new soldiers this week, and your reputation has @@.green;improved@@ through the improvement of trade security. - -<</nobr>> - <br> //Your instructions to <<if $CurrentTradeShowAttendance == 1>>Lieutenant Colonel <<= SlaveFullName($LieutenantColonel)>><<else>>The Colonel<</if>>:// - Deployment focus: <span id="focus"><<if $securityForceFocus == "recruit">>''Recruiting and Training''<<elseif $securityForceFocus == "secure">>''Securing Trade Routes''<<else>>''Raiding and Slaving''<</if>></span>. <<link "Recruit and Train">><<set $securityForceFocus = "recruit">><<replace "#focus">>''Recruiting and Training''<</replace>><</link>> | <<link "Secure Trade Routes">><<set $securityForceFocus = "secure">><<replace "#focus">>''Securing Trade Routes''<</replace>><</link>> | <<link "Raiding and Slaving">><<set $securityForceFocus = "raiding">><<replace "#focus">>''Raiding and Slaving''<</replace>><</link>> - Rules of Engagement: <span id="roe"><<if $securityForceRulesOfEngagement == "hold">>''Hold Fire''<<elseif $securityForceRulesOfEngagement == "limited">>''Limited Fire''<<else>>''Free Fire''<</if>></span>. <<link "Hold Fire">><<set $securityForceRulesOfEngagement = "hold">><<replace "#roe">>''Hold Fire''<</replace>><</link>> | <<link "Limited Fire">><<set $securityForceRulesOfEngagement = "limited">><<replace "#roe">>''Limited Fire''<</replace>><</link>> | <<link "Free Fire">><<set $securityForceRulesOfEngagement = "free">><<replace "#roe">>''Free Fire''<</replace>><</link>> - Accountability: <span id="accountability"><<if $securityForceAccountability == "strict">>''Strict Accountability''<<elseif $securityForceAccountability == "some">>''Some Accountability''<<else>>''No Accountability''<</if>></span>. <<link "Strict Accountability">><<set $securityForceAccountability = "strict">><<replace "#accountability">>''Strict Accountability''<</replace>><</link>> | <<link "Some Accountability">><<set $securityForceAccountability = "some">><<replace "#accountability">>''Some Accountability''<</replace>><</link>> | <<link "No Accountability">><<set $securityForceAccountability = "none">><<replace "#accountability">>''No Accountability''<</replace>><</link>> - <<if $OverallTradeShowAttendance == 1>> - <br>Thank you <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>sir<<else>>ma'am<</if>> for letting me to go back to it, hopefully <<if $LieutenantColonel == 2>>Lieutenant Colonel <<= SlaveFullName($LieutenantColonel)>> has been doing her job <<else>> that nothing serious happened while I was away.<</if>> There was some interest in our developments, I could probably sell generic schematics next time I go if you want? - <<elseif $OverallTradeShowAttendance >= 2>> - <br>Thank you <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>sir<<else>>ma'am<</if>> for letting me to go back to it, hopefully <<if $LieutenantColonel == 2>>Lieutenant Colonel <<= SlaveFullName($LieutenantColonel)>> has been doing her job <<else>> that nothing serious happened while I was away.<</if>> - <br>While at the recent TradeShow, <<print cashFormat($TradeShowIncome)>> was made selling generic schematics and $TradeShowHelots menial slaves were sent as a bonus. - Overall <<print cashFormat($TotalTradeShowIncome)>> has been made and <<print commaNum($TotalTradeShowHelots)>> menial slaves have been acquired during the $OverallTradeShowAttendance TradeShow's I have attended. - <</if>> - //Current facilities status:// -<<include "SpecialForceUpgradeDec">> diff --git a/src/uncategorized/securityForceNamingColonel.tw b/src/uncategorized/securityForceNamingColonel.tw deleted file mode 100644 index 69dbbe34b5864f1cd8b6078659543faf54e74361..0000000000000000000000000000000000000000 --- a/src/uncategorized/securityForceNamingColonel.tw +++ /dev/null @@ -1,169 +0,0 @@ -:: Security Force Naming-Colonel [nobr] - -<<set $nextLink = "Random Nonindividual Event", $nextButton = " ">> - -<span id="address"> -It's been a short while since you told your citizens that you were going to talk to them about their security, and by all accounts, they've turned out in force to watch your address over the arcology's internal communications system. You wake up early, relieve your frustrations on a few slaves woken out of deep sleep, and take position behind your desk. You also call over a slave and push her under your desk. The unspoken instruction is clear, and she begins <<if $PC.dick == 1>> enthusiastically (but silently) sucking your cock, taking it as deep as she can without gagging. <<else>> enthusiastically eating you out, pressing her face into your pussy and forcing her tongue deep inside you. <</if>> - -<br><br> - -A blinking light tells you that the channel is open. You take a deep breath, and begin. You greet your citizens and explain that while you believe deeply in the underlying principles of the Free Cities, that of contract law, minimal to no governmental oversight, and slaveholding, recent events have forced you to modify some of your views. The Old World attack, and especially the assault by the Daughters of Liberty who, as you remind them, were aided by a distressingly large number of now-dead traitors, has proven that some form of permanent, organized standing force is needed to ensure the personal safety of the citizen body. - -<br><br> - -You tell them that the Old World continues to deteriorate (it does). You tell them that it is only a matter of time before the poor, diseased, starving, and unwashed masses try their hand at invading the arcology again (it is). You tell them that such a force would be good for business, securing trade routes and conducting slaving raids far greater in scale than those performed by private slaving corporations (it would). And finally, to quell their greatest fear, you tell them that you would personally support the force financially. - -<br><br> - -As you speak, you carefully monitor the citizens' opinions as indicated on their communication devices. It is uniformly positive - they know whom they have to thank for their continued survival and dominance. You also monitor your arousal given the ministrations of your slave. A few small movements on your part communicate to your citizens what is happening without being too obvious. Free Cities business etiquette respects business conducted while being subtly serviced (and your doing so during such a public and important broadcast signals how seriously you are taking it), but a climax would be seen as a serious lack of discipline. - -<br><br> - -You finally wrap up your speech, announcing to your citizens the immediate formation, with yourself as Marshal, of the: <<textbox "$securityForceName" $securityForceName>> - -<br><br> - -You close the link to the communication system and read a message from your assistant that appeared during the last moments of your address. In consultation with major figures in the mercenary community, a suitable candidate for day-to-day command of the new unit has been found. Your instructions were to keep you in the dark about them so avoid pre-judgment. They are waiting outside your office. -<br>-------------------- -<br><<link "Invite them inside">> - <<replace "#address">> - The figure that enters is not what you were expecting, given your previous experiences with the mercenary groups that work with the arcology owners of the Free Cities. Most mercenaries you've worked with have been grizzled stout men, veterans of the Old World militaries that finally had too much and went private. This one's different, <<if $ColonelCore != "">> likely to be ''$ColonelCore'' <</if>> - <span id="result0"> - <<if $ColonelCore == "">> you can guess from her face that at her core she is likely to be: - <<link "Kind" "Security Force Naming-Colonel">> - <<replace "#result0">> - she strikes you as a kind person. - <<set $ColonelCore = "kind">> - <</replace>> - <</link>> | <<link "Mischievous" "Security Force Naming-Colonel">> - <<replace "#result0">> - she strikes you as someone who enjoys playfully causing trouble. - <<set $ColonelCore = "mischievous">> - <</replace>> - <</link>> | <<link "Cruel" "Security Force Naming-Colonel">> - <<replace "#result0">> - she strikes you as terribly cruel. - <<set $ColonelCore = "cruel">> - <</replace>> - <</link>> | <<link "Psychopathic" "Security Force Naming-Colonel">> - <<replace "#result0">> - she strikes you as a complete psychopath. - <<set $ColonelCore = "psychopathic">> - <</replace>> - <</link>> | <<link "Sociopathic" "Security Force Naming-Colonel">> - <<replace "#result0">> - she strikes you as a complete sociopath. - <<set $ColonelCore = "sociopathic">> - <</replace>> - <</link>> | <<link "A warmonger" "Security Force Naming-Colonel">> - <<replace "#result0">> - she strikes you as someone who just loves war. - <<set $ColonelCore = "warmonger">> - <</replace>> - <</link>> | <<link "Jaded" "Security Force Naming-Colonel">> - she strikes you as someone who's seen too much to really care anymore. - <<replace "#result0">> - <<set $ColonelCore = "jaded">> - <</replace>> - <</link>> | <<link "Shell shocked" "Security Force Naming-Colonel">> - <<replace "#result0">> - she strikes you as someone who's been through hell. - <<set $ColonelCore = "shell shocked">> - <</replace>> - <</link>> | <<link "Brazen" "Security Force Naming-Colonel">> - <<replace "#result0">> - she strikes you as someone who doesn't know shame. - <<set $ColonelCore = "brazen">> - <</replace>> - <</link>> | <<link "Collected" "Security Force Naming-Colonel">> - <<replace "#result0">> - she seems calm and collected. - <<set $ColonelCore = "collected">> - <</replace>> - <</link>> - <</if>> - </span> - -<<if $ColonelCore != "">> - <br><br> - - She strides in, stopping in front of your desk, not bothering to put on even the semi-military air (complete with salute) that most mercenaries tend to adopt when meeting new clients. She's very tall and wearing the pants, boots, gloves, and tank top of a female combat armor under-suit. Her bare arms and upper body are corded with muscle, and through the tank top's thin fabric you can see both the shape of her muscled abdomen and the curves of her small but perky breasts, complete with what your experience tells you are barbell nipple piercings. Her eyes are alive with intelligence, and you can see her scanning your office, clearly impressed by its opulence. Her hair is shaved close to the scalp, and her ears and nose are heavily pierced. You can make out three long, ugly scars running over top of the mottled tissue of a previous, severe burn along one side of her face, as well as numerous smaller scars and burns on her bare arms. She's been disarmed prior to meeting you, and you see, in addition to an empty pistol holster on her hip, at least three empty knife holsters. - - <br><br> - - Returning your gaze to her face, she crosses her arms underneath her chest, pressing her breasts up and forward. You have her measure. Given the generally patriarchal nature of both the mercenary community, and the same nature combined with the heavily sexualized lifestyle of the Free Cities, she's decided to embrace her position rather than fight it. - - <br><br> - - "So," she begins, "you're the boss." You invite her to sit down. "No thanks, boss. Besides," she indicates the slave under your desk, "you look a little occupied." She nods at the desk. "Saw the speech. Very nice. I'd heard you crazy bastards do business while getting <<if $PC.dick == 1>>sucked off, <<else>>eaten out, <</if>>but I've never seen anyone actually do it. Hell, most of you people don't want to have to have too much to do with me. I usually get my instructions remotely." A short, harsh laugh escapes her. "But I guess it keeps you focused. Can't have the entire arcology seeing you cum." - - <br><br> - - She moves a step closer. "Your computer told me you wanted me to be a surprise, so I guess I'll tell you why you want me to run the $securityForceName for you. I'm a killer, pure and simple, and you need that. I looked into those attacks you've suffered. Nasty business. I'll make sure that an attack like that never happens again. I was a soldier out there, in charge of about a thousand men, when the Free Cities first started going up, and I knew they were the future. Eventually I deserted, found the first refugee convoy I could, killed the moron protecting it, sold the girls off to the slavers, and bought enough gear to start killing for people like you. Ran my own merc crew, did well till we tried to take on a bigger one and everyone died. Joined with another big outfit, became the number two, then shit went bad and I had to run. Been a solo fighter and slaver ever since. I know my work, and I know I can make this work." - - <br><br> - - You feel your climax approaching and hold up a finger. The merc pauses while you <<if $PC.dick == 1>>grab the slave's head, forcing your cock roughly down her throat while you cum. She swallows as much as she can before pulling away, coughing. <<else>>grip the slave's head tightly with your thighs, pressing her face tightly against your pussy as you cum. When you release her, she pulls away, coughing.<</if>> - - <br><br> - - The merc laughs again. "I could get used to a place like this." She waves her hand around the office. "I bet you want to know why I'd be trustworthy for something like this." You don't correct her. "Thought so." Her demeanor softens, and you can detect a hit of nervousness. "I would say that I've never turned on a client and leave it at that, but this is different. It's getting worse out there. I'm sure you know that." You give her a slight nod. "Four times now I've woken up in the middle of the night and had to kill someone. Two of them were the people I'd taken to bed. You can't even trust your drunken fucks anymore." - <<switch $ColonelCore>> - <<case "kind">> - What a shame but that is the world today. - <<case "cruel" "sociopathic">> - Who doesn't like a good hard fuck and stab? - <<case "jaded">> - Meh, what else is new? - <</switch>> - - <br><br> - - "I like fighting, but I want to live somewhere where I can relax from life out there. You give me the job and a place to live, let me hang up the uncertainty of being a merc, and I'll die for you if it comes to that. I promise the people I recruit will feel the same. Besides, I could get used to - <<switch $ColonelCore>> - <<case "warmonger">> - fighting vastly out matched foes. - <<case "cruel">> - having my own stable to abuse as I see fit. - <<case "mischievous">> - causing a little chaos. - <</switch>> - Spending my R&R time with a cold beer in one hand, a few lines of coke or a stack of pills in front of me, - <<if $ColonelCore == "cruel">> - and a terrified little slavegirl locked between my legs, struggling to breathe, - <</if>> - sounds pretty fucking good to me." - - <br><br> - - You decide quickly. She'll do. You tap a few commands on your desk's console, assigning her personal quarters on the arcology's higher levels and transferring her first stipend to her new account. You also ask her what title she wants. - - <br><br> - - "Title?" Another short laugh. "I guess I do need one, given that I'm all official and shit now." She thinks for a moment. "I was a major before I went freelance, and I think I'd like a promotion. Colonel sounds good." You make a note of this in her file. "You people don't seal contracts with a fuck do you?" You shake your head, and she laughs again. "Good. I make it a point never to fuck the boss. It's bad for business." She turns around. "Well, I guess I'd better get to it. Your computer thing assigned me space on the lower levels for the barracks. I brought a few squads of guys I know from the old days to start, but we'll grow fast once I put the word out, I guarantee it." - - <br><br> - - <<link "Let her leave">> - <<replace "#address">> - She turns and leaves, and you chase the slave out after her. A few minutes later, a soft chime announces the arrival of a message. It's from The Colonel. - - <br><br> - - //Hey boss, just wanted to mention something else. In your speech you said that you were going to be paying for the $securityForceName. In my mind that means it's yours, no matter what anyone else here might think. I do what you tell me to do. I make sure the troops behave as you want them to behave. I've worked for some 'nice guys' in the past, and I can do that job if you want. It's boring, but sustainable, and I'll have the $securityForceName turning a profit and supporting the arcology in good order. But if you let me off the leash, and throw any Old World complaints in the trash where they belong, I promise you'll have money pouring in your office, even accounting for the good amounts me and my boys will pocket along the way. You'll have an empire in short order. <<if $mercenaries > 1>>Either way, I'll keep my hands off those mercs you've already installed. I figure that you've reasons for having two different death squads under contract.<</if>> - - <br><br> - - Oh, one last thing. I know you've got some kind of grand social experiment going on up there like all the other owners, and that's your own deal, but I'd appreciate it if you could keep that stuff out of the new barracks. I'll have a hard time approaching potential recruits and telling them they should come live in a Roman apartment, an Egyptian temple, a goddamn Japanese teahouse, or some of the other crazy shit I've seen in the past. They're hard, nasty people, and trust me, I can tell you from experience that changing that is just not going to happen. Like I said, though, I can hold them back a bit if you like. - - <br><br> - - Talk to you later, boss.// - <<set $nextButton = "Continue">><<UpdateNextButton>> /* unlock Continue button */ - <<set $securityForceActive = 1, $securityForceSubsidyActive = 1>> - <</replace>> - <</link>> -<</if>> - <</replace>> -<</link>> -</span> \ No newline at end of file diff --git a/src/uncategorized/securityForceProposal.tw b/src/uncategorized/securityForceProposal.tw deleted file mode 100644 index 2e79b89018d02e7507db6edc557fed2527a4bcfd..0000000000000000000000000000000000000000 --- a/src/uncategorized/securityForceProposal.tw +++ /dev/null @@ -1,40 +0,0 @@ -:: Security Force Proposal [nobr] - -<<set $nextLink = "Next Week">> -<<set $nextButton = "Continue">> - -The Free Cities were founded on the principles of unrestrained anarcho-capitalism. To those with such beliefs, the very idea of possessing an armed force, a key tool of government control, or weapons at all, was anathema. - -In the period since, however, your citizens have seen the value in weaponry. They watched on their news-feed as some Free Cities were sacked by the armies and mobs of the Old World, driven by their hatred of the citizens' luxurious lifestyles. They've seen other Cities toppled from within, by slave conspiracies or infighting among citizen groupings with differing beliefs. They've witnessed the distressingly rapid rise of fanatical anti-slavery organizations, who would like nothing more than to see them slowly bled by their own chattel. They are learned people, and they know what happens to slaveowners who lose their power. - -They've also seen the results of your policies. Your actions towards the arming of both yourself and the arcology proved critical, and ensured their safety when the Old World came for them. And your victory over the Daughters of Liberty, who the citizens know would have executed every single one of them, has created an opportunity. If you insisted upon the creation of a standing 'special' force for the arcology, many would support you and, more importantly, nobody of note would object. - -Such a force would solve many problems. More soldiers would mean more control, which is very good for you. More soldiers would mean more security for the arcology and the approaches to it, which is very good for business. More soldiers would mean more obedience from rebellious slaves who can see how powerless they truly are, which is very good for everybody. The force would be tiny compared to the Old World militaries that still exist, but money and technology can, of course, overcome massive numerical inferiority. This being the Free Cities, they would have other uses besides security. Perhaps, in time, you could exert some manner of influence on the Old World itself. - -''This is a unique and very important opportunity'', and is possible only because of your recent victory over the Daughters. If you do not seize it, the memories and fears of your citizens will fade, and you will not be able to raise the matter again. --------------------- -<<set $securityForceEventSeen = 1>> -<<if ($PC.warfare >= 100)>> - <<set _price = 10000>> -<<elseif ($PC.warfare >= 50) || ($PC.career == "arcology owner")>> - <<set _price = 15000>> -<<else>> - <<set _price = 20000>> -<</if>> - -<span id="result"> -<<link "Prepare for an announcement">> - <<replace "#result">> - You instruct $assistantName to announce to the arcology's citizenry that you will be making an important announcement in the near future regarding the security situation. Given the damage still present from the Daughters' attack, everyone will be turning in. You also instruct your assistant to begin quietly investigating potential leadership figures for the force itself. - <<set $securityForceCreate = 1>> - <<set $cash -= _price>> - <<set $nextButton = "Continue">> - <</replace>> -<</link>> //Initial costs are <<print cashFormat(_price)>>, and upon establishment the force will have significant support costs until it is self-sufficient.// -<br><<link "The mercenaries are enough">> - <<replace "#result">> - On second thought, such a force is not needed. Your methods have served well so far - why should there be any change going forward? - <<set $nextButton = "Continue">> - <</replace>> -<</link>> -</span> diff --git a/src/uncategorized/storyCaption.tw b/src/uncategorized/storyCaption.tw index fa7dd4207470e9411c64ba36ed11c25459b5a62f..d575b8ad993a1efaa2d32511e59089e31d5ac490 100644 --- a/src/uncategorized/storyCaption.tw +++ b/src/uncategorized/storyCaption.tw @@ -507,8 +507,8 @@ <</if>> <</if>> <br> - <<if ($securityForceActive)>> - <br><span id="SFMButton"> <<link "$securityForceName's Barracks""SFM Barracks">><</link>> </span> @@.cyan;[Z]@@ + <<if $SF.Toggle && $SF.Active >= 1>> + <br><span id="SFMButton"> <<link "$SF.Caps's Firebase""Firebase">><</link>> </span> @@.cyan;[Z]@@ <</if>> <br><span id="optionsButton"><<link "Game Options">><<set $nextButton = "Back", $nextLink = _Pass>><<goto "Options">><</link>></span> @@.cyan;[O]@@ <<else>> @@ -532,8 +532,8 @@ <<if $cyberMod != 0 && $researchLab.built == "true">> <br>[[Manage Research Lab|Research Lab][$temp = 0]] <</if>> - <<if ($securityForceActive)>> - <br><span id="SFMButton"> <<link "$securityForceName's Barracks""SFM Barracks">><</link>> </span> @@.cyan;[Z]@@ + <<if $SF.Toggle && $SF.Active >= 1>> + <br><span id="SFMButton"> <<link "$SF.Caps's Firebase""Firebase">><</link>> </span> @@.cyan;[Z]@@ <</if>> <br> @@ -573,8 +573,8 @@ <<if $cyberMod != 0 && $researchLab.built == "true">> <br>[[Manage Research Lab|Research Lab][$temp = 0]] <</if>> - <<if ($securityForceActive)>> - <br><span id="SFMButton"> <<link "$securityForceName's Barracks""SFM Barracks">><</link>> </span> @@.cyan;[Z]@@ + <<if $SF.Toggle && $SF.Active >= 1>> + <br><span id="SFMButton"> <<link "$SF.Caps's Firebase""Firebase">><</link>> </span> @@.cyan;[Z]@@ <</if>> <br> @@ -653,9 +653,13 @@ <br> <<textarea "_customEvalCode" "">> <<link "Run Custom Function">> - <<set _customEvalCode = "(" + _customEvalCode + ")">> - <<if typeof eval(_customEvalCode) === "function">> - <<run eval(_customEvalCode)()>> + <<if _customEvalCode>> + <<if _customEvalCode.charAt(0) != "(" || $nextLink == ")">> /* second condition is only there for sanityCheck */ + <<set _customEvalCode = "(" + _customEvalCode + ")">> + <</if>> + <<if typeof eval(_customEvalCode) === "function">> + <<run (eval(_customEvalCode))()>> + <</if>> <</if>> <<goto _Pass>> <</link>>