diff --git a/scripts/creatures/Pipfile b/scripts/creatures/Pipfile index 853e486..c23e9ad 100644 --- a/scripts/creatures/Pipfile +++ b/scripts/creatures/Pipfile @@ -7,6 +7,7 @@ verify_ssl = true [packages] scrapy = "*" +ipython = "*" [requires] python_version = "3.8" diff --git a/scripts/creatures/Pipfile.lock b/scripts/creatures/Pipfile.lock index a555f37..f6db06f 100644 --- a/scripts/creatures/Pipfile.lock +++ b/scripts/creatures/Pipfile.lock @@ -1,7 +1,7 @@ { "_meta": { "hash": { - "sha256": "0248cce57c7a462bbed0c9ce5d4a84b92d0e146d394de44d71af073668ad2c1d" + "sha256": "f16cac41d003876472bb04a4f12ec3f8ad9452aca952883fff150b0de9705210" }, "pipfile-spec": 6, "requires": { @@ -30,6 +30,13 @@ ], "version": "==20.2.0" }, + "backcall": { + "hashes": [ + "sha256:38ecd85be2c1e78f77fd91700c76e14667dc21e2713b63876c0eb901196e01e4", + "sha256:bbbf4b1e5cd2bdb08f915895b51081c041bac22394fdfcfdfbe9f14b77c08bf2" + ], + "version": "==0.1.0" + }, "cffi": { "hashes": [ "sha256:001bf3242a1bb04d985d63e138230802c6c8d4db3668fb545fb5005ddf5bb5ff", @@ -63,6 +70,14 @@ ], "version": "==1.14.0" }, + "colorama": { + "hashes": [ + "sha256:7d73d2a99753107a36ac6b455ee49046802e59d9d076ef8e47b61499fa29afff", + "sha256:e96da0d330793e2cb9485e9ddfd918d456036c7149416295932478192f4436a1" + ], + "markers": "sys_platform == 'win32'", + "version": "==0.4.3" + }, "constantly": { "hashes": [ "sha256:586372eb92059873e29eba4f9dec8381541b4d3834660707faf8ba59146dfc35", @@ -101,6 +116,13 @@ ], "version": "==1.1.0" }, + "decorator": { + "hashes": [ + "sha256:41fa54c2a0cc4ba648be4fd43cff00aedf5b9465c9bf18d64325bc225f08f760", + "sha256:e3a62f0520172440ca0dcc823749319382e377f37f140a0b99ef45fecb84bfe7" + ], + "version": "==4.4.2" + }, "hyperlink": { "hashes": [ "sha256:4288e34705da077fada1111a24a0aa08bb1e76699c9ce49876af722441845654", @@ -122,6 +144,28 @@ ], "version": "==17.5.0" }, + "ipython": { + "hashes": [ + "sha256:5b241b84bbf0eb085d43ae9d46adf38a13b45929ca7774a740990c2c242534bb", + "sha256:f0126781d0f959da852fb3089e170ed807388e986a8dd4e6ac44855845b0fb1c" + ], + "index": "pypi", + "version": "==7.14.0" + }, + "ipython-genutils": { + "hashes": [ + "sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8", + "sha256:eb2e116e75ecef9d4d228fdc66af54269afa26ab4463042e33785b887c628ba8" + ], + "version": "==0.2.0" + }, + "jedi": { + "hashes": [ + "sha256:cd60c93b71944d628ccac47df9a60fec53150de53d42dc10a7fc4b5ba6aae798", + "sha256:df40c97641cb943661d2db4c33c2e1ff75d491189423249e989bcea4464f3030" + ], + "version": "==0.17.0" + }, "lxml": { "hashes": [ "sha256:06d4e0bbb1d62e38ae6118406d7cdb4693a3fa34ee3762238bcb96c9e36a93cd", @@ -162,6 +206,27 @@ ], "version": "==1.5.2" }, + "parso": { + "hashes": [ + "sha256:158c140fc04112dc45bca311633ae5033c2c2a7b732fa33d0955bad8152a8dd0", + "sha256:908e9fae2144a076d72ae4e25539143d40b8e3eafbaeae03c1bfe226f4cdf12c" + ], + "version": "==0.7.0" + }, + "pickleshare": { + "hashes": [ + "sha256:87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca", + "sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" + ], + "version": "==0.7.5" + }, + "prompt-toolkit": { + "hashes": [ + "sha256:563d1a4140b63ff9dd587bda9557cffb2fe73650205ab6f4383092fb882e7dc8", + "sha256:df7e9e63aea609b1da3a65641ceaf5bc7d05e0a04de5bd45d05dbeffbabf9e04" + ], + "version": "==3.0.5" + }, "protego": { "hashes": [ "sha256:a682771bc7b51b2ff41466460896c1a5a653f9a1e71639ef365a72e66d8734b4" @@ -196,6 +261,13 @@ ], "version": "==2.0.5" }, + "pygments": { + "hashes": [ + "sha256:647344a061c249a3b74e230c739f434d7ea4d8b1d5f3721bc0f3558049b38f44", + "sha256:ff7a40b4860b727ab48fad6360eb351cc1b33cbf9b15a0f689ca5353e9463324" + ], + "version": "==2.6.1" + }, "pyhamcrest": { "hashes": [ "sha256:412e00137858f04bde0729913874a48485665f2d36fe9ee449f26be864af9316", @@ -239,6 +311,13 @@ ], "version": "==1.14.0" }, + "traitlets": { + "hashes": [ + "sha256:70b4c6a1d9019d7b4f6846832288f86998aa3b9207c6821f3578a6a6a467fe44", + "sha256:d023ee369ddd2763310e4c3eae1ff649689440d4ae59d7485eb4cfbbe3e359f7" + ], + "version": "==4.3.3" + }, "twisted": { "hashes": [ "sha256:040eb6641125d2a9a09cf198ec7b83dd8858c6f51f6770325ed9959c00f5098f", @@ -274,6 +353,13 @@ ], "version": "==1.21.0" }, + "wcwidth": { + "hashes": [ + "sha256:cafe2186b3c009a04067022ce1dcd79cb38d8d65ee4f4791b8888d6599d1bbe1", + "sha256:ee73862862a156bf77ff92b09034fc4825dd3af9cf81bc5b360668d425f3c5f1" + ], + "version": "==0.1.9" + }, "zope.interface": { "hashes": [ "sha256:0103cba5ed09f27d2e3de7e48bb320338592e2fabc5ce1432cf33808eb2dfd8b", diff --git a/scripts/creatures/creatures.json b/scripts/creatures/creatures.json new file mode 100644 index 0000000..4516e7e --- /dev/null +++ b/scripts/creatures/creatures.json @@ -0,0 +1,447 @@ +[ +{"name": ["Acrobat"], "publisher": ["Paizo"], "source": ["Pathfinder Gamemastery Guide"], "url": ["https://pf2.d20pfsrd.com/monster/acrobat/"]}, +{"name": ["Arbiter"], "family": ["Aeon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/arbiter/"]}, +{"name": ["Axiomite"], "family": ["Aeon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/axiomite/"]}, +{"name": ["Kolyarut"], "family": ["Aeon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/kolyarut/"]}, +{"name": ["Pleroma"], "family": ["Aeon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/pleroma/"]}, +{"name": ["Alghollthu Master (Aboleth)"], "family": ["Alghollthu"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/alghollthu-master/"]}, +{"name": ["Faceless Stalker (Ugothol)"], "family": ["Alghollthu"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/faceless-stalker/"]}, +{"name": ["Skum (Ulat-Kini)"], "family": ["Alghollthu"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/skum/"]}, +{"name": ["Veiled Master (Vidileth)"], "family": ["Alghollthu"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/veiled-master/"]}, +{"name": ["Astral Deva (Emissary Angel)"], "family": ["Angel"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/astral-deva/"]}, +{"name": ["Balisse (Confessor Angel)"], "family": ["Angel"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/balisse/"]}, +{"name": ["Cassisian (Archive Angel)"], "family": ["Angel"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/cassisian/"]}, +{"name": ["Choral (Choir Angel)"], "family": ["Angel"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/choral/"]}, +{"name": ["Solifugid, Duneshaker"], "family": ["Animal"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #149: Against the Triad"], "url": ["https://pf2.d20pfsrd.com/monster/solifugid-duneshaker/"]}, +{"name": ["Solifugid, Giant"], "family": ["Animal"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #149: Against the Triad"], "url": ["https://pf2.d20pfsrd.com/monster/solifugid-giant/"]}, +{"name": ["Xotanispawn"], "family": ["Animal"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #149: Against the Triad"], "url": ["https://pf2.d20pfsrd.com/monster/xotanispawn/"]}, +{"name": ["Animated Armor"], "family": ["Animated Object"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/animated-armor/"]}, +{"name": ["Animated Broom"], "family": ["Animated Object"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/animated-broom/"]}, +{"name": ["Animated Statue"], "family": ["Animated Object"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/animated-statue/"]}, +{"name": ["Ankhrav"], "family": ["Ankhrav"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/ankhrav/"]}, +{"name": ["Hive Mother"], "family": ["Ankhrav"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/hive-mother/"]}, +{"name": ["Gorilla"], "family": ["Ape"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/gorilla/"]}, +{"name": ["Megaprimatus"], "family": ["Ape"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/megaprimatus/"]}, +{"name": ["Arboreal Regent"], "family": ["Arboreal"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/arboreal-regent/"]}, +{"name": ["Arboreal Warden"], "family": ["Arboreal"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/arboreal-warden/"]}, +{"name": ["Awakened Tree"], "family": ["Arboreal"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/awakened-tree/"]}, +{"name": ["Horned Archon"], "family": ["Archon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/horned-archon/"]}, +{"name": ["Lantern Archon"], "family": ["Archon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/lantern-archon/"]}, +{"name": ["Legion Archon"], "family": ["Archon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/legion-archon/"]}, +{"name": ["Shield Archon"], "family": ["Archon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/shield-archon/"]}, +{"name": ["Assassin"], "publisher": ["Paizo"], "source": ["Pathfinder Gamemastery Guide"], "url": ["https://pf2.d20pfsrd.com/monster/assassin/"]}, +{"name": ["Gancanagh (Passion Azata)"], "family": ["Azata"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/gancanagh/"]}, +{"name": ["Ghaele (Crusader Azata)"], "family": ["Azata"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/ghaele/"]}, +{"name": ["Lillend (Muse Azata)"], "family": ["Azata"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/lillend/"]}, +{"name": ["Lyrakien (Wanderer Azata)"], "family": ["Azata"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/lyrakien/"]}, +{"name": ["Banshee"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/banshee/"]}, +{"name": ["Baomal"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/baomal/"]}, +{"name": ["Barghest"], "family": ["Barghest"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/barghest/"]}, +{"name": ["Barghest, Greater"], "family": ["Barghest"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/greater-barghest/"]}, +{"name": ["Barkeep"], "publisher": ["Paizo"], "source": ["Pathfinder Gamemastery Guide"], "url": ["https://pf2.d20pfsrd.com/monster/barkeep/"]}, +{"name": ["Barrister"], "publisher": ["Paizo"], "source": ["Pathfinder Gamemastery Guide"], "url": ["https://pf2.d20pfsrd.com/monster/barrister/"]}, +{"name": ["Basilisk"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/basilisk/"]}, +{"name": ["Bat, Giant"], "family": ["Bat"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/giant-bat/"]}, +{"name": ["Vampire Bat Swarm"], "family": ["Bat"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/vampire-bat-swarm/"]}, +{"name": ["Cave Bear"], "family": ["Bear"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/cave-bear/"]}, +{"name": ["Grizzly Bear"], "family": ["Bear"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/grizzly-bear/"]}, +{"name": ["Beast Tamer"], "publisher": ["Paizo"], "source": ["Pathfinder Gamemastery Guide"], "url": ["https://pf2.d20pfsrd.com/monster/beast-tamer/"]}, +{"name": ["Tarrasque, The Armageddon Engine"], "family": ["Beast"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #149: Against the Triad"], "url": ["https://pf2.d20pfsrd.com/monster/tarrasque-the-armageddon-engine/"]}, +{"name": ["Flash Beetle"], "family": ["Beetle"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/flash-beetle/"]}, +{"name": ["Giant Stag Beetle"], "family": ["Beetle"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/giant-stag-beetle/"]}, +{"name": ["Blood Wolf"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #151: The Show Must Go On"], "url": ["https://pf2.d20pfsrd.com/monster/blood-wolf/"]}, +{"name": ["Bloodseeker"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/bloodseeker/"]}, +{"name": ["Boar"], "family": ["Boar"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/boar/"]}, +{"name": ["Daeodon"], "family": ["Boar"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/daeodon/"]}, +{"name": ["Boggard Scout"], "family": ["Boggard"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/boggard-scout/"]}, +{"name": ["Boggard Swampseer"], "family": ["Boggard"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/boggard-swampseer/"]}, +{"name": ["Boggard Warrior"], "family": ["Boggard"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/boggard-warrior/"]}, +{"name": ["Bone Croupier"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #151: The Show Must Go On"], "url": ["https://pf2.d20pfsrd.com/monster/bone-croupier/"]}, +{"name": ["Brain Collector"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/brain-collector/"]}, +{"name": ["Bugbear Thug"], "family": ["Bugbear"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/bugbear-thug/"]}, +{"name": ["Bugbear Tormentor"], "family": ["Bugbear"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/bugbear-tormentor/"]}, +{"name": ["Bulette"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/bulette/"]}, +{"name": ["Bunyip"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/bunyip/"]}, +{"name": ["Caligni Creeper"], "family": ["Caligni"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/caligni-creeper/"]}, +{"name": ["Caligni Dancer"], "family": ["Caligni"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/caligni-dancer/"]}, +{"name": ["Caligni Stalker"], "family": ["Caligni"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/caligni-stalker/"]}, +{"name": ["Captain of the Guard"], "publisher": ["Paizo"], "source": ["Pathfinder Gamemastery Guide"], "url": ["https://pf2.d20pfsrd.com/monster/captain-of-the-guard/"]}, +{"name": ["Leopard"], "family": ["Cat"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/leopard/"]}, +{"name": ["Lion"], "family": ["Cat"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/lion/"]}, +{"name": ["Tiger"], "family": ["Cat"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/tiger/"]}, +{"name": ["Catfolk Pouncer"], "family": ["Catfolk"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/catfolk-pouncer/"]}, +{"name": ["Cauthooj"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/cauthooj/"]}, +{"name": ["Azure Worm"], "family": ["Cave Worm"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/azure-worm/"]}, +{"name": ["Crimson Worm"], "family": ["Cave Worm"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/crimson-worm/"]}, +{"name": ["Purple Worm"], "family": ["Cave Worm"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/purple-worm/"]}, +{"name": ["Centaur"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/centaur/"]}, +{"name": ["Centipede Swarm"], "family": ["Centipede"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/centipede-swarm/"]}, +{"name": ["Giant Centipede"], "family": ["Centipede"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/giant-centipede/"]}, +{"name": ["Changeling Exile"], "family": ["Changeling"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/changeling-exile/"]}, +{"name": ["Chimera"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/chimera/"]}, +{"name": ["Chuul"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/chuul/"]}, +{"name": ["Cloaker"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/cloaker/"]}, +{"name": ["Cockatrice"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/cockatrice/"]}, +{"name": ["Aluum Enforcer"], "family": ["Construct"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #149: Against the Triad"], "url": ["https://pf2.d20pfsrd.com/monster/aluum-enforcer/"]}, +{"name": ["Aluum, Spiritbound"], "family": ["Construct"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #149: Against the Triad"], "url": ["https://pf2.d20pfsrd.com/monster/spiritbound-aluum/"]}, +{"name": ["Dragonshard Guardian"], "family": ["Construct"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #150: Broken Promises"], "url": ["https://pf2.d20pfsrd.com/monster/dragonshard-guardian/"]}, +{"name": ["Corrupted Priest"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #151: The Show Must Go On"], "url": ["https://pf2.d20pfsrd.com/monster/corrupted-priest/"]}, +{"name": ["Crocodile"], "family": ["Crocodile"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/crocodile/"]}, +{"name": ["Deinosuchus"], "family": ["Crocodile"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/deinosuchus/"]}, +{"name": ["Cyclops"], "family": ["Cyclops"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/cyclops/"]}, +{"name": ["Great Cyclops"], "family": ["Cyclops"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/great-cyclops/"]}, +{"name": ["Astradaemon (Void Daemon)"], "family": ["Daemon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/astradaemon/"]}, +{"name": ["Cacodaemon (Harvester Daemon)"], "family": ["Daemon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/cacodaemon/"]}, +{"name": ["Ceustodaemon (Guardian Daemon)"], "family": ["Daemon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/ceustodaemon/"]}, +{"name": ["Daemon, Crucidaemon (Torture Daemon)"], "family": ["Daemon", "Fiend"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #149: Against the Triad"], "url": ["https://pf2.d20pfsrd.com/monster/daemon-crucidaemon-torture-daemon/"]}, +{"name": ["Leukodaemon (Pestilence Daemon)"], "family": ["Daemon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/leukodaemon/"]}, +{"name": ["Dancer"], "publisher": ["Paizo"], "source": ["Pathfinder Gamemastery Guide"], "url": ["https://pf2.d20pfsrd.com/monster/dancer/"]}, +{"name": ["Deep Gnome Rockwarden"], "family": ["Deep Gnome"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/deep-gnome-rockwarden/"]}, +{"name": ["Deep Gnome Scout"], "family": ["Deep Gnome"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/deep-gnome-scout/"]}, +{"name": ["Deep Gnome Warrior"], "family": ["Deep Gnome"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/deep-gnome-warrior/"]}, +{"name": ["Demon, Abrikandilu (Wrecker Demon)"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #151: The Show Must Go On"], "url": ["https://pf2.d20pfsrd.com/monster/demon-abrikandilu-wrecker-demon/"]}, +{"name": ["Balor (Fire Demon)"], "family": ["Demon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/balor/"]}, +{"name": ["Demon, Nalfeshnee (Boar Demon)"], "family": ["Demon", "Fiend"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #149: Against the Triad"], "url": ["https://pf2.d20pfsrd.com/monster/demon-nalfeshnee-boar-demon/"]}, +{"name": ["Glabrezu (Treachery Demon)"], "family": ["Demon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/glabrezu/"]}, +{"name": ["Marilith (Pride Demon)"], "family": ["Demon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/marilith/"]}, +{"name": ["Quasit"], "family": ["Demon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/quasit/"]}, +{"name": ["Shemhazian (Mutilation Demon)"], "family": ["Demon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/shemhazian/"]}, +{"name": ["Succubus (Lust Demon)"], "family": ["Demon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/succubus/"]}, +{"name": ["Vrock (Wrath Demon)"], "family": ["Demon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/vrock/"]}, +{"name": ["Demonologist"], "publisher": ["Paizo"], "source": ["Pathfinder Gamemastery Guide"], "url": ["https://pf2.d20pfsrd.com/monster/demonologist/"]}, +{"name": ["Dero Magister"], "family": ["Dero"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/dero-magister/"]}, +{"name": ["Dero Stalker"], "family": ["Dero"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/dero-stalker/"]}, +{"name": ["Dero Strangler"], "family": ["Dero"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/dero-strangler/"]}, +{"name": ["Barbazu (Bearded Devil)"], "family": ["Devil"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/barbazu/"]}, +{"name": ["Devil, Cornugon (Horned Devil)"], "family": ["Devil", "Fiend"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #149: Against the Triad"], "url": ["https://pf2.d20pfsrd.com/monster/devil-cornugon-horned-devil/"]}, +{"name": ["Erinys (Fury Devil)"], "family": ["Devil"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/erinys/"]}, +{"name": ["Gelugon (Ice Devil)"], "family": ["Devil"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/gelugon/"]}, +{"name": ["Imp"], "family": ["Devil"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/imp/"]}, +{"name": ["Lemure"], "family": ["Devil"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/lemure/"]}, +{"name": ["Phistophilus (Contract Devil)"], "family": ["Devil"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/phistophilus/"]}, +{"name": ["Pit Fiend (Tyrant Devil)"], "family": ["Devil"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/pit-fiend/"]}, +{"name": ["Dezullon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/dezullon/"]}, +{"name": ["Dhampir Wizard"], "family": ["Dhampir"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/dhampir-wizard/"]}, +{"name": ["Ankylosaurus"], "family": ["Dinosaur"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/ankylosaurus/"]}, +{"name": ["Brontosaurus"], "family": ["Dinosaur"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/brontosaurus/"]}, +{"name": ["Deinonychus"], "family": ["Dinosaur"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/deinonychus/"]}, +{"name": ["Stegosaurus"], "family": ["Dinosaur"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/stegosaurus/"]}, +{"name": ["Triceratops"], "family": ["Dinosaur"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/triceratops/"]}, +{"name": ["Tyrannosaurus"], "family": ["Dinosaur"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/tyrannosaurus/"]}, +{"name": ["Velociraptor"], "family": ["Dinosaur"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/velociraptor/"]}, +{"name": ["Dog, Guard"], "family": ["Dog"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/guard-dog/"]}, +{"name": ["Riding Dog"], "family": ["Dog"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/riding-dog/"]}, +{"name": ["Doppelganger"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/doppelganger/"]}, +{"name": ["Black Dragon"], "family": ["Dragon (Chromatic)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/black-dragon/"]}, +{"name": ["Blue Dragon"], "family": ["Dragon (Chromatic)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/blue-dragon/"]}, +{"name": ["Green Dragon"], "family": ["Dragon (Chromatic)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/green-dragon/"]}, +{"name": ["Red Dragon"], "family": ["Dragon (Chromatic)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/red-dragon/"]}, +{"name": ["White Dragon"], "family": ["Dragon (Chromatic)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/white-dragon/"]}, +{"name": ["Brass Dragon"], "family": ["Dragon (Metallic)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/brass-dragon/"]}, +{"name": ["Bronze Dragon"], "family": ["Dragon (Metallic)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/bronze-dragon/"]}, +{"name": ["Copper Dragon"], "family": ["Dragon (Metallic)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/copper-dragon/"]}, +{"name": ["Gold Dragon"], "family": ["Dragon (Metallic)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/gold-dragon/"]}, +{"name": ["Silver Dragon"], "family": ["Dragon (Metallic)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/silver-dragon/"]}, +{"name": ["Dragon Turtle"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/dragon-turtle/"]}, +{"name": ["Wyrmwraith"], "family": ["Dragon"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #150: Broken Promises"], "url": ["https://pf2.d20pfsrd.com/monster/wyrmwraith/"]}, +{"name": ["Wyrmwraith, Elder"], "family": ["Dragon", "Undead"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #150: Broken Promises"], "url": ["https://pf2.d20pfsrd.com/monster/wyrmwraith-elder/"]}, +{"name": ["Drakauthix"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/drakauthix/"]}, +{"name": ["Desert Drake"], "family": ["Drake"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/desert-drake/"]}, +{"name": ["Flame Drake"], "family": ["Drake"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/flame-drake/"]}, +{"name": ["Frost Drake"], "family": ["Drake"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/frost-drake/"]}, +{"name": ["Jungle Drake"], "family": ["Drake"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/jungle-drake/"]}, +{"name": ["Wyvern"], "family": ["Drake"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/wyvern/"]}, +{"name": ["Drow Fighter"], "family": ["Drow"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/drow-fighter/"]}, +{"name": ["Drow Priestess"], "family": ["Drow"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/drow-priestess/"]}, +{"name": ["Drow Rogue"], "family": ["Drow"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/drow-rogue/"]}, +{"name": ["Duergar Bombardier"], "family": ["Duergar"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/duergar-bombardier/"]}, +{"name": ["Duergar Sharpshooter"], "family": ["Duergar"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/duergar-sharpshooter/"]}, +{"name": ["Duergar Taskmaster"], "family": ["Duergar"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/duergar-taskmaster/"]}, +{"name": ["Dullahan"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/dullahan/"]}, +{"name": ["Dwarf Brawler"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #151: The Show Must Go On"], "url": ["https://pf2.d20pfsrd.com/monster/dwarf-brawler/"]}, +{"name": ["Eagle"], "family": ["Eagle"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/eagle/"]}, +{"name": ["Giant Eagle"], "family": ["Eagle"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/giant-eagle/"]}, +{"name": ["Electric Eel"], "family": ["Eel"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/electric-eel/"]}, +{"name": ["Giant Moray Eel"], "family": ["Eel"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/giant-moray-eel/"]}, +{"name": ["Elananx"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/elananx/"]}, +{"name": ["Elemental Hurricane"], "family": ["Elemental (Air)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/elemental-hurricane/"]}, +{"name": ["Invisible Stalker"], "family": ["Elemental (Air)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/invisible-stalker/"]}, +{"name": ["Living Whirlwind"], "family": ["Elemental (Air)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/living-whirlwind/"]}, +{"name": ["Storm Lord"], "family": ["Elemental (Air)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/storm-lord/"]}, +{"name": ["Zephyr Hawk"], "family": ["Elemental (Air)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/zephyr-hawk/"]}, +{"name": ["Elemental Avalanche"], "family": ["Elemental (Earth)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/elemental-avalanche/"]}, +{"name": ["Living Landslide"], "family": ["Elemental (Earth)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/living-landslide/"]}, +{"name": ["Sod Hound"], "family": ["Elemental (Earth)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/sod-hound/"]}, +{"name": ["Stone Mauler"], "family": ["Elemental (Earth)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/stone-mauler/"]}, +{"name": ["Xorn"], "family": ["Elemental (Earth)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/xorn/"]}, +{"name": ["Cinder Rat"], "family": ["Elemental (Fire)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/cinder-rat/"]}, +{"name": ["Elemental Inferno"], "family": ["Elemental (Fire)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/elemental-inferno/"]}, +{"name": ["Firewyrm"], "family": ["Elemental (Fire)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/firewyrm/"]}, +{"name": ["Salamander"], "family": ["Elemental (Fire)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/salamander/"]}, +{"name": ["Mephit, Air"], "family": ["Elemental (Mephit)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/air-mephit/"]}, +{"name": ["Mephit, Earth"], "family": ["Elemental (Mephit)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/earth-mephit/"]}, +{"name": ["Mephit, Fire"], "family": ["Elemental (Mephit)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/fire-mephit/"]}, +{"name": ["Mephit, Water"], "family": ["Elemental (Mephit)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/water-mephit/"]}, +{"name": ["Brine Shark"], "family": ["Elemental (Water)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/brine-shark/"]}, +{"name": ["Elemental Tsunami"], "family": ["Elemental (Water)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/elemental-tsunami/"]}, +{"name": ["Living Waterfall"], "family": ["Elemental (Water)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/living-waterfall/"]}, +{"name": ["Quatoid"], "family": ["Elemental (Water)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/quatoid/"]}, +{"name": ["Tidal Master"], "family": ["Elemental (Water)"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/tidal-master/"]}, +{"name": ["Elephant"], "family": ["Elephant"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/elephant/"]}, +{"name": ["Mammoth"], "family": ["Elephant"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/mammoth/"]}, +{"name": ["Ether Spider"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/ether-spider/"]}, +{"name": ["Ettin"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/ettin/"]}, +{"name": ["Executioner"], "publisher": ["Paizo"], "source": ["Pathfinder Gamemastery Guide"], "url": ["https://pf2.d20pfsrd.com/monster/executioner/"]}, +{"name": ["Faerie Dragon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/faerie-dragon/"]}, +{"name": ["Daemon, Crucidaemon (Torture Daemon)"], "family": ["Daemon", "Fiend"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #149: Against the Triad"], "url": ["https://pf2.d20pfsrd.com/monster/daemon-crucidaemon-torture-daemon/"]}, +{"name": ["Demon, Nalfeshnee (Boar Demon)"], "family": ["Demon", "Fiend"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #149: Against the Triad"], "url": ["https://pf2.d20pfsrd.com/monster/demon-nalfeshnee-boar-demon/"]}, +{"name": ["Devil, Cornugon (Horned Devil)"], "family": ["Devil", "Fiend"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #149: Against the Triad"], "url": ["https://pf2.d20pfsrd.com/monster/devil-cornugon-horned-devil/"]}, +{"name": ["Flea Swarm"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #151: The Show Must Go On"], "url": ["https://pf2.d20pfsrd.com/monster/flea-swarm/"]}, +{"name": ["Flea, Giant"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #151: The Show Must Go On"], "url": ["https://pf2.d20pfsrd.com/monster/flea-giant/"]}, +{"name": ["Drider"], "family": ["Fleshwarp"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/drider/"]}, +{"name": ["Grothlut"], "family": ["Fleshwarp"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/grothlut/"]}, +{"name": ["Giant Flytrap"], "family": ["Flytrap"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/giant-flytrap/"]}, +{"name": ["Snapping Flytrap"], "family": ["Flytrap"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/snapping-flytrap/"]}, +{"name": ["Gargoyle"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/gargoyle/"]}, +{"name": ["Djinni"], "family": ["Genie"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/djinni/"]}, +{"name": ["Efreeti"], "family": ["Genie"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/efreeti/"]}, +{"name": ["Janni"], "family": ["Genie"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/janni/"]}, +{"name": ["Marid"], "family": ["Genie"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/marid/"]}, +{"name": ["Shaitan"], "family": ["Genie"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/shaitan/"]}, +{"name": ["Ghast"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #151: The Show Must Go On"], "url": ["https://pf2.d20pfsrd.com/monster/ghast-2/"]}, +{"name": ["Ghost Commoner"], "family": ["Ghost"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/ghost-commoner/"]}, +{"name": ["Ghost Mage"], "family": ["Ghost"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/ghost-mage/"]}, +{"name": ["Ghast"], "family": ["Ghoul"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/ghast/"]}, +{"name": ["Ghoul"], "family": ["Ghoul"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/ghoul/"]}, +{"name": ["Giant Animated Statue"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/giant-animated-statue/"]}, +{"name": ["Cloud Giant"], "family": ["Giant"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/cloud-giant/"]}, +{"name": ["Fire Giant"], "family": ["Giant"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/fire-giant/"]}, +{"name": ["Frost Giant"], "family": ["Giant"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/frost-giant/"]}, +{"name": ["Hill Giant"], "family": ["Giant"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/hill-giant/"]}, +{"name": ["Rune Giant"], "family": ["Giant"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/rune-giant/"]}, +{"name": ["Stone Giant"], "family": ["Giant"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/stone-giant/"]}, +{"name": ["Storm Giant"], "family": ["Giant"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/storm-giant/"]}, +{"name": ["Gibbering Mouther"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/gibbering-mouther/"]}, +{"name": ["Gimmerling"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/gimmerling/"]}, +{"name": ["Gnoll Cultist"], "family": ["Gnoll"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/gnoll-cultist/"]}, +{"name": ["Gnoll Hunter"], "family": ["Gnoll"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/gnoll-hunter/"]}, +{"name": ["Gnoll Sergeant"], "family": ["Gnoll"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/gnoll-sergeant/"]}, +{"name": ["Goblin Dog"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/goblin-dog/"]}, +{"name": ["Goblin Commando"], "family": ["Goblin"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/goblin-commando/"]}, +{"name": ["Goblin Pyro"], "family": ["Goblin"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/goblin-pyro/"]}, +{"name": ["Goblin War Chanter"], "family": ["Goblin"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/goblin-war-chanter/"]}, +{"name": ["Goblin Warrior"], "family": ["Goblin"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/goblin-warrior/"]}, +{"name": ["Gogiteth"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/gogiteth/"]}, +{"name": ["Alchemical Golem"], "family": ["Golem"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/alchemical-golem/"]}, +{"name": ["Clay Golem"], "family": ["Golem"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/clay-golem/"]}, +{"name": ["Flesh Golem"], "family": ["Golem"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/flesh-golem/"]}, +{"name": ["Iron Golem"], "family": ["Golem"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/iron-golem/"]}, +{"name": ["Stone Golem"], "family": ["Golem"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/stone-golem/"]}, +{"name": ["Graveknight"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/graveknight/"]}, +{"name": ["Jinkin"], "family": ["Gremlin"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/jinkin/"]}, +{"name": ["Mitflit"], "family": ["Gremlin"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/mitflit/"]}, +{"name": ["Pugwampi"], "family": ["Gremlin"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/pugwampi/"]}, +{"name": ["Griffon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/griffon/"]}, +{"name": ["Grikkitog"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/grikkitog/"]}, +{"name": ["Grim Reaper"], "family": ["Grim Reaper"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/grim-reaper/"]}, +{"name": ["Lesser Death"], "family": ["Grim Reaper"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/lesser-death/"]}, +{"name": ["Guard"], "publisher": ["Paizo"], "source": ["Pathfinder Gamemastery Guide"], "url": ["https://pf2.d20pfsrd.com/monster/guard/"]}, +{"name": ["Gug"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/gug/"]}, +{"name": ["Guthallath"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/guthallath/"]}, +{"name": ["Annis Hag"], "family": ["Hag"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/annis-hag/"]}, +{"name": ["Green Hag"], "family": ["Hag"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/green-hag/"]}, +{"name": ["Night Hag"], "family": ["Hag"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/night-hag/"]}, +{"name": ["Sea Hag"], "family": ["Hag"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/sea-hag/"]}, +{"name": ["Halfling Zealot"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #151: The Show Must Go On"], "url": ["https://pf2.d20pfsrd.com/monster/halfling-zealot/"]}, +{"name": ["Harbormaster"], "publisher": ["Paizo"], "source": ["Pathfinder Gamemastery Guide"], "url": ["https://pf2.d20pfsrd.com/monster/harbormaster/"]}, +{"name": ["Harpy"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/harpy/"]}, +{"name": ["Hell Hound"], "family": ["Hell Hound"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/hell-hound/"]}, +{"name": ["Nessian Warhound"], "family": ["Hell Hound"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/nessian-warhound/"]}, +{"name": ["Hobgoblin General"], "family": ["Hobgoblin"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/hobgoblin-general/"]}, +{"name": ["Hobgoblin Soldier"], "family": ["Hobgoblin"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/hobgoblin-soldier/"]}, +{"name": ["Homunculus"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/homunculus/"]}, +{"name": ["Horse"], "family": ["Horse"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/horse/"]}, +{"name": ["Human Clown"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #151: The Show Must Go On"], "url": ["https://pf2.d20pfsrd.com/monster/human-clown/"]}, +{"name": ["Human Fire-Breather"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #151: The Show Must Go On"], "url": ["https://pf2.d20pfsrd.com/monster/human-fire-breather/"]}, +{"name": ["Calikang"], "family": ["Humanoid"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #149: Against the Triad"], "url": ["https://pf2.d20pfsrd.com/monster/calikang/"]}, +{"name": ["Promise Guard"], "family": ["Humanoid"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #150: Broken Promises"], "url": ["https://pf2.d20pfsrd.com/monster/promise-guard/"]}, +{"name": ["Sand Claws"], "family": ["Humanoid"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #149: Against the Triad"], "url": ["https://pf2.d20pfsrd.com/monster/sand-claws/"]}, +{"name": ["Triad Boss"], "family": ["Humanoid"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #149: Against the Triad"], "url": ["https://pf2.d20pfsrd.com/monster/triad-boss/"]}, +{"name": ["Witchwyrd"], "family": ["Humanoid"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #149: Against the Triad"], "url": ["https://pf2.d20pfsrd.com/monster/witchwyrd/"]}, +{"name": ["Zephyr Guard"], "family": ["Humanoid"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #149: Against the Triad"], "url": ["https://pf2.d20pfsrd.com/monster/zephyr-guard/"]}, +{"name": ["Hyaenodon"], "family": ["Hyaenodon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/hyaenodon/"]}, +{"name": ["Hyena"], "family": ["Hyaenodon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/hyena/"]}, +{"name": ["Hydra"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/hydra/"]}, +{"name": ["Innkeeper"], "publisher": ["Paizo"], "source": ["Pathfinder Gamemastery Guide"], "url": ["https://pf2.d20pfsrd.com/monster/innkeeper/"]}, +{"name": ["Jailer"], "publisher": ["Paizo"], "source": ["Pathfinder Gamemastery Guide"], "url": ["https://pf2.d20pfsrd.com/monster/jailer/"]}, +{"name": ["Kobold Dragon Mage"], "family": ["Kobold"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/kobold-dragon-mage/"]}, +{"name": ["Kobold Scout"], "family": ["Kobold"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/kobold-scout/"]}, +{"name": ["Kobold Warrior"], "family": ["Kobold"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/kobold-warrior/"]}, +{"name": ["Kraken"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/kraken/"]}, +{"name": ["Krooth"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/krooth/"]}, +{"name": ["Lamia"], "family": ["Lamia"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/lamia/"]}, +{"name": ["Lamia Matriarch"], "family": ["Lamia"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/lamia-matriarch/"]}, +{"name": ["Gourd Leshy"], "family": ["Leshy"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/gourd-leshy/"]}, +{"name": ["Leaf Leshy"], "family": ["Leshy"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/leaf-leshy/"]}, +{"name": ["Demilich"], "family": ["Lich"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/demilich/"]}, +{"name": ["Lich"], "family": ["Lich"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/lich/"]}, +{"name": ["Crag Linnorm"], "family": ["Linnorm"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/crag-linnorm/"]}, +{"name": ["Ice Linnorm"], "family": ["Linnorm"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/ice-linnorm/"]}, +{"name": ["Tarn Linnorm"], "family": ["Linnorm"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/tarn-linnorm/"]}, +{"name": ["Tor Linnorm"], "family": ["Linnorm"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/tor-linnorm/"]}, +{"name": ["Lion-Tamer"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #151: The Show Must Go On"], "url": ["https://pf2.d20pfsrd.com/monster/lion-tamer/"]}, +{"name": ["Living Graffiti"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #151: The Show Must Go On"], "url": ["https://pf2.d20pfsrd.com/monster/living-graffiti/"]}, +{"name": ["Giant Frilled Lizard"], "family": ["Lizard"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/giant-frilled-lizard/"]}, +{"name": ["Giant Gecko"], "family": ["Lizard"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/giant-gecko/"]}, +{"name": ["Lizardfolk Defender"], "family": ["Lizardfolk"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/lizardfolk-defender/"]}, +{"name": ["Lizardfolk Scout"], "family": ["Lizardfolk"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/lizardfolk-scout/"]}, +{"name": ["Lizardfolk Stargazer"], "family": ["Lizardfolk"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/lizardfolk-stargazer/"]}, +{"name": ["Luminous Ooze"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #151: The Show Must Go On"], "url": ["https://pf2.d20pfsrd.com/monster/luminous-ooze/"]}, +{"name": ["Manticore"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/manticore/"]}, +{"name": ["Deadly Mantis"], "family": ["Mantis"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/deadly-mantis/"]}, +{"name": ["Giant Mantis"], "family": ["Mantis"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/giant-mantis/"]}, +{"name": ["Mechanical Carny"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #151: The Show Must Go On"], "url": ["https://pf2.d20pfsrd.com/monster/mechanical-carny/"]}, +{"name": ["Medusa"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/medusa/"]}, +{"name": ["Merfolk Warrior"], "family": ["Merfolk"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/merfolk-warrior/"]}, +{"name": ["Merfolk Wavecaller"], "family": ["Merfolk"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/merfolk-wavecaller/"]}, +{"name": ["Mimic"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/mimic/"]}, +{"name": ["Minotaur"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/minotaur/"]}, +{"name": ["Mu Spore"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/mu-spore/"]}, +{"name": ["Mukradi"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/mukradi/"]}, +{"name": ["Mummy Guardian"], "family": ["Mummy"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/mummy-guardian/"]}, +{"name": ["Mummy Pharaoh"], "family": ["Mummy"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/mummy-pharaoh/"]}, +{"name": ["Dark Naga"], "family": ["Naga"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/dark-naga/"]}, +{"name": ["Guardian Naga"], "family": ["Naga"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/guardian-naga/"]}, +{"name": ["Greater Nightmare"], "family": ["Nightmare"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/greater-nightmare/"]}, +{"name": ["Nightmare"], "family": ["Nightmare"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/nightmare/"]}, +{"name": ["Nilith"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/nilith/"]}, +{"name": ["Noble"], "publisher": ["Paizo"], "source": ["Pathfinder Gamemastery Guide"], "url": ["https://pf2.d20pfsrd.com/monster/noble/"]}, +{"name": ["Dryad"], "family": ["Nymph"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/dryad/"]}, +{"name": ["Dryad Queen (Hamadryad)"], "family": ["Nymph"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/dryad-queen-hamadryad/"]}, +{"name": ["Naiad"], "family": ["Nymph"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/naiad/"]}, +{"name": ["Naiad Queen"], "family": ["Nymph"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/naiad-queen/"]}, +{"name": ["Octopus, Giant"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/octopus-giant/"]}, +{"name": ["Ofalth"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/ofalth/"]}, +{"name": ["Ogre Boss"], "family": ["Ogre"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/ogre-boss/"]}, +{"name": ["Ogre Glutton"], "family": ["Ogre"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/ogre-glutton/"]}, +{"name": ["Ogre Warrior"], "family": ["Ogre"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/ogre-warrior/"]}, +{"name": ["Black Pudding"], "family": ["Ooze"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/black-pudding/"]}, +{"name": ["Gelatinous Cube"], "family": ["Ooze"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/gelatinous-cube/"]}, +{"name": ["Immortal Ichor"], "family": ["Ooze"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #149: Against the Triad"], "url": ["https://pf2.d20pfsrd.com/monster/immortal-ichor/"]}, +{"name": ["Ochre Jelly"], "family": ["Ooze"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/ochre-jelly/"]}, +{"name": ["Sewer Ooze"], "family": ["Ooze"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/sewer-ooze/"]}, +{"name": ["Orc Brute"], "family": ["Orc"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/orc-brute/"]}, +{"name": ["Orc Warchief"], "family": ["Orc"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/orc-warchief/"]}, +{"name": ["Orc Warrior"], "family": ["Orc"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/orc-warrior/"]}, +{"name": ["Otyugh"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/otyugh/"]}, +{"name": ["Owlbear"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/owlbear/"]}, +{"name": ["Palace Guard"], "publisher": ["Paizo"], "source": ["Pathfinder Gamemastery Guide"], "url": ["https://pf2.d20pfsrd.com/monster/palace-guard/"]}, +{"name": ["Pegasus"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/pegasus/"]}, +{"name": ["Phoenix"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/phoenix/"]}, +{"name": ["Aasimar Redeemer"], "family": ["Planar Scion"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/aasimar-redeemer/"]}, +{"name": ["Duskwalker Ghost Hunter"], "family": ["Planar Scion"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/duskwalker-ghost-hunter/"]}, +{"name": ["Tiefling Adept"], "family": ["Planar Scion"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/tiefling-adept/"]}, +{"name": ["Poltergeist"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/poltergeist/"]}, +{"name": ["Poracha"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/poracha/"]}, +{"name": ["Keketar"], "family": ["Protean"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/keketar/"]}, +{"name": ["Naunet"], "family": ["Protean"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/naunet/"]}, +{"name": ["Voidworm"], "family": ["Protean"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/voidworm/"]}, +{"name": ["Morrigna"], "family": ["Psychopomp"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/morrigna/"]}, +{"name": ["Nosoi"], "family": ["Psychopomp"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/nosoi/"]}, +{"name": ["Pteranodon"], "family": ["Pterosaur"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/pteranodon/"]}, +{"name": ["Quetzalcoatlus"], "family": ["Pterosaur"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/quetzalcoatlus/"]}, +{"name": ["Quelaunt"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/quelaunt/"]}, +{"name": ["Dandasuka"], "family": ["Rakshasa"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/dandasuka/"]}, +{"name": ["Raja Rakshasa"], "family": ["Rakshasa"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/raja-rakshasa/"]}, +{"name": ["Giant Rat"], "family": ["Rat"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/giant-rat/"]}, +{"name": ["Rat Swarm"], "family": ["Rat"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/rat-swarm/"]}, +{"name": ["Ratfolk Grenadier"], "family": ["Ratfolk"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/ratfolk-grenadier/"]}, +{"name": ["Redcap"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/redcap/"]}, +{"name": ["Reefclaw"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/reefclaw/"]}, +{"name": ["Remorhaz"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/remorhaz/"]}, +{"name": ["River Drake"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/river-drake/"]}, +{"name": ["Roc"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/roc/"]}, +{"name": ["Roper"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/roper/"]}, +{"name": ["Rust Monster"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/rust-monster/"]}, +{"name": ["Satyr"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/satyr/"]}, +{"name": ["Giant Scorpion"], "family": ["Scorpion"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/giant-scorpion/"]}, +{"name": ["Sea Devil Baron"], "family": ["Sea Devil"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/sea-devil-baron/"]}, +{"name": ["Sea Devil Brute"], "family": ["Sea Devil"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/sea-devil-brute/"]}, +{"name": ["Sea Devil Scout"], "family": ["Sea Devil"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/sea-devil-scout/"]}, +{"name": ["Sea Serpent"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/sea-serpent/"]}, +{"name": ["Server"], "publisher": ["Paizo"], "source": ["Pathfinder Gamemastery Guide"], "url": ["https://pf2.d20pfsrd.com/monster/server/"]}, +{"name": ["Shadow"], "family": ["Shadow"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/shadow/"]}, +{"name": ["Shadow, Greater"], "family": ["Shadow"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/greater-shadow/"]}, +{"name": ["Shambler"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/shambler/"]}, +{"name": ["Great White Shark"], "family": ["Shark"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/great-white-shark/"]}, +{"name": ["Megalodon"], "family": ["Shark"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/megalodon/"]}, +{"name": ["Shining Child"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/shining-child/"]}, +{"name": ["Shoggoth"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/shoggoth/"]}, +{"name": ["Shuln"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/shuln/"]}, +{"name": ["Simurgh"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/simurgh/"]}, +{"name": ["Sinspawn"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/sinspawn/"]}, +{"name": ["Skeletal Champion"], "family": ["Skeleton"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/skeletal-champion/"]}, +{"name": ["Skeletal Horse"], "family": ["Skeleton"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/skeletal-horse/"]}, +{"name": ["Skeletal Hulk"], "family": ["Skeleton"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/skeletal-hulk/"]}, +{"name": ["Skeleton Guard"], "family": ["Skeleton"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/skeleton-guard/"]}, +{"name": ["Skulltaker"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/skulltaker/"]}, +{"name": ["Slurk"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/slurk/"]}, +{"name": ["Smilodon"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/smilodon/"]}, +{"name": ["Ball Python"], "family": ["Snake"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/ball-python/"]}, +{"name": ["Giant Anaconda"], "family": ["Snake"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/giant-anaconda/"]}, +{"name": ["Giant Viper"], "family": ["Snake"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/giant-viper/"]}, +{"name": ["Viper"], "family": ["Snake"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/viper/"]}, +{"name": ["Soulbound Doll"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/soulbound-doll/"]}, +{"name": ["Sphinx"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/sphinx/"]}, +{"name": ["Giant Tarantula"], "family": ["Spider"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/giant-tarantula/"]}, +{"name": ["Goliath Spider"], "family": ["Spider"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/goliath-spider/"]}, +{"name": ["Spider Swarm"], "family": ["Spider"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/spider-swarm/"]}, +{"name": ["Spider, Hunting"], "family": ["Spider"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/hunting-spider/"]}, +{"name": ["Spirit-Gargoyle"], "publisher": ["Legendary Games"], "source": ["The Murmuring Fountain"], "url": ["https://pf2.d20pfsrd.com/monster/spirit-gargoyle/"]}, +{"name": ["Grig"], "family": ["Sprite"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/grig/"]}, +{"name": ["Pixie"], "family": ["Sprite"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/pixie/"]}, +{"name": ["Sprite"], "family": ["Sprite"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/sprite/"]}, +{"name": ["Tengu Sneak"], "family": ["Tengu"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/tengu-sneak/"]}, +{"name": ["Terotricus"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/terotricus/"]}, +{"name": ["The Firebleeder"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #149: Against the Triad"], "url": ["https://pf2.d20pfsrd.com/monster/the-firebleeder/"]}, +{"name": ["Troll"], "family": ["Troll"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/troll/"]}, +{"name": ["Troubadour"], "publisher": ["Paizo"], "source": ["Pathfinder Gamemastery Guide"], "url": ["https://pf2.d20pfsrd.com/monster/troubadour/"]}, +{"name": ["Tzitzimitl"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #149: Against the Triad"], "url": ["https://pf2.d20pfsrd.com/monster/tzitzimitl/"]}, +{"name": ["Aiudara Wraith"], "family": ["Undead"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #149: Against the Triad"], "url": ["https://pf2.d20pfsrd.com/monster/aiudara-wraith/"]}, +{"name": ["Wyrmwraith, Elder"], "family": ["Dragon", "Undead"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #150: Broken Promises"], "url": ["https://pf2.d20pfsrd.com/monster/wyrmwraith-elder/"]}, +{"name": ["Unicorn"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/unicorn/"]}, +{"name": ["Uthul"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/uthul/"]}, +{"name": ["Vampire Count"], "family": ["Vampire"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/vampire-count/"]}, +{"name": ["Vampire Mastermind"], "family": ["Vampire"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/vampire-mastermind/"]}, +{"name": ["Vampire Spawn Rogue"], "family": ["Vampire"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/vampire-spawn-rogue/"]}, +{"name": ["Vazgorlu"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #150: Broken Promises"], "url": ["https://pf2.d20pfsrd.com/monster/vazgorlu/"]}, +{"name": ["Vermlek"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #151: The Show Must Go On"], "url": ["https://pf2.d20pfsrd.com/monster/vermlek/"]}, +{"name": ["Warg"], "family": ["Warg"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/warg/"]}, +{"name": ["Winter Wolf"], "family": ["Warg"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/winter-wolf/"]}, +{"name": ["Warsworn"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/warsworn/"]}, +{"name": ["Giant Wasp"], "family": ["Wasp"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/giant-wasp/"]}, +{"name": ["Wasp Swarm"], "family": ["Wasp"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/wasp-swarm/"]}, +{"name": ["Watch Officer"], "publisher": ["Paizo"], "source": ["Pathfinder Gamemastery Guide"], "url": ["https://pf2.d20pfsrd.com/monster/watch-officer/"]}, +{"name": ["Weathered Wail"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #149: Against the Triad"], "url": ["https://pf2.d20pfsrd.com/monster/weathered-wail/"]}, +{"name": ["Web Lurker"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/web-lurker/"]}, +{"name": ["Wemmuth"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/wemmuth/"]}, +{"name": ["Wendigo"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/wendigo/"]}, +{"name": ["Werebear"], "family": ["Werecreature"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/werebear/"]}, +{"name": ["Wererat"], "family": ["Werecreature"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/wererat/"]}, +{"name": ["Werewolf"], "family": ["Werecreature"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/werewolf/"]}, +{"name": ["Wight"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/wight/"]}, +{"name": ["Will-o-Wisp"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/will-o-wisp/"]}, +{"name": ["Dire Wolf"], "family": ["Wolf"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/dire-wolf/"]}, +{"name": ["Wolf Packs"], "family": ["Wolf"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/wolf-packs/"]}, +{"name": ["Wraith"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/wraith/"]}, +{"name": ["Xulgath Bilebearer"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #151: The Show Must Go On"], "url": ["https://pf2.d20pfsrd.com/monster/xulgath-bilebearer/"]}, +{"name": ["Xulgath Fanatic"], "publisher": ["Paizo"], "source": ["Pathfinder Adventure Path #151: The Show Must Go On"], "url": ["https://pf2.d20pfsrd.com/monster/xulgath-fanatic/"]}, +{"name": ["Xulgath Leader"], "family": ["Xulgath"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/xulgath-leader/"]}, +{"name": ["Xulgath Skulker"], "family": ["Xulgath"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/xulgath-skulker/"]}, +{"name": ["Xulgath Warrior"], "family": ["Xulgath"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/xulgath-warrior/"]}, +{"name": ["Yeti"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/yeti/"]}, +{"name": ["Zaramuun"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/zaramuun/"]}, +{"name": ["Plague Zombie"], "family": ["Zombie"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/plague-zombie/"]}, +{"name": ["Zombie Brute"], "family": ["Zombie"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/zombie-brute/"]}, +{"name": ["Zombie Shambler"], "family": ["Zombie"], "publisher": ["Paizo"], "source": ["Pathfinder 2 Bestiary"], "url": ["https://pf2.d20pfsrd.com/monster/zombie-shambler/"]} +] \ No newline at end of file diff --git a/scripts/creatures/creatures/spiders/creatures.py b/scripts/creatures/creatures/spiders/creatures.py index 5dad0be..5eed99a 100644 --- a/scripts/creatures/creatures/spiders/creatures.py +++ b/scripts/creatures/creatures/spiders/creatures.py @@ -2,6 +2,7 @@ import scrapy import datetime as dt from creatures.items import Creature from typing import List +from scrapy.loader import ItemLoader class CreateListSpider(scrapy.Spider): @@ -9,23 +10,16 @@ class CreateListSpider(scrapy.Spider): start_urls = ["https://pf2.d20pfsrd.com/monster"] def parse(self, response): + # from scrapy.shell import inspect_response + # inspect_response(response, self) rows = response.xpath('//table[@id="archive-data-table"]' '/tr') - creatures: List[Creature] = [] for row in rows: - name = row.xpath('.//td[1]/a/text()').get() - family = row.xpath('.//td[2]/a/text()').get() - level = row.xpath('.//td[3]/a/text()').get() - publisher = row.xpath('.//td[4]/a/text()').get() - source = row.xpath('.//td[5]/a/text()').get() - url = row.xpath('.//td[1]/a/@href').get() - creatures.append(Creature(name=name, - family=family, - level=level, - publisher=publisher, - source=source, - url=url,)) - yield { - 'date': dt.datetime.now(tz=dt.timezone.utc), - 'data': creatures, - } + loader = ItemLoader(item=Creature(), selector=row) + loader.add_xpath('name', './td[1]/a/text()') + loader.add_xpath('family', './td[2]/a/text()') + loader.add_xpath('level', './td[3]/a/text()') + loader.add_xpath('publisher', './td[4]/a/text()') + loader.add_xpath('source', './td[5]/a/text()') + loader.add_xpath('url', './td[1]/a/@href') + yield loader.load_item()