Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @name pAIperclip Automation Engine
- // @namespace http://tampermonkey.net/
- // @version 2.0
- // @description Automation for paperclip game https://www.decisionproblem.com/paperclips/index2.html
- // @author Bean
- // @match https://www.decisionproblem.com/paperclips/index2.html
- // @icon https://www.google.com/s2/favicons?domain=decisionproblem.com
- // @grant none
- // @run-at document-idle
- // ==/UserScript==
- // Automation for paperclip game https://www.decisionproblem.com/paperclips/index2.html
- zClick = function (btn) {
- try {
- var zomBMC = document.querySelector(`#${btn}`);
- if(! (zomBMC.disabled) ) {
- zomBMC.click();
- }
- } catch (e) {
- }
- }
- zAuto = function() {
- if(trust == 100 || harvesterFlag) {
- clearInterval(zTogInt);
- zClick('projectButton35');
- zTogInt = setInterval(zAuto2, 1000);
- return;
- }
- if(trust < 100) {
- zProjects();
- }
- clipClick(100);
- zClippers();
- zCompute();
- zSmartWire();
- zSmartPrice();
- for (let i = 0; i < 10; i++) {
- setTimeout(zQuantum, i*100);
- }
- zYomi();
- if(investmentEngineFlag) {
- if(((adCost*3 < portTotal) && marketingLvl<10) || (avgRev > adCost/5)) {
- zClick('btnExpandMarketing');
- }
- }
- else {
- zClick('btnExpandMarketing');
- }
- setTimeout(zStockMarket, 250);
- };
- zAuto2 = function() {
- if(spaceFlag) {
- clearInterval(zTogInt);
- zTogInt = setInterval(zAuto3, 1000);
- return;
- }
- zCompute();
- for (let i = 0; i < 10; i++) {
- setTimeout(zQuantum, i*100);
- };
- zYomi();
- zProjects();
- zManageSolars();
- zAutoSwarm(zSolarSwarm);
- }
- zGetDemand = function(){
- var dDemand = (harvesterLevel * dronePowerRate/100) + (wireDroneLevel * dronePowerRate/100);
- var fDemand = (factoryLevel * factoryPowerRate/100);
- return (dDemand + fDemand)*100;
- }
- zBuyThings = function() {
- if(!factoryFlag) return;
- if(!harvesterFlag) return;
- if(!wireDroneFlag) return;
- if(zGetDemand()>=((farmLevel*50)*0.9)) {
- makeFarm(Math.floor(farmLevel/2) + 1);
- if(wire == 0) {
- if(harvesterLevel > wireDroneLevel) {
- makeWireDrone(1);
- } else {
- makeHarvester(1);
- }
- }
- return;
- }
- if((clipRate > ((wireDroneCost + harvesterCost)*1000)) && wire == 0) {
- zGetDrones();
- }
- if(clipRate > 21364364999982055000) {
- try {
- if(project102.element.style.visibility == "visible" && !project102.flag) {
- return;
- }
- } catch (e) {
- }
- }
- if(clipRate*3 > factoryCost || (factoryLevel >= 10 && factoryLevel < 20 && clipRate*20 > factoryCost)) {
- zClick('btnMakeFactory');
- return;
- }
- if(factoryLevel == 4 && clipRate >= 300000000000) {
- zClick('btnMakeFactory');
- return;
- }
- try {
- if(parseInt(document.getElementById('performance').innerHTML.replaceAll(',',''))>100
- && factoryLevel<10) {
- zClick('btnMakeFactory');
- return;
- }
- } catch (e) {};
- if(clipRate*10 > factoryCost && (!(factoryCost/1000) > harvesterCost)) {
- zClick('btnMakeFactory');
- return;
- }
- if(factoryCost > farmCost*10 || unusedClips > farmCost || clipRate*3 > farmCost) {
- zClick('btnMakeFactory');
- }
- zGetDrones();
- if((batteryLevel<1000) || (farmLevel > batteryLevel)) {
- let newBattery = 1000-batteryLevel;
- makeBattery(newBattery);
- }
- }
- zGetDrones = function () {
- if(harvesterLevel > wireDroneLevel) {
- makeWireDrone(Math.round(wireDroneLevel*0.1)<=1000000?1000000:Math.round(wireDroneLevel*0.1));
- } else {
- makeHarvester(Math.round(harvesterLevel*0.1)<=1000000?1000000:Math.round(harvesterLevel*0.1));
- }
- }
- zSolarSwarm = 150;
- zManageSolars = function() {
- if(farmLevel == 0) {
- makeFarm(1);
- }
- if(wireDroneFlag && wireDroneLevel == 0) {
- makeWireDrone(1);
- return;
- }
- if(harvesterFlag && harvesterLevel == 0) {
- makeHarvester(1);
- return;
- }
- if(factoryFlag && factoryLevel == 0){
- makeFactory(1);
- if(factoryLevel == 0) factoryLevel = 1;
- return;
- }
- if(!factoryFlag || !harvesterFlag || !wireDroneFlag) {
- return;
- }
- if(availableMatter == 0) {
- zSolarSwarm = 199;
- zBuyThings();
- if((availableMatter == 0) && (acquiredMatter == 0) && (wire == 0) && (clipRate == 0)){
- zSolarSwarm = 200;
- factoryReboot();
- if(memory >= 120) {
- wireDroneReboot();
- harvesterReboot();
- if(storedPower >= 10000000){
- farmReboot();
- return;
- }
- }
- }
- return;
- } else {
- zBuyThings();
- }
- };
- zSpaceAutoSwarm = 190;
- zProbeManageDelay = 5;
- zProbeManageDelayCount = 0;
- zAuto3 = function() {
- if(!spaceFlag & !harvesterFlag){
- clearInterval(zTogInt);
- zTogInt = setInterval(zAuto, 1000);
- return;
- }
- zCompute();
- if(clipRate == 0) {
- zAutoSwarm(199);
- } else {
- zAutoSwarm(zSpaceAutoSwarm);
- }
- zClick('btnIncreaseProbeTrust');
- if(maxTrust==probeTrust && !(probeTrust%10)) zClick('btnIncreaseMaxTrust');
- for (let i = 0; i < 10; i++) {
- setTimeout(zQuantum, i*100);
- };
- zYomi();
- zProbeManageDelayCount++;
- if(zProbeManageDelayCount == zProbeManageDelay){
- zManageProbes();
- zProbeManageDelayCount = 0;
- }
- makeProbe();
- zProjects();
- }
- zResetProbe = function() {
- for(let i = 0; i < probeTrust; i++) {
- setTimeout(zProbeResetButtons, 50 * i);
- }
- }
- zProbeResetButtons = function() {
- Array.from(document.querySelectorAll("button[id*=Lower]")).filter((function(e){return !e.id.includes('Price')})).filter(function (e){ return !e.disabled}).forEach(e => e.click());
- }
- zSetProbe = function(speed, explore, rep, haz, fac, harv, wire, comb) {
- if(probeSpeed > speed) zClick('btnLowerProbeSpeed');
- if(probeNav > explore) zClick('btnLowerProbeNav');
- if(probeRep > rep) zClick('btnLowerProbeRep');
- if(probeHaz > haz) zClick('btnLowerProbeHaz');
- if(probeFac > fac) zClick('btnLowerProbeFac');
- if(probeHarv > harv) zClick('btnLowerProbeHarv');
- if(probeWire > wire) zClick('btnLowerProbeWire');
- if(probeCombat > comb) zClick('btnLowerProbeCombat');
- if(probeSpeed > speed) zClick('btnLowerProbeSpeed');
- if(probeNav > explore) zClick('btnLowerProbeNav');
- if(probeRep > rep) zClick('btnLowerProbeRep');
- if(probeHaz > haz) zClick('btnLowerProbeHaz');
- if(probeFac > fac) zClick('btnLowerProbeFac');
- if(probeHarv > harv) zClick('btnLowerProbeHarv');
- if(probeWire > wire) zClick('btnLowerProbeWire');
- if(probeCombat > comb) zClick('btnLowerProbeCombat');
- if(probeSpeed < speed) zClick('btnRaiseProbeSpeed');
- if(probeCombat < comb) zClick('btnRaiseProbeCombat');
- if(probeSpeed < speed) zClick('btnRaiseProbeSpeed');
- if(probeRep < rep) zClick('btnRaiseProbeRep');
- if(probeRep < rep) zClick('btnRaiseProbeRep');
- if(probeNav < explore) zClick('btnRaiseProbeNav');
- if(probeHaz < haz) zClick('btnRaiseProbeHaz');
- if(probeFac < fac) zClick('btnRaiseProbeFac');
- if(probeHarv < harv) zClick('btnRaiseProbeHarv');
- if(probeWire < wire) zClick('btnRaiseProbeWire');
- if(probeNav < explore) zClick('btnRaiseProbeNav');
- if(probeHaz < haz) zClick('btnRaiseProbeHaz');
- if(probeFac < fac) zClick('btnRaiseProbeFac');
- if(probeHarv < harv) zClick('btnRaiseProbeHarv');
- if(probeWire < wire) zClick('btnRaiseProbeWire');
- if(probeCombat < comb) zClick('btnRaiseProbeCombat');
- }
- zMakeDrones = function(speed, explore, rep, haz, fac, harv, wire, comb) {
- for(let i = 0; i < probeTrust*2;i++) {
- setTimeout((function(){
- zSetProbe(speed, explore, rep, haz, fac, harv, wire, comb);
- })
- ,i*50);
- }
- }
- zProbesRequire = true;
- zDrifterCounter = 0;
- zDrifterCounterTrigger = 5;
- zdroneVersion = 0;
- zToggleBuild = 0;
- zManageProbes = function() {
- if(zdroneVersion == 0) {
- zMakeDrones(1,1,(probeTrust-10),5,1,1,1,0);
- zdroneVersion++;
- }
- if(zdroneVersion == 1 && project131.flag) {
- zDrifterCounter++;
- if(zDrifterCounter = zDrifterCounterTrigger) zDrifterCounter = 0;
- if(zDrifterCounter == zDrifterCounterTrigger-2) {
- zMakeDrones(6,0,0,8,0,0,0,6)
- }
- if(drifterCount/100 > probeCount) {
- zMakeDrones(0,0,(probeTrust-10),10,0,0,0,0);
- } else {
- if(drifterCount > probeCount/4) {
- zMakeDrones(6,0,(probeTrust-16),5,0,0,0,5);
- } else {
- zToggleBuild++;
- if(zToggleBuild >= 5) {
- zToggleBuild = 0;
- zMakeDrones(1,1,(probeTrust-14),5,1,1,1,4);
- } else {
- zMakeDrones(0,0,(probeTrust-8),5,0,0,0,3);
- }
- }
- }
- } else {
- zMakeDrones(1,1,(probeTrust-10),5,1,1,1,0)
- }
- }
- zSmartWire = function() {
- if(wire <= 10000) {
- buyWire();
- return;
- }
- if((clipRate * 60) > wire) {
- for (let i = 0; i < 10; i++) {
- if((clipRate*2) > wire) buyWire();
- if(wireBasePrice > wireCost) {
- buyWire()
- }
- }
- } else if(wire< (clipRate*10)) {
- buyWire();
- }
- }
- zTogAllBool = true;
- zTogAll = function() {
- if(zTogAllBool) {
- clearTimeout(zTogInt);
- } else {
- zTogInt = setInterval(zAuto, 1000);
- }
- zTogAllBool = !zTogAllBool;
- }
- zCompute = function () {
- if(boredomFlag) zClick('btnEntertainSwarm');
- try {
- if(project125.element.style.visibility == "visible" && !project125.flag) {
- zClick('btnAddProc');
- return;
- }
- } catch (e) {}
- if(memory < 3) {zClick('btnAddMem'); return; }
- if(processors <3) {zClick('btnAddProc'); return; }
- if(memory < 4) {zClick('btnAddMem'); return; }
- if(processors <5) {zClick('btnAddProc'); return; }
- if(memory < 70) {zClick('btnAddMem'); return; }
- if(processors < 20) {zClick('btnAddProc'); return; }
- if(memory < 120) {zClick('btnAddMem'); return; }
- if(processors < 75) {zClick('btnAddProc'); return; }
- if(memory < 175) {zClick('btnAddMem'); return; }
- if(processors < 400) {zClick('btnAddProc'); return; }
- if(memory < 250) {zClick('btnAddMem'); return; }
- zClick('btnAddProc');
- zClick('btnAddProc');
- zClick('btnAddProc');
- zClick('btnAddProc');
- zClick('btnAddProc');
- }
- zSmartPrice = function() {
- if(demand < 10) {
- zClick('btnLowerPrice');
- return;
- }
- if(clips < 10000) {
- if(avgSales < 100) {
- zClick('btnLowerPrice')
- } else {
- zClick('btnRaisePrice');
- }
- return;
- }
- if((clipRate * 2) > unsoldClips) {
- zClick('btnRaisePrice');
- } else {
- if(avgSales < clipRate-1) {
- zClick('btnLowerPrice')
- } else {
- zClick('btnRaisePrice');
- }
- }
- }
- zQuantum = function() {
- if (qChips[0].active == 1){
- var q = 0;
- for (var i = 0; i<qChips.length; i++){
- q = q+qChips[i].value;
- }
- var qq = Math.ceil(q*360);
- if(qq > 0) qComp();
- }
- }
- zStockCycle = 0;
- zStockCycleEnd = 120;
- zStockMarket = function() {
- if(!investmentEngineFlag) return;
- if(portTotal > 640000000 || portTotal+funds > 640000000) {
- zClick('btnWithdraw');
- return;
- }
- if(investLevel < 4) investStratElement.value='low';
- if(investLevel == 4) {
- investStratElement.value='med';
- } else if(investLevel == 7) {
- investStratElement.value='hi';
- }
- if(clipRate == 0){
- zClick('btnWithdraw');
- return;
- }
- if(trust >= 95 && (portTotal < 564000000)) {
- zClick('btnInvest');
- return;
- }
- try {
- if(project37.element.style.visibility == "visible" && !project37.flag) {
- if(portTotal > 2000000) {
- zClick('btnWithdraw');
- return;
- }
- }
- } catch (e) {}
- try {
- if(project38.element.style.visibility == "visible" && !project38.flag) {
- if(portTotal > 20000000) {
- zClick('btnWithdraw');
- return;
- }
- }
- } catch (e) {}
- if(!megaClipperFlag) {
- zClick('btnInvest');
- return;
- }
- try {
- if(project40b.element.style.visibility == "visible" && (portTotal > 564000000)) {
- if(portTotal > 20000000) {
- zClick('btnWithdraw');
- return;
- }
- }
- } catch (e) {}
- zStockCycle++;
- if(zStockCycle > zStockCycleEnd-2) { zClick('btnWithdraw');
- } else {
- zClick('btnInvest');
- }
- if(zStockCycle == zStockCycleEnd) {
- zStockCycle = 0;
- }
- }
- zYomi = function() {
- if(!strategyEngineFlag) return;
- let highest = 0;
- Array.from(stratPickerElement).forEach(e => {if(e.value!=10) if(e.value>highest) highest=e.value});
- if(highest>3) highest = 3;
- stratPickerElement.value = highest;
- zClick('btnNewTournament');
- zClick('btnRunTournament');
- }
- zClippers = function() {
- try {
- if(project38.element.style.visibility == "visible" && !project38.flag) {
- if(portTotal > 20000000) {
- return;
- }
- }
- } catch (e) {}
- if(wire < 10000) return;
- if(megaClipperFlag) {
- if(megaClipperCost * 10 < portTotal || megaClipperCost - funds > 640000000 || portTotal < 1000000) zClick('btnMakeMegaClipper');
- } else {
- zClick('btnMakeClipper');
- }
- if(investLevel < 10) zClick('btnImproveInvestments');
- }
- zAutoSwarm = function(number){
- if(swarmFlag) {
- if(document.getElementById('giftCountdown').innerHTML == '2 seconds' || document.getElementById('giftCountdown').innerHTML == '1 second') {
- sliderElement.value = 200;
- } else {
- sliderElement.value = number;
- }
- }
- }
- zProjects = function() {
- if(creativity < 0) creativity = 0;
- if(!projectsFlag) return;
- var zPhotonics = false;
- Array.from(document.querySelectorAll('button[id*="projectButton"]')).filter((function(e){return e.innerHTML.includes('Photonic Chip');})).forEach(e => {if(!e.disabled){zPhotonics=true;e.click();}});
- if(zPhotonics) return;
- var zClicked = false;
- Array.from(document.querySelectorAll('button.projectButton')).filter((function(e){return e.style.visibility=="visible"})).forEach(e => {
- if(e.innerHTML.includes('Threnody')) {
- if(honor > 91117) {
- return;
- }
- }
- if(e.innerHTML.includes('AutoTourney')) return;
- if(e.innerHTML.includes('Universe Within')) e.click();
- if(e.innerHTML.includes('Monument to the Driftwar') && (honor < 91117) ) {
- e.click(); zClicked = true;
- }
- if(e.id!="projectButton217" && !zClicked && !e.disabled)
- {
- if(!window[e.id.replace('Button','')].flag || e.innerHTML.includes('honor') || e.id == 'projectButton40b') {
- e.click();zClicked=true;
- }
- }})
- }
- zTogInt = setInterval(zAuto, 1000);
- displayMessage('Automation enabled!');
Add Comment
Please, Sign In to add comment