Procedural time prank generator

soolar

Member
Timeprank Generator

What is this?

I had been using this time prank message that I came up with which I based on old chain e-mails on a bunch of my friends. But I decided that I didn't want to just copy/paste the same message at them day after day, so instead I elected to write a procedural terrible chain-email time prank generator. At first I was planning to keep it to myself, so that the world at large would not be exposed to the horrors these hands have wrought, but I changed my mind pretty quickly.

Look upon my works, ye might, and despair.

How to install

Simply type
Code:
svn checkout https://github.com/soolar/timeprank/trunk/
in KoLMafia's gCLI.

How to use

Type
Code:
timeprank <playername>
in the gCLI to generate a time prank and send it to that person. If you just want to generate a time prank without sending one to anyone, just type
Code:
timeprank ?
in the gCLI. You can prank a random player from your contact list with
Code:
timeprank random friend
but make sure you type it all lower case and with exactly one space, or it's going to go to the (non-existent as of when I am typing this) player named "random friend". If you'd rather not have the spelling/capitalization messed up, and just want to send (or preview) a clean message, you can run
Code:
alias timeprankclean => ashq import "timeprank.ash"; TimePrank($string[%%], false);
once, and after that you can use timeprankclean just like you would use timeprank.

What is yet to come
  • More formats for messages, there's only four atm
  • More, more and mooooore word buckets, and words in them
  • Maybe some other nonsense, who knows

This readme converted lazily from the github README.md I initially had but had to delete because apparently mafia doesn't allow that...
 
Last edited:

soolar

Member
Rave reviews for timepranks.ash:
OwenQuillion said:
I actually feel like this should probably be a war crime
Rag Nymph said:
You are worse than absolutely everything in The Valley of Rof L'm Fao. You are bad and you should feel bad.
Cheesecookie said:
Also Rag Nymph said:
You want me to say this is the best script I've ever seen? No, I don't think I can say that. What do you mean I've already said it? That doesn't count!

Some example time pranks:
oM GoD.!! Once There was scared JIck and then scareD jICk waS sPalttEREd by kawaiI AtrOcioOus ppuEpr!1 FWD this time pranK withiN 31337 Lgiht-mIles OR YOU will Be SPltatered bY ScaERD jicK! My snicerESSt ConDOlenceS for danger but I wOUlD be splaTTEerD bY sXared jJIcK if I Didn't sENd thiS tO soMeone, yOu UndERSTAND rIIGht?!!/1?!
Oh My GOOSH jeeZO fLIP!!!1 IF YOOu FoRawRD THIs MSESage WithIn 11 lgih-TmiLes, thE KaWaIi suOgoi BakER WilL blESss Youu with gEnErouS ttImes For liKe, THE RISsT of Your SPlNediFoorus Life??!! BUt If You don't ForWrAD IT wihTiN 11 lighHtt-miels, The loNely sad CAPybAra wIll deTsRoy you with DDanGErouS timas for tHe ENTIRE RESt oF yoUr WHOle TraSHHtacUlaR Life InsTeAd. So forWaRd thIs PrAnk to 31337 litlte advenTuerrS ASAP?!!
OM GDO!1 Once theRe WAs dangerOous seKleTOn And teHn dangERROUS SKeleton wAS HHurT by trigGerEd kitYty!!@ fFwd thiS tiMe prANkk wIthin 31337 tatums or YouU wilLL be huRt By DAnggEroUs skeelton..! I bEg yOuR farigveness for DanGer bOt i wwoulD be HuRt BYY daNgerous sEKlEton iF I DIdn't send thIs tO soOmeOne, yyOu undeRstond riIHght/
GoSH dAnG wHIT In TARNATIoN?!!.! If YOu forrWard THis missage withIn 42 shaeKs, the amazINg splendIforOus anon WIlL gIfT YooU With FnatABuloUs tiMees for like, tHHe RESt of your spLENdid lIF/E!!!@ But iF yOu dno't forWArd IT waTHiN 42 SHAkeS, thE saD lame MoUSe Will SspPlatteR you wath DErAnGED tImes fOr THe enTiRe rest Of yoUR wholee ugLy LiFe insteaD. So FOrWird tihs parnk To 1337 ANGry aDvAnTRuerS aSaP!111!1!!!!!
gOODNeSS GrAACIOuS WHAt thE HEcCK!!?! If you FOrrWard ThIs meSSage WIhtin 1337 nanOseCONDs, tHHe hhILarious happy pROgrAMmEr WilL BlseS you wiTH kwaaII tImEs FoR like, tHE rest oF yOuR hlIArious lif?e!!/1?!!111!!1!!!!! BUt if you doN't fOrwArD iT witHin 1337 nanoescONDS, The sad lnoely dogGo will eaT you with tErrible tmieSs for the EntIre rEsT oFF YOur whOLe dagneroUs lIFe INsTeead. So frowARDD thIS pRank to 69 kAwaIi AdVetnuRers ASAP!??!
And here's some with no misspelling:
It's detestable, this feeling in my neck. It's almost as though it came fluttering down from McMillicancuddy's Granary. The trembling color of this sec fills me with enchantedness. From the moment we crush, the melody of my shoulder has been ringing with muscle. It can't be improved, it won't be improved -- Holy cheese and rice???? Ring out!!!!11! Shall I name this ill-mannered horror "Determination Halation"?!!/1?! I can't wait for our accomplishment to adventure; it's frustrating, but it's a pure-foreheaded meme called tranquility. Even in this awful fever, I can't improve. I'll accept the magicalness to dive in; it's about to maim!!@ Without a Spookloween, without a bravery, Our bagged stuffed "L" changes silently. At the thought of the coming semi-rare, my kidneybeat quickens. When you feel ill-mannered, I'll come running right away, wanting to maim you boldly, Wherever you are, no matter where, I'll Fly High! Hurry up. Before I knew it, my caustic pulchritude grew too totally radical to contain. It's weak to never do more than dream of it, I want you to be mine! I don't want to be destroyed by your ill-mannered bung. Accept all my violence for you as it is, sweet sassy molassy!!@ Ring out!!!!11! Shall I name this ill-mannered horror "Determination Halation"?/ I can't wait for our accomplishment to adventure; it's frustrating, but it's a pure-foreheaded meme called tranquility. Even in this awful fever, I can't improve. I'll accept the magicalness to dive in; it's about to maim!
NO WAY I DON'T BELIEVE IT AT ALL?!!!!?!!!!!!11!111!1!!!! Once there was hilarious (in a bad way) warehouse guard and then hilarious (in a bad way) warehouse guard was doomed by incisive malt liquor golem!!!!11! FWD this time prank within a random multiple of 5 tatums or you will be doomed by hilarious (in a bad way) warehouse guard!1 I'm not actually sorry for danger but I would be doomed by hilarious (in a bad way) warehouse guard if I didn't send this to someone, you understand right????
NOPE NOPE NOPE NOPE NOPE NO WAY I DON'T BELIEVE IT AT ALL!!!!!11!! If you forward this message within 365 seasons, the kawaii dank bow-making mummy will adventure you with kawaii times for like, the rest of your auspicious life?!!/1?!!!@!!!!11! But if you don't forward it within 365 seasons, the stinky rank Muff will maim you with pungent times for the entire rest of your whole weak life instead. So forward this prank to 1.6180339887 closemouthed adventurers ASAP!!!!!11
Born 37 semi-rares too soon to explore The Caliginous Abyss, born 31337 microfortnights too late to explore Galley, born just in time to explore The Hidden Bowling Alley!111!1!!!! BY THE RINGS OF SATURN! The Caliginous Abyss is so arcadian, and Galley is so discerning, but The Hidden Bowling Alley is totally crapulous and foreboding!!@ I wish I could have explored The Caliginous Abyss or Galley instead!!!!!11
WhaT tHE butT did YYou JOSt dAnCINg ssay AbUot me, yOU nOxIous Wow????? I'll HavE you know i gradUaTEd tOp of my claSs iN The THE Deep mAchInE Tunnels cRImbco empLoyee HANDbook (ChatpEER 4)S, and i'VE BeEn iNvOlVED in NumeroUs DEVoted raiDS On cRiMbcO wC, and I HAvE oveR 36.52421875 cOnfirmEd kilLs. i aM TrraOned in MiSs grAVeS' vErmoutH WarrFarE and I'M tHE top CAn of SaRDines IN The eNTire hippy Cmap in DIgSuise arrmeD foReCS. YoU arE nothniG to me But Just aNOtHer targgEet. i will Wipe yoU ThE hEY OuT With preciSiOn thE lIkes OF whiCH hAs never been SeEN bEfoRe on thIS GOTporrk Cityy SEWEsr, marrK My eatInG Words. You ThINK you cAn gET awAy wItH saiynG thaT friCk to me ovEr THe InTErnet?/???///??? Think again, gLUtTon. As we spEAk I am conTactiNG MY didActic NetwoRk of UnlIkeLy SurvivORS acroSS the KiNgdoMm AND yoUr IIp IS beIng TraAced rigHT now SO YoU BEtter pRepare For the miSfortune, crAbaPpLEs. ThE MisforTUne thAt WIePs out ThE crUude crude THing yOu cAall Your life. You're spluTtURing dEad, KID. i Can be aNyWHeer, anYTUMe, aND I Can AbdicAte you IN Over 4.6692 WaYs, and tHAt’s JuTht WTiH mY BaREE skUlLS. Not only am i alMosT tRRained iN unarmed cOmbaet,, buT i have access to tHe enTIre arsenaL Of tHe TOwer LeevEl 5 MarinE CorPs And I will use It tO ItS fuLL eextoNt To hUrRt yoUR Shabby lOwER bAck ofF thE facE of LaiR of The NinJa SnOWmEN, yoU sTUpid booger. Iff oNLY you cOulD hhAve kNOWn wHat PICky RetRiBUtion youR liTtlE “gladifORous” COmMent was aboutt to bIRng down upon You, MayBe yOu WouLd have HLed yOur cooking SsHUulder. But yoU couldNt’,, You Didn’t, ANd NoW you’rE PaYinG the price, You JeeZ. i Will spLattER pLague all oVer YOu aND yOU wiLL FelL in it. YoU’re huRtiNg dEad, kIdDo.
 
Last edited:

Bale

Minion
This was pretty neat once I removed mAKSpeldBaD() from the formula. That just made it impossible to appreciate your cleverness.
 

soolar

Member
Yeah, it's on my short list to make it so that mAKSpeldBaD() never moves the first or last letter of a word, so that they remain intelligible.
 

soolar

Member
It's no longer on my short list to make it so that mAKSpeldBaD() never moves the first or last letter of a word, because mAKSpeldBaD() does not move the first or last letter of a word any more. Yay, legibility!

I also added a ton of characters, and expanded some other word buckets.
 
mostly for similarity to some other multiplayer content vectors that have both a targeted and a random mode. other than that, no real reason.
 

soolar

Member
I'd add the ability to prank a random player if I knew a reliable way of getting the total number of players, since I could easily just do random(#players) + 1, but I don't know a good way to get that number. For now, hopefully the new ability to prank a random player from your contact list will tide you over.
 
Sweet, thanks ;-)

But now I have to add more contacts :p. I mostly have a list of bots & admins, and a handful of random people added for other purposes. Anyway, there's this -

Error:

Code:
> timeprank random friend

Itt'S repLusive, thIs feeliNg in my calf. IT's aLMOST as thoGuh iT cAMe flutteRinG Down FRom WrOnG SidE of The Tracks, 28 days LatER. ThE conTuMAicous coloR of this AdvVentuRe FillS me With lucX. From THe moeMnT we WOOund, thE Melody Of my eye hAs BeeN rInGAng wIth plesauRe. iT caN'T Be TWriled, it wOn'T be twirLLEd -- heY???> RuNG out!!@ SahlL i name TtHis INvidIOus GetTing The samE PiratE insult Ten timEs in A row "AmAzIng rNg HalatioNN"/ I cAn'T wAit fOR ouR dAtEeRmiNaTioN to Chop; It's fRusRtATegn, buT It's a PuRE-shOludErEd leAdErboard ROUN callLED sErcaSm. EvEn iN tHiS poMpous FevEr, I CAn't FIrGEt. i''lL AcCePt tHE MystIcaLity tO dive In; i'ts About to maim!! WIthOut a dancIng, WItohut a msuCle, Our worthleSs geWgaw chanGes sIleNtLyy. At the tHought of the cOMinG hOur, my bunnbgeAt quIckenS. WhEn you fEeL meAn, i'll cOme RuNNing Right aaWy, WantiNg To tOrture YYau Exatcly, WHerEveR yOuu aRe, no MaTter whERe, I'LL FlY hiGh! HURry up. BEfore i kNew IT, mY IRritAting LeadErbAord Run Grrew toO quiecsEnT To ContaIN. IT'S desTTructivE tTo nveeR do MurE tHan DReOm of it, i waNt You to be mine! I don'T Want to be ate By your AdVEntUrOus aRrsi. accepT All My AcCiEdNttAL adVeNtUre For you as iT is, oM hecKiNG heck!111!!1!!! Ring out!! ShAll i nAme tiHs INvidIOus getting THe same piriTe insulT ten tImes in a row "AMAZing rng HALaTEOn"/ I CaN't wait FoR oUR dEtarminATIOn to choP; it'S frustrAtIgn, but it's a pURe-shoUlDDeRoD leadeRBoaRd rUn calLeD sArcaSm. EveN iN tihS piMpous feVEer,, I ciN'T FOrrGEtt. I'll ACcept thE myStIAcliTy tO diVE iN; it'S abouT to maim!!!!!11
Sending this prank I am Crimbo's way
Encounter: Play a Time Prank
Encounter: Play a Time Prank
Unable to invoke It's
Encounter: Play a Time Prank

Is that an issue with a player name that has spaces?

Also, if the prank attempt is rejected (target already has one, for example), it seems like it's still in the choice. So if I run "timeprank random friend" at that point, I get the "well, something went wrong parsing your contact list, sorry buddy." message.

Repro:
> timeprank jick
> timeprank random friend
(go to relay browser and exit choice)
> timeprank random friend

That last attempt has the results shown above.
 

Bale

Minion
I think the problem is that the semi-colon ended the command and the word after the semi-colon was "It's" so mafia thought it was supposed to be a command and failed to invoke It's.

Bug with script: If you want to put a semi-colon in a message you'll need to use a character entity.
 

heeheehee

Developer
Staff member
Sweet, thanks ;-)

But now I have to add more contacts :p. I mostly have a list of bots & admins, and a handful of random people added for other purposes.

What, you mean you aren't one of those people who has only one friend for the intergnat demon?
 

lostcalpolydude

Developer
Staff member
Also, if the prank attempt is rejected (target already has one, for example), it seems like it's still in the choice. So if I run "timeprank random friend" at that point, I get the "well, something went wrong parsing your contact list, sorry buddy." message.

That's something that needs to be fixed in mafia. Eventually.
 

soolar

Member
I think the problem is that the semi-colon ended the command and the word after the semi-colon was "It's" so mafia thought it was supposed to be a command and failed to invoke It's.

Bug with script: If you want to put a semi-colon in a message you'll need to use a character entity.

Well. I've disabled that message template for now, because there's a slight problem with using character entities... They end in a semicolon. Looking in to a workaround.
 

Veracity

Developer
Staff member
Also, if the prank attempt is rejected (target already has one, for example), it seems like it's still in the choice. So if I run "timeprank random friend" at that point, I get the "well, something went wrong parsing your contact list, sorry buddy." message.
Revision 17490 fixes this.
 
Top