Skip to content

Instantly share code, notes, and snippets.

@trilom
Last active December 7, 2020 01:58
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save trilom/831ea1b2855abec0a25d6c671a1ab8c7 to your computer and use it in GitHub Desktop.
Save trilom/831ea1b2855abec0a25d6c671a1ab8c7 to your computer and use it in GitHub Desktop.
Any weebs know if this is anatomically correct?
source "null" "words" {
}
build {
name = "utils.words"
sources = ["null.words"]
provisioner "shell-local" {
# setulimit, this works with macbook https://gist.github.com/gerardkok/8e61df7bbb132522b8232fb3841ae3b4
# http(ie) is required here, curl could work
inline = concat(["ulimit -n 524288"],[
"mkdir -p ${path.cwd}/inventory",
# places
"http GET https://pokeapi.co/api/v2/region/\\?limit\\=8\\&offset\\=0 | jq '[.results[].name]' > '${path.cwd}/inventory/pokemon-regions.json'",
"http GET https://pokeapi.co/api/v2/location/\\?limit\\=781\\&offset\\=0 | jq '[.results[].name]' > '${path.cwd}/inventory/pokemon-locations.json'",
# proper nouns
"http GET https://pokeapi.co/api/v2/pokemon/\\?limit\\=898\\&offset\\=0 | jq '[.results[].name]' > '${path.cwd}/inventory/pokemon-list.json'",
# noun (things)
"http GET https://pokeapi.co/api/v2/item/\\?limit\\=954\\&offset\\=0 | jq '[.results[].name]' > '${path.cwd}/inventory/pokemon-items.json'",
# noun (berries)
"http GET https://pokeapi.co/api/v2/berry/\\?limit\\=64\\&offset\\=0 | jq '[.results[].name]' > '${path.cwd}/inventory/pokemon-berries.json'",
# verbs
"http GET https://pokeapi.co/api/v2/move/\\?limit\\=813\\&offset\\=0 | jq '[.results[].name]' > '${path.cwd}/inventory/pokemon-moves.json'",
"http GET https://pokeapi.co/api/v2/ability/\\?limit\\=327\\&offset\\=0 | jq '[.results[].name]' > '${path.cwd}/inventory/pokemon-abilities.json'",
# adjectives - (lax, impish, gentle, lonely etc)
"http GET https://pokeapi.co/api/v2/nature/\\?limit\\=25\\&offset\\=0 | jq '[.results[].name]' > '${path.cwd}/inventory/pokemon-natures.json'",
# types - (fire, ghost, fairy, dark, electric etc)
"http GET https://pokeapi.co/api/v2/type/\\?limit\\=25\\&offset\\=0 | jq '[.results[].name]' > '${path.cwd}/inventory/pokemon-types.json'"
])
}
locals {
p_raw = {
abilities = try(jsondecode(file(format("%s/%s",path.cwd, "inventory/pokemon-abilities.json"))), [])
berries = try(jsondecode(file(format("%s/%s",path.cwd, "inventory/pokemon-berries.json"))), [])
items = try(jsondecode(file(format("%s/%s",path.cwd, "inventory/pokemon-items.json"))), [])
locations = try(jsondecode(file(format("%s/%s",path.cwd, "inventory/pokemon-locations.json"))), [])
moves = try(jsondecode(file(format("%s/%s",path.cwd, "inventory/pokemon-moves.json"))), [])
natures = try(jsondecode(file(format("%s/%s",path.cwd, "inventory/pokemon-natures.json"))), [])
pokemon = [for poke in try(jsondecode(file(format("%s/%s",path.cwd, "inventory/pokemon-list.json"))), []):
split("-", poke)[0]]
regions = try(jsondecode(file(format("%s/%s",path.cwd, "inventory/pokemon-regions.json"))), [])
types = try(jsondecode(file(format("%s/%s",path.cwd, "inventory/pokemon-types.json"))), [])
}
p_map = length(local.p_raw.pokemon) > 0 ? zipmap(range(1,899), local.p_raw.pokemon) : {}
pnouns = [
"themaan", "raymond", "lollycat", "tangykitty", "nyancat", # lacey
"meechyd", "erika", # 2/3 flatbush zombies
"paulyd", "snooki", # some jersey shore toons
"amber", "gary", "belden", "matt", "andrew", # tm1: cops
"caitlyn", "tyler", "ranchgirl", "butch", # tm1: PCD#1 fanclub
"farrah", "debra", "michael", "jamesd", "shaq", # tm1: XXX rated
"maci", "ryan", "kyle", "taylor", # tm1: zzz
"jenelle", "babs", "david", "courtland", "nathan", # tm2: pbjenelly
"leah", "corey", "jeremy", "robbie", # tm2: buckwild
"chelsea", "adam", "cole", "randy", # tm2: orange
# sorry, I don't support kail
"rza", "gza", "ideck", "ugod", "ghofkla", "mefthod", "raekwon", "odbrip", # most of Wu Tang Fin. Co.
"goofus", "poop", "porchk", "steven", "udon", "noodle", # pets and personal lore
"lupagus", "khalidious", "bojangles", "plutarch",
"daddyfatsacks", "turkey", "redman", "noobsaibot",
"sif", "muggs", "sterling", "jiji", "rincewind", "pippin", "beef", "wirt" # pets of redman
]
adj = [
"abhorrent", "grumpy", "blissless", "canker", "crass", "carefree",
"cranky", "dreamless", "elastic", "muddled", "dull", "flamboyant",
"hostile", "frosty", "unremarkable", "hardcore", "depressed", "famished",
"fallible", "folly", "miserable", "dense", "lucid", "boastful", "clumsy",
"traumatized", "pessimistic", "flavorless", "accepting", "practical", "chaotic",
"blank", "tender", "parched", "wizardly", "ancient", "shuckin",
"confuzzled", "ruffled", "ribbed", "tuckered", "pimped", "smashed", "dunked",
"dipsnuffa", "homogeneous", "gangsta", "slamin", "jivin", "liveindirect", "keepinit",
"fresh", "wanksta", "thrusting", "cheesy", "satanic"]
pokemon = [for num in range(1,101): format("%s-%s-%s",
element(local.adj, parseint(substr(uuidv4(),0,2),16)),
try(local.p_map[num], "nomon"),
local.jlist[num])]
random_names = [for num in range(0,20): format("%s-%s-%s",
element(local.adj, parseint(substr(uuidv4(),0,2),16)),
element(local.pnouns, parseint(substr(uuidv4(),0,2),16)),
element(local.jlist, parseint(substr(uuidv4(),0,2),16)))]
jlist = [for num in range(0,101): format("%s", num <= 10 || num == 100
? local.jmap[num]
: (num <= 100
? format("%sjuu%s", (num >= 20
? local.jmap10[substr(num,0,1)]
: ""), substr(num,1,2) != "0" ? "${local.jmap[substr(num,1,2)]}" : "")
: "idk"))]
jmap = {
1 = "ichi"
2 = "ni"
3 = "san"
4 = "yon"
5 = "go"
6 = "roku"
7 = "nana"
8 = "hachi"
9 = "ku"
0 = "maru"
10 = "juu"
100 = "hyaku"
1000 = "hyaku2"
}
jmap10 = merge(local.jmap,{9="kyuu", 0 = ""}) # if 90 then kyuu
}
[
"blissless-bulbasaur-ichi",
"pessimistic-ivysaur-ni",
"dunked-venusaur-san",
"miserable-charmander-yon",
"dense-charmeleon-go",
"carefree-charizard-roku",
"jivin-squirtle-nana",
"flamboyant-wartortle-hachi",
"miserable-blastoise-ku",
"dunked-caterpie-juu",
"clumsy-metapod-juuichi",
"boastful-butterfree-juuni",
"blissless-weedle-juusan",
"cheesy-kakuna-juuyon",
"pessimistic-beedrill-juugo",
"ribbed-pidgey-juuroku",
"practical-pidgeotto-juunana",
"liveindirect-pidgeot-juuhachi",
"blank-rattata-juuku",
"tuckered-raticate-nijuu",
"accepting-spearow-nijuuichi",
"parched-fearow-nijuuni",
"hostile-ekans-nijuusan",
"hostile-arbok-nijuuyon",
"satanic-pikachu-nijuugo",
"folly-raichu-nijuuroku",
"flavorless-sandshrew-nijuunana",
"depressed-sandslash-nijuuhachi",
"flavorless-nidoran-f-nijuuku",
"confuzzled-nidorina-sanjuu",
"ancient-nidoqueen-sanjuuichi",
"chaotic-nidoran-m-sanjuuni",
"keepinit-nidorino-sanjuusan",
"thrusting-nidoking-sanjuuyon",
"fresh-clefairy-sanjuugo",
"fallible-clefable-sanjuuroku",
"cranky-vulpix-sanjuunana",
"shuckin-ninetales-sanjuuhachi",
"parched-jigglypuff-sanjuuku",
"practical-wigglytuff-yonjuu",
"hostile-zubat-yonjuuichi",
"shuckin-golbat-yonjuuni",
"pessimistic-oddish-yonjuusan",
"ancient-gloom-yonjuuyon",
"wanksta-vileplume-yonjuugo",
"chaotic-paras-yonjuuroku",
"traumatized-parasect-yonjuunana",
"traumatized-venonat-yonjuuhachi",
"gangsta-venomoth-yonjuuku",
"cheesy-diglett-gojuu",
"cheesy-dugtrio-gojuuichi",
"hardcore-meowth-gojuuni",
"keepinit-persian-gojuusan",
"shuckin-psyduck-gojuuyon",
"crass-golduck-gojuugo",
"depressed-mankey-gojuuroku",
"dipsnuffa-primeape-gojuunana",
"chaotic-growlithe-gojuuhachi",
"miserable-arcanine-gojuuku",
"slamin-poliwag-rokujuu",
"parched-poliwhirl-rokujuuichi",
"fresh-poliwrath-rokujuuni",
"frosty-abra-rokujuusan",
"blank-kadabra-rokujuuyon",
"unremarkable-alakazam-rokujuugo",
"tender-machop-rokujuuroku",
"pimped-machoke-rokujuunana",
"shuckin-machamp-rokujuuhachi",
"ruffled-bellsprout-rokujuuku",
"dipsnuffa-weepinbell-nanajuu",
"boastful-victreebel-nanajuuichi",
"blank-tentacool-nanajuuni",
"abhorrent-tentacruel-nanajuusan",
"blissless-geodude-nanajuuyon",
"hostile-graveler-nanajuugo",
"frosty-golem-nanajuuroku",
"famished-ponyta-nanajuunana",
"ribbed-rapidash-nanajuuhachi",
"tender-slowpoke-nanajuuku",
"hardcore-slowbro-hachijuu",
"cheesy-magnemite-hachijuuichi",
"flavorless-magneton-hachijuuni",
"flavorless-farfetchd-hachijuusan",
"gangsta-doduo-hachijuuyon",
"blissless-dodrio-hachijuugo",
"lucid-seel-hachijuuroku",
"ruffled-dewgong-hachijuunana",
"boastful-grimer-hachijuuhachi",
"folly-muk-hachijuuku",
"depressed-shellder-kyuujuu",
"fresh-cloyster-kyuujuuichi",
"homogeneous-gastly-kyuujuuni",
"confuzzled-haunter-kyuujuusan",
"famished-gengar-kyuujuuyon",
"flamboyant-onix-kyuujuugo",
"dull-drowzee-kyuujuuroku",
"gangsta-hypno-kyuujuunana",
"jivin-krabby-kyuujuuhachi",
"practical-kingler-kyuujuuku",
"dreamless-voltorb-hyaku",
]
[
"maru",
"ichi",
"ni",
"san",
"yon",
"go",
"roku",
"nana",
"hachi",
"ku",
"juu",
"juu-ichi",
"juu-ni",
"juu-san",
"juu-yon",
"juu-go",
"juu-roku",
"juu-nana",
"juu-hachi",
"juu-ku",
"nijuu",
"nijuu-ichi",
"nijuu-ni",
"nijuu-san",
"nijuu-yon",
"nijuu-go",
"nijuu-roku",
"nijuu-nana",
"nijuu-hachi",
"nijuu-ku",
"sanjuu",
"sanjuu-ichi",
"sanjuu-ni",
"sanjuu-san",
"sanjuu-yon",
"sanjuu-go",
"sanjuu-roku",
"sanjuu-nana",
"sanjuu-hachi",
"sanjuu-ku",
"yonjuu",
"yonjuu-ichi",
"yonjuu-ni",
"yonjuu-san",
"yonjuu-yon",
"yonjuu-go",
"yonjuu-roku",
"yonjuu-nana",
"yonjuu-hachi",
"yonjuu-ku",
"gojuu",
"gojuu-ichi",
"gojuu-ni",
"gojuu-san",
"gojuu-yon",
"gojuu-go",
"gojuu-roku",
"gojuu-nana",
"gojuu-hachi",
"gojuu-ku",
"rokujuu",
"rokujuu-ichi",
"rokujuu-ni",
"rokujuu-san",
"rokujuu-yon",
"rokujuu-go",
"rokujuu-roku",
"rokujuu-nana",
"rokujuu-hachi",
"rokujuu-ku",
"nanajuu",
"nanajuu-ichi",
"nanajuu-ni",
"nanajuu-san",
"nanajuu-yon",
"nanajuu-go",
"nanajuu-roku",
"nanajuu-nana",
"nanajuu-hachi",
"nanajuu-ku",
"hachijuu",
"hachijuu-ichi",
"hachijuu-ni",
"hachijuu-san",
"hachijuu-yon",
"hachijuu-go",
"hachijuu-roku",
"hachijuu-nana",
"hachijuu-hachi",
"hachijuu-ku",
"kyuujuu",
"kyuujuu-ichi",
"kyuujuu-ni",
"kyuujuu-san",
"kyuujuu-yon",
"kyuujuu-go",
"kyuujuu-roku",
"kyuujuu-nana",
"kyuujuu-hachi",
"kyuujuu-ku",
"hyaku",
"idk",
]
[
"hostile-muggs-gojuuichi",
"chaotic-amber-nanajuuku",
"muddled-mefthod-nijuusan",
"miserable-butch-rokujuusan",
"abhorrent-bojangles-yonjuugo",
"miserable-leah-juu",
"blissless-gza-go",
"thrusting-ugod-nanajuugo",
"accepting-shaq-nijuuroku",
"pimped-farrah-hachijuunana",
"folly-babs-kyuujuusan",
"slamin-rza-gojuugo",
"pessimistic-taylor-maru",
"dull-leah-yonjuuni",
"confuzzled-jiji-hachijuuhachi",
"frosty-caitlyn-yonjuusan",
"unremarkable-steven-kyuujuuhachi",
"parched-muggs-juugo",
"carefree-andrew-nanajuusan",
"abhorrent-chelsea-nanajuuni",
"keepinit-tyler-juugo",
"tender-ideck-hachijuunana",
"cheesy-farrah-ni",
"dense-muggs-yonjuugo",
"miserable-mefthod-hachijuu",
"pessimistic-babs-rokujuuyon",
"flavorless-chelsea-yon",
"crass-ideck-nanajuuni",
"miserable-erika-yonjuuichi",
"fallible-goofus-nanajuusan",
"parched-maci-kyuujuusan",
"ruffled-mefthod-sanjuunana",
"unremarkable-farrah-yonjuuroku",
"cheesy-kyle-sanjuuhachi",
"canker-porchk-hachijuuku",
"flamboyant-jamesd-sanjuunana",
"canker-noodle-rokujuuichi",
"jivin-rza-juuku",
"tender-meechyd-hachi",
"ribbed-kyle-nijuusan",
]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment