Skip to content

sawall/slackbot-puzzle

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 

Repository files navigation

#slackbot-puzzle

This includes a number of plugins for the slackbot found at https://github.com/lins05/slackbot which are useful for solving ciphers, crypto puzzles, and also for word games.

Special thanks to Mark Santesson for his extremely helpful anagram tutorial which is the basis for my anagram and scrabble calls.

##installation

Just drop the folder into your slackbot folder, add 'puzzle-plugins' to PLUGINS in local_settings.py and away you go.

python3 is required.

##bot commands

###tricky stuff

  • anagram: anagram solver for arbitrary number of letters. output /-delimits between possible words in a position and space-delimits between letter groupings.
  • scrabble[5]: find scrabble words given a collection of letters.
  • rotn: show all possible caesar rotations of a string
  • matchwildcard: show possible words for a string using ? as a wildcard. e.g., CO?T will give COAT, COST, and others.
  • matchword: all words that match a letter pattern, e.g., ABBCDE gives OCCULT and a lot more
  • matchphrase: find phrases that match a letter pattern, e.g., OFFICE AWARD gives OCCULT NINJA and more.
  • freq: counts frequencies of letters in a string
  • freqsubst[2]: attempts to substitute letters based on English-language frequencies.

###convenience commands

  • md5, sha256, ascii2hex, hex2int, ascii2b64, b642ascii, reverse

##TODO

  • atbash
  • keyed caesar
  • other basic ciphers: columnar, etc
  • bin2hex, hex2 bin
  • frontend for pycrypto
  • improve freq substitution approaches
  • streamline anagram + scrabble by saving a copy of the multiplicative prime representation of the system dictionary and referring to that instead of computing it every time

About

cipher and crypto puzzle solving helpers for https://github.com/lins05/slackbot

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages