Search This Blog

Sunday, September 27, 2015

Ok Internet

I suck at BASH scripting but make myself do it anyway. Even though I'm not supposed to go near toy ponies, today I wrote this for Ubuntu:

/usr/local/sbin/ponyfortune:
#!/bin/bash
N=0;
while true; do
        N=$((N+1));
        P=`ponysay -l | sed -r "s:\x1B\[[0-9;]*[mK]::g" | sort -R | head -n1 | tr -s ' ' | tr ' ' '\n' | head -n3 | sort -R | head -n1 | tr -d ' '`;
        printf "$N) $P says:\r\n";
        fortune -s | ponyfy | ponysay -F $P | pv -qL750;
done;

I took the following from milesluigi @ reddit:

/usr/local/sbin/ponyfy:
#!/bin/bash
sed -e 's/america/amareica/g' -e 's/America/Amareica/g' -e 's/anybody/anypony/g' -e 's/Anybody/Anypony/g' -e 's/anyone/anypony/g' -e 's/Anyone/Anypony/g' -e 's/boy/colt/g' -e 's/Boy/Colt/g' -e 's/butthurt/saddle-sore/g' -e 's/Butthurt/Saddlesore/g' -e 's/children/foals/g' -e 's/Children/Foals/g' -e 's/child/foal/g' -e 's/Child/Foal/g' -e 's/cowboy/cowpony/g' -e 's/Cowboy/Cowpony/g' -e 's/cowgirl/cowpony/g' -e 's/Cowgirl/Cowpony/g' -e 's/gentlemen/gentlecolts/g' -e 's/Gentlemen/Gentlecolts/g' -e 's/everybody/everypony/g' -e 's/Everybody/Everypony/g' -e 's/everyone/everypony/g' -e 's/Everyone/Everypony/g' -e 's/feet/hooves/g' -e 's/Feet/Hooves/g' -e 's/folks/foalks/g' -e 's/Folks/Foalks/g' -e 's/fool/foal/g' -e 's/Fool/Foal/g' -e 's/foot/hoof/g' -e 's/Foot/Hoof/g' -e 's/girls/fillies/g' -e 's/Girls/Fillies/g' -e 's/girl/filly/g' -e 's/Girl/Filly/g' -e 's/halloween/nightmare night/g' -e 's/Halloween/Nightmare Night/g' -e 's/hands/hooves/g' -e 's/Hands/Hooves/g' -e 's/handed/hooved/g' -e 's/Handed/Hooved/g' -e 's/hand/hoof/g' -e 's/Hand/Hoof/g' -e 's/\bhey\b/hay/g' -e 's/\bHey\b/Hay/g' -e 's/humans/ponies/g' -e 's/Humans/Ponies/g' -e 's/human/pony/g' -e 's/Human/Pony/g' -e 's/ladies/fillies/g' -e 's/Ladies/Fillies/g' -e 's/main/mane/g' -e 's/Main/Mane/g' -e 's/woman/mare/g' -e 's/Woman/Mare/g' -e 's/women/mares/g' -e 's/Women/Mares/g' -e 's/\bman\b/stallion\ /g' -e 's/\bMan\b/Stallion/g' -e 's/\bmen\b/stallions/g' -e 's/\bMen\b/Stallions/g' -e 's/no\ one\ else/no\ pony\ else/g' -e 's/No\ one\ else/No\ pony\ else/g' -e 's/nobody/nopony/g' -e 's/Nobody/Nopony/g' -e 's/people/ponies/g' -e 's/People/Ponies/g' -e 's/person/pony/g' -e 's/Person/Pony/g' -e 's/philadelphia/fillydelphia/g' -e 's/Philadelphia/Fillydelphia/g' -e 's/somebody/somepony/g' -e 's/Somebody/Somepony/g' -e 's/tattoo/cutie\ mark/g' -e 's/Tattoo/Cutie\ mark/g' -e 's/the\ heck/the\ hay/g' -e 's/The\ heck/The hay/g' -e 's/the\ hell/the\ hay/g' -e 's/The\ Hell/The\ Hay/g' -e 's/troll/parasprite/g' -e 's/Troll/Parasprite/g'

To install:
sudo add-apt-repository ppa:vincent-c/ponysay
sudo apt-get update
sudo apt-get install ponysay fortune pv

The "P=" line basically asks ponysay to get a list of pony's it knows about, picks one at random, pivots that and does it again because there are three ponies per line to get the name of a random pony. Next it ponyfy's a fortune quote and uses pv to make it render slowly.

Sunday, July 05, 2015

Tuesday, June 16, 2015

Wednesday, June 10, 2015

Big guns for fun

I've had some free time lately and I decided to adapt a scrolling shoot em up style game to have what everyone really wants, insanely powerful weapons. I found a good Java game to adapt and modified it until I was happy with the result. Update: I'm getting into github.