Apologies! Your web browser lacks required capabilities. Please consider upgrading it or switching to a more modern web browser.
Initializing. Please wait…
Your vessel has landed safely on an alien planet. The crew are all well and eager to get to work. They look to you for direction.
Your mission is to establish an outpost on this planet. For your outpost to flourish, you need to become independent. Past missions like yours left their outposts completely dependent upon homeworld ships running regular supply runs. Home command has determined that this strategy is too inefficient to support and created this program to supersede it.
Establishing self-sufficiency won't be easy. Fortunately, the higher-ups don't expect you to perform that entire task on your own. No, your //specific// mission is to feed the station's crew. Fresh food is more than just good for morale, it's absolutely necessary for the outpost's survival.
You arrived equipped with several tonnes of dry food supplies and vitamin supplements. A dispatch will arrive, eventually, to replenish your stores. If you succeed in becoming food-independent before then, your mission will be crowned a success. You're not quite sure what the consequences of failure might be. Your superiors were vague on the matter.
Enough talking. You are just as eager as the rest of the crew to [[get to work|Command Central]]. The wellbeing of the outpost and its crew are your responsibility.
<<if $countdown gt 0>>What needs to be done today?
* [[Plant]] new crops in the garden.
* [[Care|Tend]] for the growing crops.
* [[Harvest]] the crops you grew.
* [[Check|Check supplies]] supply levels.
* [[Touch base|Talk to crew]] with crew morale.
* [[Message|Homeworld]] the homeworld command.
<<else>>One of your crew wakes you up with a holler that the resupplying ship has finally arrived. In addition to a fortification of dry foodstuffs and some replacement parts for the shuttle, it brings an officer from home command, here to assess the outpost's readiness, and by extension your own performance as its manager.
It feels a little like an examination by a very stern, old-fashioned teacher. Still, there's nothing to it but to accept [[your performance review|Final Assessment]].
<<endif>><<set $countdown = 100>>
<<set $decrement = 5>>
<<set $morale = 100>>
<<set $capacity = 120>>
<<set $planted = 0>>
<<set $avgHealth = 0>>
<<set $growth = [0, 0, 0, 0, 0]>>
<<set $baseGrowth = 0>>
<<set $maxGrowth = 4>>
<<set $supplies = 350>>
<<set $initial = 350>>
<<set $depletion = 12>>
<<set $rationing = 0>>
<<set $harvests = 0>>
<<set $harvested = 0>><<nobr>>
<<set $rtime = random(1, 3)>>
<<set $rtime = Math.floor($decrement / $rtime)>>
<<set $countdown = $countdown - $rtime>>
<<set $low = Math.floor($supplies/$initial * 100)>>
<<if $countdown lt 20>>
<<set $morale = Math.max($morale - $rtime, 0)>>
<<elseif $morale lt 50 and $low lt 50>>
<<set $morale = $morale - 2>>
<<elseif $countdown lt 50 and $countdown gt $low>>
<<set $morale = $morale - 2>>
<<elseif $countdown lt 80>>
<<set $morale = $morale - 1>>
<<else>>
<<set $morale = $morale - 0.5>>
<<endif>>
<<endnobr>><<nobr>>
<<set $rfood = random(-2, 2)>>
<<set $rfood = $rfood + $depletion>>
<<if $rationing gt 0 and $rfood gte $depletion>>
<<set $rfood = $depletion - 2>>
<<endif>>
<<set $supplies = $supplies - $rfood>>
<<endnobr>>You have already planted <<print $planted>> plants in your garden. <<if $planted gte $capacity>>The garden is planted at capacity. <<endif>>The average health of your garden is <<print $avgHealth>>.
* <<if $planted lt $capacity>>[[Plant some more]]. <<else>>Your garden is at capacity. Tend or harvest your crops instead. <<endif>>
* [[Do something else|Command Central]]. <<nobr>>
<<set $pcnt1 = ($growth[0] + $growth[1]) / $planted>>
<<set $pcnt1 = Math.floor($pcnt1 * 100)>>
<<set $pcnt2 = ($growth[2] + $growth[3]) / $planted>>
<<set $pcnt2 = Math.floor($pcnt2 * 100)>>
<<endnobr>>There are <<print $planted>> plants in your garden that need tending. The garden's health is calculated at <<print $avgHealth>>.
<<display "Growth">>
* Tend the [[new sprouts|Young plants]] (<<print $pcnt1>>%).
* Tend the [[maturing plants|Mature plants]] (<<print $pcnt2>>%).
* Tend the [[fully-grown plants|Harvest]].
* [[Do something else|Command Central]]. There are <<print $planted>> plants in your garden that need tending. The garden's health is calculated at <<print $avgHealth>>.
<<display "Growth">>
<<if $growth[$maxGrowth] gt 0>>* Harvest <<print $growth[$maxGrowth]>> [[delicious crops|Fresh supplies]]. <<else>>* None of your crops are ripe yet. <<endif>>
* [[Do something else|Command Central]]. Supplies are at <<print $supplies>>. <<if $rationing gt 0>>Rationing is in effect. <<endif>>
<<if $rationing eq 0>>* [[Implement rationing|Rationing]]. <<elseif $rationing eq 1>>* [[Go back to standard rations|Rationing]]. <<endif>>
<<display "Alert">>
* [[Do something else|Command Central]]. Crew morale is at <<print $morale>>%. <<if $rationing gt 0>>Rationing is in effect. <<endif>>
<<if $rationing eq 1>>* [[Check supplies]]. <<endif>>
<<display "Alert">>
* [[Do something else|Command Central]]. <<nobr>>
<<set $low = Math.floor($supplies / $initial * 100)>>
<<endnobr>>You send a communique to the brass at homeworld command, inquiring after the next supply dispatch. <<if $low lt 50>><<if $low lt 25>>You stress that supplies are running critically low<<else>>You mention that supplies are starting to run out<<endif>><<if $morale lt 50>> and that it is negatively affecting morale<<endif>><<if $rationing eq 1>>, and don't forget to mention the rationing policy you've implemented<<endif>><<elseif $morale lt 30>>The crew are becoming dispirited<<else>>Still, you must reassure them that things at the outpost are, indeed, fine<<endif>>.
<<if $countdown lt 25>>They assure you that a dispatch will be arriving soon to replenish your stores<<if $countdown lt 10>>, so hold tight<<endif>><<else>>//Well//<<endif>>. Their response is not very reassuring. Mostly they just remind you of how important your mission is for home command, and dropping words like '//career//' and '//advancement//', but still vague on the consequences of failure.
* [[Do something else|Command Central]]. <<nobr>>
<<set $seeds = $capacity / 6>>
<<set $rseeds = random(-5, 5)>>
<<set $seeds = $seeds + $rseeds>>
<<set $planted = $planted + $seeds>>
<<set $full = Math.ceil($planted / $capacity * 100)>>
<<if $growth[$baseGrowth] gt 0>>
<<set $growth[$baseGrowth] = $growth[$baseGrowth] + $seeds>>
<<else>>
<<set $growth[$baseGrowth] = $seeds>>
<<endif>>
<<if $morale lt 80>>
<<set $morale = $morale + 1>>
<<elseif $morale lt 100>>
<<set $morale = $morale + 0.25>>
<<endif>>
<<endnobr>>You've planted <<print $seeds>> plots in the garden. The total number of planted plot is now <<print $planted>> and the garden is at <<print $full>>% of capacity.
[[Plant]] again or go back to [[Command Central]].
<<display "Time">><<display "Food">>Breakdown of garden growth: <<print $growth[0] + $growth[1]>> green sprouts, <<print $growth[2] + $growth[3]>> maturing plants, and <<print $growth[4]>> plants that are ready to harvest. <<nobr>>
<<set $which = random(0, 1)>>
<<if $growth[$which] eq 0>>
<<if $which eq 0>>
<<set $which = 1>>
<<else>>
<<set $which = 0>>
<<endif>>
<<endif>>
<<set $rtend1 = random(20, $growth[$which])>>
<<if $rtend1 gt $growth[$which]>>
<<set $rtend1 = $growth[$which]>>
<<endif>>
<<set $before1 = $growth[$which]>>
<<set $after1 = $growth[$which + 1] + $rtend1>>
<<set $growth[$which] = $before1 - $rtend1>>
<<set $growth[$which + 1] = $after1>>
<<set $avgHealth = Math.floor($rtend1 / 2)>>
<<endnobr>>You carefully fertilize the young sprouts and check them for possible parasites.
<<print $rtend1>> plants have been tended. Average garden health has reached <<print $avgHealth>>.
[[Tend]] more plants or return to [[Command Central]].
<<display "Time">><<display "Food">><<nobr>>
<<set $which = random(2, 3)>>
<<if $growth[$which] eq 0>>
<<if $which eq 2>>
<<set $which = 3>>
<<else>>
<<set $which = 2>>
<<endif>>
<<endif>>
<<set $rtend2 = random(15, $growth[$which])>>
<<if $rtend2 gt $growth[$which]>>
<<set $rtend2 = $growth[$which]>>
<<endif>>
<<set $before2 = $growth[$which]>>
<<set $after2 = $growth[$which + 1] + $rtend2>>
<<set $growth[$which] = $before2 - $rtend2>>
<<set $growth[$which + 1] = $after2>>
<<set $avgHealth = Math.floor($rtend2 / 2)>>
<<endnobr>>You weed the garden plots and check the plants' leaves for spots or nibble marks.
<<print $rtend2>> plants have been tended. Average garden health has reached <<print $avgHealth>>.
[[Tend]] more plants or return to [[Command Central]].
<<display "Time">><<display "Food">><<nobr>>
<<if $rationing eq 0>>
<<set $rationing = 1>>
<<set $morale = $morale - 15>>
<<elseif $rationing eq 1>>
<<set $rationing = 0>>
<<set $morale = $morale + 5>>
<<endif>>
<<endnobr>>Rationing can help stretch out supplies a little longer, but it's not great for morale.
Go back to [[Command Central]]. <<nobr>>
<<set $rcrops = random(30, $growth[$maxGrowth])>>
<<if $rcrops gt $growth[$maxGrowth]>>
<<set $rcrops = $growth[$maxGrowth]>>
<<endif>>
<<set $supplies = $supplies + $rcrops>>
<<set $growth[$maxGrowth] = $growth[$maxGrowth] - $rcrops>>
<<set $planted = $planted - $rcrops>>
<<set $cheer = $morale>>
<<set $morale = $morale + $rcrops / 2>>
<<if $morale gt 100>>
<<set $morale = 100>>
<<endif>>
<<set $harvests = $harvests + 1>>
<<set $harvested = $harvested + $rcrops>>
<<set $stocked = Math.floor($supplies / $initial * 100)>>
<<endnobr>>Fresh supplies are good for morale. You feel pretty cheerful yourself as you offload into cold storage.
Supplies are at <<print $stocked>>%. <<if $cheer lt 75>>The crew take pride in their work and mood soars. Someone starts to whistle. <<endif>>
[[Harvest]] more crops, or return to [[Command Central]].
<<display "Time">><<nobr>>
<<set $alert = 0>>
<<set $hungry = Math.floor($supplies / $initial * 100)>>
<<if $morale lt 25>>
<<set $alert = 1>>
''Morale'' is dangerously low at <<print $morale>>%. <<endif>>
<<if $hungry lt 25>>
<<set $alert = $alert + 1>>
''Supplies'' are worryingly low at <<print $hungry>>%. <<endif>>
<<if $countdown gt 50 and $alert gt 0>>
<<set $alert = $alert + 1>>
The resupply ship is ''a long way off''.
<<endif>>
<<if $alert gt 0>>* [[Alert the homeworld|Homeworld]] to this worrying situation. <<endif>>
<<endnobr>><<nobr>>
<<set $garden = Math.floor($planted / $capacity * 100)>>
<<set $fed = Math.ceil($supplies / $initial * 10)>>
<<set $merit = 0>>
<<set $demerit = 0>>
<<if $fed gte 5>>
<<set $merit = $fed - 4>>
<<elseif $fed lte 3>>
<<set $demerit = 3 - $fed>>
<<endif>>
<<if $garden gte 75>>
<<set $merit = $merit + 1>>
<<endif>>
<<if $harvested gt 100>>
<<set $merit = $merit + 1>>
<<endif>>
<<if $morale gte 75>>
<<set $merit = $merit + 1>>
<<elseif $morale lt 50>>
<<set $tanked = 5 - Math.floor($morale / 10)>>
<<set $demerit = $demerit + $tanked>>
<<endif>>
<<endnobr>>You brace yourself for judgment to be passed.
''Supplies'' are at <<print $supplies>>. <<if $supplies gt 125>>It doesn't seem like you were ever in real danger of running out. <<endif>>
The ''garden'' is planted with <<print $planted>> plots, at <<print $garden>>% of capacity. Having harvested the garden <<print $harvests>> times, you brought in a cumulative ''<<print $harvested>> crops''. <<if $growth[$maxGrowth] gt 0>>An additional <<print $growth[$maxGrowth]>> ripe crops are ready to be brought in. <<endif>>
''Morale'' is at <<print $morale>>%. <<if $morale lt 25>>It is alarmingly low. <<elseif $morale lt 50>>It's quite low, and it reflects poorly on your management. <<endif>>
Your final evaluation form reports <<print $merit>> merits and <<print $demerit>> demerits. <<if $demerit gte 2>>Bluntly, you'll be lucky to keep your job altogether. <<elseif $demerit gt $merit>>So much for that promotion you were hoping for. <<elseif $merit eq 0>>Maybe next time you'll impress them. That is, if you don't get reassigned to somewhere even //more// remote. <<elseif $demerit eq 0 and $merit gt 0>>In a few years, this mission will be a pleasantly forgettable blip on a distinguished resume. Later, when you're alone, you can give yourself a proper pat on the back. <<endif>>
<<if $merit gt 0 and $demerit gt 0>>The evaluation officer seems puzzled by your mixed performance. Home offices don't really know what to make of you. <<endif>>ZGF Supply Outpost
<small>version 1.1</small>dispatch by outpost liaison Hazel