diff --git a/src/endWeek/economics/arcmgmt.js b/src/endWeek/economics/arcmgmt.js index d6d3555e5bf6a55d1a8a68ad938847ecd3c24921..5b8f713dc221d0a1dd34107c65d3bd40d35aa20c 100644 --- a/src/endWeek/economics/arcmgmt.js +++ b/src/endWeek/economics/arcmgmt.js @@ -90,10 +90,10 @@ globalThis.arcmgmt = function() { } } - el.append(supplyPoliciesReport("lower")); - el.append(supplyPoliciesReport("middle")); - el.append(supplyPoliciesReport("upper")); - el.append(supplyPoliciesReport("top")); + $(el).append(supplyPoliciesReport("lower")); + $(el).append(supplyPoliciesReport("middle")); + $(el).append(supplyPoliciesReport("upper")); + $(el).append(supplyPoliciesReport("top")); // <br> /* New Population @@ -118,635 +118,12 @@ globalThis.arcmgmt = function() { _topClassP = 1, _enslaveChance = 0.2; - if (V.arcologies[0].FSSupremacist !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSSupremacist, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSupremacist, 100) / 20) * 0.04; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSupremacist, 100) / 20) * 0.05; - _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSSupremacist, 100) / 20) * -80; - _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSupremacist, 100) / 20) * -0.004; - _middleClass += Math.trunc(Math.min(V.arcologies[0].FSSupremacist, 100) / 20) * -16; - _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSupremacist, 100) / 20) * -0.002; - _upperClass += Math.trunc(Math.min(V.arcologies[0].FSSupremacist, 100) / 20) * 5.4; - _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSupremacist, 100) / 20) * 0.002; - _topClass += Math.trunc(Math.min(V.arcologies[0].FSSupremacist, 100) / 20) * 2; - _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSupremacist, 100) / 20) * 0.004; - r.push(`Your racial policies are concentrating power in the hands of ${V.arcologies[0].FSSupremacistRace} people. /*perhaps too obvious to bother with printing?*/`); - } - if (V.arcologies[0].FSSubjugationist !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSSubjugationist, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSubjugationist, 100) / 20) * 0.04; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSubjugationist, 100) / 20) * 0.05; - _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSSubjugationist, 100) / 20) * -80; - _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSubjugationist, 100) / 20) * -0.004; - _middleClass += Math.trunc(Math.min(V.arcologies[0].FSSubjugationist, 100) / 20) * -16; - _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSubjugationist, 100) / 20) * -0.002; - _upperClass += Math.trunc(Math.min(V.arcologies[0].FSSubjugationist, 100) / 20) * 5.4; - _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSubjugationist, 100) / 20) * 0.002; - _topClass += Math.trunc(Math.min(V.arcologies[0].FSSubjugationist, 100) / 20) * 2; - _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSubjugationist, 100) / 20) * 0.004; - r.push(`Your racial policies are stripping all power from the ${V.arcologies[0].FSSubjugationistRace} people. /*perhaps too obvious to bother with printing?*/`); - } - if (V.arcologies[0].FSGenderRadicalist !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSGenderRadicalist, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSGenderRadicalist, 100) / 20) * 0.02; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSGenderRadicalist, 100) / 20) * 0.025; - _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSGenderRadicalist, 100) / 20) * -40; - _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSGenderRadicalist, 100) / 20) * -0.002; - _topClass += Math.trunc(Math.min(V.arcologies[0].FSGenderRadicalist, 100) / 20); - _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSGenderRadicalist, 100) / 20) * 0.002; - r.push(`Your radical views on gender are scaring away the more traditionally minded.`); - } - if (V.arcologies[0].FSGenderFundamentalist !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSGenderFundamentalist, 100); - _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSGenderFundamentalist, 100) / 20) * 40; - _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSGenderFundamentalist, 100) / 20) * 0.002; - _topClass += Math.trunc(Math.min(V.arcologies[0].FSGenderFundamentalist, 100) / 20) * -1; - _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSGenderFundamentalist, 100) / 20) * -0.002; - r.push(`Your traditional views on gender are comforting to many, unimaginative to some.`); - } - if (V.arcologies[0].FSPaternalist !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSPaternalist, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * -0.04; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * -0.05; - _expirationFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * -0.15; - _slaveProductivity += Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * 0.02; - _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * 80; - _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * 0.004; - _welfareFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * -0.1; - _middleClass += Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * 16; - _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * 0.002; - _upperClass += Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * -5.4; - _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * -0.002; - _topClass += Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * -2; - _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * -0.002; - r.push(`Poor citizens can rely on their better-off peers in ${V.arcologies[0].name}.`); - } - if (V.arcologies[0].FSDegradationist !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSDegradationist, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * 0.04; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * 0.05; - _expirationFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * 0.2; - _slaveProductivity += Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * 0.01; - _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * -80; - _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * -0.004; - _welfareFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * 0.1; - _middleClass += Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * -16; - _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * -0.002; - _upperClass += Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * 5.4; - _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * 0.002; - _topClass += Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * 2; - _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * 0.004; - r.push(`The arcology is a cutthroat place in which falling into slavery is very easy.`); - } - if (V.arcologies[0].FSIntellectualDependency !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSIntellectualDependency, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSIntellectualDependency, 100) / 20) * 0.03; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSIntellectualDependency, 100) / 20) * 0.04; - _expirationFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSIntellectualDependency, 100) / 20) * 0.05; - _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSIntellectualDependency, 100) / 20) * 20; - _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSIntellectualDependency, 100) / 20) * 0.002; - _middleClass += Math.trunc(Math.min(V.arcologies[0].FSIntellectualDependency, 100) / 20) * 10; - _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSIntellectualDependency, 100) / 20) * 0.003; - _topClass += Math.trunc(Math.min(V.arcologies[0].FSIntellectualDependency, 100) / 20) * -3; - _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSIntellectualDependency, 100) / 20) * -0.020; - r.push(`It's always a party in ${V.arcologies[0].name}, giving it a strong appeal to those unable to host such an event.`); - } - if (V.arcologies[0].FSSlaveProfessionalism !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSSlaveProfessionalism, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSlaveProfessionalism, 100) / 20) * -0.1; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSlaveProfessionalism, 100) / 20) * -0.125; - _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSSlaveProfessionalism, 100) / 20) * -20; - _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSlaveProfessionalism, 100) / 20) * -0.002; - _upperClass += Math.trunc(Math.min(V.arcologies[0].FSSlaveProfessionalism, 100) / 20) * 2.7; - _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSlaveProfessionalism, 100) / 20) * 0.001; - _topClass += Math.trunc(Math.min(V.arcologies[0].FSSlaveProfessionalism, 100) / 20) * 0.5; - _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSlaveProfessionalism, 100) / 20) * 0.001; - r.push(`The intelligent atmosphere of ${V.arcologies[0].name} makes it an attractive place for those with the brains to define their place in the world.`); - } - if (V.arcologies[0].FSBodyPurist !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSBodyPurist, 100); - _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSBodyPurist, 100) / 20) * 40; - _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSBodyPurist, 100) / 20) * 0.002; - _upperClass += Math.trunc(Math.min(V.arcologies[0].FSBodyPurist, 100) / 20) * -2.7; - _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSBodyPurist, 100) / 20) * -0.001; - _topClass += Math.trunc(Math.min(V.arcologies[0].FSBodyPurist, 100) / 20) * -0.5; - _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSBodyPurist, 100) / 20) * -0.001; - r.push(`Body purist fashion standards comfort the poor as they stand out less from their more fortunate neighbors.`); - } - if (V.arcologies[0].FSTransformationFetishist !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSTransformationFetishist, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSTransformationFetishist, 100) / 20) * 0.02; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSTransformationFetishist, 100) / 20) * 0.025; - _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSTransformationFetishist, 100) / 20) * -40; - _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSTransformationFetishist, 100) / 20) * -0.002; - _upperClass += Math.trunc(Math.min(V.arcologies[0].FSTransformationFetishist, 100) / 20) * 2.7; - _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSTransformationFetishist, 100) / 20) * 0.001; - _topClass += Math.trunc(Math.min(V.arcologies[0].FSTransformationFetishist, 100) / 20) * 0.5; - _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSTransformationFetishist, 100) / 20) * 0.001; - r.push(`The lower class fear the kind of transformations could be forced on them if they ever end up enslaved, whereas the rich enjoy wielding such power.`); - } - if (V.arcologies[0].FSYouthPreferentialist !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSYouthPreferentialist, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSYouthPreferentialist, 100) / 20) * 0.02; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSYouthPreferentialist, 100) / 20) * 0.025; - _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSYouthPreferentialist, 100) / 20) * 40; - _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSYouthPreferentialist, 100) / 20) * 0.002; - _middleClass += Math.trunc(Math.min(V.arcologies[0].FSYouthPreferentialist, 100) / 20) * -8; - _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSYouthPreferentialist, 100) / 20) * -0.002; - r.push(`Preference for youth makes the young poor in your arcology feel appreciated despite their lack of wealth.`); - } - if (V.arcologies[0].FSMaturityPreferentialist !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSMaturityPreferentialist, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSMaturityPreferentialist, 100) / 20) * 0.02; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSMaturityPreferentialist, 100) / 20) * 0.025; - _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSMaturityPreferentialist, 100) / 20) * -40; - _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSMaturityPreferentialist, 100) / 20) * -0.002; - _middleClass += Math.trunc(Math.min(V.arcologies[0].FSMaturityPreferentialist, 100) / 20) * 8; - _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSMaturityPreferentialist, 100) / 20) * 0.002; - r.push(`Preference for maturity makes the middle class of your arcology feel like their experience is finally properly appreciated.`); - } - if (V.arcologies[0].FSPetiteAdmiration !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSPetiteAdmiration, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPetiteAdmiration, 100) / 20) * 0.02; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPetiteAdmiration, 100) / 20) * 0.025; - } - if (V.arcologies[0].FSStatuesqueGlorification !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSStatuesqueGlorification, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSStatuesqueGlorification, 100) / 20) * 0.02; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSStatuesqueGlorification, 100) / 20) * 0.025; - } - if (V.arcologies[0].FSSlimnessEnthusiast !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSSlimnessEnthusiast, 100); - } - if (V.arcologies[0].FSAssetExpansionist !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSAssetExpansionist, 100); - if (V.arcologies[0].FSBodyPurist !== "unset") { - _expirationFS *= 1 + (Math.trunc(Math.min(V.arcologies[0].FSAssetExpansionist, 100) / 20) * 0.05) * (1 + (Math.trunc(Math.min(V.arcologies[0].FSBodyPurist, 100) / 20) * -0.1)); - } else { - _expirationFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSAssetExpansionist, 100) / 20) * 0.05; - } - } - if (V.arcologies[0].FSPastoralist !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSPastoralist, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * 0.04; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * 0.05; - if (V.arcologies[0].FSPaternalist !== "unset") { - _expirationFS *= 1 + (Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * 0.05) * (1 + (Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * -0.1)); - } else { - _expirationFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * 0.05; - } - _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * -80; - _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * -0.004; - _middleClass += Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * 16; - _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * 0.002; - _upperClass += Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * 2.7; - _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * 0.001; - _topClass += Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * 0.5; - _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * 0.001; - r.push(`The pastoralization of ${V.arcologies[0].name} spurs a whole industry around human produce.`); - } - if (V.arcologies[0].FSPhysicalIdealist !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSPhysicalIdealist, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPhysicalIdealist, 100) / 20) * 0.02; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPhysicalIdealist, 100) / 20) * 0.025; - _slaveProductivity += Math.trunc(Math.min(V.arcologies[0].FSPhysicalIdealist, 100) / 20) * 0.01; - _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSPhysicalIdealist, 100) / 20) * -40; - _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPhysicalIdealist, 100) / 20) * -0.002; - _upperClass += Math.trunc(Math.min(V.arcologies[0].FSPhysicalIdealist, 100) / 20) * 2.7; - _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPhysicalIdealist, 100) / 20) * 0.001; - _topClass += Math.trunc(Math.min(V.arcologies[0].FSPhysicalIdealist, 100) / 20) * 0.5; - _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPhysicalIdealist, 100) / 20) * 0.001; - r.push(`Fit slaves and citizens are more productive! However, your arcology's poor do not look forward to even more toil and sweat.`); - } - if (V.arcologies[0].FSChattelReligionist !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSChattelReligionist, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSChattelReligionist, 100) / 20) * 0.02; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSChattelReligionist, 100) / 20) * 0.025; - _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSChattelReligionist, 100) / 20) * -40; - _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSChattelReligionist, 100) / 20) * -0.002; - _upperClass += Math.trunc(Math.min(V.arcologies[0].FSChattelReligionist, 100) / 20) * 2.7; - _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSChattelReligionist, 100) / 20) * 0.001; - _topClass += Math.trunc(Math.min(V.arcologies[0].FSChattelReligionist, 100) / 20) * 0.5; - _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSChattelReligionist, 100) / 20) * 0.001; - r.push(`Chattel Religionism helps some poor citizens see slavery as a spiritually pure fate.`); - } - if (V.arcologies[0].FSRomanRevivalist !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSRomanRevivalist, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRomanRevivalist, 100) / 20) * 0.02; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRomanRevivalist, 100) / 20) * 0.025; - _expirationFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRomanRevivalist, 100) / 20) * -0.1; - _welfareFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRomanRevivalist, 100) / 20) * -0.05; - _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSRomanRevivalist, 100) / 20) * 40; - _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRomanRevivalist, 100) / 20) * 0.00; - _topClass += Math.trunc(Math.min(V.arcologies[0].FSRomanRevivalist, 100) / 20); - _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRomanRevivalist, 100) / 20) * -0.002; - r.push(`Your citizens take pride in looking after each other.`); - } - if (V.arcologies[0].FSNeoImperialist !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSNeoImperialist, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * 0.05; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * 0.030; - _expirationFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * -0.06; - _welfareFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * -0.025; - _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * -20; - _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * -0.002; - _middleClass += Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * 16; - _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * 0.004; - _upperClass += Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * 5.4; - _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * 0.002; - _topClass += Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * 0.5; - _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * 0.002; - r.push(`Your new Imperium creates a staunchly hierchical society, and while your elites and soldiers enjoy social prestige and luxury, the lower classes are often unhappy about being made to grovel.`); - } - if (V.arcologies[0].FSEgyptianRevivalist !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSEgyptianRevivalist, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSEgyptianRevivalist, 100) / 20) * 0.02; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSEgyptianRevivalist, 100) / 20) * 0.025; - _welfareFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSEgyptianRevivalist, 100) / 20) * -0.05; - _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSEgyptianRevivalist, 100) / 20) * 40; - _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSEgyptianRevivalist, 100) / 20) * 0.002; - _topClass += Math.trunc(Math.min(V.arcologies[0].FSEgyptianRevivalist, 100) / 20); - _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSEgyptianRevivalist, 100) / 20) * -0.002; - r.push(`Egyptian Revivalism is benevolent in some ways, and charity is common here.`); - } - if (V.arcologies[0].FSEdoRevivalist !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSEdoRevivalist, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSEdoRevivalist, 100) / 20) * 0.02; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSEdoRevivalist, 100) / 20) * 0.025; - } - if (V.arcologies[0].FSArabianRevivalist !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSArabianRevivalist, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSArabianRevivalist, 100) / 20) * 0.02; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSArabianRevivalist, 100) / 20) * 0.025; - } - if (V.arcologies[0].FSChineseRevivalist !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSChineseRevivalist, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSChineseRevivalist, 100) / 20) * 0.02; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSChineseRevivalist, 100) / 20) * 0.025; - } - if (V.arcologies[0].FSAztecRevivalist !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSAztecRevivalist, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSAztecRevivalist, 100) / 20) * 0.02; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSAztecRevivalist, 100) / 20) * 0.025; - } - if (V.arcologies[0].FSNull !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSNull, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNull, 100) / 20) * -0.1; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNull, 100) / 20) * -0.125; - _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSNull, 100) / 20) * 400; - _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNull, 100) / 20) * 0.016; - _middleClass += Math.trunc(Math.min(V.arcologies[0].FSNull, 100) / 20) * 64; - _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNull, 100) / 20) * 0.008; - _upperClass += Math.trunc(Math.min(V.arcologies[0].FSNull, 100) / 20) * -21.6; - _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNull, 100) / 20) * -0.008; - _topClass += Math.trunc(Math.min(V.arcologies[0].FSNull, 100) / 20) * -8; - _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNull, 100) / 20) * -0.016; - r.push(`Your arcology's vibrant, open culture helps everyone succeed, preventing many struggling citizens from falling into slavery.`); - } - if (V.arcologies[0].FSRepopulationFocus !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSRepopulationFocus, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * 0.04; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * 0.05; - _slaveProductivity += Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * -0.01; - if (V.arcologies[0].FSPaternalist !== "unset") { - _expirationFS *= 1 + (Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * 0.05) * (1 + (Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * -0.1)); - } else { - _expirationFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * 0.05; - } - _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * 80; - _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * 0.004; - _middleClass += Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * 16; - _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * 0.002; - _upperClass += Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * -5.4; - _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * -0.002; - _topClass += Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * -2; - _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * -0.004; - r.push(`You've made repopulation a priority and the less fortunate hope all these new children will make their lives easier in the future, but the wealthy are wary.`); - } - if (V.arcologies[0].FSRestart !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSRestart, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRestart, 100) / 20) * 0.04; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRestart, 100) / 20) * 0.05; - _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSRestart, 100) / 20) * -80; - _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRestart, 100) / 20) * -0.004; - _middleClass += Math.trunc(Math.min(V.arcologies[0].FSRestart, 100) / 20) * -16; - _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRestart, 100) / 20) * -0.002; - _upperClass += Math.trunc(Math.min(V.arcologies[0].FSRestart, 100) / 20) * 5.4; - _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRestart, 100) / 20) * 0.002; - _topClass += Math.trunc(Math.min(V.arcologies[0].FSRestart, 100) / 20) * 2; - _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRestart, 100) / 20) * 0.004; - r.push(`Highly restricted breeding pleases the powerful, but the less fortunate may seek reproductive freedom elsewhere.`); - } - if (V.arcologies[0].FSHedonisticDecadence !== "unset") { - _FSScore += Math.min(V.arcologies[0].FSHedonisticDecadence, 100); - _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20) * 0.02; - _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20) * 0.025; - _slaveProductivity += Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20) * -0.01; - _expirationFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20) * 0.1; /* too high?*/ - _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20) * 40; - _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20) * 0.002; - _middleClass += Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20) * -16; - _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20) * -0.002; - _upperClass += Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20) * -5.4; - _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20) * -0.002; - _topClass += Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20); - _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20) * 0.002; - r.push(`Your citizens enjoy the pleasures of life to their fullest, but some prefer to earn these pleasures.`); - } + el.append(fsImpact()); + el.append(policiesImpact()); - /* policies*/ - if (V.policies.retirement.menial2Citizen === 1) { - _slaveDemandU *= 0.8; - _slaveDemandT *= 0.75; - _slaveProductivity += 0.05; - _expirationFS *= 0.8; - _lowerClass += 200; - _lowerClassP *= 1.01; - _middleClass += 80; - _middleClassP *= 1.01; - _upperClass += -27; - _upperClassP *= 0.99; - _topClass += -5; - _topClassP *= 0.99; - } - if (V.policies.proRefugees === 1) { - _slaveDemandU *= 1.1; - _slaveDemandT *= 1.125; - r.push(`Some desperate people filtered into the arcology during the week: as owner, you were able to enslave a handful of them.`); - } - if (V.policies.immigrationCash === 1) { - _lowerClass += 200; - _lowerClassP *= 1.01; - _middleClass += 40; - _middleClassP *= 1.005; - _upperClass += -13.5; - _upperClassP *= 0.995; - _topClass += -5; - _topClass *= 0.99; - r.push(`The rent promotion for new immigrants brings new citizens to the arcology.`); - } - if (V.policies.immigrationRep === 1) { - _lowerClass += 200; - _lowerClassP *= 1.01; - _middleClass += 40; - _middleClassP *= 1.005; - _upperClass += -13.5; - _upperClassP *= 0.995; - _topClass += -5; - _topClass *= 0.99; - r.push(`Your welcome program for new citizens helps encourage wealthy people from the old world to immigrate, but <span class="red">annoys some longstanding citizens.</span>`); - repX(forceNeg(100), "policies"); - } - if (V.policies.immigrationCash === -1) { - _lowerClass += -200; - _lowerClassP *= 0.99; - _middleClass += -40; - _middleClassP *= 0.995; - _upperClass += 13.5; - _upperClassP *= 1.005; - _topClass += 5; - _topClass *= 1.01; - r.push(`You covertly <span class="yellowgreen">sell</span> the private information of potential arcology immigrants on the old world black market.`); - cashX(random(500, 1500), "policies"); - } - if (V.policies.immigrationRep === -1) { - _lowerClass += -200; - _lowerClassP *= 0.99; - _middleClass += -40; - _middleClassP *= 0.995; - _upperClass += 13.5; - _upperClassP *= 1.005; - _topClass += 5; - _topClass *= 1.01; - r.push(`You allow citizens input on potential immigrants, a <span class="green">popular</span> program.`); - repX(100, "policies"); - } - if (V.policies.enslavementCash === 1) { - _slaveDemandU *= 1.1; - _slaveDemandT *= 1.125; - _lowerClass += -200; - _lowerClassP *= .99; - _topClass += 5; - _topClass *= 1.01; - r.push(`You <span class="yellowgreen">take kickbacks</span> for ignoring enslavement of citizens.`); - cashX(random(500, 1500), "policies"); - } - if (V.policies.enslavementRep === 1) { - _slaveDemandU *= 1.1; - _slaveDemandT *= 1.125; - _lowerClass += -200; - _lowerClassP *= 0.99; - _topClass += 5; - _topClass *= 1.01; - r.push(`You <span class="green">make friends</span> by tacitly supporting enslavement of upstart citizens.`); - repX(100, "policies"); - } - if (V.policies.enslavementCash === -1) { - _slaveDemandU *= 0.9; - _slaveDemandT *= 0.875; - _lowerClass += 200; - _lowerClassP *= 1.02; - _topClass += -5; - _topClass *= 0.98; - r.push(`Your charity purse prevents a few citizens from falling into slavery.`); - } - if (V.policies.enslavementRep === -1) { - _slaveDemandU *= 0.9; - _slaveDemandT *= 0.875; - _lowerClass += 200; - _lowerClassP *= 1.01; - _topClass += -5; - _topClass *= 0.99; - r.push(`You use your personal influence to help struggling citizens.`); - repX(forceNeg(100), "policies"); - } - if (V.arcologies[0].FSSupremacistLawME === 1) { - _slaveDemandU *= 2.2; - _slaveDemandT *= 2.5; - _lowerClass += -400; - _lowerClassP *= 0.98; - _middleClass += -80; - _middleClassP *= 0.99; - _upperClass += 27; - _upperClassP *= 1.01; - _topClass += 10; - _topClassP *= 1.02; - if (V.FSSupLawTrigger === 1) { - _slavesSupLaw = 0; - _slavesSupLaw += Math.trunc((V.lowerClass + V.middleClass + V.upperClass) * 0.65); - V.NPCSlaves += Math.trunc(_slavesSupLaw * 0.7); - V.menials += Math.trunc(_slavesSupLaw * 0.2); - V.lowerClass = Math.trunc(V.lowerClass * 0.35); - V.middleClass = Math.trunc(V.middleClass * 0.35); - V.upperClass = Math.trunc(V.upperClass * 0.35); - V.FSSupLawTrigger = 2; - } - } - if (V.arcologies[0].FSSubjugationistLawME === 1) { - _slaveDemandU *= 1.24; - _slaveDemandT *= 1.3; - _lowerClass += -200; - _lowerClassP *= 0.99; - _middleClass += -40; - _middleClassP *= 0.995; - _upperClass += 13.5; - _upperClassP *= 1.005; - _topClass += 5; - _topClassP *= 1.01; - if (V.FSSubLawTrigger === 1) { - _slavesSubLaw = Math.trunc((V.lowerClass + V.middleClass + V.upperClass) * 0.2); - V.NPCSlaves += Math.trunc(_slavesSubLaw * 0.7); - V.menials += Math.trunc(_slavesSubLaw * 0.2); - V.lowerClass = Math.trunc(V.lowerClass * 0.8); - V.middleClass = Math.trunc(V.middleClass * 0.8); - V.upperClass = Math.trunc(V.upperClass * 0.8); - V.FSSubLawTrigger = 2; - } - } - if (V.arcologies[0].FSRepopulationFocusLaw === 1) { - _lowerClass += 100; - _lowerClassP *= 1.005; - _topClass += -2.5; - _topClassP *= 0.995; - r.push(`The rent promotion for pregnant women attracts several gravid ladies and a few girls eager to become mothers to enroll as citizens in your arcology.`); - } - if (V.arcologies[0].FSRestartLaw === 1) { - _lowerClass += -100; - _lowerClassP *= 0.99; - _topClass += 2.5; - _topClassP *= 1.01; - r.push(`Your sterilization program drives several disloyal citizens out of the arcology.`); - } - if (V.arcologies[0].FSHedonisticDecadenceLaw === 1) { - _middleClass += 80; - _middleClassP *= 1.01; - } - if (V.arcologies[0].FSDegradationistLaw === 1) { - _slaveProductivity += -0.05; - } - if (V.arcologies[0].FSPaternalistLaw === 1) { - _slaveDemandU *= 0.9; - _slaveDemandT *= 0.875; - _upperClass += -13.5; - _upperClassP *= 1.005; - _topClass += -2.5; - _topClassP *= 1.005; - } - if (V.arcologies[0].FSYouthPreferentialistLaw === 1) { - _lowerClass += 200; - _lowerClassP *= 1.01; - _middleClass += -80; - _middleClassP *= 0.99; - } - if (V.arcologies[0].FSMaturityPreferentialistLaw === 1) { - _lowerClass += -200; - _lowerClassP *= 0.99; - _middleClass += 80; - _middleClassP *= 1.01; - } - if (V.arcologies[0].FSPetiteAdmirationLaw === 1) { - _lowerClass += -200; - _lowerClassP *= 0.99; - _middleClass += 80; - _middleClassP *= 1.01; - } - if (V.arcologies[0].FSStatuesqueGlorificationLaw === 1) { - _lowerClass += -400; - _lowerClassP *= 0.95; - _middleClass += 40; - _middleClassP *= 1.01; - _upperClass += -10; - _upperClassP *= .99; - } - if (V.arcologies[0].FSIntellectualDependencyLaw === 1) { - _slaveDemandU *= 1.24; - _slaveDemandT *= 1.3; - _lowerClass += -50; - _lowerClassP *= 0.90; - _middleClass += -40; - _middleClassP *= 0.90; - _upperClass += -1; - _upperClassP *= .99; - } - if (V.arcologies[0].FSSlaveProfessionalismLaw === 1) { - _slaveDemandU *= 1.4; - _slaveDemandT *= 1.5; - _lowerClass += -300; - _lowerClassP *= 0.95; - _middleClass += -40; - _middleClassP *= 0.995; - _upperClass += -5; - _upperClassP *= .99; - _topClass += 7; - _topClassP *= 1.05; - if (V.FSSlaveProfLawTrigger === 1) { - V.lowerClass = Math.trunc(V.lowerClass * 0.8); - V.middleClass = Math.trunc(V.middleClass * 0.8); - V.upperClass = Math.trunc(V.upperClass * 0.8); - V.FSSlaveProfLawTrigger = 2; - } - } - if (V.arcologies[0].FSChattelReligionistCreed === 1) { - if (V.nicaea.focus === "slaves") { - _slaveDemandU *= 1 + V.nicaea.power * -0.05; - _slaveDemandT *= 1 + V.nicaea.power * -0.0625; - _slaveProductivity += V.nicaea.power * 0.025; - _expirationFS *= 1 + V.nicaea.power * -0.125; - _lowerClass += V.nicaea.power * 100; - _lowerClassP *= 1 + V.nicaea.power * 0.005; - _topClass += V.nicaea.power * -2.5; - _topClassP *= 1 + V.nicaea.power * -0.005; - } else if (V.nicaea.focus === "owners") { - _slaveDemandU *= 1 + V.nicaea.power * 0.05; - _slaveDemandT *= 1 + V.nicaea.power * 0.0625; - _lowerClass += V.nicaea.power * -100; - _lowerClassP *= 1 + V.nicaea.power * -0.005; - _middleClass += V.nicaea.power * -20; - _middleClassP *= 1 + V.nicaea.power * -0.0025; - _upperClass += V.nicaea.power * 6.75; - _upperClassP *= 1 + V.nicaea.power * 0.0025; - _topClass += V.nicaea.power * 2.5; - _topClassP *= 1 + V.nicaea.power * 0.005; - } - if (V.nicaea.assignment === "whore") { - _upperClass += V.nicaea.power * 6.75; - _upperClassP *= 1 + V.nicaea.power * 0.0025; - _topClass += V.nicaea.power * 1.25; - _topClassP *= 1 + V.nicaea.power * 0.0025; - } else if (V.nicaea.assignment === "serve the public") { - _lowerClass += V.nicaea.power * 50; - _lowerClassP *= 1 + V.nicaea.power * 0.0025; - _middleClass += V.nicaea.power * 20; - _middleClassP *= 1 + V.nicaea.power * 0.0025; - } else { - _slaveDemandU *= 1 + V.nicaea.power * 0.05; - _slaveDemandT *= 1 + V.nicaea.power * 0.0625; - _lowerClass += V.nicaea.power * -50; - _lowerClassP *= 1 + V.nicaea.power * -0.0025; - _middleClass += V.nicaea.power * -20; - _middleClassP *= 1 + V.nicaea.power * -0.0025; - _upperClass += V.nicaea.power * 13.5; - _upperClassP *= 1 + V.nicaea.power * 0.005; - _topClass += V.nicaea.power * 2.5; - _topClassP *= 1 + V.nicaea.power * 0.005; - } - if (V.nicaea.achievement === "slaves") { - _slaveDemandU *= 1 + V.nicaea.power * 0.2; - _slaveDemandT *= 1 + V.nicaea.power * 0.25; - _lowerClass += V.nicaea.power * -200; - _lowerClassP *= 1 + V.nicaea.power * -0.01; - } - } - if (V.arcologies[0].FSAztecRevivalistLaw === 1) { - _lowerClass += 200; - _lowerClassP *= 1.01; - _middleClass += -40; - _middleClassP *= 0.995; - _upperClass += -13.5; - _upperClassP *= 0.995; - } - _middleClass += (V.TSS.subsidize + V.GRI.subsidize + V.SCP.subsidize + V.LDE.subsidize + V.TGA.subsidize + V.TCR.subsidize + V.TFS.subsidize + V.HA.subsidize + V.NUL.subsidize) * 40; - _middleClass *= 1 + (V.TSS.subsidize + V.GRI.subsidize + V.SCP.subsidize + V.LDE.subsidize + V.TGA.subsidize + V.TCR.subsidize + V.TFS.subsidize + V.HA.subsidize + V.NUL.subsidize) * 0.005; + const schoolSubsidy = App.Data.misc.schools.reduce((acc, current) => acc + V[current].subsidize, 0); + _middleClass += (schoolSubsidy) * 40; + _middleClass *= 1 + (schoolSubsidy) * 0.005; /* Slave retirement trigger pulled (one time only)*/ if (V.citizenRetirementTrigger === 1) { @@ -805,6 +182,9 @@ globalThis.arcmgmt = function() { } } + App.Events.addNode(el, r); + r = []; + /* Citizens turning into slaves*/ if (V.policies.retirement.menial2Citizen === 1) { if (V.customMenialRetirementAge >= 65) { @@ -833,14 +213,14 @@ globalThis.arcmgmt = function() { _weatherFreeze = 1; V.weatherAwareness = 1; // <br> - // The terrible weather is <span class="red">preventing people from entering or leaving</span> your arcology. Improving your transport infrastructure will prevent this from happening.// + r.push(`// The terrible weather is <span class="red">preventing people from entering or leaving</span> your arcology. Improving your transport infrastructure will prevent this from happening.//`); } else { _weatherFreeze = 0; } } else if (V.antiWeatherFreeze < 2) { _weatherFreeze = 1; // <br> - // The terrible weather is <span class="red">preventing people from entering or leaving</span> your arcology. Improving your transport infrastructure will prevent this from happening.// + r.push(`// The terrible weather is <span class="red">preventing people from entering or leaving</span> your arcology. Improving your transport infrastructure will prevent this from happening.//`); } else { _weatherFreeze = 0; } @@ -849,7 +229,7 @@ globalThis.arcmgmt = function() { if (V.SecExp.buildings.transportHub.surfaceTransport < 3) { _weatherFreeze = 1; // <br> - // The terrible weather is <span class="red">preventing people from entering or leaving</span> your arcology. Improving your transport infrastructure will prevent this from happening.// + r.push(`// The terrible weather is <span class="red">preventing people from entering or leaving</span> your arcology. Improving your transport infrastructure will prevent this from happening.//`); } else { _weatherFreeze = 0; } @@ -857,7 +237,7 @@ globalThis.arcmgmt = function() { _weatherFreeze = 1; V.weatherAwareness = 1; // <br - // The terrible weather is <span class="red">preventing people from entering or leaving</span> your arcology. Improving your transport infrastructure will prevent this from happening.// + r.push(`// The terrible weather is <span class="red">preventing people from entering or leaving</span> your arcology. Improving your transport infrastructure will prevent this from happening.//`); } else { _weatherFreeze = 0; } @@ -880,12 +260,8 @@ globalThis.arcmgmt = function() { } if (_enslaved > 1) { // <br> - - r.push(`In total <span class="green"> ${_enslaved} lower class citizens</span> were enslaved for failing to pay their debts.`); // <br> - - r.push(`<span class="green">You enslaved ${_enslavedPC}</span> of them while other debtholders in the arcology enslaved the remaining ${_enslavedNPC}.`); } else if (_enslaved > 0) { // <br> @@ -927,7 +303,7 @@ globalThis.arcmgmt = function() { V.visitors = _oldVisitors; } // <br> - r.push(`<span class="green"> V.visitors traders and tourists</span> visited your arcology this week.`); + r.push(`<span class="green"> ${V.visitors} traders and tourists</span> visited your arcology this week.`); /* slaves*/ /* Slaves getting retired*/ @@ -1373,15 +749,15 @@ globalThis.arcmgmt = function() { V.arcologies[0].name; r.push(` is home to the following:`); // <br> - r.push(`Lower Class Citizens | V.lowerClass | _percLowerClass %`); + r.push(`Lower Class Citizens | ${V.lowerClass} | ${_percLowerClass}%`); // <br> - r.push(`Middle Class Citizens | V.middleClass | _percMiddleClass % `); + r.push(`Middle Class Citizens | ${V.middleClass} | ${_percMiddleClass}% `); // <br> - r.push(`Upper Class Citizens | V.upperClass | _percUpperClass % `); + r.push(`Upper Class Citizens | ${V.upperClass} | ${_percUpperClass}% `); // <br> - r.push(`Millionaires | V.topClass | _percTopClass %`); + r.push(`Millionaires | ${V.topClass} | ${_percTopClass}%`); // <br> - r.push(`Slaves | V.ASlaves | _percASlaves%`); + r.push(`Slaves | ${V.ASlaves} | ${_percASlaves}%`); // <br> // <br> if (V.arcologies[0].FSSupremacistLawME === 1) { @@ -1555,7 +931,7 @@ globalThis.arcmgmt = function() { } - r.push(`This week, rents from V.arcologies[0].name came to <span class="yellowgreen"> ${cashFormat(_rents)}.</span>`); + r.push(`This week, rents from ${V.arcologies[0].name} came to <span class="yellowgreen"> ${cashFormat(_rents)}.</span>`); if (V.difficultySwitch === 0) { if (V.localEcon < 100) { _bribes = (V.week * 100) + random(-100, 100); @@ -2314,4 +1690,650 @@ globalThis.arcmgmt = function() { } App.Events.addNode(el, r); return el; + + function fsImpact() { + const el = new DocumentFragment(); + const r =[]; + + if (V.arcologies[0].FSSupremacist !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSSupremacist, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSupremacist, 100) / 20) * 0.04; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSupremacist, 100) / 20) * 0.05; + _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSSupremacist, 100) / 20) * -80; + _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSupremacist, 100) / 20) * -0.004; + _middleClass += Math.trunc(Math.min(V.arcologies[0].FSSupremacist, 100) / 20) * -16; + _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSupremacist, 100) / 20) * -0.002; + _upperClass += Math.trunc(Math.min(V.arcologies[0].FSSupremacist, 100) / 20) * 5.4; + _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSupremacist, 100) / 20) * 0.002; + _topClass += Math.trunc(Math.min(V.arcologies[0].FSSupremacist, 100) / 20) * 2; + _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSupremacist, 100) / 20) * 0.004; + r.push(`Your racial policies are concentrating power in the hands of ${V.arcologies[0].FSSupremacistRace} people. /*perhaps too obvious to bother with printing?*/`); + } + if (V.arcologies[0].FSSubjugationist !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSSubjugationist, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSubjugationist, 100) / 20) * 0.04; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSubjugationist, 100) / 20) * 0.05; + _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSSubjugationist, 100) / 20) * -80; + _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSubjugationist, 100) / 20) * -0.004; + _middleClass += Math.trunc(Math.min(V.arcologies[0].FSSubjugationist, 100) / 20) * -16; + _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSubjugationist, 100) / 20) * -0.002; + _upperClass += Math.trunc(Math.min(V.arcologies[0].FSSubjugationist, 100) / 20) * 5.4; + _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSubjugationist, 100) / 20) * 0.002; + _topClass += Math.trunc(Math.min(V.arcologies[0].FSSubjugationist, 100) / 20) * 2; + _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSubjugationist, 100) / 20) * 0.004; + r.push(`Your racial policies are stripping all power from the ${V.arcologies[0].FSSubjugationistRace} people.`); /* perhaps too obvious to bother with printing?*/ + } + if (V.arcologies[0].FSGenderRadicalist !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSGenderRadicalist, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSGenderRadicalist, 100) / 20) * 0.02; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSGenderRadicalist, 100) / 20) * 0.025; + _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSGenderRadicalist, 100) / 20) * -40; + _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSGenderRadicalist, 100) / 20) * -0.002; + _topClass += Math.trunc(Math.min(V.arcologies[0].FSGenderRadicalist, 100) / 20); + _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSGenderRadicalist, 100) / 20) * 0.002; + r.push(`Your radical views on gender are scaring away the more traditionally minded.`); + } + if (V.arcologies[0].FSGenderFundamentalist !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSGenderFundamentalist, 100); + _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSGenderFundamentalist, 100) / 20) * 40; + _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSGenderFundamentalist, 100) / 20) * 0.002; + _topClass += Math.trunc(Math.min(V.arcologies[0].FSGenderFundamentalist, 100) / 20) * -1; + _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSGenderFundamentalist, 100) / 20) * -0.002; + r.push(`Your traditional views on gender are comforting to many, unimaginative to some.`); + } + if (V.arcologies[0].FSPaternalist !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSPaternalist, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * -0.04; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * -0.05; + _expirationFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * -0.15; + _slaveProductivity += Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * 0.02; + _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * 80; + _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * 0.004; + _welfareFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * -0.1; + _middleClass += Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * 16; + _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * 0.002; + _upperClass += Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * -5.4; + _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * -0.002; + _topClass += Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * -2; + _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * -0.002; + r.push(`Poor citizens can rely on their better-off peers in ${V.arcologies[0].name}.`); + } + if (V.arcologies[0].FSDegradationist !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSDegradationist, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * 0.04; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * 0.05; + _expirationFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * 0.2; + _slaveProductivity += Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * 0.01; + _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * -80; + _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * -0.004; + _welfareFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * 0.1; + _middleClass += Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * -16; + _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * -0.002; + _upperClass += Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * 5.4; + _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * 0.002; + _topClass += Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * 2; + _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSDegradationist, 100) / 20) * 0.004; + r.push(`The arcology is a cutthroat place in which falling into slavery is very easy.`); + } + if (V.arcologies[0].FSIntellectualDependency !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSIntellectualDependency, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSIntellectualDependency, 100) / 20) * 0.03; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSIntellectualDependency, 100) / 20) * 0.04; + _expirationFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSIntellectualDependency, 100) / 20) * 0.05; + _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSIntellectualDependency, 100) / 20) * 20; + _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSIntellectualDependency, 100) / 20) * 0.002; + _middleClass += Math.trunc(Math.min(V.arcologies[0].FSIntellectualDependency, 100) / 20) * 10; + _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSIntellectualDependency, 100) / 20) * 0.003; + _topClass += Math.trunc(Math.min(V.arcologies[0].FSIntellectualDependency, 100) / 20) * -3; + _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSIntellectualDependency, 100) / 20) * -0.020; + r.push(`It's always a party in ${V.arcologies[0].name}, giving it a strong appeal to those unable to host such an event.`); + } + if (V.arcologies[0].FSSlaveProfessionalism !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSSlaveProfessionalism, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSlaveProfessionalism, 100) / 20) * -0.1; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSlaveProfessionalism, 100) / 20) * -0.125; + _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSSlaveProfessionalism, 100) / 20) * -20; + _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSlaveProfessionalism, 100) / 20) * -0.002; + _upperClass += Math.trunc(Math.min(V.arcologies[0].FSSlaveProfessionalism, 100) / 20) * 2.7; + _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSlaveProfessionalism, 100) / 20) * 0.001; + _topClass += Math.trunc(Math.min(V.arcologies[0].FSSlaveProfessionalism, 100) / 20) * 0.5; + _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSSlaveProfessionalism, 100) / 20) * 0.001; + r.push(`The intelligent atmosphere of ${V.arcologies[0].name} makes it an attractive place for those with the brains to define their place in the world.`); + } + if (V.arcologies[0].FSBodyPurist !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSBodyPurist, 100); + _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSBodyPurist, 100) / 20) * 40; + _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSBodyPurist, 100) / 20) * 0.002; + _upperClass += Math.trunc(Math.min(V.arcologies[0].FSBodyPurist, 100) / 20) * -2.7; + _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSBodyPurist, 100) / 20) * -0.001; + _topClass += Math.trunc(Math.min(V.arcologies[0].FSBodyPurist, 100) / 20) * -0.5; + _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSBodyPurist, 100) / 20) * -0.001; + r.push(`Body purist fashion standards comfort the poor as they stand out less from their more fortunate neighbors.`); + } + if (V.arcologies[0].FSTransformationFetishist !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSTransformationFetishist, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSTransformationFetishist, 100) / 20) * 0.02; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSTransformationFetishist, 100) / 20) * 0.025; + _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSTransformationFetishist, 100) / 20) * -40; + _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSTransformationFetishist, 100) / 20) * -0.002; + _upperClass += Math.trunc(Math.min(V.arcologies[0].FSTransformationFetishist, 100) / 20) * 2.7; + _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSTransformationFetishist, 100) / 20) * 0.001; + _topClass += Math.trunc(Math.min(V.arcologies[0].FSTransformationFetishist, 100) / 20) * 0.5; + _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSTransformationFetishist, 100) / 20) * 0.001; + r.push(`The lower class fear the kind of transformations could be forced on them if they ever end up enslaved, whereas the rich enjoy wielding such power.`); + } + if (V.arcologies[0].FSYouthPreferentialist !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSYouthPreferentialist, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSYouthPreferentialist, 100) / 20) * 0.02; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSYouthPreferentialist, 100) / 20) * 0.025; + _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSYouthPreferentialist, 100) / 20) * 40; + _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSYouthPreferentialist, 100) / 20) * 0.002; + _middleClass += Math.trunc(Math.min(V.arcologies[0].FSYouthPreferentialist, 100) / 20) * -8; + _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSYouthPreferentialist, 100) / 20) * -0.002; + r.push(`Preference for youth makes the young poor in your arcology feel appreciated despite their lack of wealth.`); + } + if (V.arcologies[0].FSMaturityPreferentialist !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSMaturityPreferentialist, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSMaturityPreferentialist, 100) / 20) * 0.02; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSMaturityPreferentialist, 100) / 20) * 0.025; + _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSMaturityPreferentialist, 100) / 20) * -40; + _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSMaturityPreferentialist, 100) / 20) * -0.002; + _middleClass += Math.trunc(Math.min(V.arcologies[0].FSMaturityPreferentialist, 100) / 20) * 8; + _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSMaturityPreferentialist, 100) / 20) * 0.002; + r.push(`Preference for maturity makes the middle class of your arcology feel like their experience is finally properly appreciated.`); + } + if (V.arcologies[0].FSPetiteAdmiration !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSPetiteAdmiration, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPetiteAdmiration, 100) / 20) * 0.02; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPetiteAdmiration, 100) / 20) * 0.025; + } + if (V.arcologies[0].FSStatuesqueGlorification !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSStatuesqueGlorification, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSStatuesqueGlorification, 100) / 20) * 0.02; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSStatuesqueGlorification, 100) / 20) * 0.025; + } + if (V.arcologies[0].FSSlimnessEnthusiast !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSSlimnessEnthusiast, 100); + } + if (V.arcologies[0].FSAssetExpansionist !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSAssetExpansionist, 100); + if (V.arcologies[0].FSBodyPurist !== "unset") { + _expirationFS *= 1 + (Math.trunc(Math.min(V.arcologies[0].FSAssetExpansionist, 100) / 20) * 0.05) * (1 + (Math.trunc(Math.min(V.arcologies[0].FSBodyPurist, 100) / 20) * -0.1)); + } else { + _expirationFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSAssetExpansionist, 100) / 20) * 0.05; + } + } + if (V.arcologies[0].FSPastoralist !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSPastoralist, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * 0.04; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * 0.05; + if (V.arcologies[0].FSPaternalist !== "unset") { + _expirationFS *= 1 + (Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * 0.05) * (1 + (Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * -0.1)); + } else { + _expirationFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * 0.05; + } + _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * -80; + _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * -0.004; + _middleClass += Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * 16; + _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * 0.002; + _upperClass += Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * 2.7; + _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * 0.001; + _topClass += Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * 0.5; + _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPastoralist, 100) / 20) * 0.001; + r.push(`The pastoralization of ${V.arcologies[0].name} spurs a whole industry around human produce.`); + } + if (V.arcologies[0].FSPhysicalIdealist !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSPhysicalIdealist, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPhysicalIdealist, 100) / 20) * 0.02; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPhysicalIdealist, 100) / 20) * 0.025; + _slaveProductivity += Math.trunc(Math.min(V.arcologies[0].FSPhysicalIdealist, 100) / 20) * 0.01; + _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSPhysicalIdealist, 100) / 20) * -40; + _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPhysicalIdealist, 100) / 20) * -0.002; + _upperClass += Math.trunc(Math.min(V.arcologies[0].FSPhysicalIdealist, 100) / 20) * 2.7; + _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPhysicalIdealist, 100) / 20) * 0.001; + _topClass += Math.trunc(Math.min(V.arcologies[0].FSPhysicalIdealist, 100) / 20) * 0.5; + _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSPhysicalIdealist, 100) / 20) * 0.001; + r.push(`Fit slaves and citizens are more productive! However, your arcology's poor do not look forward to even more toil and sweat.`); + } + if (V.arcologies[0].FSChattelReligionist !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSChattelReligionist, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSChattelReligionist, 100) / 20) * 0.02; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSChattelReligionist, 100) / 20) * 0.025; + _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSChattelReligionist, 100) / 20) * -40; + _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSChattelReligionist, 100) / 20) * -0.002; + _upperClass += Math.trunc(Math.min(V.arcologies[0].FSChattelReligionist, 100) / 20) * 2.7; + _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSChattelReligionist, 100) / 20) * 0.001; + _topClass += Math.trunc(Math.min(V.arcologies[0].FSChattelReligionist, 100) / 20) * 0.5; + _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSChattelReligionist, 100) / 20) * 0.001; + r.push(`Chattel Religionism helps some poor citizens see slavery as a spiritually pure fate.`); + } + if (V.arcologies[0].FSRomanRevivalist !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSRomanRevivalist, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRomanRevivalist, 100) / 20) * 0.02; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRomanRevivalist, 100) / 20) * 0.025; + _expirationFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRomanRevivalist, 100) / 20) * -0.1; + _welfareFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRomanRevivalist, 100) / 20) * -0.05; + _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSRomanRevivalist, 100) / 20) * 40; + _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRomanRevivalist, 100) / 20) * 0.00; + _topClass += Math.trunc(Math.min(V.arcologies[0].FSRomanRevivalist, 100) / 20); + _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRomanRevivalist, 100) / 20) * -0.002; + r.push(`Your citizens take pride in looking after each other.`); + } + if (V.arcologies[0].FSNeoImperialist !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSNeoImperialist, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * 0.05; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * 0.030; + _expirationFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * -0.06; + _welfareFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * -0.025; + _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * -20; + _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * -0.002; + _middleClass += Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * 16; + _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * 0.004; + _upperClass += Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * 5.4; + _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * 0.002; + _topClass += Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * 0.5; + _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNeoImperialist, 100) / 20) * 0.002; + r.push(`Your new Imperium creates a staunchly hierchical society, and while your elites and soldiers enjoy social prestige and luxury, the lower classes are often unhappy about being made to grovel.`); + } + if (V.arcologies[0].FSEgyptianRevivalist !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSEgyptianRevivalist, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSEgyptianRevivalist, 100) / 20) * 0.02; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSEgyptianRevivalist, 100) / 20) * 0.025; + _welfareFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSEgyptianRevivalist, 100) / 20) * -0.05; + _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSEgyptianRevivalist, 100) / 20) * 40; + _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSEgyptianRevivalist, 100) / 20) * 0.002; + _topClass += Math.trunc(Math.min(V.arcologies[0].FSEgyptianRevivalist, 100) / 20); + _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSEgyptianRevivalist, 100) / 20) * -0.002; + r.push(`Egyptian Revivalism is benevolent in some ways, and charity is common here.`); + } + if (V.arcologies[0].FSEdoRevivalist !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSEdoRevivalist, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSEdoRevivalist, 100) / 20) * 0.02; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSEdoRevivalist, 100) / 20) * 0.025; + } + if (V.arcologies[0].FSArabianRevivalist !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSArabianRevivalist, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSArabianRevivalist, 100) / 20) * 0.02; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSArabianRevivalist, 100) / 20) * 0.025; + } + if (V.arcologies[0].FSChineseRevivalist !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSChineseRevivalist, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSChineseRevivalist, 100) / 20) * 0.02; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSChineseRevivalist, 100) / 20) * 0.025; + } + if (V.arcologies[0].FSAztecRevivalist !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSAztecRevivalist, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSAztecRevivalist, 100) / 20) * 0.02; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSAztecRevivalist, 100) / 20) * 0.025; + } + if (V.arcologies[0].FSNull !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSNull, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNull, 100) / 20) * -0.1; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNull, 100) / 20) * -0.125; + _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSNull, 100) / 20) * 400; + _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNull, 100) / 20) * 0.016; + _middleClass += Math.trunc(Math.min(V.arcologies[0].FSNull, 100) / 20) * 64; + _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNull, 100) / 20) * 0.008; + _upperClass += Math.trunc(Math.min(V.arcologies[0].FSNull, 100) / 20) * -21.6; + _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNull, 100) / 20) * -0.008; + _topClass += Math.trunc(Math.min(V.arcologies[0].FSNull, 100) / 20) * -8; + _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSNull, 100) / 20) * -0.016; + r.push(`Your arcology's vibrant, open culture helps everyone succeed, preventing many struggling citizens from falling into slavery.`); + } + if (V.arcologies[0].FSRepopulationFocus !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSRepopulationFocus, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * 0.04; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * 0.05; + _slaveProductivity += Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * -0.01; + if (V.arcologies[0].FSPaternalist !== "unset") { + _expirationFS *= 1 + (Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * 0.05) * (1 + (Math.trunc(Math.min(V.arcologies[0].FSPaternalist, 100) / 20) * -0.1)); + } else { + _expirationFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * 0.05; + } + _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * 80; + _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * 0.004; + _middleClass += Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * 16; + _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * 0.002; + _upperClass += Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * -5.4; + _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * -0.002; + _topClass += Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * -2; + _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRepopulationFocus, 100) / 20) * -0.004; + r.push(`You've made repopulation a priority and the less fortunate hope all these new children will make their lives easier in the future, but the wealthy are wary.`); + } + if (V.arcologies[0].FSRestart !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSRestart, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRestart, 100) / 20) * 0.04; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRestart, 100) / 20) * 0.05; + _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSRestart, 100) / 20) * -80; + _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRestart, 100) / 20) * -0.004; + _middleClass += Math.trunc(Math.min(V.arcologies[0].FSRestart, 100) / 20) * -16; + _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRestart, 100) / 20) * -0.002; + _upperClass += Math.trunc(Math.min(V.arcologies[0].FSRestart, 100) / 20) * 5.4; + _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRestart, 100) / 20) * 0.002; + _topClass += Math.trunc(Math.min(V.arcologies[0].FSRestart, 100) / 20) * 2; + _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSRestart, 100) / 20) * 0.004; + r.push(`Highly restricted breeding pleases the powerful, but the less fortunate may seek reproductive freedom elsewhere.`); + } + if (V.arcologies[0].FSHedonisticDecadence !== "unset") { + _FSScore += Math.min(V.arcologies[0].FSHedonisticDecadence, 100); + _slaveDemandU *= 1 + Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20) * 0.02; + _slaveDemandT *= 1 + Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20) * 0.025; + _slaveProductivity += Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20) * -0.01; + _expirationFS *= 1 + Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20) * 0.1; /* too high?*/ + _lowerClass += Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20) * 40; + _lowerClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20) * 0.002; + _middleClass += Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20) * -16; + _middleClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20) * -0.002; + _upperClass += Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20) * -5.4; + _upperClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20) * -0.002; + _topClass += Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20); + _topClassP *= 1 + Math.trunc(Math.min(V.arcologies[0].FSHedonisticDecadence, 100) / 20) * 0.002; + r.push(`Your citizens enjoy the pleasures of life to their fullest, but some prefer to earn these pleasures.`); + } + if (r.length > 0) { + App.UI.DOM.appendNewElement("h3", el, "Future Societies"); + } + App.Events.addNode(el, r); + return el; + } + + function policiesImpact() { + const el = new DocumentFragment(); + const r =[]; + if (V.policies.retirement.menial2Citizen === 1) { + _slaveDemandU *= 0.8; + _slaveDemandT *= 0.75; + _slaveProductivity += 0.05; + _expirationFS *= 0.8; + _lowerClass += 200; + _lowerClassP *= 1.01; + _middleClass += 80; + _middleClassP *= 1.01; + _upperClass += -27; + _upperClassP *= 0.99; + _topClass += -5; + _topClassP *= 0.99; + } + if (V.policies.proRefugees === 1) { + _slaveDemandU *= 1.1; + _slaveDemandT *= 1.125; + r.push(`Some desperate people filtered into the arcology during the week: as owner, you were able to enslave a handful of them.`); + } + if (V.policies.immigrationCash === 1) { + _lowerClass += 200; + _lowerClassP *= 1.01; + _middleClass += 40; + _middleClassP *= 1.005; + _upperClass += -13.5; + _upperClassP *= 0.995; + _topClass += -5; + _topClass *= 0.99; + r.push(`The rent promotion for new immigrants brings new citizens to the arcology.`); + } + if (V.policies.immigrationRep === 1) { + _lowerClass += 200; + _lowerClassP *= 1.01; + _middleClass += 40; + _middleClassP *= 1.005; + _upperClass += -13.5; + _upperClassP *= 0.995; + _topClass += -5; + _topClass *= 0.99; + r.push(`Your welcome program for new citizens helps encourage wealthy people from the old world to immigrate, but <span class="red">annoys some longstanding citizens.</span>`); + repX(forceNeg(100), "policies"); + } + if (V.policies.immigrationCash === -1) { + _lowerClass += -200; + _lowerClassP *= 0.99; + _middleClass += -40; + _middleClassP *= 0.995; + _upperClass += 13.5; + _upperClassP *= 1.005; + _topClass += 5; + _topClass *= 1.01; + r.push(`You covertly <span class="yellowgreen">sell</span> the private information of potential arcology immigrants on the old world black market.`); + cashX(random(500, 1500), "policies"); + } + if (V.policies.immigrationRep === -1) { + _lowerClass += -200; + _lowerClassP *= 0.99; + _middleClass += -40; + _middleClassP *= 0.995; + _upperClass += 13.5; + _upperClassP *= 1.005; + _topClass += 5; + _topClass *= 1.01; + r.push(`You allow citizens input on potential immigrants, a <span class="green">popular</span> program.`); + repX(100, "policies"); + } + if (V.policies.enslavementCash === 1) { + _slaveDemandU *= 1.1; + _slaveDemandT *= 1.125; + _lowerClass += -200; + _lowerClassP *= .99; + _topClass += 5; + _topClass *= 1.01; + r.push(`You <span class="yellowgreen">take kickbacks</span> for ignoring enslavement of citizens.`); + cashX(random(500, 1500), "policies"); + } + if (V.policies.enslavementRep === 1) { + _slaveDemandU *= 1.1; + _slaveDemandT *= 1.125; + _lowerClass += -200; + _lowerClassP *= 0.99; + _topClass += 5; + _topClass *= 1.01; + r.push(`You <span class="green">make friends</span> by tacitly supporting enslavement of upstart citizens.`); + repX(100, "policies"); + } + if (V.policies.enslavementCash === -1) { + _slaveDemandU *= 0.9; + _slaveDemandT *= 0.875; + _lowerClass += 200; + _lowerClassP *= 1.02; + _topClass += -5; + _topClass *= 0.98; + r.push(`Your charity purse prevents a few citizens from falling into slavery.`); + } + if (V.policies.enslavementRep === -1) { + _slaveDemandU *= 0.9; + _slaveDemandT *= 0.875; + _lowerClass += 200; + _lowerClassP *= 1.01; + _topClass += -5; + _topClass *= 0.99; + r.push(`You use your personal influence to help struggling citizens.`); + repX(forceNeg(100), "policies"); + } + if (V.arcologies[0].FSSupremacistLawME === 1) { + _slaveDemandU *= 2.2; + _slaveDemandT *= 2.5; + _lowerClass += -400; + _lowerClassP *= 0.98; + _middleClass += -80; + _middleClassP *= 0.99; + _upperClass += 27; + _upperClassP *= 1.01; + _topClass += 10; + _topClassP *= 1.02; + if (V.FSSupLawTrigger === 1) { + _slavesSupLaw = 0; + _slavesSupLaw += Math.trunc((V.lowerClass + V.middleClass + V.upperClass) * 0.65); + V.NPCSlaves += Math.trunc(_slavesSupLaw * 0.7); + V.menials += Math.trunc(_slavesSupLaw * 0.2); + V.lowerClass = Math.trunc(V.lowerClass * 0.35); + V.middleClass = Math.trunc(V.middleClass * 0.35); + V.upperClass = Math.trunc(V.upperClass * 0.35); + V.FSSupLawTrigger = 2; + } + } + if (V.arcologies[0].FSSubjugationistLawME === 1) { + _slaveDemandU *= 1.24; + _slaveDemandT *= 1.3; + _lowerClass += -200; + _lowerClassP *= 0.99; + _middleClass += -40; + _middleClassP *= 0.995; + _upperClass += 13.5; + _upperClassP *= 1.005; + _topClass += 5; + _topClassP *= 1.01; + if (V.FSSubLawTrigger === 1) { + _slavesSubLaw = Math.trunc((V.lowerClass + V.middleClass + V.upperClass) * 0.2); + V.NPCSlaves += Math.trunc(_slavesSubLaw * 0.7); + V.menials += Math.trunc(_slavesSubLaw * 0.2); + V.lowerClass = Math.trunc(V.lowerClass * 0.8); + V.middleClass = Math.trunc(V.middleClass * 0.8); + V.upperClass = Math.trunc(V.upperClass * 0.8); + V.FSSubLawTrigger = 2; + } + } + if (V.arcologies[0].FSRepopulationFocusLaw === 1) { + _lowerClass += 100; + _lowerClassP *= 1.005; + _topClass += -2.5; + _topClassP *= 0.995; + r.push(`The rent promotion for pregnant women attracts several gravid ladies and a few girls eager to become mothers to enroll as citizens in your arcology.`); + } + if (V.arcologies[0].FSRestartLaw === 1) { + _lowerClass += -100; + _lowerClassP *= 0.99; + _topClass += 2.5; + _topClassP *= 1.01; + r.push(`Your sterilization program drives several disloyal citizens out of the arcology.`); + } + if (V.arcologies[0].FSHedonisticDecadenceLaw === 1) { + _middleClass += 80; + _middleClassP *= 1.01; + } + if (V.arcologies[0].FSDegradationistLaw === 1) { + _slaveProductivity += -0.05; + } + if (V.arcologies[0].FSPaternalistLaw === 1) { + _slaveDemandU *= 0.9; + _slaveDemandT *= 0.875; + _upperClass += -13.5; + _upperClassP *= 1.005; + _topClass += -2.5; + _topClassP *= 1.005; + } + if (V.arcologies[0].FSYouthPreferentialistLaw === 1) { + _lowerClass += 200; + _lowerClassP *= 1.01; + _middleClass += -80; + _middleClassP *= 0.99; + } + if (V.arcologies[0].FSMaturityPreferentialistLaw === 1) { + _lowerClass += -200; + _lowerClassP *= 0.99; + _middleClass += 80; + _middleClassP *= 1.01; + } + if (V.arcologies[0].FSPetiteAdmirationLaw === 1) { + _lowerClass += -200; + _lowerClassP *= 0.99; + _middleClass += 80; + _middleClassP *= 1.01; + } + if (V.arcologies[0].FSStatuesqueGlorificationLaw === 1) { + _lowerClass += -400; + _lowerClassP *= 0.95; + _middleClass += 40; + _middleClassP *= 1.01; + _upperClass += -10; + _upperClassP *= .99; + } + if (V.arcologies[0].FSIntellectualDependencyLaw === 1) { + _slaveDemandU *= 1.24; + _slaveDemandT *= 1.3; + _lowerClass += -50; + _lowerClassP *= 0.90; + _middleClass += -40; + _middleClassP *= 0.90; + _upperClass += -1; + _upperClassP *= .99; + } + if (V.arcologies[0].FSSlaveProfessionalismLaw === 1) { + _slaveDemandU *= 1.4; + _slaveDemandT *= 1.5; + _lowerClass += -300; + _lowerClassP *= 0.95; + _middleClass += -40; + _middleClassP *= 0.995; + _upperClass += -5; + _upperClassP *= .99; + _topClass += 7; + _topClassP *= 1.05; + if (V.FSSlaveProfLawTrigger === 1) { + V.lowerClass = Math.trunc(V.lowerClass * 0.8); + V.middleClass = Math.trunc(V.middleClass * 0.8); + V.upperClass = Math.trunc(V.upperClass * 0.8); + V.FSSlaveProfLawTrigger = 2; + } + } + if (V.arcologies[0].FSChattelReligionistCreed === 1) { + if (V.nicaea.focus === "slaves") { + _slaveDemandU *= 1 + V.nicaea.power * -0.05; + _slaveDemandT *= 1 + V.nicaea.power * -0.0625; + _slaveProductivity += V.nicaea.power * 0.025; + _expirationFS *= 1 + V.nicaea.power * -0.125; + _lowerClass += V.nicaea.power * 100; + _lowerClassP *= 1 + V.nicaea.power * 0.005; + _topClass += V.nicaea.power * -2.5; + _topClassP *= 1 + V.nicaea.power * -0.005; + } else if (V.nicaea.focus === "owners") { + _slaveDemandU *= 1 + V.nicaea.power * 0.05; + _slaveDemandT *= 1 + V.nicaea.power * 0.0625; + _lowerClass += V.nicaea.power * -100; + _lowerClassP *= 1 + V.nicaea.power * -0.005; + _middleClass += V.nicaea.power * -20; + _middleClassP *= 1 + V.nicaea.power * -0.0025; + _upperClass += V.nicaea.power * 6.75; + _upperClassP *= 1 + V.nicaea.power * 0.0025; + _topClass += V.nicaea.power * 2.5; + _topClassP *= 1 + V.nicaea.power * 0.005; + } + if (V.nicaea.assignment === "whore") { + _upperClass += V.nicaea.power * 6.75; + _upperClassP *= 1 + V.nicaea.power * 0.0025; + _topClass += V.nicaea.power * 1.25; + _topClassP *= 1 + V.nicaea.power * 0.0025; + } else if (V.nicaea.assignment === "serve the public") { + _lowerClass += V.nicaea.power * 50; + _lowerClassP *= 1 + V.nicaea.power * 0.0025; + _middleClass += V.nicaea.power * 20; + _middleClassP *= 1 + V.nicaea.power * 0.0025; + } else { + _slaveDemandU *= 1 + V.nicaea.power * 0.05; + _slaveDemandT *= 1 + V.nicaea.power * 0.0625; + _lowerClass += V.nicaea.power * -50; + _lowerClassP *= 1 + V.nicaea.power * -0.0025; + _middleClass += V.nicaea.power * -20; + _middleClassP *= 1 + V.nicaea.power * -0.0025; + _upperClass += V.nicaea.power * 13.5; + _upperClassP *= 1 + V.nicaea.power * 0.005; + _topClass += V.nicaea.power * 2.5; + _topClassP *= 1 + V.nicaea.power * 0.005; + } + if (V.nicaea.achievement === "slaves") { + _slaveDemandU *= 1 + V.nicaea.power * 0.2; + _slaveDemandT *= 1 + V.nicaea.power * 0.25; + _lowerClass += V.nicaea.power * -200; + _lowerClassP *= 1 + V.nicaea.power * -0.01; + } + } + if (V.arcologies[0].FSAztecRevivalistLaw === 1) { + _lowerClass += 200; + _lowerClassP *= 1.01; + _middleClass += -40; + _middleClassP *= 0.995; + _upperClass += -13.5; + _upperClassP *= 0.995; + } + if (r.length > 0) { + App.UI.DOM.appendNewElement("h3", el, "Policies"); + } + App.Events.addNode(el, r); + return el; + } }; diff --git a/src/uncategorized/economics.tw b/src/uncategorized/economics.tw index 4a93c66ac5dfe5ec3f3b57ea1b8f53418760bd38..ea6bbff754a76de376bf1194f0933ad43bb4a394 100644 --- a/src/uncategorized/economics.tw +++ b/src/uncategorized/economics.tw @@ -19,7 +19,7 @@ <<include "Neighbors Development">> <br> -<<include "Arcology Management">> +<<includeDOM arcmgmt()>> <<if $FSAnnounced > 0>> <br><br> @@ -76,7 +76,7 @@ <div id="Management" class="tab-content"> <div class="content"> - <<include "Arcology Management">> + <<includeDOM arcmgmt()>> </div> </div>