esolang where you poop to do stuff
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Hydrazer 9cd2b71f29 Update '' 10 months ago Update '' 10 months ago


esolang where you poop to do stuff

poopclick is based on a day system where you are able to poop a certain number of times determined by your poop worth. to gain passive poops per day by buying things from the shop such as grandmas or mini-poopers (more expensive ones will produce higher quality poop).

each time you or something poops, the poop age will start at 0

you can read input from stdin by finding poops on the ground and they are stored in the poop hash with the key determined by the current day.

when you sleep, each poop in the hash will age by one, so if you found an 'e' poop on day 1, on day 3 it would be an 'g' poop as it would have aged 2 days and the ascii value would have gone from 101 to 103. you are able to sleep as many times in a row as you want

you can go back in time if you want to be able to access those poops at an earlier stage, but it will cost you some poops that have a value of greater or equal to the days you want to go back. if you sleep for 5 days, you cannot go back to yesterday, but only 5 days ago

if you want to print characters to the screen, you need to give your poops to the poop character master. you can also print numbers by giving your poops to the poop number master.

you are able to sell poops you don't want them anymore for poop coins which are used for rewinding

you can pick up a poop by specifying the day and the index of the poop you want


  • poop => add a poop of age 0 to self poop hash
  • find => add a poop from standard input to poop hash
  • sleep (day_count: USIZE) => sleep n days, aging each poop in poop hash by n days
  • sleep => sleep one day
  • pickup (day: USIZE) (index: USIZE) => pick up poop on a day at an index
  • pickup (day: USIZE) => pick up all of your poop on a day
  • rewind (day_count: USIZE) => reverse of sleep, but only to days where you were awake (will only work if (holding value >= day_count) and will consume all poop in hand)
  • rewind => rewind 1 day
  • give (char-master | num-master) => give char or number master all the current poops on hand
  • buy (item: SHOP_ITEM) => buy an item in the shop (no change given)
  • eject => eject all poop you are holding
  • equal (num: USIZE) (day: USIZE) (index: USIZE) => check if ascii value for poop at that index is equal to "num" and pick it up if it is