├── .gitattributes ├── index.html ├── js ├── achievement.js ├── crafting.js ├── garden.js ├── icons.js ├── inventory.js ├── kitchen.js ├── lab.js ├── navigation.js ├── news.js ├── number_format.js ├── potatopedia.js ├── prestige.js ├── settings.js └── shop.js ├── sprites ├── baked_potato.png ├── chips.png ├── coin_icon.png ├── discord_icon.png ├── dna_icon.png ├── fries.png ├── icon.png ├── icon_small.png ├── locked_potatopedia.png ├── mashed_potato_icon.png ├── patreon_icon.png ├── potato1.png ├── potato10.png ├── potato11.png ├── potato12.png ├── potato13.png ├── potato14.png ├── potato15.png ├── potato16.png ├── potato2.png ├── potato3.png ├── potato4.png ├── potato5.png ├── potato6.png ├── potato7.png ├── potato8.png ├── potato9.png ├── potato_empty.png ├── potato_template.png ├── seeds.png └── seeds_icon.png └── style.css /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | One Potato Incremental v0.3.1.1 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 |

One Potato Incremental, a minimalist farming simulator (v0.3.1.1) 23 | 24 | 25 |

26 | 27 | 28 | 29 | 30 | 33 | 34 | 35 | 74 | 75 | 357 | 358 |
31 |
 
32 |
36 |

- Inventory -

37 |
38 |
    39 |
  • 40 | 41 | 42 | 43 | No seeds 44 |
  • 45 |
  • 46 | 47 | 48 | 49 | No potato dna 50 |
  • 51 |
  • 52 | 53 | 54 | 55 | No coins 56 |
  • 57 |
  • 58 | 59 | 60 | 61 | No mashed potatoes 62 |
  • 63 |
64 | 65 |

- Crafting -

66 | 67 | 71 | 72 | 73 |
76 | 77 | 78 | 106 | 107 | 108 | 109 | 118 | 119 | 120 | 121 | 354 | 355 |
79 | 80 | 81 | 87 | 103 | 104 |
82 |
83 |
84 |
85 |
86 |
88 |


No potato is growing here

89 | 90 | 91 | 95 |
96 | 97 | 102 |
105 |
110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 |
122 | 134 | 135 | 142 | 189 | 200 | 229 | 343 | 353 |
356 |
359 | 360 | 365 | 366 | -------------------------------------------------------------------------------- /js/achievement.js: -------------------------------------------------------------------------------- 1 | 2 | var achievements = [] 3 | var play_time = 0 4 | 5 | function incrementPlayTime() { 6 | play_time += 1 7 | if (coins_per_second) { 8 | coins += (coins_per_second * fry_multiplier) 9 | updateCoinsText() 10 | } 11 | setTimeout(incrementPlayTime,1000) 12 | if (play_time > 3600) { 13 | awardAchievement(7,0) 14 | if (play_time > 72000) { 15 | awardAchievement(7,1) 16 | if (play_time > 180000) { 17 | awardAchievement(5,2) 18 | } 19 | } 20 | } 21 | } 22 | incrementPlayTime() 23 | 24 | function awardAchievement(x,y) { 25 | if (achievements[x+(8*y)] == 1) { 26 | return 27 | } 28 | achievements[x+(8*y)] = 1 29 | document.getElementById("achievement_"+x+"_"+y).style.background = "#8f8" 30 | if (active_tab != "achievement") { 31 | document.getElementById("achievement_tab_button").style["background-color"] = "#8f8" 32 | } 33 | if (x == 0 && y == 0) { 34 | document.getElementById("lab_tab_button").disabled = false 35 | document.getElementById("achievement_tab_button").disabled = false 36 | } else if (x == 2 && y == 0) { 37 | document.getElementById("shop_tab_button").disabled = false 38 | document.getElementById("sell_potato").style.display = "block" 39 | prestige_1_buff = 2; 40 | } else if (x == 3 && y == 0) { 41 | document.getElementById("kitchen_tab_button").disabled = false 42 | } else if (x == 4 && y == 0) { 43 | document.getElementById("potatopedia_tab_button").disabled = false 44 | } else if (x == 5 && y == 0) { 45 | document.getElementById("make_fries").disabled = false 46 | } else if (x == 6 && y == 0) { 47 | document.getElementById("prestige_tab_button").disabled = false 48 | } else if (x == 2 && y == 2) { 49 | document.getElementById("make_chips").disabled = false 50 | document.getElementById("auto_cook_3").classList.add("microwave_button"); 51 | document.getElementById("auto_cook_3").innerHTML = "3"; 52 | document.getElementById("auto_cook_3").disabled = false 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /js/crafting.js: -------------------------------------------------------------------------------- 1 | 2 | function makeSeeds() { 3 | if (have_potato == true) { 4 | have_potato = false 5 | seeds += (seed_upgrade_level + 2) * 10**(potato_tier-1) 6 | awardAchievement(0,0) 7 | } 8 | updatePotatoText() 9 | updateSeedsText() 10 | } 11 | 12 | function sellPotato() { 13 | if (have_potato == true && seeds > 0) { 14 | have_potato = false 15 | coins += 1 * 7**(potato_tier-1) 16 | } 17 | updatePotatoText() 18 | updateCoinsText() 19 | } 20 | 21 | function buySeed() { 22 | if (coins >= 1) { 23 | coins -= 1 24 | seeds += 1 25 | updateSeedsText() 26 | updateCoinsText() 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /js/garden.js: -------------------------------------------------------------------------------- 1 | 2 | var colors = ["#f00","#f80","#ff0","#0f0","#0ff","#00f","#f0f","#f00","#f80","#ff0","#0f0","#0ff","#00f","#f0f","#f00","#f80","#ff0","#0f0","#0ff","#00f","#f0f","#f00","#f80"] 3 | var potato_planted = false 4 | var growth_progress = 0 5 | var auto_plant 6 | var auto_grow = undefined 7 | var potato_stage = 1 8 | var potato_stages = [ 9 | "", 10 | "", // terrible potato 11 | "", // pale potato 12 | "", // meh potato 13 | "", // robust potato 14 | "", // hearty potato 15 | "", // smooth potato 16 | "", // blue potato 17 | "", // 8bit potato 18 | "", // error potato 19 | "", // photorealistic potato 20 | "", // antimatter potato 21 | "", // shadow potato 22 | "", // cookie potato 23 | "", // fire potato 24 | "", // ice potato 25 | ""] // legendary potato 26 | var potato_stage_text = [ 27 | "Seeds", 28 | "Terrible Potato", 29 | "Pale Potato", 30 | "Meh Potato", 31 | "Robust Potato", 32 | "Hearty Potato", 33 | "Smooth Potato", 34 | "Blue Potato", 35 | "8bit Potato", 36 | "Error Potato", 37 | "Photorealistic Potato", 38 | "Antimatter Potato", 39 | "Shadow Potato", 40 | "Cookie Potato", 41 | "Fire Potato", 42 | "Ice Potato", 43 | "Legendary Potato" 44 | ] 45 | var potato_stage_requirements = [100,600,3000,5000,20000,100000,500000,2560000,5000000,20000000,1e+9,5e+11,1e+15,1e+19,1e+22,1e+27] 46 | 47 | function updatePlotText() { 48 | if (potato_planted == false) { 49 | document.getElementById("plot").innerHTML = "" 50 | document.getElementById("plot_info").innerHTML = "
No potato is growing here" 51 | document.getElementById("plot_progress_bar_bar").style.width = "0%" 52 | } else { 53 | document.getElementById("plot").innerHTML = potato_stages[potato_stage] 54 | document.getElementById("plot_info").innerHTML = numberFormat(growth_progress,0,1) + "/" + numberFormat(potato_stage_requirements[potato_stage]) + "
Currently Tier " + potato_stage + " (" + (potato_stage_text[potato_stage] || "ERROR 404 POTATO NOT FOUND") + ")" 55 | document.getElementById("time_to_grow").innerHTML = Math.floor(growth_progress/((1 + speed_upgrade_level) * (mashed_potatoes + 1)) * (100 * (0.8**fertilizer_level)) / 1000) + " / " + Math.floor((potato_stage_requirements[potato_stage] || 1e150)/((1 + speed_upgrade_level) * (mashed_potatoes + 1)) * (100 * (0.8**fertilizer_level)) / 1000) + "s" 56 | if (potato_stage != max_potato_tier) { 57 | document.getElementById("plot_progress_bar_bar").style.width = 1+(growth_progress/potato_stage_requirements[potato_stage])*99 + "%" 58 | } else { 59 | document.getElementById("plot_progress_bar_bar").style.width = "100%" 60 | document.getElementById("plot_progress_bar_bar").style.background = colors[potato_stage-1] 61 | document.getElementById("plot_info").innerHTML = potato_stage_requirements[potato_stage-1] + "/" + potato_stage_requirements[potato_stage-1] + "
Currently Tier " + potato_stage + " (" + (potato_stage_text[potato_stage] || "ERROR 404 POTATO NOT FOUND") + ")" 62 | } 63 | } 64 | 65 | } 66 | 67 | 68 | function autoGrow() { 69 | growth_progress += (1 + speed_upgrade_level) * (((mashed_potatoes/100)+1)**3.2) * prestige_1_buff; 70 | if (growth_progress < (potato_stage_requirements[potato_stage] || 1e150)) { 71 | auto_grow = setTimeout(autoGrow, 100 * (0.8**fertilizer_level)) 72 | } else { 73 | potato_stage += 1 74 | if (potato_stage > best_potato_seen) { 75 | best_potato_seen += 1; 76 | potatopediaUnlock(best_potato_seen); 77 | } 78 | document.getElementById("plot_progress_bar_vessel").style.background = colors[potato_stage - 1] 79 | document.getElementById("plot_progress_bar_bar").style.background = colors[potato_stage] 80 | if (potato_stage != max_potato_tier) { 81 | growth_progress = 0 82 | auto_grow = setTimeout(autoGrow, 100 * (0.8**fertilizer_level)) 83 | } 84 | if (document.getElementById("harvest_auto").checked && (document.getElementById("harvest_auto_setting").value <= potato_stage || max_potato_tier == potato_stage)) { 85 | clearInterval(auto_grow) 86 | harvest() 87 | } 88 | } 89 | updatePlotText() 90 | } 91 | 92 | function plant() { 93 | if (potato_planted == true || (have_potato == true && seeds == 0)) { 94 | return 95 | } 96 | if (seeds >= 0 && cloning_unlocked == false) { 97 | seeds -= 1 98 | } 99 | updateSeedsText() 100 | potato_planted = true 101 | potato_stage = 0 102 | setTimeout(autoGrow, 100) 103 | } 104 | 105 | function harvest() { 106 | if (!document.getElementById("plant_auto").checked) { 107 | clearInterval(auto_plant) 108 | } 109 | if (potato_stage == 0 || !potato_planted) { 110 | return 111 | } 112 | if (have_potato == true) { 113 | if (document.getElementById("harvest_auto").checked) { 114 | setTimeout(harvest, 100) 115 | } 116 | return 117 | } 118 | clearInterval(auto_grow) 119 | growth_progress = 0 120 | potato_planted = false 121 | updatePlotText() 122 | have_potato = true 123 | potato_tier = potato_stage 124 | if (auto_cook_recipie != 0) { 125 | if (auto_cook_recipie == 1) { 126 | makeBakedPotato() 127 | } 128 | else if (auto_cook_recipie == 2) { 129 | makeFries() 130 | } 131 | else if (auto_cook_recipie == 3) { 132 | makeChips() 133 | } 134 | } 135 | else if (document.getElementById("make_seeds_auto").checked) { 136 | makeSeeds() 137 | } 138 | if (document.getElementById("plant_auto").checked) { 139 | plant() 140 | auto_plant = setInterval(plant(),1000) // we keep trying until it works 141 | } 142 | updatePotatoText() 143 | document.getElementById("plot_progress_bar_vessel").style.background = "#888" 144 | document.getElementById("plot_progress_bar_bar").style.background = "#f00" 145 | if (potato_tier == 3) { 146 | awardAchievement(3,0) 147 | } else if (potato_tier == 4) { 148 | awardAchievement(4,0) 149 | } else if (potato_tier == 6) { 150 | awardAchievement(5,0) 151 | } else if (potato_tier == 8) { 152 | awardAchievement(6,0) 153 | } else if (potato_tier == 11) { 154 | awardAchievement(2,2) 155 | } else if (potato_tier == 16) { 156 | awardAchievement(7,2) 157 | } 158 | } 159 | -------------------------------------------------------------------------------- /js/icons.js: -------------------------------------------------------------------------------- 1 | 2 | var icons = [ 3 | "", 4 | "", 5 | "" 6 | ] 7 | -------------------------------------------------------------------------------- /js/inventory.js: -------------------------------------------------------------------------------- 1 | 2 | var have_potato = true 3 | var potato_tier = 1 4 | var seeds = 0 5 | var potato_dna = 0 6 | var coins = 0 7 | var coins_per_second = 0 8 | 9 | function updatePotatoText() { 10 | if (have_potato == false) { 11 | document.getElementById("potato").innerHTML = "" 12 | } else { 13 | document.getElementById("potato").innerHTML = potato_stages[potato_tier] 14 | } 15 | } 16 | 17 | function updateSeedsText() { 18 | if (seeds == 0) { 19 | document.getElementById("seeds").innerHTML = "No seeds" 20 | } 21 | document.getElementById("seeds").innerHTML = numberFormat(seeds) 22 | } 23 | 24 | function updateDNAText() { 25 | if (potato_dna == 0) { 26 | document.getElementById("potato_dna").innerHTML = "No potato dna" 27 | } 28 | document.getElementById("potato_dna").innerHTML = numberFormat(potato_dna) 29 | } 30 | 31 | function updateCoinsText() { 32 | if (coins == 0) { 33 | document.getElementById("coins").innerHTML = "No coins" 34 | } 35 | document.getElementById("coins").innerHTML = numberFormat(coins) 36 | if (coins >= 1000000) { 37 | awardAchievement(3,1) 38 | if (coins >= 1000000000) { 39 | awardAchievement(4,1) 40 | } 41 | } 42 | } 43 | 44 | function updateMashedPotatoText() { 45 | document.getElementById("mashed_potatoes").innerHTML = numberFormat(mashed_potatoes) 46 | document.getElementById("mashed_potatoes_info").innerHTML = "You have "+numberFormat(mashed_potatoes)+" , granting you a bonus "+numberFormat(Math.floor((((mashed_potatoes/100)+1)**3.2)*100)/100)+" x to growth speed" 47 | if (mashed_potatoes == 0) { 48 | document.getElementById("mashed_potatoes").innerHTML = "No mashed potatoes" 49 | } 50 | } 51 | 52 | function autoSaveGame() { 53 | if (auto_saving) { 54 | saveGame(); 55 | } 56 | } 57 | 58 | function saveGame() { 59 | // tell the game there is a save 60 | localStorage.setItem("local_game_saved",true) 61 | // basic potato related stuff 62 | localStorage.setItem("local_have_potato",Number(have_potato)) 63 | localStorage.setItem("local_potato_tier",potato_tier) 64 | localStorage.setItem("local_max_potato_tier",max_potato_tier) 65 | localStorage.setItem("local_study_progress",study_progress) 66 | // ressources 67 | localStorage.setItem("local_seeds",seeds + Number(potato_planted)) // we give a seed back if a potato was planted 68 | localStorage.setItem("local_potato_dna",potato_dna) 69 | localStorage.setItem("local_coins",coins) 70 | localStorage.setItem("local_coins_per_second",coins_per_second) 71 | localStorage.setItem("local_mashed_potatoes",mashed_potatoes) 72 | // dna stuff 73 | localStorage.setItem("local_dna_upgrade_seeds_level",seed_upgrade_level) 74 | localStorage.setItem("local_dna_upgrade_seeds_cost",seed_upgrade_cost) 75 | localStorage.setItem("local_dna_upgrade_speed_level",speed_upgrade_level) 76 | localStorage.setItem("local_dna_upgrade_speed_cost",speed_upgrade_cost) 77 | localStorage.setItem("local_seed_research_cost",seed_research_cost) 78 | // kitchen stuff 79 | localStorage.setItem("local_potato_stage_requirement",potato_stage_requirements) 80 | localStorage.setItem("local_fry_bonus",fry_bonus) 81 | // potatopedia stuff 82 | localStorage.setItem("local_best_potato_seen",best_potato_seen); 83 | // achievements 84 | localStorage.setItem("local_achievements",achievements) 85 | // shop stuff 86 | localStorage.setItem("local_auto_seeder",auto_seeder_unlocked) 87 | localStorage.setItem("local_auto_planter",auto_planter_unlocked) 88 | localStorage.setItem("local_auto_harvest",auto_harvest_unlocked) 89 | localStorage.setItem("local_fertilizer_level",fertilizer_level) 90 | localStorage.setItem("local_fertilizer_price",fertilizer_price) 91 | // prestige stuff 92 | localStorage.setItem("local_baked_potato_boost",baked_potato_boost) 93 | localStorage.setItem("local_fry_boost",fry_boost) 94 | localStorage.setItem("local_study_req",study_req) 95 | localStorage.setItem("local_study_req_cost",study_req_cost) 96 | localStorage.setItem("local_retain_automators",retain_automators) 97 | localStorage.setItem("local_autocook_unlocked",autocook_unlocked) 98 | // settings 99 | localStorage.setItem("local_notation",notation); 100 | console.log("game saved") 101 | } 102 | 103 | function loadGame() { 104 | // if there is no save game (i.e. new player/hard reset) 105 | if (localStorage.getItem("local_game_saved") != "true") { 106 | console.log("no save was found") 107 | return 108 | } 109 | // basic potato related stuff 110 | if (localStorage.getItem("local_have_potato") == "1") { 111 | have_potato = true 112 | } else { 113 | have_potato = false 114 | } 115 | potato_tier = Number(localStorage.getItem("local_potato_tier")) 116 | max_potato_tier = Number(localStorage.getItem("local_max_potato_tier")) 117 | study_progress = Number(localStorage.getItem("local_study_progress")) 118 | // ressources 119 | seeds = Number(localStorage.getItem("local_seeds")) 120 | potato_dna = Number(localStorage.getItem("local_potato_dna")) 121 | coins = Number(localStorage.getItem("local_coins")) 122 | coins_per_second = Number(localStorage.getItem("local_coins_per_second")) 123 | mashed_potatoes = Number(localStorage.getItem("local_mashed_potatoes")) 124 | updatePotatoText() 125 | updateSeedsText() 126 | updateDNAText() 127 | updateCoinsText() 128 | updateMashedPotatoText() 129 | // dna stuff 130 | seed_research_cost = Number(localStorage.getItem("local_seed_research_cost")) 131 | seed_upgrade_level = Number(localStorage.getItem("local_dna_upgrade_seeds_level")) 132 | seed_upgrade_cost = Number(localStorage.getItem("local_dna_upgrade_seeds_cost")) 133 | speed_upgrade_level = Number(localStorage.getItem("local_dna_upgrade_speed_level")) 134 | speed_upgrade_cost = Number(localStorage.getItem("local_dna_upgrade_speed_cost")) 135 | // kitchen stuff 136 | potato_stage_requirements = localStorage.getItem("local_potato_stage_requirement").split(",") 137 | for (i in potato_stage_requirements) {potato_stage_requirements[i] = Number(potato_stage_requirements[i])} 138 | fry_bonus = localStorage.getItem("local_fry_bonus").split(",") 139 | for (i in fry_bonus) {fry_bonus[i] = Number(fry_bonus[i])} 140 | fry_multiplier = 1 141 | for (i=0; i" + numberFormat(seed_upgrade_cost) + icons[1] 196 | document.getElementById("speed_upgrade").innerHTML = "Growth speed [" + (speed_upgrade_level + 1) + "]
" + numberFormat(speed_upgrade_cost) + icons[1] 197 | document.getElementById("buy_fertilizer").innerHTML = "Buy fertilizer [" + fertilizer_level + "]
" + numberFormat(fertilizer_price) + icons[2] 198 | document.getElementById("prestige_upgrade_study_req").innerHTML = "Swift Studies ["+(5-study_req)+"/4]
"+numberFormat(study_req_cost)+"" 199 | if (study_req == 1) { 200 | document.getElementById("prestige_upgrade_study_req").disabled = "true" 201 | } 202 | // settings 203 | notation = localStorage.getItem("local_notation"); 204 | } 205 | 206 | var warning_triggered = false 207 | 208 | function hardReset() { 209 | if (warning_triggered == false) { 210 | alert("Are you sure you want to reset EVERYTHING? (Press reset button again within the next 5 seconds)") 211 | warning_triggered = true 212 | setTimeout(function(){warning_triggered=false}, 4500) 213 | return 214 | } 215 | document.getElementById("harvest_auto").checked = false; 216 | document.getElementById("plant_auto").checked = false; 217 | document.getElementById("make_seeds_auto").checked = false; 218 | localStorage.setItem("local_game_saved",false) 219 | location.reload() 220 | } 221 | -------------------------------------------------------------------------------- /js/kitchen.js: -------------------------------------------------------------------------------- 1 | 2 | var food_type = "none" 3 | var auto_food_selected = "" 4 | var food_tier = 0 5 | var fry_bonus = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 6 | var fry_multiplier = 1 7 | var auto_cook = false 8 | var auto_cook_recipie = 0 9 | var auto_eating = false; 10 | 11 | function makeBakedPotato() { 12 | if (have_potato == false || seeds == 0 || food_type != "none") { 13 | return 14 | } 15 | food_type = "baked_potato" 16 | food_tier = potato_tier 17 | have_potato = false 18 | updatePotatoText() 19 | document.getElementById("plate").innerHTML = "" 20 | document.getElementById("food_info").innerHTML = "Baked Potato, Tier " + food_tier 21 | document.getElementById("food_options").style.display = "block" 22 | document.getElementById("eat_food").innerHTML = "Eat It ["+numberFormat(potato_stage_requirements[food_tier-1])+"/1]
(-1% growth time for tier " + food_tier + ")" 23 | awardAchievement(5,1) 24 | if (auto_eating) { 25 | eatFood(); 26 | } 27 | } 28 | 29 | function makeFries() { 30 | if (have_potato == false || seeds == 0 || food_type != "none") { 31 | return 32 | } 33 | food_type = "fries" 34 | food_tier = potato_tier 35 | have_potato = false 36 | updatePotatoText() 37 | document.getElementById("plate").innerHTML = "" 38 | document.getElementById("food_info").innerHTML = "Fries, Tier " + food_tier 39 | document.getElementById("food_options").style.display = "block" 40 | document.getElementById("eat_food").innerHTML = "Eat Them
(+1% coins from food)
["+fry_bonus[food_tier-1]+"/"+(100+fry_boost[food_tier-1])+"]" 41 | awardAchievement(1,2) 42 | if (auto_eating) { 43 | eatFood(); 44 | } 45 | } 46 | 47 | function makeChips() { 48 | if (have_potato == false || seeds == 0 || food_type != "none") { 49 | return 50 | } 51 | food_type = "chips" 52 | food_tier = potato_tier 53 | have_potato = false 54 | updatePotatoText() 55 | document.getElementById("plate").innerHTML = "" 56 | document.getElementById("food_info").innerHTML = "Chips, Tier " + food_tier 57 | document.getElementById("food_options").style.display = "block" 58 | document.getElementById("eat_food").innerHTML = "Eat Them
(" + numberFormat(8**(food_tier-1)) + " coins/min)" 59 | awardAchievement(4,2) 60 | if (auto_eating) { 61 | eatFood(); 62 | } 63 | } 64 | 65 | function removeFood() { 66 | food_type = "none" 67 | food_tier = 0 68 | document.getElementById("plate").innerHTML = "" 69 | document.getElementById("food_options").style.display = "none" 70 | if (auto_cook_recipie == 0) { 71 | return 72 | } else if (auto_cook_recipie == 1) { 73 | makeBakedPotato(); 74 | } else if (auto_cook_recipie == 2) { 75 | makeFries(); 76 | } else if (auto_cook_recipie == 3) { 77 | makeChips(); 78 | } 79 | } 80 | 81 | function eatFood() { 82 | if (food_type == "baked_potato") { 83 | if (potato_stage_requirements[food_tier - 1] > 1) { 84 | potato_stage_requirements[food_tier - 1] -= (Math.floor(1 + (potato_stage_requirements[food_tier - 1]/100)))*(baked_potato_boost[food_tier - 1]+1) 85 | if (food_tier == 8) { 86 | awardAchievement(6,1) 87 | } 88 | if (potato_stage_requirements[food_tier - 1] < 1) { 89 | potato_stage_requirements[food_tier - 1] = 1 90 | } 91 | removeFood() 92 | } 93 | } else if (food_type == "fries") { 94 | if (fry_bonus[food_tier - 1] < 100 + fry_boost[food_tier - 1]) { 95 | if (fry_bonus[food_tier - 1] == undefined) { 96 | fry_bonus[food_tier - 1] = 1 97 | } else { 98 | fry_bonus[food_tier - 1] += 1 99 | } 100 | fry_multiplier = 1 101 | for (i = 0; i < fry_bonus.length; i++) { 102 | fry_multiplier *= 1+(fry_bonus[i]/100) 103 | } 104 | removeFood() 105 | } 106 | } else if (food_type == "chips") { 107 | coins_per_second += (8**(food_tier-1)) / 60 108 | removeFood() 109 | } 110 | } 111 | 112 | function toggleAutoEat() { 113 | if (auto_eating == false) { 114 | auto_eating = true; 115 | document.getElementById("auto_eat_button").innerHTML = "Auto Eat: On"; 116 | } else { 117 | auto_eating = false; 118 | document.getElementById("auto_eat_button").innerHTML = "Auto Eat: Off"; 119 | } 120 | } 121 | 122 | function sellFood() { 123 | coins += 2*8**(food_tier-1)*fry_multiplier 124 | updateCoinsText() 125 | removeFood() 126 | } 127 | 128 | function autoCook(recipie) { 129 | document.getElementById("microwave_inside").innerHTML = "" 130 | document.getElementById("auto_cook_1").style.background = "darkblue" 131 | document.getElementById("auto_cook_2").style.background = "darkblue" 132 | document.getElementById("auto_cook_3").style.background = "darkblue" 133 | if (recipie == 1) { 134 | if (auto_cook_recipie == 1) { 135 | auto_cook_recipie = 0 136 | return 137 | } 138 | auto_cook_recipie = 1; 139 | makeBakedPotato(); 140 | document.getElementById("microwave_inside").innerHTML = "" 141 | document.getElementById("auto_cook_1").style.background = "darkgreen" 142 | } 143 | else if (recipie == 2) { 144 | if (auto_cook_recipie == 2) { 145 | auto_cook_recipie = 0 146 | return 147 | } 148 | auto_cook_recipie = 2; 149 | makeFries(); 150 | document.getElementById("microwave_inside").innerHTML = "" 151 | document.getElementById("auto_cook_2").style.background = "darkgreen" 152 | } 153 | else if (recipie == 3) { 154 | if (auto_cook_recipie == 3) { 155 | auto_cook_recipie = 0 156 | return 157 | } 158 | auto_cook_recipie = 3; 159 | makeChips(); 160 | document.getElementById("microwave_inside").innerHTML = "" 161 | document.getElementById("auto_cook_3").style.background = "darkgreen" 162 | } 163 | } 164 | -------------------------------------------------------------------------------- /js/lab.js: -------------------------------------------------------------------------------- 1 | 2 | var seed_research_cost = 1 3 | 4 | var study_progress = 0 5 | 6 | var seed_upgrade_cost = 1 7 | var seed_upgrade_level = 0 8 | 9 | var speed_upgrade_cost = 1 10 | var speed_upgrade_level = 0 11 | 12 | var cloning_unlocked = false 13 | 14 | var max_potato_tier = 1 15 | 16 | function seedResearch() { 17 | if (seeds < seed_research_cost + 1) { 18 | return 19 | } 20 | seeds -= seed_research_cost 21 | updateSeedsText() 22 | if (seed_research_cost < 10) { 23 | seed_research_cost += 1 24 | if (seed_research_cost == 10) { 25 | document.getElementById("seed_research_max").style.display = "inline-block" 26 | } 27 | } 28 | document.getElementById("seed_research").innerHTML = "Research Seeds
" + seed_research_cost + icons[0] 29 | potato_dna += 1 30 | updateDNAText() 31 | } 32 | 33 | function seedResearchMax() { 34 | if (seeds < 10) { 35 | return 36 | } 37 | potato_dna += (seeds - (seeds % 10)) / 10 38 | updateDNAText() 39 | seeds = seeds % 10 40 | updateSeedsText() 41 | if (seed_research_cost < 10) { 42 | seed_research_cost += 1 43 | } 44 | document.getElementById("seed_research").innerHTML = "Research Seeds
" + 10 + icons[0] 45 | if (seeds <= 0) { 46 | seeds += 10; 47 | potato_dna -= 1; 48 | updateSeedsText(); 49 | updateDNAText(); 50 | } 51 | } 52 | 53 | 54 | function seedUpgrade() { 55 | if (potato_dna < seed_upgrade_cost) { 56 | return 57 | } 58 | potato_dna -= seed_upgrade_cost 59 | updateDNAText() 60 | seed_upgrade_cost = Math.floor(seed_upgrade_cost * 1.05) + 1 61 | seed_upgrade_level += 1 62 | document.getElementById("seed_upgrade").innerHTML = "Seeds per potato [" + numberFormat((seed_upgrade_level + 2)) + "]
" + numberFormat(seed_upgrade_cost) + icons[1] 63 | awardAchievement(1,0) 64 | } 65 | 66 | function speedUpgrade() { 67 | if (potato_dna < speed_upgrade_cost) { 68 | return 69 | } 70 | potato_dna -= speed_upgrade_cost 71 | updateDNAText() 72 | speed_upgrade_cost = Math.floor(speed_upgrade_cost * 1.05) + 1 73 | speed_upgrade_level += 1 74 | document.getElementById("speed_upgrade").innerHTML = "Growth speed [" + numberFormat((speed_upgrade_level + 1)) + "]
" + numberFormat(speed_upgrade_cost) + icons[1] 75 | awardAchievement(1,0) 76 | } 77 | 78 | function cloning() { 79 | if (potato_dna < 500000) { 80 | return 81 | } 82 | potato_dna -= 500000 83 | updateDNAText() 84 | cloning_unlocked = true 85 | document.getElementById("cloning_upgrade").disabled = "true" 86 | awardAchievement(3,2) 87 | } 88 | 89 | function potatoStudy() { 90 | if (have_potato == true && potato_tier == max_potato_tier && seeds != 0) { 91 | have_potato = false 92 | study_progress += 1 93 | if (study_progress >= study_req) { 94 | study_progress = 0 95 | max_potato_tier += 1 96 | awardAchievement(2,0) 97 | } 98 | document.getElementById("potato_study").innerHTML = "Study your potato [" + study_progress + "/" + study_req +"]" 99 | updatePotatoText() 100 | } 101 | } 102 | -------------------------------------------------------------------------------- /js/navigation.js: -------------------------------------------------------------------------------- 1 | 2 | var active_tab = "" 3 | 4 | function navigate(tab) { 5 | document.getElementById("lab_tab").style.display = "none" 6 | document.getElementById("shop_tab").style.display = "none" 7 | document.getElementById("kitchen_tab").style.display = "none" 8 | document.getElementById("achievement_tab").style.display = "none" 9 | document.getElementById("potatopedia_tab").style.display = "none" 10 | document.getElementById("prestige_tab").style.display = "none" 11 | document.getElementById("settings_tab").style.display = "none" 12 | if (tab == "lab") { 13 | if (active_tab == "lab") { 14 | active_tab = "" 15 | return 16 | } 17 | active_tab = "lab" 18 | document.getElementById("lab_tab").style.display = "block" 19 | } 20 | else if (tab == "shop") { 21 | if (active_tab == "shop") { 22 | active_tab = "" 23 | return 24 | } 25 | active_tab = "shop" 26 | document.getElementById("shop_tab").style.display = "block" 27 | } 28 | else if (tab == "kitchen") { 29 | if (active_tab == "kitchen") { 30 | active_tab = "" 31 | return 32 | } 33 | active_tab = "kitchen" 34 | document.getElementById("kitchen_tab").style.display = "block" 35 | } 36 | else if (tab == "potatopedia") { 37 | if (active_tab == "potatopedia") { 38 | active_tab = "" 39 | return 40 | } 41 | active_tab = "potatopedia" 42 | document.getElementById("potatopedia_tab").style.display = "block" 43 | document.getElementById("potatopedia_tab_button").style.background = "revert" 44 | } 45 | else if (tab == "prestige") { 46 | if (active_tab == "prestige") { 47 | active_tab = "" 48 | return 49 | } 50 | active_tab = "prestige" 51 | document.getElementById("prestige_tab").style.display = "block" 52 | } 53 | else if (tab == "achievement") { 54 | if (active_tab == "achievement") { 55 | active_tab = "" 56 | return 57 | } 58 | active_tab = "achievement" 59 | document.getElementById("achievement_tab").style.display = "block" 60 | document.getElementById("achievement_tab_button").style.background = "revert" 61 | } 62 | else if (tab == "settings") { 63 | if (active_tab == "settings") { 64 | active_tab = "" 65 | return 66 | } 67 | active_tab = "settings" 68 | document.getElementById("settings_tab").style.display = "block" 69 | } 70 | } 71 | -------------------------------------------------------------------------------- /js/news.js: -------------------------------------------------------------------------------- 1 | 2 | var buffer = false 3 | var news_p 4 | var messages = [ 5 | "\"Unlike antimatter dimensions, we could afford 9!\" -ScienceCrafter", 6 | "\"You can bake your potato and eat it too!\" -Zman", 7 | "\"Think about this theres probably a alternate reality where people use potatos and soly potatos as a money unit\" -Joel_", 8 | "\"everything is either a potato or not a potato, the real problem is figuring out which is which before you eat\" -Zman", 9 | "News tickers? Now introducing, New stickers! ... Stickers coming v45.36.12", 10 | "according to all known laws of aviation, a potato cannot fly... yet.", 11 | "\"OPI is perfectly optimized for your potato PC, it will even heat it up, perfect for potato cooking!\" -Zman", 12 | "9 out of 10 people love potatoes... sorry, there was an error, we meant to say 10 out of 10", 13 | "80% water!", 14 | "\"potato\"", 15 | "potato.", 16 | "potato!", 17 | "potato?", 18 | "potatoes have eyes, but they can't see through them... in the usual way...", 19 | "Scientists declare: potatoes are not fruit!", 20 | "\"i am the only one with a green name in the discord, fight me\"", 21 | "Imagine ur baking potatos and randomly its just like ur potato warranty has ended proceed with caution", 22 | "Scientists baffled as women are giving birth to potatoes at alarming rates: and how this could effect the economy", 23 | "hello we've been trying to contact you about your potato's extended warranty", 24 | "we do not speak of yams here", 25 | "Just in, Grandma is in a high speed pursuit throwing potatoes at innoncent citizens", 26 | "Is mashed potatoes irish guacamole?", 27 | "ScienceCrafter pinned a message to this channel. See all the pins. Today at 12:53", 28 | "Potato 101", 29 | "Economists baffled as new potato based currency is used in ireland: \"it just shouldn't work\" says investor Yamie Terr", 30 | "Potato Coins are now officially worth more than bitcoins, prices may go up in the future", 31 | "New Currency Potato Coins worth more than a dollar", 32 | "Potato Coins Skyrockets as first trillionaire, Max Spud, Made His Money by investing Potato Coins", 33 | "Potato sales have risen while Yams crash: and what this means for the oil industry", 34 | "The Inca Indians in Peru were the first to cultivate potatoes around 8,000 BC to 5,000 B.C. In 1536 Spanish Conquistadors conquered Peru, discovered the flavors of the potato, and carried them to Europe. Sir Walter Raleigh introduced potatoes to Ireland in 1589 on the 40,000 acres of land near Cork.", 35 | "everything tastes better with potatoes, even potatoes!", 36 | "potato farmers find new uses for potato. one farmer says \"well I just put a potato into an oven to see if I would get a different kind of potato\"", 37 | "Local Florida man arrested after stacking hundreds of mashed potatoes allegedly to \"learn the difference between one and two mashed potatoes\" police were called when the stack of potatoes became a safety concern for neighbors", 38 | "potato farmer discovers new use for potatoes other than growing more potatoes, \"apparently they were edible\" says Spudly", 39 | "Man makes potato buddy out of loneliness, calls it a spuddy", 40 | "News tickers, just as Joel_ unintended", 41 | "there aren't too many good potato jokes to make, so just pretend this was a funny one", 42 | "spud", 43 | "tater", 44 | "\"the potato robber just stole a seed from you ;)\" and make it steal an actual seed from you -KEKE", 45 | "hello? is anyone there? can you hear me? I'm stuck inside the potato news ticker factory and I don't have much more time left to-", 46 | "Man found with two potatoes. He died instantly. dude couldn't handle the power", 47 | "Pothanos has snapped half the potatoes out of existence", 48 | "Master every step in the potato path to achieve enlightenment", 49 | "shh dont tell anyone you can have 2 potatoes by having one in your kitchen and the other one on han-- IT DOES NOT COUNT", 50 | "Potatoes: The other, other white meat", 51 | "Potatoes, a great substitute for apples!", 52 | "I am the Seed of my Potato, Potato is my Body and Butter is my Blood. I have created over a Thousand Seeds, Unknown to Starch, Nor known to Hunger. Have withstood Arthritis to create many Potatoes Yet those Hands will never hold Anything. So, as I Pray-- Unlimited Potato Works", 53 | "When light was created, so were potatoes", 54 | "The year is 1944, ScienceCrafter can't release updates for OPI because he doesn't exist yet", 55 | "\"No, I didn't steal any of these news ticker messages from antimatter dimensions\" -ScienceCrafter", 56 | "A potato is you!", 57 | "https://www.youtube.com/watch?v=OB6VcjGsu7k", 58 | "Potatoes? Why would we need a word to describe more than one Potato?", 59 | "\"Oooo Got ticker idea\" -trash_panda \"What is it?\" -Zman \"Forgot\" -trash_panda", 60 | "We just couldn't stop at baked potatoes, and now we have fries? What next, ultra thin potatoes, why no one would like that", 61 | "mfw(my face when) no update😔😭 in 13 (13) whole plank times😭🕓🕓🥺😡😤👏😱🥶 like💖😎 if if u agree!1!😎! 🤯👏😔", 62 | "Scientists have successfully created a computer out of potatoes, local internet comedian warns this could herald a new age of \"bad PC jokes\"", 63 | "And then he turns himself into a potato! Calls himself 'potato rick'! Funniest thing i've ever seen", 64 | "Local man has been discovered to have built a so called 'potato shrine' in the sewers. It was constructed out of peels, chips, and fries, and has been there since at least 2017, more on that later", 65 | "A new study has come out linking the consumption of antimatter with increased risk of hyper-obsessive potato baking. Farmers suggest eating more.", 66 | "This just in: Researchers studying the effects of potato juice injections to cure the common cold create first potato man hybrid. Quote: \"It sits on the couch now, all the time... but at least it can't catch a cold!\"", 67 | "Tonight at 4, New ultra thin potatoes become the new world icon", 68 | "Taste the potato.", 69 | "My name is Idaho Montoya, you peeled my father, prepare to fry", 70 | "police have recently preformed a raid on illegally owned potato cannons, guns, and launchers yesterday on the local deep frying mafia, more on that later...", 71 | "a local potato was briefly transformed into an eldrich abomination, more on that later", 72 | "i don't see why you would need cookies or antimatter, they aren't nearly as versatile as potatoes", 73 | "use code: \"secret\" for... um... well... secrets, i guess", 74 | "Breaking news, the creation of fries has broken the economy. Scientists quickly fix the error", 75 | "Tragic Accident Spoils a Spud. Potatoh no.", 76 | "Potato Coin Market Crash Leaves Ireland Destitute. Thousands Starve.", 77 | "Idaho Elects Potato Governor, Becomes World's First Utopian Society", 78 | "Millions Left Distraught as Neil Armstrong Forgets Potato at Home on First Moon Landing", 79 | "\"Alright I'm gonna stop spending all of my brainpower on potato headlines for now\" - Liar", 80 | "Has Science Gone too far? Controversial new Study Suggests That Making Potato Based Headlines is Quote: \"A Waste of Time.\"", 81 | "GOOD NEWS EVERYONE! turns out we are in the better timeline. we looked into another universe's 2020 and oh boy they had way less glorious potato.", 82 | "Rioters Ransack Moscow Amidst Talks to Ban Vodka Over Concerns of \"Potato Cruelty\"", 83 | "The term \"couch potato\" has been determined to be offensive to potatoes, lawsuits pending", 84 | "each pixel of this message is made from a nano potato.", 85 | "scientist have managed to split a neutron in a room temperature fission event. a potato was found inside.", 86 | "I just wanted name name in the ticker - casinodoug", 87 | "Upon further intensive scientific review by the International Farmers Associations, it was announced that one potatoe is equivalent to one potato. The world has lost its mind.", 88 | "new law declares teeter totters will now be called tater totters, violations will result in immediate execution", 89 | "fun fact: did you know the potatoes are getting closer every second?", 90 | "\"hey look mom i'm on the news ticker!\" -MaxietheTaxi", 91 | "Potato comes in with 97% of the popular vote. In unrelated news 3% of the population has mysteriously disappeared.", 92 | "taters gonna tate tate tate tate -Tater Swift", 93 | "have I ever told you the story of dark potato the wise? I thought not...", 94 | "when the potato is sus!", 95 | "One potato, two potato, hearty potato, blue potato", 96 | "tip: hold enter after clicking a button to auto-spam it", 97 | "did you know? real potatoes don't have seeds! (the dev is not aware of this information)", 98 | "what does cloning do???? -everyone (because the dev doesn't know how to make tooltips)", 99 | "Wow [funny potato joke here] haha!", 100 | "Potato, from potatopedia the free encyclopedia", 101 | "Potatos rotat e potatos ROTAT E potat o rotato faster potato go g O can u fEel it„ p o t at po ? yES FEEL TH e SPED WE HAV REAHCED MXAIMUN VLELOCIPY Are you okay? who are you to accuse me", 102 | "[hyperlink blocked]", 103 | "A potato flew around my room", 104 | "no 😠", 105 | "burger", 106 | "Watch in awe as the news ticker messages continue their eternal migration to the left side of the screen!", 107 | "local dog eats emergency potato supply: becomes potato god", 108 | "Florida Man attempts to eat largest potato ever, breaks neck", 109 | "\"is my physical health worth a x2 money increase on a game about virtual, singular potatoes? probably\" -ThatOneShinyEevee", 110 | "\"Only one potato can exist at a time. If you see two, it's actually the same potato moving rapidly\" -ThatOneShinyEevee", 111 | "Big potato is watching. His eyes are everywhere", 112 | "Punks now start their songs with one-potato, two-potato, three-potato, FOUR!", 113 | "breaking news! We've solved the problem of farming in other planets. In other unrelated news, mars is covered in potatoes", 114 | "According to the Guinness Book of World Records, the largest potato grown was 7 pounds 1 ounce by J. East (1953) and J. Busby (1982) of Great Britain. Potatoes are about 80% water.", 115 | "Humans share about 1/3 of their DNA with potatoes", 116 | "Breaking news, apparently people are 33% potato according to science", 117 | "in every world there is light and dark, yin and yang, potato and tomato.", 118 | "remind the dev to add more news messages!", 119 | "you can suggest your own messages in the discord server!", 120 | "remind the dev to add more news messages!", 121 | "you can suggest your own messages in the discord server!" 122 | ] 123 | var news_queue = [ 124 | "Welcome to One Potato Incremental! Get started by turning your potato into seeds and then planting them", 125 | "Look at the achievements for more tips [END OF TUTORIAL]", 126 | ] 127 | 128 | 129 | function newNews() { 130 | news_p = document.getElementById("news") 131 | var message 132 | // first we get the message 133 | if (news_queue.length != 0) { 134 | message = news_queue.shift() // if there's a special message in queue, we add it 135 | } else { 136 | message = messages[Math.floor(Math.random()*messages.length)] // otherwise we pick a random message from the list 137 | } 138 | // then we add some amount of spaces 139 | var bar_size = Math.ceil(document.getElementById("news_bar").offsetWidth / 8.2) 140 | news_p.innerHTML = " ".repeat(bar_size+5) 141 | // then we add the news 142 | news_p.innerHTML += message 143 | runNews() 144 | } 145 | 146 | function runNews() { 147 | if (buffer) { 148 | news_p.style.left = 0 149 | buffer = false 150 | } else { 151 | news_p.style.left = 4.2 152 | news_p.innerHTML = news_p.innerHTML.substring(1) 153 | buffer = true 154 | } 155 | if (news_p.innerHTML != "") { 156 | setTimeout(runNews, 30) 157 | return 158 | } 159 | newNews() 160 | } 161 | -------------------------------------------------------------------------------- /js/number_format.js: -------------------------------------------------------------------------------- 1 | 2 | var notation = "classical" 3 | var big_num_list = ["", "M", "B", "T", "Qa", "Qi", "Sx", "Se", "Oc", "No"] 4 | var big_num_list_plus = ["", "Dc", "Vi", "Tg", "Qg", "Qq", "Sg", "St", "Og", "Ag"] 5 | 6 | function numberFormat(number, force_scientific=false, force_floor=false) { 7 | var string = "" + Math.floor(number) 8 | if (number <= 999) { 9 | return force_floor ? string : centRound(number); 10 | } else if (number <= 999999) { 11 | string = string.slice(0,-3) + " " + string.slice(-3) 12 | return string 13 | } else if (number <= 999999999) { 14 | string = string.slice(0,-6) + " " + string.slice(-6) 15 | string = string.slice(0,-3) + " " + string.slice(-3) 16 | return string 17 | } 18 | if (notation == "scientific" || force_scientific == true) { 19 | var oom = Math.floor(Math.log10(number)) 20 | number = Math.round(number / 10**(oom - 2))/100 21 | return number + "e+" + oom 22 | } else if (notation == "classical") { 23 | if (number > 9e299) { 24 | return numberFormat(number,true) 25 | } 26 | var number_index = Math.floor((Math.floor(Math.log10(number)) - 3)/3) 27 | return Math.floor((number/(10**((number_index+1)*3)))*100)/100 + " " + big_num_list[number_index%10] + big_num_list_plus[Math.floor(number_index/10)] 28 | } else { 29 | return number 30 | } 31 | return 32 | } 33 | 34 | function centRound(number) { 35 | return Math.floor(number*100)/100 36 | } 37 | -------------------------------------------------------------------------------- /js/potatopedia.js: -------------------------------------------------------------------------------- 1 | var best_potato_seen = 0 // that's got to be the best potato i've ever seen! 2 | var pp_focus = 0 // potatopedia focus 3 | 4 | var potato_stages_alt = [ 5 | "sprites/seeds.png", 6 | "sprites/potato1.png", // terrible potato 7 | "sprites/potato2.png", // pale potato 8 | "sprites/potato3.png", // meh potato 9 | "sprites/potato4.png", // robust potato 10 | "sprites/potato5.png", // hearty potato 11 | "sprites/potato6.png", // smooth potato 12 | "sprites/potato7.png", // blue potato 13 | "sprites/potato8.png", // 8bit potato 14 | "sprites/potato9.png", // error potato 15 | "sprites/potato10.png", // photorealistic potato 16 | "sprites/potato11.png", // antimatter potato 17 | "sprites/potato12.png", // shadow potato 18 | "sprites/potato13.png", // cookie potato 19 | "sprites/potato14.png", // fire potato 20 | "sprites/potato15.png", // ice potato 21 | "sprites/potato16.png"] // legendary potato 22 | 23 | var potato_flavor_texts = [ 24 | "Hey, you gotta start somewhere", 25 | "A light slightly blighty unsightly potato", 26 | "This potato doesn't care (it is a potato)", 27 | "This one might actually be edible!", 28 | "Part of a balanced breakfast", 29 | "The smooth texture of this potato is only slightly concerning to the local villagers (it tastes great though!)", 30 | "Dabedee dabedye", 31 | "the wrist gaaaaaaaaame", 32 | "A problem has occured with your PotatOS. Please rebake your potato if problems persist. ERROR CODE 17643", 33 | "One Potato Incremental: Now in 4k", 34 | "Say hi to hevi for me :)", 35 | "If you stare into the potato for long enough the potato stares back", 36 | "Fries made out of this one taste better than you might expect... not good, mind you, just better.", 37 | "Unfortunately, you still need to cook it", 38 | "This potato wants revenge >:)", 39 | "You've come a long way, congratulations!" 40 | ] 41 | 42 | function potatopediaUnlock(id) { 43 | document.getElementById("potatopedia_"+id).src = potato_stages_alt[id]; 44 | if (best_potato_seen > 5) { 45 | document.getElementById("potatopedia_tab_button").style["background-color"] = "#8f8"; 46 | } 47 | } 48 | 49 | function ppFocus(id) { // nice 50 | if (id > best_potato_seen) {return} 51 | if (pp_focus) {document.getElementById("potatopedia_"+pp_focus).style["background-color"] = "#bbb";} 52 | if (id == pp_focus) { 53 | document.getElementById("potatopedia_infodiv").style.display = "none"; 54 | pp_focus = 0; 55 | return 56 | } 57 | document.getElementById("potatopedia_infodiv").style.display = "block"; 58 | document.getElementById("potatopedia_"+id).style["background-color"] = "green"; 59 | pp_focus = id; 60 | document.getElementById("potatopedia_infodiv_header").innerHTML = "#"+id+" - "+potato_stage_text[id]; 61 | document.getElementById("potatopedia_infodiv_content").innerHTML = "\""+potato_flavor_texts[id-1]+"\"
growth time: "+numberFormat(potato_stage_requirements[id-1])+"/1 (maxxed "+(baked_potato_boost[id-1]+(potato_stage_requirements[id-1]==1?1:0))+" times)
fry bonus: "+fry_bonus[id-1]+"/"+(100+fry_boost[id-1]); 62 | } 63 | -------------------------------------------------------------------------------- /js/prestige.js: -------------------------------------------------------------------------------- 1 | 2 | var baked_potato_boost = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 3 | var fry_boost = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 4 | var mashed_potatoes = 0 5 | var study_req = 5 6 | var study_req_cost = 5 7 | var retain_automators = false 8 | var autocook_unlocked = false 9 | var prestige_1_buff = 1; 10 | 11 | 12 | function softReset() { 13 | have_potato = true 14 | potato_tier = 1 15 | max_potato_tier = 1 16 | coins = 0 17 | seeds = 0 18 | potato_planted = false 19 | growth_progress = 0 20 | potato_stage = 0 21 | potato_dna = 0 22 | food_tier = 0 23 | fry_bonus = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 24 | potato_stage_requirements = [100,600,3000,5000,20000,100000,500000,2560000,5000000,20000000,1e+9,5e+11,1e+15,1e+19,1e+22,1e+27] 25 | fertilizer_price = 5 26 | fertilizer_level = 0 27 | seed_research_cost = 1 28 | study_progress = 0 29 | seed_upgrade_cost = 1 30 | seed_upgrade_level = 0 31 | speed_upgrade_cost = 1 32 | speed_upgrade_level = 0 33 | document.getElementById("harvest_auto").checked = false; 34 | document.getElementById("plant_auto").checked = false; 35 | document.getElementById("make_seeds_auto").checked = false; 36 | if (!retain_automators) { 37 | document.getElementById("buy_auto_seeder").disabled = false 38 | document.getElementById("make_seeds_auto_p").style.display = "none" 39 | } 40 | updatePotatoText() 41 | updateCoinsText() 42 | updateSeedsText() 43 | updatePlotText() 44 | updateDNAText() 45 | document.getElementById("buy_fertilizer").innerHTML = "Buy fertilizer [" + fertilizer_level + "/" + max_fertilizer_level + "]
" + fertilizer_price + icons[2] 46 | document.getElementById("seed_research").innerHTML = "Research Seeds
" + seed_research_cost + icons[0] 47 | document.getElementById("potato_study").innerHTML = "Study your potato [" + study_progress + "/5]" 48 | document.getElementById("seed_upgrade").innerHTML = "Seeds per potato [" + (seed_upgrade_level + 2) + "]
" + seed_upgrade_cost + icons[1] //vetbthlevfqtymetsfarimdxjsrfmglxjiix 49 | document.getElementById("speed_upgrade").innerHTML = "Growth speed [" + (speed_upgrade_level + 1) + "]
" + speed_upgrade_cost + icons[1] 50 | } 51 | 52 | function prestige() { 53 | awardAchievement(0,2) 54 | if (have_potato == false || potato_tier <= 7) { 55 | return 56 | } 57 | mashed_potatoes += 7**(potato_tier-8) 58 | updateMashedPotatoText() 59 | for (i=0;i"+study_req_cost+"" 103 | if (study_req == 1) { 104 | document.getElementById("prestige_upgrade_study_req").disabled = "true" 105 | } 106 | document.getElementById("potato_study").innerHTML = "Study your potato [" + study_progress + "/" + study_req +"]" 107 | } 108 | -------------------------------------------------------------------------------- /js/settings.js: -------------------------------------------------------------------------------- 1 | 2 | var progress_bar_style = "fancy" 3 | var auto_saving = true 4 | var news_enabled = true 5 | //var notation = "scientific" (declared earlier) 6 | 7 | function progressBarStyle() { 8 | if (progress_bar_style == "simple") { 9 | progress_bar_style = "fancy" 10 | document.getElementById("progress_bar_style_setting").innerHTML = 'Progress Bars:

F

a

n

c

y

' 11 | colors = ["#f00","#f80","#ff0","#0f0","#0ff","#00f","#f0f","#f00","#f80","#ff0","#0f0","#0ff","#00f","#f0f","#f00","#f80","#ff0","#0f0","#0ff","#00f","#f0f","#f00","#f80"] 12 | } else if (progress_bar_style == "fancy") { 13 | progress_bar_style = "simple" 14 | document.getElementById("progress_bar_style_setting").innerHTML = 'Progress Bars:
Simple' 15 | colors = ["#f00","#00f","#f00","#00f","#f00","#00f","#f00","#00f","#f00","#00f","#f00","#00f","#f00","#00f","#f00","#00f","#f00","#00f","#f00","#00f","#f00","#00f","#f00","#00f"] 16 | } 17 | } 18 | 19 | function numberNotationType() { 20 | if (notation == "scientific") { 21 | notation = "classical" 22 | document.getElementById("number_notation_setting").innerHTML = "Number Notation:
Classical (32.64 QaVi)" 23 | } else if (notation == "classical") { 24 | notation = "scientific" 25 | document.getElementById("number_notation_setting").innerHTML = "Number Notation:
Scientific (3.26e+76)" 26 | } 27 | } 28 | 29 | function toggleAutoSave() { 30 | if (auto_saving) { 31 | document.getElementById("auto_save_setting").innerHTML = "Auto Save: Off" 32 | auto_saving = false; 33 | } else { 34 | document.getElementById("auto_save_setting").innerHTML = "Auto Save: On" 35 | auto_saving = true; 36 | } 37 | } 38 | 39 | function toggleNews() { 40 | if (news_enabled == true) { 41 | news_enabled = false; 42 | document.getElementById("news_bar").style.display = "none"; 43 | document.getElementById("news_setting").innerHTML = "News Ticker: Halted"; 44 | } else { 45 | news_enabled = true; 46 | document.getElementById("news_bar").style.display = "revert"; 47 | document.getElementById("news_setting").innerHTML = "News Ticker: Ticking"; 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /js/shop.js: -------------------------------------------------------------------------------- 1 | 2 | var auto_seeder_unlocked = false 3 | var auto_planter_unlocked = false 4 | var auto_harvest_unlocked = false 5 | var fertilizer_price = 5 6 | var fertilizer_level = 0 7 | var max_fertilizer_level = 5 8 | 9 | function autoSeeder() { 10 | if (coins < 5) { 11 | return 12 | } 13 | coins -= 5 14 | updateCoinsText() 15 | auto_seeder_unlocked = true 16 | document.getElementById("buy_auto_seeder").disabled = true 17 | document.getElementById("make_seeds_auto_p").style.display = "inline-block" 18 | document.getElementById("make_seeds_auto").checked = true 19 | awardAchievement(0,1) 20 | } 21 | 22 | function autoPlanter() { 23 | if (coins < 25) { 24 | return 25 | } 26 | coins -= 25 27 | updateCoinsText() 28 | auto_planter_unlocked = true 29 | document.getElementById("buy_auto_planter").disabled = true 30 | document.getElementById("plant_auto_p").style.display = "inline-block" 31 | document.getElementById("plant_auto").checked = true 32 | document.getElementById("plant_auto").innerHTML = "auto" 33 | } 34 | 35 | function buyFertilizer() { 36 | if (coins < fertilizer_price) { 37 | return 38 | } 39 | coins -= fertilizer_price 40 | updateCoinsText() 41 | fertilizer_level += 1 42 | fertilizer_price *= 100 43 | document.getElementById("buy_fertilizer").innerHTML = "Buy fertilizer [" + fertilizer_level + "]
" + numberFormat(fertilizer_price) + icons[2] 44 | awardAchievement(2,1) 45 | //if (fertilizer_level == 5) { 46 | // document.getElementById("buy_fertilizer").style.display = "none" 47 | //} //fertilizer cap is DEAD!! 48 | } 49 | 50 | function autoHarvest() { 51 | if (coins < 200) { 52 | return 53 | } 54 | coins -= 200 55 | updateCoinsText() 56 | auto_harvest_unlocked = true 57 | document.getElementById("buy_auto_harvest").disabled = true 58 | document.getElementById("harvest_auto_p").style.display = "inline-block" 59 | document.getElementById("harvest_auto").checked = true 60 | document.getElementById("harvest_auto").innerHTML = "auto" 61 | awardAchievement(1,1) 62 | } 63 | -------------------------------------------------------------------------------- /sprites/baked_potato.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/baked_potato.png -------------------------------------------------------------------------------- /sprites/chips.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/chips.png -------------------------------------------------------------------------------- /sprites/coin_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/coin_icon.png -------------------------------------------------------------------------------- /sprites/discord_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/discord_icon.png -------------------------------------------------------------------------------- /sprites/dna_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/dna_icon.png -------------------------------------------------------------------------------- /sprites/fries.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/fries.png -------------------------------------------------------------------------------- /sprites/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/icon.png -------------------------------------------------------------------------------- /sprites/icon_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/icon_small.png -------------------------------------------------------------------------------- /sprites/locked_potatopedia.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/locked_potatopedia.png -------------------------------------------------------------------------------- /sprites/mashed_potato_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/mashed_potato_icon.png -------------------------------------------------------------------------------- /sprites/patreon_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/patreon_icon.png -------------------------------------------------------------------------------- /sprites/potato1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/potato1.png -------------------------------------------------------------------------------- /sprites/potato10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/potato10.png -------------------------------------------------------------------------------- /sprites/potato11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/potato11.png -------------------------------------------------------------------------------- /sprites/potato12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/potato12.png -------------------------------------------------------------------------------- /sprites/potato13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/potato13.png -------------------------------------------------------------------------------- /sprites/potato14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/potato14.png -------------------------------------------------------------------------------- /sprites/potato15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/potato15.png -------------------------------------------------------------------------------- /sprites/potato16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/potato16.png -------------------------------------------------------------------------------- /sprites/potato2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/potato2.png -------------------------------------------------------------------------------- /sprites/potato3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/potato3.png -------------------------------------------------------------------------------- /sprites/potato4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/potato4.png -------------------------------------------------------------------------------- /sprites/potato5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/potato5.png -------------------------------------------------------------------------------- /sprites/potato6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/potato6.png -------------------------------------------------------------------------------- /sprites/potato7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/potato7.png -------------------------------------------------------------------------------- /sprites/potato8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/potato8.png -------------------------------------------------------------------------------- /sprites/potato9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/potato9.png -------------------------------------------------------------------------------- /sprites/potato_empty.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/potato_empty.png -------------------------------------------------------------------------------- /sprites/potato_template.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/potato_template.png -------------------------------------------------------------------------------- /sprites/seeds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/seeds.png -------------------------------------------------------------------------------- /sprites/seeds_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ScienceCrafter/one-potato-incremental/b8858843d2711e306a5415de3437d0bee47fd224/sprites/seeds_icon.png -------------------------------------------------------------------------------- /style.css: -------------------------------------------------------------------------------- 1 | 2 | 3 | table { 4 | width: 100%; 5 | border: 1px; 6 | border-style: solid; 7 | background: #bbb; 8 | } 9 | 10 | td { 11 | vertical-align: top; 12 | border: 1px; 13 | border-style: solid; 14 | background: #ddd; 15 | padding: 3px; 16 | } 17 | 18 | ul { 19 | list-style: none; 20 | padding-left: 5px; 21 | } 22 | 23 | li { 24 | padding: 2px; 25 | } 26 | 27 | #inventory_div { 28 | width: 250px; 29 | float: left; 30 | height: 100%; 31 | } 32 | 33 | #garden_div { 34 | display: block; 35 | width: 100%; 36 | } 37 | 38 | #potato { 39 | background: #888; 40 | height: 200px; 41 | width: 200px; 42 | border: 3px solid; 43 | margin: auto; 44 | } 45 | 46 | #plot { 47 | background: #864; 48 | height: 180px; 49 | width: 200px; 50 | border: 3px solid; 51 | border-bottom: none; 52 | } 53 | 54 | #plot_progress_bar_vessel { 55 | width: 200px; 56 | height: 20px; 57 | background-color: gray; 58 | border: 3px solid; 59 | } 60 | 61 | #plot_progress_bar_bar { 62 | width: 0%; 63 | height: 100%; 64 | background-color: #f00; 65 | } 66 | 67 | #plate { 68 | height: 100px; 69 | width: 100px; 70 | margin: 2px; 71 | background: #888; 72 | padding: 0px; 73 | } 74 | 75 | #news { 76 | position: absolute; 77 | width: fit-content; 78 | margin: 0px; 79 | font-family:monospace; 80 | font-size:15px; 81 | } 82 | 83 | img.icon { 84 | height: 20px; 85 | width: 20px; 86 | vertical-align: bottom; 87 | } 88 | 89 | img.small_icon { 90 | height: 12px; 91 | width: 12px; 92 | margin-left: 2px; 93 | margin-right: 2px; 94 | } 95 | 96 | img.potatopedia_icon { 97 | height: 50px; 98 | width: 50px; 99 | background-color: #bbb; 100 | } 101 | 102 | button.microwave_button { 103 | width: 40px; 104 | background-color: darkblue; 105 | color: white; 106 | font-style: bold; 107 | font-family: monospace; 108 | } 109 | --------------------------------------------------------------------------------