From 8a44add7825adc237b65af9ccca9625d11c3819b Mon Sep 17 00:00:00 2001 From: Blank_Alt <12406-Blank_Alt@users.noreply.gitgud.io> Date: Tue, 11 Aug 2020 00:37:45 -0700 Subject: [PATCH] Minor sec exp backport - 1 --- src/Mods/SecExp/attackOptions.tw | 4 +- src/Mods/SecExp/buildings/propagandaHub.tw | 3 +- src/Mods/SecExp/buildings/secBarracks.tw | 12 +- src/Mods/SecExp/edicts.tw | 855 ++++++++++----------- src/Mods/SecExp/js/Unit.js | 78 +- src/Mods/SecExp/js/secExp.js | 8 +- src/Mods/SecExp/js/secExpBC.js | 123 +-- src/Mods/SecExp/proclamations.tw | 31 +- src/Mods/SecExp/rebellionGenerator.tw | 26 +- src/Mods/SecExp/securityReport.tw | 298 ++----- src/uncategorized/economics.tw | 13 +- src/uncategorized/persBusiness.tw | 3 +- src/uncategorized/reputation.tw | 5 +- 13 files changed, 647 insertions(+), 812 deletions(-) diff --git a/src/Mods/SecExp/attackOptions.tw b/src/Mods/SecExp/attackOptions.tw index 0230a31d557..3e801d3899f 100644 --- a/src/Mods/SecExp/attackOptions.tw +++ b/src/Mods/SecExp/attackOptions.tw @@ -141,7 +141,7 @@ approximately <strong><<print _estimatedMen>> men</strong> are coming, they seem <hr>__Battle Plan__:<br> <<set _leaderFound = 1>> <<if $leadingTroops === "bodyguard" && $BodyguardID === 0 || $leadingTroops === "headGirl" && $HeadGirlID === 0>> - @@red;Chosen leader $leadingTroops can not be found be found, please select another.@@ + @@.red;Chosen leader $leadingTroops cannot be found, please select another.@@ <<set _leaderFound = 0>> <</if>> <<switch $leadingTroops>> @@ -191,7 +191,7 @@ approximately <strong><<print _estimatedMen>> men</strong> are coming, they seem <<replace "#leader">><strong><<print _leader>></strong><</replace>> <</link>> <</if>> -<<if $militiaFounded == 1>> +<<if $SecExp.edicts.defense.militia >= 1>> | <<link "Let the citizens' militia officers lead the troops">> <<set $leadingTroops = "citizen">> diff --git a/src/Mods/SecExp/buildings/propagandaHub.tw b/src/Mods/SecExp/buildings/propagandaHub.tw index da3f9f36680..dcdfa4c780e 100644 --- a/src/Mods/SecExp/buildings/propagandaHub.tw +++ b/src/Mods/SecExp/buildings/propagandaHub.tw @@ -26,6 +26,7 @@ The propaganda hub is a surprisingly inconspicuous building, dimly lit from the <<set $SecExp.buildings.propHub.recruiterOffice = 0>> <</link>> <</if>> + <br>//Providing them with an office will help boost your chosen campaign. This also stacks with the campaign boost edict.// <</if>> /* classic propaganda */ <br><br><<if $SecExp.buildings.propHub.campaign == 0>> @@ -62,7 +63,7 @@ The propaganda hub is a surprisingly inconspicuous building, dimly lit from the <<set $SecExp.buildings.propHub.focus = "enslavement">> <</link>> <</if>> - <<if $militiaFounded == 1>> + <<if $SecExp.edicts.defense.militia >= 1>> | <<if $SecExp.buildings.propHub.focus == "recruitment">> recruitment diff --git a/src/Mods/SecExp/buildings/secBarracks.tw b/src/Mods/SecExp/buildings/secBarracks.tw index b8708f81082..4aace71bced 100644 --- a/src/Mods/SecExp/buildings/secBarracks.tw +++ b/src/Mods/SecExp/buildings/secBarracks.tw @@ -132,7 +132,7 @@ Your current maximum number of units is <<print App.SecExp.battle.maxUnits()>> ( <<if $arcologyUpgrade.drones === 0>> You have not yet installed a drone security system in your arcology, you will not be able to form a unit of drones. <</if>> -<<if $militiaFounded === 0>> +<<if $SecExp.edicts.defense.militia === 0>> <br>You have not yet founded the militia, you will not be able to form citizens units. <</if>> <<if $mercenaries === 0>> @@ -142,7 +142,7 @@ Your current maximum number of units is <<print App.SecExp.battle.maxUnits()>> ( <<if $arcologyUpgrade.drones == 1>> <button class="tabLinks" onclick="App.UI.tabBar.openTab(event, 'Bots')" id="tab Bots">Security Drones</button> <</if>> - <<if $militiaFounded == 1>> + <<if $SecExp.edicts.defense.militia >= 1>> <button class="tabLinks" onclick="App.UI.tabBar.openTab(event, 'Militia')" id="tab Militia">Militia: ($militiaUnits.length)</button> <</if>> <<if $mercenaries >= 1>> @@ -292,13 +292,13 @@ Your current maximum number of units is <<print App.SecExp.battle.maxUnits()>> ( <div id="Militia" class="tabContent"> <div class="content"> You founded the $arcologies[0].name free militia. You are now able to organize your citizens into fighting units. - <<if $recruitVolunteers == 1>> + <<if $SecExp.edicts.defense.militia === 2>> The militia is composed entirely of volunteers, your manpower is approximately 1.5% of the citizens population of your arcology. - <<elseif $conscription == 1>> + <<elseif $SecExp.edicts.defense.militia === 3>> With the establishment of conscription, your available manpower has increased to now approximately 3% of the arcology's citizens population. - <<elseif $militaryService == 1>> + <<elseif $SecExp.edicts.defense.militia === 4>> By establishing obligatory military service to obtain citizenship you have enlarged your manpower pool to be approximately 5% of the arcology's citizens population. - <<elseif $militarizedSociety == 1>> + <<elseif $SecExp.edicts.defense.militia === 5>> With the adoption of a militarized society, your available manpower has swelled to be approximately 15% of the arcology's citizens population. <</if>> Your current total manpower is <<print num(App.SecExp.Manpower.totalMilitia)>>, of which <<print num(App.SecExp.Manpower.employedMilitia)>> is in active duty. You lost in total <<print num($militiaTotalCasualties)>> citizens, leaving you with <<print num($militiaFreeManpower)>> available citizens. diff --git a/src/Mods/SecExp/edicts.tw b/src/Mods/SecExp/edicts.tw index b02a9d74928..072a8a20467 100644 --- a/src/Mods/SecExp/edicts.tw +++ b/src/Mods/SecExp/edicts.tw @@ -2,435 +2,333 @@ <<set $nextButton = "Back", $nextLink = "Main">> -<div class="center"> -''__Active Edicts__'' -</div> -<<if $SecExp.edicts.alternativeRents == 1>> - <br>''Alternative rent payment:'' you are allowing citizens to pay for their rents in menial slaves rather than cash. - [[Repeal|edicts][$SecExp.edicts.alternativeRents = 0]] -<</if>> - -<<if $SecExp.edicts.enslavementRights == 1>> - <br>''Enslavement rights:'' you are the only authority able to declare a person enslaved or not. - [[Repeal|edicts][$SecExp.edicts.enslavementRights = 0]] -<</if>> - -<<if $SecExp.edicts.sellData == 1>> - <br>''Private Data marketization:'' you are selling private citizens' data to the best bidder. - [[Repeal|edicts][$SecExp.edicts.sellData = 0]] -<</if>> - -<<if $SecExp.edicts.propCampaignBoost == 1>> - <br>''Obligatory educational material:'' you are forcing residents to read curated educational material about the arcology. - [[Repeal|edicts][$SecExp.edicts.propCampaignBoost = 0]] -<</if>> - -<<if $SecExp.edicts.tradeLegalAid == 1>> - <br>''Legal aid for new businesses:'' New businesses can rely on your help for legal expenses and issues. - [[Repeal|edicts][$SecExp.edicts.tradeLegalAid = 0]] -<</if>> - -<<if $SecExp.edicts.taxTrade == 1>> - <br>''Trade tariffs:'' all goods transitioning in your arcology have to pay a transition fee. - [[Repeal|edicts][$SecExp.edicts.taxTrade = 0]] -<</if>> - -<<if $SecExp.edicts.slaveWatch == 1>> - <br>''@@.lime;Slave mistreatment watch:@@'' slaves are able access a special security service in case of mistreatment. - [[Repeal|edicts][$SecExp.edicts.slaveWatch = 0]] -<</if>> - -<<if $SecExp.edicts.subsidyChurch == 1>> - <br>''@@.lime;Religious activities subsidy:@@'' you are providing economic support to religious activities following the official dogma. - [[Repeal|edicts][$SecExp.edicts.subsidyChurch = 0]] -<</if>> - -<<if $SF.Toggle && $SF.Active >= 1 && $SecExp.edicts.SFSupportLevel > 0>> - <br><br>__Special Force:__ - <<if $SecExp.edicts.SFSupportLevel === 1>> - <br>''Equipment provision:'' <<= App.SF.Caps()>> is providing the security HQ with advanced equipment, boosting its efficiency. - [[Repeal|edicts][$SecExp.edicts.SFSupportLevel--]] - <<elseif $SecExp.edicts.SFSupportLevel === 2>> - <br>''Personnel training:'' <<= App.SF.Caps()>> is currently providing advanced equipment and training to security HQ personnel. - [[Repeal|edicts][$SecExp.edicts.SFSupportLevel--]] - <<elseif $SecExp.edicts.SFSupportLevel === 3>> - <br>''Troops detachment:'' <<= App.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][$SecExp.edicts.SFSupportLevel--]] - <<elseif $SecExp.edicts.SFSupportLevel === 4>> - <br>''Full support:'' <<= App.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][$SecExp.edicts.SFSupportLevel--]] - <<elseif $SecExp.edicts.SFSupportLevel === 5>> - <br>''Network assistance:'' <<= App.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][$SecExp.edicts.SFSupportLevel--]] - <</if>> -<</if>> - -<<if $SecExp.edicts.limitImmigration == 1 || $SecExp.edicts.openBorders == 1>> - <br><br>__Immigration:__ - - <<if $SecExp.edicts.limitImmigration == 1>> - <br>''Immigration limits:'' you put strict limits to the amount of people the arcology can accept each week. - [[Repeal|edicts][$SecExp.edicts.limitImmigration = 0]] - <</if>> - - <<if $SecExp.edicts.openBorders == 1>> - <br>''Open borders:'' you have lowered considerably the requirements to become citizens. - [[Repeal|edicts][$SecExp.edicts.openBorders = 0]] - <</if>> -<</if>> - -<br><br>__Weapons:__ - -<<if $SecExp.edicts.weaponsLaw == 0>> - <br>''Forbid weapons inside the arcology:'' residents are forbidden to buy, sell and keep weaponry while within the arcology. - [[Repeal|edicts][$SecExp.edicts.weaponsLaw = 3]] -<<elseif $SecExp.edicts.weaponsLaw == 2>> - <br>''Heavy weaponry forbidden:'' residents are allowed to buy, sell and keep weapons within the arcology as long as they are non-heavy, non-explosive. - [[Repeal|edicts][$SecExp.edicts.weaponsLaw = 3]] -<<elseif $SecExp.edicts.weaponsLaw == 1>> - <br>''Heavily restricted weaponry:'' residents are allowed to buy, sell and keep weapons within the arcology as long as they are non-automatic, non-high caliber. - [[Repeal|edicts][$SecExp.edicts.weaponsLaw = 3]] -<<else>> - <br>''All weapons allowed:'' residents are allowed to buy, sell and keep all kind of weapons in the arcology. +//Passing any edict will cost <<print cashFormat(5000)>> and some authority. More edicts will become available as the arcology develops.// +<<run App.UI.tabBar.handlePreSelectedTab($tabChoice.edicts)>> +<br> +<button class="tabLinks" onclick="App.UI.tabBar.openTab(event, 'Society')" id="tab Society">Society</button> +<<if $battlesCount > 0 || $rebellionsCount > 0 || $mercenaries > 0>> + <button class="tabLinks" onclick="App.UI.tabBar.openTab(event, 'Military')" id="tab Military">Military</button> <</if>> -<<if $battlesCount > 0 || $rebellionsCount > 0>> - <br><br>__Defense Force:__ - <<if $SecExp.edicts.defense.soldierWages == 0>> - <br>''Low wages for soldiers:'' wages for soldiers are set to a low level compared to market standards. - [[Repeal|edicts][$SecExp.edicts.defense.soldierWages = 1]] - <<elseif $SecExp.edicts.defense.soldierWages == 1>> - <br>''Average wages for soldiers:'' wages for soldiers are set to the market standards. +<div id="Society" class="tabContent"> + <div class="content"> + <<if $SecExp.edicts.alternativeRents == 1>> + <br>''Alternative rent payment:'' you are allowing citizens to pay for their rents in menial slaves rather than cash. + [[Repeal|edicts][$SecExp.edicts.alternativeRents = 0]] <<else>> - <br>''High wages for soldiers:'' wages for soldiers are set to a high level compared to market standards. - [[Repeal|edicts][$SecExp.edicts.defense.soldierWages = 1]] - <</if>> - - <<if $SecExp.edicts.defense.slavesOfficers == 1>> - <br>''Slave Officers:'' your trusted slaves are allowed to lead the defense forces of the arcology. - [[Repeal|edicts][$SecExp.edicts.defense.slavesOfficers = 0]] - <</if>> - - <<if $mercenaries > 0>> - <<if $SecExp.edicts.defense.discountMercenaries == 1>> - <br>''Mercenary subsidy:'' mercenaries willing to immigrate in your arcology will be offered a discount on rent. - [[Repeal|edicts][$SecExp.edicts.defense.discountMercenaries = 0]] + <br>''Alternative rent payment:'' allow citizens to pay for their rents in menial slaves rather than cash, if so they wish. + <<if $SecExp.core.authority >= 1000>> + [[Implement|edicts][$SecExp.edicts.alternativeRents = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + <<else>> + <br>//Not enough Authority.// <</if>> + <br> //Will decrease rents, but will supply a small amount of menial slaves each week.// <</if>> - <<if $militiaFounded == 1>> - <<if $conscription == 1>> - <br>''Conscription:'' every citizen is required to train in the militia and serve the arcology for a limited amount of time. - [[Repeal|edicts][$conscription = 0, $recruitVolunteers = 1]] - <</if>> - <<if $militaryService == 1>> - <br>''Obligatory military service:'' every citizen is required to register and serve under the militia. - [[Repeal|edicts][$militaryService = 0, $recruitVolunteers = 1]] - <</if>> - <<if $militarizedSociety == 1>> - <br>''Militarized Society:'' every adult citizen is required to train and actively participate in the military of the arcology. - [[Repeal|edicts][$militarizedSociety = 0, $recruitVolunteers = 1]] + <<if $SecExp.edicts.enslavementRights == 1>> + <br>''Enslavement rights:'' you are the only authority able to declare a person enslaved or not. + [[Repeal|edicts][$SecExp.edicts.enslavementRights = 0]] + <<else>> + <br>''Enslavement rights:'' the arcology owner will be the only authority able to declare a person enslaved or not. + <<if $SecExp.core.authority >= 1000>> + [[Implement|edicts][$SecExp.edicts.enslavementRights = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + <<else>> + <br>//Not enough Authority.// <</if>> + <br> //Will provide cash each week. The higher the flux of citizens to slaves the higher the income. Will cost a small amount of authority each week.// + <</if>> - <<if $SecExp.edicts.defense.militaryExemption == 1>> - <br>''Military exemption:'' you allow citizens to avoid military duty by paying a weekly fee. - [[Repeal|edicts][$SecExp.edicts.defense.militaryExemption = 0]] + <<if $SecExp.edicts.sellData === 1>> + <br>''Private Data marketization:'' you are selling private citizens' data to the best bidder. + [[Repeal|edicts][$SecExp.edicts.sellData = 0]] + <<elseif $SecExp.edicts.sellData === 0 && ($secUpgrades.nanoCams || $secUpgrades.cyberBots || $secUpgrades.eyeScan || $secUpgrades.cryptoAnalyzer || $crimeUpgrades.autoTrial || $crimeUpgrades.autoArchive || $crimeUpgrades.worldProfiler || $crimeUpgrades.advForensic)>> + <br>''Private Data marketization:'' allow the selling of private citizens' data. + <<if $SecExp.core.authority >= 1000>> + [[Implement|edicts][$SecExp.edicts.sellData = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + <<else>> + <br>//Not enough Authority.// <</if>> + <br> //Will generate income dependent on the amount of upgrades installed in the security HQ, but will cost a small amount of authority each week.// + <</if>> - <<if $SecExp.edicts.defense.lowerRequirements == 1>> - <br>''@@.lime;Revised minimum requirements:@@'' you allow citizens outside the normally accepted range to join the militia. - [[Repeal|edicts][$SecExp.edicts.defense.lowerRequirements = 0]] + <<if $SecExp.buildings.propHub.active == 1>> + <<if $SecExp.edicts.propCampaignBoost == 1>> + <br>''Obligatory educational material:'' you are forcing residents to read curated educational material about the arcology. + [[Repeal|edicts][$SecExp.edicts.propCampaignBoost = 0]] + <<else>> + <br>''Obligatory educational material:'' force residents to read curated educational material about the arcology. + <<if $SecExp.core.authority >= 1000>> + [[Implement|edicts][$SecExp.edicts.propCampaignBoost = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + <<else>> + <br>//Not enough Authority.// + <</if>> + <br> //Will increase the effectiveness of propaganda campaigns, but will incur upkeep costs.// <</if>> + <</if>> - <<if $SecExp.edicts.defense.noSubhumansInArmy == 1>> - <br>''@@.lime;No subhumans in the militia:@@'' it is forbidden for subhumans to join the militia. - [[Repeal|edicts][$SecExp.edicts.defense.noSubhumansInArmy = 0]] + <<if $transportHub == 1>> + <<if $SecExp.edicts.tradeLegalAid == 1>> + <br>''Legal aid for new businesses:'' New businesses can rely on your help for legal expenses and issues. + [[Repeal|edicts][$SecExp.edicts.tradeLegalAid = 0]] + <<else>> + <br>''Legal aid for new businesses:'' Support new businesses in the arcology by helping them cover legal costs and issues. + <<if $SecExp.core.authority >= 1000>> + [[Implement|edicts][$SecExp.edicts.tradeLegalAid = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + <<else>> + <br>//Not enough Authority.// + <</if>> + <br> //Will increase trade, but will incur upkeep costs.// <</if>> - - <<if $SecExp.edicts.defense.pregExemption == 1>> - <br>''@@.lime;Military exemption for pregnancies:@@'' pregnant citizens are allowed, and encouraged, to avoid military service. - [[Repeal|edicts][$SecExp.edicts.defense.pregExemption = 0]] + <<if $SecExp.edicts.taxTrade == 1>> + <br>''Trade tariffs:'' all goods transitioning in your arcology have to pay a transition fee. + [[Repeal|edicts][$SecExp.edicts.taxTrade = 0]] + <<else>> + <br>''Trade tariffs:'' all goods transitioning in your arcology will have to pay a transition fee. + <<if $SecExp.core.authority >= 1000>> + [[Implement|edicts][$SecExp.edicts.taxTrade = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + <<else>> + <br>//Not enough Authority.// + <</if>> + <br> //Will provide income based on trade level, but will negatively affect trade.// <</if>> <</if>> - <<if $SecExp.edicts.defense.privilege.militiaSoldier == 1>> - <br>''Special militia privileges:'' citizens joining the militia are exempt from rent payment. - [[Repeal|edicts][$SecExp.edicts.defense.privilege.militiaSoldier = 0]] - <</if>> - - <<if $SecExp.edicts.defense.privilege.slaveSoldier == 1>> - <br>''Special slaves privileges:'' Slaves into the army are allowed to have material possessions. - [[Repeal|edicts][$SecExp.edicts.defense.privilege.slaveSoldier = 0]] - <</if>> - - <<if $SecExp.edicts.defense.privilege.mercSoldier == 1>> - <br>''Special mercenary privileges:'' Mercenaries under contract can claim part of the loot gained from battles. - [[Repeal|edicts][$SecExp.edicts.defense.privilege.mercSoldier = 0]] - <</if>> - - <<if $SecExp.edicts.defense.martialSchool == 1>> - <br>''@@.lime;Slave martial schools:@@'' specialized schools are training slaves in martial arts and bodyguarding. - [[Repeal|edicts][$SecExp.edicts.defense.martialSchool = 0]] - <</if>> - - <<if $SecExp.edicts.defense.eliteOfficers == 1>> - <br>''@@.lime;Elite officers:@@'' officers are exclusively recruited from the elite of society. - [[Repeal|edicts][$SecExp.edicts.defense.eliteOfficers = 0]] - <</if>> - - <<if $SecExp.edicts.defense.liveTargets == 1>> - <br>''@@.lime;Live targets drills:@@'' disobedient slaves are used as live targets at shooting ranges. - [[Repeal|edicts][$SecExp.edicts.defense.liveTargets = 0]] - <</if>> -<</if>> - -<<if $FSAnnounced>> - <<if $SecExp.edicts.defense.legionTradition == 1>> - <br>''@@.lime;Legionaries traditions:@@'' you are funding specialized training for your recruits following the Roman tradition of professional armies. - [[Repeal|edicts][$SecExp.edicts.defense.legionTradition = 0]] - <</if>> - - <<if $SecExp.edicts.defense.pharaonTradition == 1>> - <br>''@@.lime;Pharaonic traditions:@@'' you are funding specialized training for your recruits to turn them into an army worthy of a pharaon. - [[Repeal|edicts][$SecExp.edicts.defense.pharaonTradition = 0]] - <</if>> - - <<if $SecExp.edicts.defense.eagleWarriors == 1>> - <br>''@@.lime;Eagle warriors traditions:@@'' you are funding specialized training for your mercenaries following the Aztec tradition of elite warriors. - [[Repeal|edicts][$SecExp.edicts.defense.eagleWarriors = 0]] - <</if>> - - <<if $SecExp.edicts.defense.ronin == 1>> - <br>''@@.lime;Ronin traditions:@@'' you are funding specialized training for your mercenaries following the Japanese tradition of elite errant samurai. - [[Repeal|edicts][$SecExp.edicts.defense.ronin = 0]] - <</if>> - - <<if $SecExp.edicts.defense.mamluks == 1>> - <br>''@@.lime;Mamluks traditions:@@'' you are funding specialized training for your slaves following the Arabian tradition of mamluks slave soldiers. - [[Repeal|edicts][$SecExp.edicts.defense.mamluks = 0]] - <</if>> - - <<if $SecExp.edicts.defense.sunTzu == 1>> - <br>''@@.lime;Sun Tzu Teachings:@@'' you are funding specialized training for your units and officers to follow the teachings of the "Art of War". - [[Repeal|edicts][$SecExp.edicts.defense.sunTzu = 0]] - <</if>> -<</if>> - -<br> -<br> -<hr> - -<div class="center"> -''__Available Edicts__'' -<br>//Passing any edict will cost <<print cashFormat(5000)>> and some authority. More edicts will become available as the arcology develops.// -</div> -<<if $SecExp.edicts.alternativeRents == 0>> - <br>''Alternative rent payment:'' allow citizens to pay for their rents in menial slaves rather than cash, if so they wish. - <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.alternativeRents = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] - <<else>> - <br>//Not enough Authority.// - <</if>> - <br> //Will decrease rents, but will supply a small amount of menial slaves each week.// -<</if>> - -<<if $SecExp.edicts.enslavementRights == 0>> - <br>''Enslavement rights:'' the arcology owner will be the only authority able to declare a person enslaved or not. - <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.enslavementRights = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] - <<else>> - <br>//Not enough Authority.// - <</if>> - <br> //Will provide cash each week. The higher the flux of citizens to slaves the higher the income. Will cost a small amount of authority each week.// -<</if>> - -<<if $SecExp.edicts.sellData == 0 && ($secUpgrades.nanoCams == 1 || $secUpgrades.cyberBots == 1 || $secUpgrades.eyeScan == 1 || $secUpgrades.cryptoAnalyzer == 1 || $crimeUpgrades.autoTrial == 1 || $crimeUpgrades.autoArchive == 1 || $crimeUpgrades.worldProfiler == 1 || $crimeUpgrades.advForensic == 1)>> - <br>''Private Data marketization:'' allow the selling of private citizens' data. - <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.sellData = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] - <<else>> - <br>//Not enough Authority.// - <</if>> - <br> //Will generate income dependent on the amount of upgrades installed in the security HQ, but will cost a small amount of authority each week.// -<</if>> - -<<if $SecExp.buildings.propHub.active == 1>> - <<if $SecExp.edicts.propCampaignBoost == 0>> - <br>''Obligatory educational material:'' force residents to read curated educational material about the arcology. - <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.propCampaignBoost = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + <<if $arcologies[0].FSPaternalist != "unset">> + <<if $SecExp.edicts.slaveWatch == 1>> + <br>''@@.lime;Slave mistreatment watch:@@'' slaves are able access a special security service in case of mistreatment. + [[Repeal|edicts][$SecExp.edicts.slaveWatch = 0]] <<else>> - <br>//Not enough Authority.// + <br>''@@.lime;Slave mistreatment watch:@@'' slaves will be able access a special security service in case of mistreatment. + <<if $SecExp.core.authority >= 1000>> + [[Implement|edicts][$SecExp.edicts.slaveWatch = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + <<else>> + <br>//Not enough Authority.// + <</if>> + <br> //Will help advance paternalism, but will incur upkeep costs.// <</if>> - <br> //Will increase the effectiveness of propaganda campaigns, but will incur upkeep costs.// <</if>> -<</if>> -<<if $transportHub == 1>> - <<if $SecExp.edicts.tradeLegalAid == 0>> - <br>''Legal aid for new businesses:'' Support new businesses in the arcology by helping them cover legal costs and issues. - <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.tradeLegalAid = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + <<if $arcologies[0].FSChattelReligionist >= 40>> + <<if $SecExp.edicts.subsidyChurch == 1>> + <br>''@@.lime;Religious activities subsidy:@@'' you are providing economic support to religious activities following the official dogma. + [[Repeal|edicts][$SecExp.edicts.subsidyChurch = 0]] <<else>> - <br>//Not enough Authority.// + <br>''@@.lime;Religious activities subsidy:@@'' will provide economic support to religious activities following the official dogma. + <<if $SecExp.core.authority >= 1000>> + [[Implement|edicts][$SecExp.edicts.subsidyChurch = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + <<else>> + <br>//Not enough Authority.// + <</if>> + <br> //Will provide authority each week, but will incur upkeep costs.// <</if>> - <br> //Will increase trade, but will incur upkeep costs.// <</if>> - <<if $SecExp.edicts.taxTrade == 0>> - <br>''Trade tariffs:'' all goods transitioning in your arcology will have to pay a transition fee. + + <br><br>__Immigration:__ + <<if $SecExp.edicts.limitImmigration == 1>> + <br>''Immigration limits:'' you put strict limits to the amount of people the arcology can accept each week. + [[Repeal|edicts][$SecExp.edicts.limitImmigration = 0]] + <<else>> + <br>''Immigration limits:'' institute limits to the amount of people the arcology will accept each week. <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.taxTrade = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + [[Implement|edicts][$SecExp.edicts.openBorders = 0, $SecExp.edicts.limitImmigration = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] <<else>> <br>//Not enough Authority.// <</if>> - <br> //Will provide income based on trade level, but will negatively affect trade.// + <br> //Will lower the amount of people immigrating into the arcology and enhance security.// <</if>> -<</if>> -<<if $arcologies[0].FSPaternalist != "unset">> - <<if $SecExp.edicts.slaveWatch == 0>> - <br>''@@.lime;Slave mistreatment watch:@@'' slaves will be able access a special security service in case of mistreatment. + <<if $SecExp.edicts.openBorders == 1>> + <br>''Open borders:'' you have lowered considerably the requirements to become citizens. + [[Repeal|edicts][$SecExp.edicts.openBorders = 0]] + <<else>> + <br>''Open borders:'' considerably lower requirements to become citizens. <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.slaveWatch = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + [[Implement|edicts][$SecExp.edicts.openBorders = 1, $SecExp.edicts.limitImmigration = 0, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] <<else>> <br>//Not enough Authority.// <</if>> - <br> //Will help advance paternalism, but will incur upkeep costs.// + <br> //Will increase immigration to the arcology, but will increase crime.// <</if>> -<</if>> -<<if $arcologies[0].FSChattelReligionist >= 40>> - <<if $SecExp.edicts.subsidyChurch == 0>> - <br>''@@.lime;Religious activities subsidy:@@'' will provide economic support to religious activities following the official dogma. + <br><br>__Weapons:__ + <<if $SecExp.edicts.weaponsLaw == 0>> + <br>''Forbid weapons inside the arcology:'' residents are forbidden to buy, sell and keep weaponry while within the arcology. + [[Repeal|edicts][$SecExp.edicts.weaponsLaw = 3]] + <<elseif $SecExp.edicts.weaponsLaw == 2>> + <br>''Heavy weaponry forbidden:'' residents are allowed to buy, sell and keep weapons within the arcology as long as they are non-heavy, non-explosive. + [[Repeal|edicts][$SecExp.edicts.weaponsLaw = 3]] + <<elseif $SecExp.edicts.weaponsLaw == 1>> + <br>''Heavily restricted weaponry:'' residents are allowed to buy, sell and keep weapons within the arcology as long as they are non-automatic, non-high caliber. + [[Repeal|edicts][$SecExp.edicts.weaponsLaw = 3]] + <<else>> + <br>''All weapons allowed:'' residents are allowed to buy, sell and keep all kind of weapons in the arcology. + <</if>> + + <<if $SecExp.edicts.weaponsLaw == 3>> + <br>''Heavy weaponry forbidden:'' set the range of weapons allowed within the arcology to non-heavy, non-explosive. <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.subsidyChurch = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + [[Implement|edicts][$SecExp.edicts.weaponsLaw = 2, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] <<else>> <br>//Not enough Authority.// <</if>> - <br> //Will provide authority each week, but will incur upkeep costs.// - <</if>> -<</if>> - -<<if $SF.Toggle && $SF.Active >= 1 && $SecExp.edicts.SFSupportLevel < 5>> - <br><br>__Special Force:__ - <<if !$SecExp.edicts.SFSupportLevel && App.SecExp.Check.reqMenials() > 5>> - <br>''Equipment provision:'' <<= App.SF.Caps()>> will provide the security HQ with advanced equipment. + <br> //Will slightly increase prosperity, but will cost a small amount of authority each week and will leave rebellions decently armed.// + <<elseif $SecExp.edicts.weaponsLaw == 2>> + <br>''All weapons allowed:'' allow residents of the arcology to buy, sell and keep weaponry of any kind within the arcology. <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.SFSupportLevel++, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + [[Implement|edicts][$SecExp.edicts.weaponsLaw = 3, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] <<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 $SecExp.edicts.SFSupportLevel && $SF.Squad.Firebase >= 4 && App.SecExp.Check.reqMenials() > 5>> - <br>''Personnel training:'' <<= App.SF.Caps()>> will provide the security HQ personnel with advanced training. + <br> //Will slightly increase prosperity and provide a small weekly amount of reputation, but rebellions will be very well armed.// + <br>''Heavily restricted weaponry:'' set the range of weapons allowed within the arcology to non-automatic, non-high caliber. <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.SFSupportLevel++, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + [[Implement|edicts][$SecExp.edicts.weaponsLaw = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] <<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 $SecExp.edicts.SFSupportLevel === 2 && $SF.Squad.Firebase >= 6 && App.SecExp.Check.reqMenials() > 5>> - <br>''Troops detachment:'' <<= App.SF.Caps()>> will provide troops to the security department. + <br> //Will cost some authority each week, but rebellions will be poorly armed.// + <<elseif $SecExp.edicts.weaponsLaw == 1>> + <br>''Heavy weaponry forbidden:'' set the range of weapons allowed within the arcology to non-heavy, non-explosive. <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.SFSupportLevel++, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + [[Implement|edicts][$SecExp.edicts.weaponsLaw = 2, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] <<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 $SecExp.edicts.SFSupportLevel === 3 && $SF.Squad.Firebase >= 6 && App.SecExp.Check.reqMenials() > 5>> - <br>''Full Support:'' <<= App.SF.Caps()>> will give the security department its full support. + <br> //Will slightly increase prosperity, but will cost a small amount of authority each week and will leave rebellions decently armed.// + <br>''Forbid weapons inside the arcology:'' forbid residents to buy, sell and keep weaponry while within the arcology. <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.SFSupportLevel++, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + [[Implement|edicts][$SecExp.edicts.weaponsLaw = 0, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] <<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 $SecExp.edicts.SFSupportLevel === 4 && $SF.Squad.Firebase === 10 && App.SecExp.Check.reqMenials() > 5>> - <br>''Network assistance:'' <<= App.SF.Caps()>> will assist the security department with installing a local version of their custom network. + <br> //Will cost a moderate amount of authority each week, but rebellions will be very poorly armed.// + <<elseif $SecExp.edicts.weaponsLaw == 0>> + <br>''Heavily restricted weaponry:'' set the range of weapons allowed within the arcology to non-automatic, non-high caliber. <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.SFSupportLevel++, cashX(-50000, "edicts"), $SecExp.core.authority -= 1000]] + [[Implement|edicts][$SecExp.edicts.weaponsLaw = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] <<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.// - <</if>> -<</if>> + <br> //Will cost some authority each week, but rebellions will be poorly armed.// + <</if>> + + <<if $FSAnnounced>> + <br><br>__Future Societies:__ + <<if $SecExp.edicts.defense.legionTradition === 1>> + <br>''@@.lime;Legionaries traditions:@@'' you are funding specialized training for your recruits following the Roman tradition of professional armies. + [[Repeal|edicts][$SecExp.edicts.defense.legionTradition = 0]] + <</if>> + <<if $SecExp.edicts.defense.pharaonTradition === 1>> + <br>''@@.lime;Pharaonic traditions:@@'' you are funding specialized training for your recruits to turn them into an army worthy of a pharaon. + [[Repeal|edicts][$SecExp.edicts.defense.pharaonTradition = 0]] + <</if>> + <<if $SecExp.edicts.defense.militia >= 1>> + <<if $arcologies[0].FSRomanRevivalist >= 40>> + <<if $SecExp.edicts.defense.legionTradition === 0>> + <br>''@@.lime;Legionaries traditions:@@'' Fund specialized training for your recruits to turn them into the professional of Roman tradition. + <<if $SecExp.core.authority >= 1000>> + [[Implement|edicts][$SecExp.edicts.defense.legionTradition = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + <<else>> + <br>//Not enough Authority.// + <</if>> + <br> //Will increase defense, morale and hp of militia units, but will incur upkeep costs.// + <</if>> + <</if>> + <<if $arcologies[0].FSEgyptianRevivalist >= 40>> + <<if $SecExp.edicts.defense.pharaonTradition === 0>> + <br>''@@.lime;Pharaonic traditions:@@'' Fund specialized training for your recruits to turn them into an army worthy of a pharaoh. + <<if $SecExp.core.authority >= 1000>> + [[Implement|edicts][$SecExp.edicts.defense.pharaonTradition = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + <<else>> + <br>//Not enough Authority.// + <</if>> + <br> //Will increase attack, defense and morale of militia units, but will incur upkeep costs.// + <</if>> + <</if>> + <</if>> -<br><br>__Immigration:__ + <<if $SecExp.edicts.defense.eagleWarriors === 1>> + <br>''@@.lime;Eagle warriors traditions:@@'' you are funding specialized training for your mercenaries following the Aztec tradition of elite warriors. + [[Repeal|edicts][$SecExp.edicts.defense.eagleWarriors = 0]] + <</if>> -<<if $SecExp.edicts.limitImmigration == 0>> - <br>''Immigration limits:'' institute limits to the amount of people the arcology will accept each week. - <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.openBorders = 0, $SecExp.edicts.limitImmigration = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] - <<else>> - <br>//Not enough Authority.// - <</if>> - <br> //Will lower the amount of people immigrating into the arcology and enhance security.// -<</if>> + <<if $SecExp.edicts.defense.ronin === 1>> + <br>''@@.lime;Ronin traditions:@@'' you are funding specialized training for your mercenaries following the Japanese tradition of elite errant samurai. + [[Repeal|edicts][$SecExp.edicts.defense.ronin = 0]] + <</if>> + <<if $mercenaries > 0>> + <<if $arcologies[0].FSAztecRevivalist >= 40>> + <<if $SecExp.edicts.defense.eagleWarriors === 0>> + <br>''@@.lime;Eagle warriors traditions:@@'' Fund specialized training for your mercenaries to turn them into the elite units of Aztec tradition. + <<if $SecExp.core.authority >= 1000>> + [[Implement|edicts][$SecExp.edicts.defense.eagleWarriors = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + <<else>> + <br>//Not enough Authority.// + <</if>> + <br> //Will give a high increase in attack and morale, but will lower defense of mercenary units and will incur upkeep costs.// + <</if>> + <</if>> + <<if $arcologies[0].FSEdoRevivalist >= 40>> + <<if $SecExp.edicts.defense.ronin === 0>> + <br>''@@.lime;Ronin traditions:@@'' Fund specialized training for your mercenaries to turn them into the errant samurai of Japanese tradition. + <<if $SecExp.core.authority >= 1000>> + [[Implement|edicts][$SecExp.edicts.defense.ronin = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + <<else>> + <br>//Not enough Authority.// + <</if>> + <br> //Will increase attack, defense and morale of mercenary units, but will incur upkeep costs.// + <</if>> + <</if>> + <</if>> -<<if $SecExp.edicts.openBorders == 0>> - <br>''Open borders:'' considerably lower requirements to become citizens. - <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.openBorders = 1, $SecExp.edicts.limitImmigration = 0, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] - <<else>> - <br>//Not enough Authority.// - <</if>> - <br> //Will increase immigration to the arcology, but will increase crime.// -<</if>> + <<if $SecExp.edicts.defense.mamluks === 1>> + <br>''@@.lime;Mamluks traditions:@@'' you are funding specialized training for your slaves following the Arabian tradition of mamluks slave soldiers. + [[Repeal|edicts][$SecExp.edicts.defense.mamluks = 0]] + <</if>> -<br><br>__Weapons:__ -<<if $SecExp.edicts.weaponsLaw == 3>> - <br>''Heavy weaponry forbidden:'' set the range of weapons allowed within the arcology to non-heavy, non-explosive. - <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.weaponsLaw = 2, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] - <<else>> - <br>//Not enough Authority.// - <</if>> - <br> //Will slightly increase prosperity, but will cost a small amount of authority each week and will leave rebellions decently armed.// -<<elseif $SecExp.edicts.weaponsLaw == 2>> - <br>''All weapons allowed:'' allow residents of the arcology to buy, sell and keep weaponry of any kind within the arcology. - <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.weaponsLaw = 3, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] - <<else>> - <br>//Not enough Authority.// - <</if>> - <br> //Will slightly increase prosperity and provide a small weekly amount of reputation, but rebellions will be very well armed.// - <br>''Heavily restricted weaponry:'' set the range of weapons allowed within the arcology to non-automatic, non-high caliber. - <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.weaponsLaw = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] - <<else>> - <br>//Not enough Authority.// - <</if>> - <br> //Will cost some authority each week, but rebellions will be poorly armed.// -<<elseif $SecExp.edicts.weaponsLaw == 1>> - <br>''Heavy weaponry forbidden:'' set the range of weapons allowed within the arcology to non-heavy, non-explosive. - <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.weaponsLaw = 2, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] - <<else>> - <br>//Not enough Authority.// - <</if>> - <br> //Will slightly increase prosperity, but will cost a small amount of authority each week and will leave rebellions decently armed.// - <br>''Forbid weapons inside the arcology:'' forbid residents to buy, sell and keep weaponry while within the arcology. - <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.weaponsLaw = 0, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] - <<else>> - <br>//Not enough Authority.// + <<if $SecExp.edicts.defense.sunTzu === 1>> + <br>''@@.lime;Sun Tzu Teachings:@@'' you are funding specialized training for your units and officers to follow the teachings of the "Art of War". + [[Repeal|edicts][$SecExp.edicts.defense.sunTzu = 0]] + <</if>> + <<if $arcologies[0].FSArabianRevivalist >= 40>> + <<if $SecExp.edicts.defense.mamluks === 0>> + <br>''@@.lime;Mamluks traditions:@@'' Fund specialized training for your slaves to turn them into the mamluks slave soldiers of Arabian tradition. + <<if $SecExp.core.authority >= 1000>> + [[Implement|edicts][$SecExp.edicts.defense.mamluks = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + <<else>> + <br>//Not enough Authority.// + <</if>> + <br> //Will increase attack, morale and hp of slave units, but will incur upkeep costs.// + <</if>> + <</if>> + <<if $arcologies[0].FSChineseRevivalist >= 40>> + <<if $SecExp.edicts.defense.sunTzu === 0>> + <br>''@@.lime;Sun Tzu Teachings:@@'' Fund specialized training for your units and officers to conform your army to the teachings of the "Art of War". + <<if $SecExp.core.authority >= 1000>> + [[Implement|edicts][$SecExp.edicts.defense.sunTzu = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + <<else>> + <br>//Not enough Authority.// + <</if>> + <br> //Will slightly increase attack, defense and morale of all units, but will incur upkeep costs.// + <</if>> + <</if>> <</if>> - <br> //Will cost a moderate amount of authority each week, but rebellions will be very poorly armed.// -<<elseif $SecExp.edicts.weaponsLaw == 0>> - <br>''Heavily restricted weaponry:'' set the range of weapons allowed within the arcology to non-automatic, non-high caliber. - <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.weaponsLaw = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + </div> +</div> + +<div id="Military" class="tabContent"> + <div class="content"> + <<if $SecExp.edicts.defense.soldierWages === 0>> + <br>''Low wages for soldiers:'' wages for soldiers are set to a low level compared to market standards. + [[Repeal|edicts][$SecExp.edicts.defense.soldierWages = 1]] + <<elseif $SecExp.edicts.defense.soldierWages === 1>> + <br>''Average wages for soldiers:'' wages for soldiers are set to the market standards. <<else>> - <br>//Not enough Authority.// + <br>''High wages for soldiers:'' wages for soldiers are set to a high level compared to market standards. + [[Repeal|edicts][$SecExp.edicts.defense.soldierWages = 1]] <</if>> - <br> //Will cost some authority each week, but rebellions will be poorly armed.// -<</if>> - -<<if $battlesCount > 0 || $rebellionsCount > 0 || $mercenaries > 0>> - <br><br>__Defense Force__: - - <<if $SecExp.edicts.defense.soldierWages == 0>> + + <<if $SecExp.edicts.defense.soldierWages === 0>> <br>''Average wages for soldiers:'' will set the wages paid to the soldiers of the arcology to an average amount. <<if $SecExp.core.authority >= 1000>> [[Implement|edicts][$SecExp.edicts.defense.soldierWages += 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] @@ -438,7 +336,7 @@ <br>//Not enough Authority.// <</if>> <br> //Will raise all units upkeep and push loyalty to average levels.// - <<elseif $SecExp.edicts.defense.soldierWages == 1>> + <<elseif $SecExp.edicts.defense.soldierWages === 1>> <br>''Low wages for soldiers:'' will set the wages paid to the soldiers of the arcology to a low amount. <<if $SecExp.core.authority >= 1000>> [[Implement|edicts][$SecExp.edicts.defense.soldierWages -= 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] @@ -463,7 +361,10 @@ <br> //Will lower all units upkeep and push loyalty to average levels.// <</if>> - <<if $SecExp.edicts.defense.slavesOfficers == 0>> + <<if $SecExp.edicts.defense.slavesOfficers === 1>> + <br>''Slave Officers:'' your trusted slaves are allowed to lead the defense forces of the arcology. + [[Repeal|edicts][$SecExp.edicts.defense.slavesOfficers = 0]] + <<else>> <br>''Slave Officers:'' allow your trusted slaves to lead the defense forces of the arcology. <<if $SecExp.core.authority >= 1000>> [[Implement|edicts][$SecExp.edicts.defense.slavesOfficers = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] @@ -474,7 +375,10 @@ <</if>> <<if $mercenaries > 0>> - <<if $SecExp.edicts.defense.discountMercenaries == 0>> + <<if $SecExp.edicts.defense.discountMercenaries === 1>> + <br>''Mercenary subsidy:'' mercenaries willing to immigrate in your arcology will be offered a discount on rent. + [[Repeal|edicts][$SecExp.edicts.defense.discountMercenaries = 0]] + <<else>> <br>''Mercenary subsidy:'' mercenaries willing to immigrate in your arcology will be offered a discount on rent. <<if $SecExp.core.authority >= 1000>> [[Implement|edicts][$SecExp.edicts.defense.discountMercenaries = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] @@ -485,64 +389,84 @@ <</if>> <</if>> - <<if $militiaFounded == 0>> + <<if $SecExp.edicts.defense.militia === 0>> <br>''Found the militia:'' lay the groundwork for the formation of the arcology's citizens' army. <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$militiaFounded = 1, $recruitVolunteers = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + [[Implement|edicts][$SecExp.edicts.defense.militia = 2, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] <<else>> <br>//Not enough Authority.// <</if>> <br> //Will allow for the recruitment and training of citizens.// - <</if>> - - <<if $militiaFounded == 1>> - <<if $recruitVolunteers == 0>> + <<else>> + <<if $SecExp.edicts.defense.militia === 1>> <br>''Volunteers' militia:'' only volunteers will be accepted in the militia. <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$militarizedSociety = 0, $militaryService = 0, $conscription = 0, $recruitVolunteers = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + [[Implement|edicts][$SecExp.edicts.defense.militia = 2, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] <<else>> <br>//Not enough Authority.// <</if>> <br> //Will replenish militia manpower slowly and will cap at 2% of the total citizens population.// <</if>> - <<if $conscription == 0>> + + <<if $SecExp.edicts.defense.militia === 3>> + <br>''Conscription:'' every citizen is required to train in the militia and serve the arcology for a limited amount of time. + [[Repeal|edicts][$SecExp.edicts.defense.militia = 2]] + <<else>> <br>''Conscription:'' every citizen is required to train in the militia and serve the arcology if the need arises. <<if $SecExp.core.authority >= 4000>> - [[Implement|edicts][$militarizedSociety = 0, $militaryService = 0, $conscription = 1, $recruitVolunteers = 0, cashX(-5000, "edicts"), $SecExp.core.authority -= 4000]] + [[Implement|edicts][$SecExp.edicts.defense.militia = 3, cashX(-5000, "edicts"), $SecExp.core.authority -= 4000]] <<else>> <br>//Not enough Authority.// <</if>> <br> //Will replenish militia manpower moderately fast and will cap at 5% of the total citizens population, but has a high authority cost// <</if>> - <<if $militaryService == 0>> + <<if $SecExp.edicts.defense.militia === 4>> + <br>''Obligatory military service:'' every citizen is required to register and serve under the militia. + [[Repeal|edicts][$SecExp.edicts.defense.militia = 2]] + <<else>> <br>''Obligatory military service:'' every citizen is required to register and serve under the militia. <<if $SecExp.core.authority >= 6000>> - [[Implement|edicts][$militarizedSociety = 0, $militaryService = 1, $conscription = 0, $recruitVolunteers = 0, cashX(-5000, "edicts"), $SecExp.core.authority -= 6000]] + [[Implement|edicts][$SecExp.edicts.defense.militia = 4, cashX(-5000, "edicts"), $SecExp.core.authority -= 6000]] <<else>> <br>//Not enough Authority.// <</if>> <br> //Will quickly replenish militia manpower and will cap at 10% of the total citizens population, but has a very high authority cost// <</if>> - <<if $militarizedSociety == 0>> + <<if $SecExp.edicts.defense.militia === 5>> + <br>''Militarized Society:'' every adult citizen is required to train and actively participate in the military of the arcology. + [[Repeal|edicts][$SecExp.edicts.defense.militia = 2]] + <<else>> <br>''Militarized Society:'' every adult citizen is required to train and participate in the defense of the arcology. <<if $SecExp.core.authority >= 8000>> - [[Implement|edicts][$militarizedSociety = 1, $militaryService = 0, $conscription = 0, $recruitVolunteers = 0, cashX(-5000, "edicts"), $SecExp.core.authority -= 8000]] + [[Implement|edicts][$SecExp.edicts.defense.militia = 5, cashX(-5000, "edicts"), $SecExp.core.authority -= 8000]] <<else>> <br>//Not enough Authority.// <</if>> <br> //Will very quickly replenish militia manpower and will cap at 20% of the total citizens population, but has an extremely high authority cost// <</if>> - <<if $SecExp.edicts.defense.militaryExemption == 0 && ($conscription == 1 || $militaryService == 1 || $militarizedSociety == 1)>> - <br>''Military exemption:'' allow citizens to avoid military duty by paying a weekly fee. - <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.defense.militaryExemption = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] - <<else>> - <br>//Not enough Authority.// + + <<if $SecExp.edicts.defense.militaryExemption === 1>> + <br>''Military exemption:'' you allow citizens to avoid military duty by paying a weekly fee. + [[Repeal|edicts][$SecExp.edicts.defense.militaryExemption = 0]] + <</if>> + <<if $SecExp.edicts.defense.militia >= 3>> + <<if $SecExp.edicts.defense.militaryExemption === 0>> + <br>''Military exemption:'' allow citizens to avoid military duty by paying a weekly fee. + <<if $SecExp.core.authority >= 1000>> + [[Implement|edicts][$SecExp.edicts.defense.militaryExemption = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + <<else>> + <br>//Not enough Authority.// + <</if>> + <br> //Will slow down the replenishment of manpower, but will supply cash each week. More profitable with stricter recruitment laws.// <</if>> - <br> //Will slow down the replenishment of manpower, but will supply cash each week. More profitable with stricter recruitment laws.// <</if>> - + + + <<if $SecExp.edicts.defense.lowerRequirements == 1>> + <br>''@@.lime;Revised minimum requirements:@@'' you allow citizens outside the normally accepted range to join the militia. + [[Repeal|edicts][$SecExp.edicts.defense.lowerRequirements = 0]] + <</if>> <<if $arcologies[0].FSHedonisticDecadence >= 40>> <<if $SecExp.edicts.defense.lowerRequirements == 0>> <br>''@@.lime;Revised minimum requirements:@@'' will allow citizens outside the normally accepted range to join the militia. @@ -555,6 +479,10 @@ <</if>> <</if>> + <<if $SecExp.edicts.defense.noSubhumansInArmy == 1>> + <br>''@@.lime;No subhumans in the militia:@@'' it is forbidden for subhumans to join the militia. + [[Repeal|edicts][$SecExp.edicts.defense.noSubhumansInArmy = 0]] + <</if>> <<if $arcologies[0].FSSubjugationist >= 40>> <<if $SecExp.edicts.defense.noSubhumansInArmy == 0>> <br>''@@.lime;No subhumans in the militia:@@'' prevent subhumans from joining the militia. @@ -567,7 +495,11 @@ <</if>> <</if>> - <<if $arcologies[0].FSRepopulationFocus >= 40 && ($conscription == 1 || $militaryService == 1 || $militarizedSociety == 1)>> + <<if $SecExp.edicts.defense.pregExemption == 1>> + <br>''@@.lime;Military exemption for pregnancies:@@'' pregnant citizens are allowed, and encouraged, to avoid military service. + [[Repeal|edicts][$SecExp.edicts.defense.pregExemption = 0]] + <</if>> + <<if $arcologies[0].FSRepopulationFocus >= 40 && $SecExp.edicts.defense.militia >= 3>> <<if $SecExp.edicts.defense.pregExemption == 0>> <br>''@@.lime;Military exemption for pregnancies:@@'' pregnant citizens will be allowed, and encouraged, to avoid military service. <<if $SecExp.core.authority >= 1000>> @@ -579,8 +511,12 @@ <</if>> <</if>> <</if>> - - <<if $SecExp.edicts.defense.privilege.militiaSoldier == 0 && $militiaFounded == 1>> + + <<if $SecExp.edicts.defense.privilege.militiaSoldier === 1>> + <br>''Special militia privileges:'' citizens joining the militia are exempt from rent payment. + [[Repeal|edicts][$SecExp.edicts.defense.privilege.militiaSoldier = 0]] + <</if>> + <<if $SecExp.edicts.defense.privilege.militiaSoldier === 0 && $SecExp.edicts.defense.militia >= 1>> <br>''Special militia privileges'' will allow citizens joining the militia to avoid paying rent. <<if $SecExp.core.authority >= 1000>> [[Implement|edicts][$SecExp.edicts.defense.privilege.militiaSoldier = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] @@ -590,7 +526,11 @@ <br> //Will increase the loyalty of militia units, but will decrease rents.// <</if>> - <<if $SecExp.edicts.defense.privilege.slaveSoldier == 0>> + <<if $SecExp.edicts.defense.privilege.slaveSoldier === 1>> + <br>''Special slaves privileges:'' Slaves into the army are allowed to have material possessions. + [[Repeal|edicts][$SecExp.edicts.defense.privilege.slaveSoldier = 0]] + <</if>> + <<if $SecExp.edicts.defense.privilege.slaveSoldier === 0>> <br>''Special slaves privileges'' will allow slaves drafted into the army to be able to have material possessions. <<if $SecExp.core.authority >= 1000>> [[Implement|edicts][$SecExp.edicts.defense.privilege.slaveSoldier = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] @@ -600,7 +540,11 @@ <br> //Will increase the loyalty of slave units, but will cost authority each week.// <</if>> - <<if $SecExp.edicts.defense.privilege.mercSoldier == 0 && $mercenaries > 0>> + <<if $SecExp.edicts.defense.privilege.mercSoldier === 1>> + <br>''Special mercenary privileges:'' Mercenaries under contract can claim part of the loot gained from battles. + [[Repeal|edicts][$SecExp.edicts.defense.privilege.mercSoldier = 0]] + <</if>> + <<if $SecExp.edicts.defense.privilege.mercSoldier === 0 && $mercenaries > 0>> <br>''Special mercenary privileges'' will allow mercenaries under contract to claim part of the loot gained from battles. <<if $SecExp.core.authority >= 1000>> [[Implement|edicts][$SecExp.edicts.defense.privilege.mercSoldier = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] @@ -610,8 +554,12 @@ <br> //Will increase the loyalty of mercenary units, but will reduce cash and menial slaves gained from battles.// <</if>> + <<if $SecExp.edicts.defense.martialSchool === 1>> + <br>''@@.lime;Slave martial schools:@@'' specialized schools are training slaves in martial arts and bodyguarding. + [[Repeal|edicts][$SecExp.edicts.defense.martialSchool = 0]] + <</if>> <<if $arcologies[0].FSPhysicalIdealist >= 40>> - <<if $SecExp.edicts.defense.martialSchool == 0>> + <<if $SecExp.edicts.defense.martialSchool === 0>> <br>''@@.lime;Slave martial schools:@@'' specialized schools will be set up to train slaves in martial arts and bodyguarding. <<if $SecExp.core.authority >= 1000>> [[Implement|edicts][$SecExp.edicts.defense.martialSchool = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] @@ -622,8 +570,12 @@ <</if>> <</if>> + <<if $SecExp.edicts.defense.eliteOfficers === 1>> + <br>''@@.lime;Elite officers:@@'' officers are exclusively recruited from the elite of society. + [[Repeal|edicts][$SecExp.edicts.defense.eliteOfficers = 0]] + <</if>> <<if $arcologies[0].FSRestart >= 40>> - <<if $SecExp.edicts.defense.eliteOfficers == 0>> + <<if $SecExp.edicts.defense.eliteOfficers === 0>> <br>''@@.lime;Elite officers:@@'' officers will be exclusively recruited from the elite of society. <<if $SecExp.core.authority >= 1000>> [[Implement|edicts][$SecExp.edicts.defense.eliteOfficers = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] @@ -634,8 +586,12 @@ <</if>> <</if>> + <<if $SecExp.edicts.defense.liveTargets === 1>> + <br>''@@.lime;Live targets drills:@@'' disobedient slaves are used as live targets at shooting ranges. + [[Repeal|edicts][$SecExp.edicts.defense.liveTargets = 0]] + <</if>> <<if $arcologies[0].FSDegradationist >= 40>> - <<if $SecExp.edicts.defense.liveTargets == 0>> + <<if $SecExp.edicts.defense.liveTargets === 0>> <br>''@@.lime;Live targets drills:@@'' disobedient slaves will be used as live targets at shooting ranges. <<if $SecExp.core.authority >= 1000>> [[Implement|edicts][$SecExp.edicts.defense.liveTargets = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] @@ -645,79 +601,46 @@ <br> //Will help advance degradationism and provide a small amount of exp to units, but will make the slave population slowly decline.// <</if>> <</if>> -<</if>> - -<<if $FSAnnounced>> - <br><br>__Future Societies:__ - <<if $arcologies[0].FSRomanRevivalist >= 40 && $militiaFounded == 1>> - <<if $SecExp.edicts.defense.legionTradition == 0>> - <br>''@@.lime;Legionaries traditions:@@'' Fund specialized training for your recruits to turn them into the professional of Roman tradition. - <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.defense.legionTradition = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] - <<else>> - <br>//Not enough Authority.// + + <<if $SF.Toggle && $SF.Active >= 1>> + <br><br>__Special Force:__ + <<if $SecExp.edicts.SFSupportLevel > 0>> + <<if $SecExp.edicts.SFSupportLevel === 1>> + <br>''Equipment provision:'' <<= App.SF.Caps()>> is providing the security HQ with advanced equipment, boosting its efficiency. + <<elseif $SecExp.edicts.SFSupportLevel === 2>> + <br>''Personnel training:'' <<= App.SF.Caps()>> is currently providing advanced equipment and training to security HQ personnel. + <<elseif $SecExp.edicts.SFSupportLevel === 3>> + <br>''Troops detachment:'' <<= App.SF.Caps()>> has currently transferred troops to the security department HQ in addition to providing advanced equipment and training to security HQ personnel. + <<elseif $SecExp.edicts.SFSupportLevel === 4>> + <br>''Full support:'' <<= App.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. + <<elseif $SecExp.edicts.SFSupportLevel === 5>> + <br>''Network assistance:'' <<= App.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. <</if>> - <br> //Will increase defense, morale and hp of militia units, but will incur upkeep costs.// - <</if>> - <</if>> - - <<if $arcologies[0].FSEgyptianRevivalist >= 40 && $militiaFounded == 1>> - <<if $SecExp.edicts.defense.pharaonTradition == 0>> - <br>''@@.lime;Pharaonic traditions:@@'' Fund specialized training for your recruits to turn them into an army worthy of a pharaoh. - <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.defense.pharaonTradition = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] - <<else>> - <br>//Not enough Authority.// + [[Repeal|edicts][$SecExp.edicts.SFSupportLevel--]] + <</if>> + <<if $SecExp.edicts.SFSupportLevel < 5>> + <<if $SecExp.edicts.SFSupportLevel === 0 && App.SecExp.Check.reqMenials() > 5>> + <br>''Equipment provision:'' <<= App.SF.Caps()>> will provide the security HQ with advanced equipment. + <br> //Will lower the amount of personnel necessary to man the security HQ by 5, but will incur upkeep costs.// + <<elseif $SecExp.edicts.SFSupportLevel === 1 && $SF.Squad.Firebase >= 4 && App.SecExp.Check.reqMenials() > 5>> + <br>''Personnel training:'' <<= App.SF.Caps()>> will provide the security HQ personnel with advanced training. + <br> //Will lower the amount of personnel necessary to man the security HQ by a further 5, but will incur additional upkeep costs.// + <<elseif $SecExp.edicts.SFSupportLevel === 2 && $SF.Squad.Firebase >= 6 && App.SecExp.Check.reqMenials() > 5>> + <br>''Troops detachment:'' <<= App.SF.Caps()>> will provide troops to the security department. + <br> //Will lower the amount of personnel necessary to man the security HQ by a further 5, but will incur additional upkeep costs.// + <<elseif $SecExp.edicts.SFSupportLevel === 3 && $SF.Squad.Firebase >= 6 && App.SecExp.Check.reqMenials() > 5>> + <br>''Full Support:'' <<= App.SF.Caps()>> will give the security department its full support. + <br> //Will lower the amount of personnel necessary to man the security HQ by a further 5, but will incur additional upkeep costs.// + <<elseif $SecExp.edicts.SFSupportLevel === 4 && $SF.Squad.Firebase === 10 && App.SecExp.Check.reqMenials() > 5>> + <br>''Network assistance:'' <<= App.SF.Caps()>> will assist the security department with installing a local version of their custom network. + <br> //Will lower the amount of personnel necessary to man the security HQ by a further 5, but will incur additional upkeep costs.// <</if>> - <br> //Will increase attack, defense and morale of militia units, but will incur upkeep costs.// <</if>> - <</if>> - - <<if $arcologies[0].FSAztecRevivalist >= 40 && $mercenaries > 0>> - <<if $SecExp.edicts.defense.eagleWarriors == 0>> - <br>''@@.lime;Eagle warriors traditions:@@'' Fund specialized training for your mercenaries to turn them into the elite units of Aztec tradition. - <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.defense.eagleWarriors = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] - <<else>> - <br>//Not enough Authority.// - <</if>> - <br> //Will give a high increase in attack and morale, but will lower defense of mercenary units and will incur upkeep costs.// - <</if>> - <</if>> - - <<if $arcologies[0].FSEdoRevivalist >= 40 && $mercenaries > 0>> - <<if $SecExp.edicts.defense.ronin == 0>> - <br>''@@.lime;Ronin traditions:@@'' Fund specialized training for your mercenaries to turn them into the errant samurai of Japanese tradition. - <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.defense.ronin = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] - <<else>> - <br>//Not enough Authority.// - <</if>> - <br> //Will increase attack, defense and morale of mercenary units, but will incur upkeep costs.// - <</if>> - <</if>> - - <<if $arcologies[0].FSArabianRevivalist >= 40>> - <<if $SecExp.edicts.defense.mamluks == 0>> - <br>''@@.lime;Mamluks traditions:@@'' Fund specialized training for your slaves to turn them into the mamluks slave soldiers of Arabian tradition. - <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.defense.mamluks = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] - <<else>> - <br>//Not enough Authority.// - <</if>> - <br> //Will increase attack, morale and hp of slave units, but will incur upkeep costs.// - <</if>> - <</if>> - - <<if $arcologies[0].FSChineseRevivalist >= 40>> - <<if $SecExp.edicts.defense.sunTzu == 0>> - <br>''@@.lime;Sun Tzu Teachings:@@'' Fund specialized training for your units and officers to conform your army to the teachings of the "Art of War". - <<if $SecExp.core.authority >= 1000>> - [[Implement|edicts][$SecExp.edicts.defense.sunTzu = 1, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] - <<else>> - <br>//Not enough Authority.// - <</if>> - <br> //Will slightly increase attack, defense and morale of all units, but will incur upkeep costs.// + <<if $SecExp.core.authority >= 1000>> + [[Implement|edicts][$SecExp.edicts.SFSupportLevel++, cashX(-5000, "edicts"), $SecExp.core.authority -= 1000]] + <<else>> + <br>//Not enough Authority.// <</if>> <</if>> -<</if>> \ No newline at end of file + </div> +</div> \ No newline at end of file diff --git a/src/Mods/SecExp/js/Unit.js b/src/Mods/SecExp/js/Unit.js index b1c34c32b2b..59d4b73464d 100644 --- a/src/Mods/SecExp/js/Unit.js +++ b/src/Mods/SecExp/js/Unit.js @@ -1,6 +1,78 @@ /** Creates the requested unit object. * @param {string} [type] the unit type to be created. */ +App.SecExp.humanUnitLoyaltyChanges = function(input) { + let loyaltyChange = 0, el = document.createElement("div"); + + el.append(`${input.platoonName}: `); + if (V.SecExp.buildings.barracks.upgrades.loyaltyMod >= 1) { + el.append("is periodically sent to the indoctrination facility in the barracks for thought correction therapy."); + loyaltyChange += 2 * V.SecExp.buildings.barracks.upgrades.loyaltyMod; + } + if (input.commissars >= 1) { + el.append("The commissars attached to the unit carefully monitor the officers and grunts for signs of insubordination."); + loyaltyChange += 2 * input.commissars; + } + if (V.SecExp.edicts.defense.soldierWages === 2) { + if (input.platoonName.contains('slave')) { + el.append("The slaves greatly appreciate the generous wage given to them for their service as soldiers. Occasions to earn money for a slave are scarce after all."); + } else if (input.platoonName.contains('citizens')) { + el.append("The soldiers greatly appreciate the generous wage given to them for their service. They are proud to defend their homes while making a small fortune out of it."); + } else if (input.platoonName.contains('mercenary')) { + el.append("The mercenaries greatly appreciate the generous wage given to them for their service. After all coin is the fastest way to reach their hearts."); + } + loyaltyChange += random(5,10); + } else if (V.SecExp.edicts.defense.soldierWages === 1) { + if (input.platoonName.contains('slave')) { + el.append("The slaves appreciate the wage given to them for their service as soldiers, despite it being just adequate. Occasions to earn money for a slave are scarce after all."); + } else if (input.platoonName.contains('citizens')) { + el.append("The soldiers appreciate the wage given to them for their service, despite it being just adequate. They are proud to defend their homes, though at the cost of possible financial gains."); + } else if (input.platoonName.contains('mercenary')) { + el.append("The mercenaries do not appreciate the barely adequate wage given to them for their service. Still their professionalism keeps them determined to finish their contract."); + } + loyaltyChange += random(-5,5); + } else { + if (input.platoonName.contains('slave')) { + el.append("The slaves do not appreciate the low wage given to them for their service as soldiers, but occasions to earn money for a slave are scarce, so they're not too affected by it."); + } else if (input.platoonName.contains('citizens')) { + el.append("The soldiers do not appreciate the low wage given to them for their service. Their sense of duty keeps them proud of their role as defenders of the arcology, but many do feel its financial weight."); + } else if (input.platoonName.contains('mercenary')) { + el.append("The mercenaries do not appreciate the low wage given to them for their service. Their skill would be better served by a better contract and this world does not lack demand for guns for hire."); + } + loyaltyChange -= random(5,10); + } + if (input.platoonName.contains('slave') && V.SecExp.edicts.defense.privilege.slaveSoldier) { + el.append("Allowing them to hold material possessions earns you their devotion and loyalty."); + loyaltyChange += random(1,2); + } + if (input.platoonName.contains('citizens') && V.SecExp.edicts.defense.privilege.militiaSoldier) { + el.append("Allowing them to avoid rent payment for their military service earns you their happiness and loyalty."); + loyaltyChange += random(1,2); + } + if (input.platoonName.contains('mercenary') && V.SecExp.edicts.defense.privilege.mercSoldier) { + el.append("Allowing them to keep part of the loot gained from your enemies earns you their trust and loyalty."); + loyaltyChange += random(1,2); + } + + el.append("This week, the loyalty of this unit "); + if (loyaltyChange > 0) { + App.UI.DOM.appendNewElement("span", el, "increased.", "green"); + } else if (loyaltyChange === 0) { + App.UI.DOM.appendNewElement("span", el, "did not change.", "yellow"); + } else { + App.UI.DOM.appendNewElement("span", el, "decreased.", "red"); + } + input.loyalty = Math.clamp(input.loyalty + loyaltyChange,0,100); + if (input.training < 100 && V.SecExp.buildings.barracks.upgrades.training >= 1) { + let options = document.createElement("div"); + options.append("The unit is able to make use of the training facilities to better prepare its soldiers, slowly increasing their experience level."); + el.append(options); + input.training += random(2,4) * 1.5 * V.SecExp.buildings.barracks.upgrades.training; + } + + return el; +} + App.SecExp.generateUnit = function(type) { let newUnit = {ID: -1, equip: 0, active: 1, isDeployed: 0, maxTroops:30, troops: 30}; if (type !== "bots") { @@ -85,9 +157,9 @@ App.SecExp.humanUnitUpgradeList = function(input) { options.append(` to slowly increase this unit's even loyalty.`); } if (input.commissars === 1) { - options.append("The unit has a commissar detachment, keeping under control the ambitions of the unit's officers."); + options.append(" The unit has a commissar detachment, keeping under control the ambitions of the unit's officers."); } else if (input.commissars === 2) { - options.append("The unit has a perfectly trained and loyal commissar detachment, keeping under control the ambitions of the unit's officers."); + options.append(" The unit has a perfectly trained and loyal commissar detachment, keeping under control the ambitions of the unit's officers."); } el.append(options); @@ -136,7 +208,7 @@ App.SecExp.humanUnitUpgradeList = function(input) { )); options.append(' which will slightly increase the base stats of the unit.'); } else { - options.append('The unit has attached advisors from $SF.Lower that will help the squad remain tactically aware and active.'); + options.append('The unit has attached advisors from ${V.SF.Lower} that will help the squad remain tactically aware and active.'); } el.append(options); } diff --git a/src/Mods/SecExp/js/secExp.js b/src/Mods/SecExp/js/secExp.js index 0294c568c48..79e93c44b04 100644 --- a/src/Mods/SecExp/js/secExp.js +++ b/src/Mods/SecExp/js/secExp.js @@ -25,13 +25,7 @@ App.SecExp.generalInit = function(){ soldierWages: 1, slavesOfficers: 0, discountMercenaries: 0, - /* - militiaFounded: 0, - recruitVolunteers: 0, - conscription: 0, - militaryService: 0, - militarizedSociety: 0, - */ + militia: 0, militaryExemption: 0, noSubhumansInArmy: 0, pregExemption: 0, diff --git a/src/Mods/SecExp/js/secExpBC.js b/src/Mods/SecExp/js/secExpBC.js index aa8147d4051..dc1446e8858 100644 --- a/src/Mods/SecExp/js/secExpBC.js +++ b/src/Mods/SecExp/js/secExpBC.js @@ -17,7 +17,64 @@ App.SecExp.generalBC = function (){ delete V.SecExp.army; if (V.secExpEnabled > 0) { - checkEdicts(); + V.SecExp.edicts = V.SecExp.edicts || {}; + V.SecExp.edicts.alternativeRents = V.SecExp.edicts.alternativeRents || V.alternativeRents || 0; + V.SecExp.edicts.enslavementRights = V.SecExp.edicts.enslavementRights || V.enslavementRights || 0; + V.SecExp.edicts.sellData = V.SecExp.edicts.sellData || V.sellData || 0; + V.SecExp.edicts.propCampaignBoost = V.SecExp.edicts.propCampaignBoost || V.propCampaignBoost || 0; + V.SecExp.edicts.tradeLegalAid = V.SecExp.edicts.tradeLegalAid || V.tradeLegalAid || 0; + V.SecExp.edicts.taxTrade = V.SecExp.edicts.taxTrade || V.taxTrade || 0; + V.SecExp.edicts.slaveWatch = V.SecExp.edicts.slaveWatch || V.slaveWatch || 0; + V.SecExp.edicts.subsidyChurch = V.SecExp.edicts.subsidyChurch || V.subsidyChurch || 0; + V.SecExp.edicts.SFSupportLevel = V.SecExp.edicts.SFSupportLevel || V.SFSupportLevel || 0; + V.SecExp.edicts.limitImmigration = V.SecExp.edicts.limitImmigration || V.limitImmigration || 0; + V.SecExp.edicts.openBorders = V.SecExp.edicts.openBorders || V.openBorders || 0; + V.SecExp.edicts.weaponsLaw = V.SecExp.edicts.weaponsLaw || V.weaponsLaw || 3; + + V.SecExp.edicts.defense = V.SecExp.edicts.defense || {}; + V.SecExp.edicts.defense.soldierWages = V.SecExp.edicts.defense.soldierWages || V.soldierWages || 1; + V.SecExp.edicts.defense.slavesOfficers = V.SecExp.edicts.defense.slavesOfficers || V.slavesOfficers || 0; + V.SecExp.edicts.defense.discountMercenaries = V.SecExp.edicts.defense.discountMercenaries || V.discountMercenaries || 0; + + V.SecExp.edicts.defense.militia = V.SecExp.edicts.defense.militia || 0; + if (V.militiaFounded) { + V.SecExp.edicts.defense.militia = 1; + } + if (V.recruitVolunteers) { + V.SecExp.edicts.defense.militia = 2; + } + if (V.conscription) { + V.SecExp.edicts.defense.militia = 3; + } + if (V.militaryService) { + V.SecExp.edicts.defense.militia = 4; + } + if (V.militarizedSociety) { + V.SecExp.edicts.defense.militia = 5; + } + + V.SecExp.edicts.defense.militaryExemption = V.SecExp.edicts.defense.militaryExemption || V.militaryExemption || 0; + V.SecExp.edicts.defense.noSubhumansInArmy = V.SecExp.edicts.defense.noSubhumansInArmy || V.noSubhumansInArmy || 0; + V.SecExp.edicts.defense.pregExemption = V.SecExp.edicts.defense.pregExemption || V.pregExemption || 0; + V.SecExp.edicts.defense.liveTargets = V.SecExp.edicts.defense.liveTargets || V.liveTargets || 0; + V.SecExp.edicts.defense.pregExemption = V.SecExp.edicts.defense.pregExemption || V.pregExemption || 0; + + // Units + V.SecExp.edicts.defense.martialSchool = V.SecExp.edicts.defense.martialSchool || V.martialSchool || 0; + V.SecExp.edicts.defense.eliteOfficers = V.SecExp.edicts.defense.eliteOfficers || V.eliteOfficers || 0; + V.SecExp.edicts.defense.lowerRequirements = V.SecExp.edicts.defense.lowerRequirements || V.lowerRequirements|| V.lowerRquirements || 0; + V.SecExp.edicts.defense.legionTradition = V.SecExp.edicts.defense.legionTradition || V.legionTradition || 0; + V.SecExp.edicts.defense.eagleWarriors = V.SecExp.edicts.defense.eagleWarriors || V.eagleWarriors || 0; + V.SecExp.edicts.defense.ronin = V.SecExp.edicts.defense.ronin || V.ronin || 0; + V.SecExp.edicts.defense.sunTzu = V.SecExp.edicts.defense.sunTzu || V.sunTzu || 0; + V.SecExp.edicts.defense.mamluks = V.SecExp.edicts.defense.mamluks || V.mamluks || 0; + V.SecExp.edicts.defense.pharaonTradition = V.SecExp.edicts.defense.pharaonTradition || V.pharaonTradition || 0; + + // Priv + V.SecExp.edicts.defense.privilege = V.SecExp.edicts.defense.privilege || {}; + V.SecExp.edicts.defense.privilege.militiaSoldier = V.SecExp.edicts.defense.privilege.militiaSoldier || V.militiaSoldier || 0; + V.SecExp.edicts.defense.privilege.slaveSoldier = V.SecExp.edicts.defense.privilege.slaveSoldier || V.slaveSoldier || 0; + V.SecExp.edicts.defense.privilege.mercSoldier = V.SecExp.edicts.defense.privilege.mercSoldier || V.mercSoldier || 0; Object.assign(V.secBots, { active: V.secBots.active || V.arcologyUpgrade.drones > 0 ? 1 : 0, @@ -58,7 +115,10 @@ App.SecExp.generalBC = function (){ if (jsDef(V.security)) { V.SecExp.security.cap = V.security; } - V.SecExp.core.crimeLow = V.SecExp.core.crimeLow || 30; + if (V.week === 1 || !jsDef(V.SecExp.core.crimeLow)) { + V.SecExp.core.crimeLow = 30; + } + V.SecExp.core.crimeLow = Math.clamp(V.SecExp.core.crimeLow, 0, 100); if (jsDef(V.crime)) { V.SecExp.core.crimeLow = V.crime; } @@ -192,10 +252,13 @@ App.SecExp.generalBC = function (){ } } - if (jsDef(V.recruiterOffice)) { - V.recruiterOffice = V.recruiterOffice; + if (V.RecuriterOffice) { + V.SecExp.buildings.propHub.recruiterOffice = V.RecuriterOffice; + } + if (V.recuriterOffice ) { + V.SecExp.buildings.propHub.recruiterOffice = V.recuriterOffice ; } - const vars = ['recruiterOffice', 'fakeNews', 'controlLeaks', 'marketInfiltration', 'blackOps']; + const vars = ['fakeNews', 'controlLeaks', 'marketInfiltration', 'blackOps']; for(let i = 0; i < vars.length; i++) { if (jsDef(V[vars[i]]) && V[vars[i]] > 0) { V.SecExp.buildings.propHub[vars[i]] = V[vars[i]]; @@ -243,54 +306,4 @@ App.SecExp.generalBC = function (){ if (jsDef(V.SecExp.core)) { delete V.SecExp.core.crimeCap; } - function checkEdicts() { - // Edicts - V.SecExp.edicts = V.SecExp.edicts || {}; - V.SecExp.edicts.alternativeRents = V.SecExp.edicts.alternativeRents || V.alternativeRents || 0; - V.SecExp.edicts.enslavementRights = V.SecExp.edicts.enslavementRights || V.enslavementRights || 0; - V.SecExp.edicts.sellData = V.SecExp.edicts.sellData || V.sellData || 0; - V.SecExp.edicts.propCampaignBoost = V.SecExp.edicts.propCampaignBoost || V.propCampaignBoost || 0; - V.SecExp.edicts.tradeLegalAid = V.SecExp.edicts.tradeLegalAid || V.tradeLegalAid || 0; - V.SecExp.edicts.taxTrade = V.SecExp.edicts.taxTrade || V.taxTrade || 0; - V.SecExp.edicts.slaveWatch = V.SecExp.edicts.slaveWatch || V.slaveWatch || 0; - V.SecExp.edicts.subsidyChurch = V.SecExp.edicts.subsidyChurch || V.subsidyChurch || 0; - V.SecExp.edicts.SFSupportLevel = V.SecExp.edicts.SFSupportLevel || V.SFSupportLevel || 0; - V.SecExp.edicts.limitImmigration = V.SecExp.edicts.limitImmigration || V.limitImmigration || 0; - V.SecExp.edicts.openBorders = V.SecExp.edicts.openBorders || V.openBorders || 0; - V.SecExp.edicts.weaponsLaw = V.SecExp.edicts.weaponsLaw || V.weaponsLaw || 3; - - V.SecExp.edicts.defense = V.SecExp.edicts.defense || {}; - V.SecExp.edicts.defense.soldierWages = V.SecExp.edicts.defense.soldierWages || V.soldierWages || 1; - V.SecExp.edicts.defense.slavesOfficers = V.SecExp.edicts.defense.slavesOfficers || V.slavesOfficers || 0; - V.SecExp.edicts.defense.discountMercenaries = V.SecExp.edicts.defense.discountMercenaries || V.discountMercenaries || 0; - /* - V.militiaFounded = V.militiaFounded || V.militiaFounded || 0; - V.recruitVolunteers = V.recruitVolunteers || V.recruitVolunteers || 0; - V.conscription = V.conscription || V.conscription || 0; - V.militaryService = V.militaryService || V.militaryService || 0; - V.militarizedSociety = V.militarizedSociety || V.militarizedSociety || 0; - */ - V.SecExp.edicts.defense.militaryExemption = V.SecExp.edicts.defense.militaryExemption || V.militaryExemption || 0; - V.SecExp.edicts.defense.noSubhumansInArmy = V.SecExp.edicts.defense.noSubhumansInArmy || V.noSubhumansInArmy || 0; - V.SecExp.edicts.defense.pregExemption = V.SecExp.edicts.defense.pregExemption || V.pregExemption || 0; - V.SecExp.edicts.defense.liveTargets = V.SecExp.edicts.defense.liveTargets || V.liveTargets || 0; - V.SecExp.edicts.defense.pregExemption = V.SecExp.edicts.defense.pregExemption || V.pregExemption || 0; - - // Units - V.SecExp.edicts.defense.martialSchool = V.SecExp.edicts.defense.martialSchool || V.martialSchool || 0; - V.SecExp.edicts.defense.eliteOfficers = V.SecExp.edicts.defense.eliteOfficers || V.eliteOfficers || 0; - V.SecExp.edicts.defense.lowerRequirements = V.SecExp.edicts.defense.lowerRequirements || V.lowerRequirements|| V.lowerRquirements || 0; - V.SecExp.edicts.defense.legionTradition = V.SecExp.edicts.defense.legionTradition || V.legionTradition || 0; - V.SecExp.edicts.defense.eagleWarriors = V.SecExp.edicts.defense.eagleWarriors || V.eagleWarriors || 0; - V.SecExp.edicts.defense.ronin = V.SecExp.edicts.defense.ronin || V.ronin || 0; - V.SecExp.edicts.defense.sunTzu = V.SecExp.edicts.defense.sunTzu || V.sunTzu || 0; - V.SecExp.edicts.defense.mamluks = V.SecExp.edicts.defense.mamluks || V.mamluks || 0; - V.SecExp.edicts.defense.pharaonTradition = V.SecExp.edicts.defense.pharaonTradition || V.pharaonTradition || 0; - - // Priv - V.SecExp.edicts.defense.privilege = V.SecExp.edicts.defense.privilege || {}; - V.SecExp.edicts.defense.privilege.militiaSoldier = V.SecExp.edicts.defense.privilege.militiaSoldier || V.militiaSoldier || 0; - V.SecExp.edicts.defense.privilege.slaveSoldier = V.SecExp.edicts.defense.privilege.slaveSoldier || V.slaveSoldier || 0; - V.SecExp.edicts.defense.privilege.mercSoldier = V.SecExp.edicts.defense.privilege.mercSoldier || V.mercSoldier || 0; - } }; diff --git a/src/Mods/SecExp/proclamations.tw b/src/Mods/SecExp/proclamations.tw index 65f3322ff8b..e6da6594c00 100644 --- a/src/Mods/SecExp/proclamations.tw +++ b/src/Mods/SecExp/proclamations.tw @@ -5,7 +5,6 @@ <<if $SecExp.proclamation.cooldown == 0>> __Issue a proclamation:__ <br>You can dedicate the week to issuing a proclamation, a powerful tool that will have an immediate noticeable effect on the arcology. - <br>You will use $SecExp.proclamation.currency to enact it and will be about $SecExp.proclamation.type. <br>Use: <<if $SecExp.core.authority >= 2000>> <<link "authority" "Personal Attention Select">> @@ -30,20 +29,18 @@ <<else>> //Requires at least <<print cashFormat(8000)>> cash// <</if>> - <<if $SecExp.proclamation.currency != "">> - <br><br> - <<link "Issue a proclamation about security" "Main">> - <<set $personalAttention = "proclamation", $SecExp.proclamation.type = "security">> - <</link>> - <br>//You will use your <<if $SecExp.proclamation.currency == "authority">>control over the arcology<<elseif $SecExp.proclamation.currency == "reputation">>great influence<<elseif $SecExp.proclamation.currency == "cash">> vast financial means<</if>> - to force citizens to give up on sensitive information for the good of the arcology.// - <br> - <<link "Issue a proclamation about crime" "Main">> - <<set $personalAttention = "proclamation", $SecExp.proclamation.type = "crime">> - <</link>> - <br>//You will use your <<if $SecExp.proclamation.currency == "authority">>control over the arcology<<elseif $SecExp.proclamation.currency == "reputation">>great influence<<elseif $SecExp.proclamation.currency == "cash">> vast financial means<</if>> - to force the arrest of suspected citizens without passing through the normal legal procedures.// - <</if>> + <br><br> + <<link "Issue a proclamation about security" "Main">> + <<set $personalAttention = "proclamation", $SecExp.proclamation.type = "security">> + <</link>> + <br>//You will use your <<if $SecExp.proclamation.currency == "authority">>control over the arcology<<elseif $SecExp.proclamation.currency == "reputation">>great influence<<elseif $SecExp.proclamation.currency == "cash">>vast financial means<</if>> + to force citizens to give up on sensitive information for the good of the arcology.// + <br> + <<link "Issue a proclamation about crime" "Main">> + <<set $personalAttention = "proclamation", $SecExp.proclamation.type = "crime">> + <</link>> + <br>//You will use your <<if $SecExp.proclamation.currency == "authority">>control over the arcology<<elseif $SecExp.proclamation.currency == "reputation">>great influence<<elseif $SecExp.proclamation.currency == "cash">>vast financial means<</if>> + to force the arrest of suspected citizens without passing through the normal legal procedures.// <<else>> - It's too early to issue another proclamation. Another will be available in <<if $SecExp.proclamation.cooldown == 1>> one week.<<else>> $SecExp.proclamation.cooldown weeks.<</if>> -<</if>> + It's too early to issue another proclamation. Another will be available in <<= numberWithPluralOne($SecExp.proclamation.cooldown, "week")>>. +<</if>> \ No newline at end of file diff --git a/src/Mods/SecExp/rebellionGenerator.tw b/src/Mods/SecExp/rebellionGenerator.tw index 78a0737f322..ca6f9b700fe 100644 --- a/src/Mods/SecExp/rebellionGenerator.tw +++ b/src/Mods/SecExp/rebellionGenerator.tw @@ -83,8 +83,7 @@ <<else>> <<set _slave += 5>> <</if>> -<br> -<br> +<br><br> <strong>Citizens security analysis:</strong> <<if $SecExp.core.authority <= 3000>> Your very low authority allows your citizens to think too freely. @@ -121,22 +120,22 @@ The very low crime level of the arcology leaves your citizens happy and satisfied. <<set _citizen -= 5>> <</if>> -<<if $militiaFounded == 1>> +<<if $SecExp.edicts.defense.militia >= 1>> <<if ($arcologies[0].FSRomanRevivalist == "unset" && $arcologies[0].FSAztecRevivalist == "unset" && $arcologies[0].FSEgyptianRevivalist == "unset" && $arcologies[0].FSEdoRevivalist == "unset" && $arcologies[0].FSArabianRevivalist == "unset" && $arcologies[0].FSChineseRevivalist == "unset")>> - <<if $militarizedSociety == 1>> + <<if $SecExp.edicts.defense.militia === 5>> Many of your citizens are offended by your extreme militarization of the arcology's society. <<set _citizen += 20>> - <<elseif $militaryService == 1>> + <<elseif $SecExp.edicts.defense.militia === 4>> Many of your citizens are offended by your militarization of the arcology's society. <<set _citizen += 15>> <<else>> <<set _citizen += 10>> <</if>> <<else>> - <<if $militarizedSociety == 1>> + <<if $SecExp.edicts.defense.militia === 5>> Some of your citizens are offended by your extreme militarization of the arcology's society. <<set _citizen += 10>> - <<elseif $militaryService == 1>> + <<elseif $SecExp.edicts.defense.militia === 4>> Some of your citizens are offended by your militarization of the arcology's society. <<set _citizen += 5>> <<else>> @@ -212,8 +211,7 @@ /* if there is an advancement selects a random mini event */ <<set _oldTension = $tension>> <<if $slaveRebellionEventFires == 1 || $citizenRebellionEventFires == 1>> - <br><br> - <<include "rebellionEvents">> + <br><br> <<include "rebellionEvents">> <<elseif $tension > 0>> /* otherwise tension decays */ <br><br> @@ -227,18 +225,18 @@ <</if>> <br> <<if $tension < _oldTension>> - <br>This week @@.green;tensions relaxed.@@ + <br>This week @@.green;tensions relaxed.@@<br> <<elseif $tension == _oldTension && $tension != 0>> - <br>This week @@.yellow;tensions did not change.@@ + <br>This week @@.yellow;tensions did not change.@@<br> <<elseif $tension > _oldTension>> <br>This week @@.red;tension rose@@ and <<if $slaveRebellionEventFires == 1>> - @@.red;slave malcontent increased.@@ + @@.red;slave malcontent increased.@@<br> <<elseif $citizenRebellionEventFires == 1>> - @@.red;citizen malcontent increased.@@ + @@.red;citizen malcontent increased.@@<br> <</if>> <<elseif !Number.isInteger($tension)>> - <br>Error: tension is outside accepted range. + <br>Error: tension is outside accepted range.<br> <</if>> /* resets flags */ diff --git a/src/Mods/SecExp/securityReport.tw b/src/Mods/SecExp/securityReport.tw index 67d97ae6b24..559e4b46c5f 100644 --- a/src/Mods/SecExp/securityReport.tw +++ b/src/Mods/SecExp/securityReport.tw @@ -10,10 +10,7 @@ <<set _crimeGrowth = 0>> <<set _recruitsMultiplier = 1>> -<<if $useTabs == 0>> <br>__Security__<</if>> -<br> - -<strong>Security</strong>: +<<if $useTabs == 0>> <br>__Security__<br><</if>> <<if $terrain === "oceanic">> Due to the @@.green;massive economic and logistical challenges@@ of attacking an oceanic arcology, your security force(s) <<else>> @@ -351,116 +348,81 @@ Due to the deterioration of the old world countries, organized crime focuses mor <</if>> <<set $SecExp.core.crimeLow = Math.clamp(_newCrime,0,100)>> -<<if $militiaFounded == 1 || App.SecExp.battle.activeUnits() >= 1>> - <br><br> <<set _size = App.SF.upgrades.total()>> - <strong> Military</strong>: /* militia */ - <<if $SF.Toggle && $SF.Active >= 1 && _size > 10>> - Having a powerful special force attracts a lot of citizens, hopeful that they may be able to fight along side it. - <<set _recruitsMultiplier *= 1 + (random(1, (Math.round(_size / 10))) / 20)>> /* not sure how high _size goes, so I hope this makes sense */ - <</if>> - <<if $SecExp.buildings.propHub.active > 0>> - <<if $SecExp.buildings.propHub.campaign >= 1 && $SecExp.buildings.propHub.focus == "recruitment">> - <<if $SecExp.buildings.propHub.recruiterOffice === 0 || $RecruiterID == 0>> - <<if $SecExp.edicts.propCampaignBoost == 1>> - <<set _recruitsMultiplier *= 1.1>> - <<else>> - <<set _recruitsMultiplier *= 1.05>> - <</if>> - <<elseif $SecExp.buildings.propHub.recruiterOffice > 0 && $RecruiterID > 0>> - <<setLocalPronouns _S.Recruiter>> - <span class='slave-name'><<= SlaveFullName(_S.Recruiter)>></span> is able to further boost your militia recruitment campaign from $his PR hub office. - <<if $SecExp.edicts.propCampaignBoost == 1>> - <<set _recruitsMultiplier *= 1.2 + ((_S.Recruiter.intelligence+_S.Recruiter.intelligenceImplant)/650)>> - <<else>> - <<set _recruitsMultiplier *= 1.15 + ((_S.Recruiter.intelligence+_S.Recruiter.intelligenceImplant)/650)>> +<<if $SecExp.edicts.defense.militia >= 1 || App.SecExp.battle.activeUnits() >= 1>> + <<set _size = App.SF.upgrades.total()>> + <br><br> <strong>Military</strong>: + <<if $SecExp.edicts.defense.militia >= 1>> + <<if $SF.Toggle && $SF.Active >= 1 && _size > 10>> + Having a powerful special force attracts a lot of citizens, hopeful that they may be able to fight along side it. + <<set _recruitsMultiplier *= 1 + (random(1, (Math.round(_size / 10))) / 20)>> /* not sure how high _size goes, so I hope this makes sense */ + <</if>> + <<if $SecExp.buildings.propHub.active > 0>> + <<if $SecExp.buildings.propHub.campaign >= 1 && $SecExp.buildings.propHub.focus == "recruitment">> + <<if $SecExp.buildings.propHub.recruiterOffice === 0 || $RecruiterID == 0>> + <<if $SecExp.edicts.propCampaignBoost == 1>> + <<set _recruitsMultiplier *= 1.1>> + <<else>> + <<set _recruitsMultiplier *= 1.05>> + <</if>> + <<elseif $SecExp.buildings.propHub.recruiterOffice > 0 && $RecruiterID > 0>> + <<setLocalPronouns _S.Recruiter>> + <span class='slave-name'><<= SlaveFullName(_S.Recruiter)>></span> is able to further boost your militia recruitment campaign from $his PR hub office. + <<if $SecExp.edicts.propCampaignBoost == 1>> + <<set _recruitsMultiplier *= 1.2 + ((_S.Recruiter.intelligence+_S.Recruiter.intelligenceImplant)/650)>> + <<else>> + <<set _recruitsMultiplier *= 1.15 + ((_S.Recruiter.intelligence+_S.Recruiter.intelligenceImplant)/650)>> + <</if>> <</if>> <</if>> <</if>> - <</if>> - <<if $recruitVolunteers == 1>> - Your militia accepts only volunteering citizens, ready to defend their arcology. - <<set _recruitLimit = 0.02>> - <<if $rep >= 10000>> - Many citizens volunteer just to fight for someone of your renown. - <<set _recruitLimit += 0.0025>> - <</if>> - <<if $SecExp.core.authority >= 10000>> - Many citizens feel it is their duty to fight for you, boosting volunteer enrollment. - <<set _recruitLimit += 0.0025>> - <</if>> - <<if $SecExp.edicts.defense.lowerRequirements == 1>> - Your lax physical requirements to enter the militia allows for a greater number of citizens to join. - <<set _recruitLimit += 0.0025>> - <</if>> - <<elseif $conscription == 1>> - Adult citizens are required to join the militia for a period of time. - <<set _recruitLimit = 0.05>> - <<if $SecExp.edicts.defense.militaryExemption == 1>> - Some citizens prefer to contribute to the arcology's defense through financial support rather than military service, making you @@.yellowgreen;a small sum.@@ - <<set _recruitLimit -= 0.005>> - <<run cashX(250, "securityExpansion")>> - <</if>> - <<if $SecExp.edicts.defense.lowerRequirements == 1>> - Your lax physical requirements to enter the militia allows for a greater number of citizens to join. - <<set _recruitLimit += 0.005>> - <</if>> - <<if $SecExp.edicts.defense.noSubhumansInArmy == 1>> - Guaranteeing the purity of your armed forces comes with a small loss of potential recruits. - <<set _recruitLimit -= 0.005>> - <</if>> - <<if $SecExp.edicts.defense.pregExemption == 1>> - Many pregnant citizens prefer to avoid military service not to endanger themselves and their children. - <<set _recruitLimit -= 0.005>> - <</if>> - <<elseif $militaryService == 1>> - Adult citizens are required to register and serve in the militia whenever necessary. - <<set _recruitLimit = 0.1>> - <<if $SecExp.edicts.defense.militaryExemption == 1>> - Some citizens prefer to contribute to the arcology's defense through financial support rather than military service, making you @@.yellowgreen;a small sum.@@ - <<set _recruitLimit -= 0.01>> - <<run cashX(250, "securityExpansion")>> - <</if>> - <<if $SecExp.edicts.defense.lowerRequirements == 1>> - Your lax physical requirements to enter the militia allows for a greater number of citizens to join. - <<set _recruitLimit += 0.01>> - <</if>> - <<if $SecExp.edicts.defense.noSubhumansInArmy == 1>> - Guaranteeing the purity of your armed forces comes with a small loss of potential recruits. - <<set _recruitLimit -= 0.01>> - <</if>> - <<if $SecExp.edicts.defense.pregExemption == 1>> - Many pregnant citizens prefer to avoid military service not to endanger themselves and their children. - <<set _recruitLimit -= 0.01>> - <</if>> - <<elseif $militarizedSociety == 1>> - Every citizen is required to train and participate in the military activities of the arcology. - <<set _recruitLimit = 0.2>> - <<if $SecExp.edicts.defense.militaryExemption == 1>> - Some citizens prefer to contribute to the arcology's defense through financial support rather than military service, making you @@.yellowgreen;a small sum.@@ - <<set _recruitLimit -= 0.02>> - <<run cashX(250, "securityExpansion")>> + <<if $SecExp.edicts.defense.militia === 2>> + Your militia accepts only volunteering citizens, ready to defend their arcology. + <<set _recruitLimit = 0.02, _adjst = 0.0025>> + <<if $rep >= 10000>> + Many citizens volunteer just to fight for someone of your renown. + <<set _recruitLimit += 0.0025>> + <</if>> + <<if $SecExp.core.authority >= 10000>> + Many citizens feel it is their duty to fight for you, boosting volunteer enrollment. + <<set _recruitLimit += 0.0025>> + <</if>> + <<elseif $SecExp.edicts.defense.militia === 3>> + Adult citizens are required to join the militia for a period of time. + <<set _recruitLimit = 0.05, _adjst = 0.005>> + <<elseif $SecExp.edicts.defense.militia === 4>> + Adult citizens are required to register and serve in the militia whenever necessary. + <<set _recruitLimit = 0.1, _adjst = 0.01>> + <<elseif $SecExp.edicts.defense.militia === 5>> + Every citizen is required to train and participate in the military activities of the arcology. + <<set _recruitLimit = 0.2, _adjst = 0.02>> <</if>> <<if $SecExp.edicts.defense.lowerRequirements == 1>> Your lax physical requirements to enter the militia allows for a greater number of citizens to join. - <<set _recruitLimit += 0.02>> + <<set _recruitLimit += _adjst>> <</if>> - <<if $SecExp.edicts.defense.noSubhumansInArmy == 1>> - Guaranteeing the purity of your armed forces comes with a small loss of potential recruits. - <<set _recruitLimit -= 0.02>> - <</if>> - <<if $SecExp.edicts.defense.pregExemption == 1>> - Many pregnant citizens prefer to avoid military service not to endanger themselves and their children. - <<set _recruitLimit -= 0.02>> + <<if $SecExp.edicts.defense.militia >= 3>> + <<if $SecExp.edicts.defense.militaryExemption === 1>> + Some citizens prefer to contribute to the arcology's defense through financial support rather than military service, making you @@.yellowgreen;a small sum.@@ + <<set _recruitLimit -= _adjst>> + <<run cashX(250, "securityExpansion")>> + <</if>> + <<if $SecExp.edicts.defense.noSubhumansInArmy === 1>> + Guaranteeing the purity of your armed forces comes with a small loss of potential recruits. + <<set _recruitLimit -= _adjst>> + <</if>> + <<if $SecExp.edicts.defense.pregExemption === 1>> + Many pregnant citizens prefer to avoid military service not to endanger themselves and their children. + <<set _recruitLimit -= _adjst>> + <</if>> <</if>> - <</if>> - <<if $militiaFounded == 1>> + <<set _recruits = Math.trunc((_recruitLimit * $ACitizens - App.SecExp.Manpower.totalMilitia) / 20 * _recruitsMultiplier)>> <<if _recruits > 0>> <<set $militiaFreeManpower += _recruits>> This week <<print _recruits>> citizens joined the militia. - <<elseif $militarizedSociety == 1>> + <<elseif $SecExp.edicts.defense.militia === 5>> No citizens joined your militia this week because your society is as militarized as it can get. - <<elseif $recruitVolunteers == 1>> + <<elseif $SecExp.edicts.defense.militia === 2>> There are no more citizens willing to join the arcology armed forces. You'll need to enact higher recruitment edicts if you need more manpower. <<else>> No more citizens could be drafted into your militia. You'll need to enact higher recruitment edicts if you need more manpower. @@ -518,141 +480,28 @@ Due to the deterioration of the old world countries, organized crime focuses mor <<else>> This week no new mercenaries reached the arcology. <</if>> - <<if $mercFreeManpower > 2000>> - <<set $mercFreeManpower = 2000>> - <</if>> + <<set $mercFreeManpower = Math.clamp($mercFreeManpower, 0, 2000)>> <br> <</if>> <<if App.SecExp.battle.activeUnits() > 0>> /* loyalty and training */ - <<set _sL = $slaveUnits.length>> + <<set _sL = $slaveUnits.length, _mL = $militiaUnits.length, _meL = $mercUnits.length>> <<for _i = 0; _i < _sL; _i++>> - <<set _loyaltyChange = 0>> - <br> - <br> $slaveUnits[_i].platoonName: - <<if $SecExp.buildings.barracks.upgrades.loyaltyMod >= 1>> - <<set _loyaltyChange += 2 * $SecExp.buildings.barracks.upgrades.loyaltyMod>> - is periodically sent to the indoctrination facility in the barracks for thought correction therapy. - <</if>> - <<if $slaveUnits[_i].commissars >= 1>> - The commissars attached to the unit carefully monitor the officers and grunts for signs of insubordination. - <<set _loyaltyChange += 2 * $slaveUnits[_i].commissars>> - <</if>> - <<if $SecExp.edicts.defense.soldierWages == 2>> - The slaves greatly appreciate the generous wage given to them for their service as soldiers. Occasions to earn money for a slave are scarce after all. - <<set _loyaltyChange += random(5,10)>> - <<elseif $SecExp.edicts.defense.soldierWages == 1>> - The slaves appreciate the wage given to them for their service as soldiers, despite it being just adequate. Occasions to earn money for a slave are scarce after all. - <<set _loyaltyChange += random(-5,5)>> - <<else>> - The slaves do not appreciate the low wage given to them for their service as soldiers, but occasions to earn money for a slave are scarce, so they're not too affected by it. - <<set _loyaltyChange -= random(5,10)>> - <</if>> - <<if $SecExp.edicts.defense.privilege.slaveSoldier == 1>> - Allowing them to hold material possessions earns you their devotion and loyalty. - <<set _loyaltyChange += random(1,2)>> - <</if>> - <<if _loyaltyChange > 0>> - The loyalty of this unit @@.green;increased@@ this week. - <<elseif _loyaltyChange == 0>> - The loyalty of this unit @@.yellow;did not change@@ this week. - <<else>> - The loyalty of this unit @@.red;decreased@@ this week. - <</if>> - <<set $slaveUnits[_i].loyalty = Math.clamp($slaveUnits[_i].loyalty + _loyaltyChange,0,100)>> - <<if $slaveUnits[_i].training < 100 && $SecExp.buildings.barracks.upgrades.training >= 1>> - <br>The unit is able to make use of the training facilities to better prepare its soldiers, slowly increasing their experience level. - <<set $slaveUnits[_i].training += random(2,4) * 1.5 * $SecExp.buildings.barracks.upgrades.training>> - <</if>> + <<includeDOM App.SecExp.humanUnitLoyaltyChanges($slaveUnits[_i])>> <</for>> - <<set _mL = $militiaUnits.length>> <<for _i = 0; _i < _mL; _i++>> - <br> - <br>$militiaUnits[_i].platoonName: - <<set _loyaltyChange = 0>> - <<if $SecExp.buildings.barracks.upgrades.loyaltyMod >= 1>> - <<set _loyaltyChange += 2 * $SecExp.buildings.barracks.upgrades.loyaltyMod>> - is periodically sent to the indoctrination facility in the barracks for thought correction therapy. - <</if>> - <<if $militiaUnits[_i].commissars >= 1>> - The commissars attached to the unit carefully monitor the officers and grunts for signs of insubordination. - <<set _loyaltyChange += 2 * $militiaUnits[_i].commissars>> - <</if>> - <<if $SecExp.edicts.defense.soldierWages == 2>> - The soldiers greatly appreciate the generous wage given to them for their service. They are proud to defend their homes while making a small fortune out of it. - <<set _loyaltyChange += random(5,10)>> - <<elseif $SecExp.edicts.defense.soldierWages == 1>> - The soldiers appreciate the wage given to them for their service, despite it being just adequate. They are proud to defend their homes, though at the cost of possible financial gains. - <<set _loyaltyChange += random(-5,5)>> - <<else>> - The soldiers do not appreciate the low wage given to them for their service. Their sense of duty keeps them proud of their role as defenders of the arcology, but many do feel its financial weight. - <<set _loyaltyChange -= random(5,10)>> - <</if>> - <<if $SecExp.edicts.defense.privilege.militiaSoldier == 1>> - Allowing them to avoid rent payment for their military service earns you their happiness and loyalty. - <<set _loyaltyChange += random(1,2)>> - <</if>> - <<if _loyaltyChange > 0>> - The loyalty of this unit @@.green;increased@@ this week. - <<elseif _loyaltyChange == 0>> - The loyalty of this unit @@.yellow;did not change@@ this week. - <<else>> - The loyalty of this unit @@.red;decreased@@ this week. - <</if>> - <<set $militiaUnits[_i].loyalty = Math.clamp($militiaUnits[_i].loyalty + _loyaltyChange,0,100)>> - <<if $militiaUnits[_i].training < 100 && $SecExp.buildings.barracks.upgrades.training >= 1>> - <br>The unit is able to make use of the training facilities to better prepare its soldiers, slowly increasing their experience level. - <<set $militiaUnits[_i].training += random(2,4) * 1.5 * $SecExp.buildings.barracks.upgrades.training>> - <</if>> + <<includeDOM App.SecExp.humanUnitLoyaltyChanges($militiaUnits[_i])>> <</for>> - <<set _meL = $mercUnits.length>> <<for _i = 0; _i < _meL; _i++>> - <br> - <br>$mercUnits[_i].platoonName: - <<set _loyaltyChange = 0>> - <<if $SecExp.buildings.barracks.upgrades.loyaltyMod >= 1>> - <<set _loyaltyChange += 2 * $SecExp.buildings.barracks.upgrades.loyaltyMod>> - is periodically sent to the indoctrination facility in the barracks for thought correction therapy. - <</if>> - <<if $mercUnits[_i].commissars >= 1>> - The commissars attached to the unit carefully monitor the officers and grunts for signs of insubordination. - <<set _loyaltyChange += 2 * $mercUnits[_i].commissars>> - <</if>> - <<if $SecExp.edicts.defense.soldierWages == 2>> - The mercenaries greatly appreciate the generous wage given to them for their service. After all coin is the fastest way to reach their hearts. - <<set _loyaltyChange += random(5,10)>> - <<elseif $SecExp.edicts.defense.soldierWages == 1>> - The mercenaries do not appreciate the barely adequate wage given to them for their service. Still their professionalism keeps them determined to finish their contract. - <<set _loyaltyChange += random(-5,5)>> - <<else>> - The mercenaries do not appreciate the low wage given to them for their service. Their skill would be better served by a better contract and this world does not lack demand for guns for hire. - <<set _loyaltyChange -= random(5,10)>> - <</if>> - <<if $SecExp.edicts.defense.privilege.mercSoldier == 1>> - Allowing them to keep part of the loot gained from your enemies earns you their trust and loyalty. - <<set _loyaltyChange += random(1,2)>> - <</if>> - <<if _loyaltyChange > 0>> - The loyalty of this unit @@.green;increased@@ this week. - <<elseif _loyaltyChange == 0>> - The loyalty of this unit @@.yellow;did not change@@ this week. - <<else>> - The loyalty of this unit @@.red;decreased@@ this week. - <</if>> - <<set $mercUnits[_i].loyalty = Math.clamp($mercUnits[_i].loyalty + _loyaltyChange,0,100)>> - <<if $mercUnits[_i].training < 100 && $SecExp.buildings.barracks.upgrades.training >= 1>> - <br>The unit is able to make use of the training facilities to better prepare its soldiers, slowly increasing their experience level. - <<set $mercUnits[_i].training += random(2,4) * 1.5 * $SecExp.buildings.barracks.upgrades.training>> - <</if>> + <<includeDOM App.SecExp.humanUnitLoyaltyChanges($mercUnits[_i])>> <</for>> <</if>> <</if>> <<if $brainImplantProject > 0 && $brainImplant < 106>> - <br> - <br> + <br><br> <<set $brainImplant += $brainImplantProject>> <<if 100 - $brainImplant <= 0>> The project has been completed! @@ -671,9 +520,7 @@ Due to the deterioration of the old world countries, organized crime focuses mor <</if>> <<if $currentUpgrade.time > 0>> - <br> - <br> - In the research lab, <<print $currentUpgrade.name>> + <br><br>In the research lab, <<print $currentUpgrade.name>> <<switch $currentUpgrade.name>> <<case "adaptive armored frames" "advanced synthetic alloys" "ceramo-metallic alloys" "rapid action stimulants" "universal cyber enhancements" "remote neural links" "combined training regimens with the special force">> are @@ -740,7 +587,6 @@ Due to the deterioration of the old world countries, organized crime focuses mor in the following days. <<set $completedUpgrades.push($currentUpgrade.ID)>> <<else>> - It will be finished in <<if $currentUpgrade.time == 1>> one week.<<else>><<print $currentUpgrade.time>> weeks.<</if>> + It will be finished in <<= numberWithPluralOne($currentUpgrade.time, "week")>>. <</if>> -<</if>> -<br> +<</if>> \ No newline at end of file diff --git a/src/uncategorized/economics.tw b/src/uncategorized/economics.tw index 4fcf9dd6f45..d16865b67ff 100644 --- a/src/uncategorized/economics.tw +++ b/src/uncategorized/economics.tw @@ -18,8 +18,7 @@ <<if $useTabs == 0>> <<include "Neighbors Development">> -<br><br> - +<br> <<include "Arcology Management">> <<if $FSAnnounced > 0>> @@ -33,19 +32,13 @@ <</if>> <<if $secExpEnabled == 1>> - <br><br> + <br> <<include "authorityReport">> - <br><br> <<include "securityReport">> <</if>> -<br><br> - <<include "Reputation">> - -<br><br> - -<<include "Personal Business">> +<br> <<include "Personal Business">> <<if $PC.boobs >= 1000 || $PC.pregKnown == 1 || $playerAging != 0>> <br><br> diff --git a/src/uncategorized/persBusiness.tw b/src/uncategorized/persBusiness.tw index 2f2a0d510ae..1411455f684 100644 --- a/src/uncategorized/persBusiness.tw +++ b/src/uncategorized/persBusiness.tw @@ -1047,5 +1047,4 @@ The RomanFS may need further tweaking (it probably got weaker). Could increase t <</if>> <</if>> -<<if $SF.Toggle && $SF.Active >= 1>> <<= App.SF.AAR()>> <</if>> -<br> +<<if $SF.Toggle && $SF.Active >= 1>> <<= App.SF.AAR()>> <</if>> \ No newline at end of file diff --git a/src/uncategorized/reputation.tw b/src/uncategorized/reputation.tw index 3275486150e..63da53baf26 100644 --- a/src/uncategorized/reputation.tw +++ b/src/uncategorized/reputation.tw @@ -1,6 +1,6 @@ :: Reputation [nobr] -<<if $useTabs == 0>>__Reputation__<</if>> +<<if $useTabs == 0>><br>__Reputation__<</if>> <br> On formal occasions, you are announced as <<= PCTitle()>>. @@ -896,5 +896,4 @@ _enduringRep = $enduringRep>> <<else>> The Societal Elite can think what they want, they know better than to try and cross you again. <</if>> -<</if>> -<br> +<</if>> \ No newline at end of file -- GitLab