summaryrefslogtreecommitdiff
path: root/db
diff options
context:
space:
mode:
authorDaniel Weipert <code@drogueronin.de>2023-08-31 20:21:24 +0200
committerDaniel Weipert <code@drogueronin.de>2023-08-31 20:21:24 +0200
commit3b6e9e4385d1acedbb4bf9c55ce1be8c3a75eee9 (patch)
tree6dacf2d7c5e79a14838430a3d75dd6a91cb4ec4d /db
parent487b99bd938207e927d7cc14ab31517b8f40beb1 (diff)
generated npcs
Diffstat (limited to 'db')
-rw-r--r--db/_generated/npc/37707_female.json1
-rw-r--r--db/_generated/npc/37707_female_missing.json1
-rw-r--r--db/_generated/npc/37707_male.json1
-rw-r--r--db/_generated/npc/37707_male_missing.json1
-rw-r--r--db/_generated/npc/acolyte.json1
-rw-r--r--db/_generated/npc/aeble.json1
-rw-r--r--db/_generated/npc/allie.json1
-rw-r--r--db/_generated/npc/bob.json1
-rw-r--r--db/_generated/npc/christie.json1
-rw-r--r--db/_generated/npc/conworker1.json1
-rw-r--r--db/_generated/npc/conworker2.json1
-rw-r--r--db/_generated/npc/conworker3.json1
-rw-r--r--db/_generated/npc/cotton_breeder.json1
-rw-r--r--db/_generated/npc/cotton_misa_bro.json1
-rw-r--r--db/_generated/npc/cotton_misa_gramps.json1
-rw-r--r--db/_generated/npc/grace.json1
-rw-r--r--db/_generated/npc/happy_guy.json1
-rw-r--r--db/_generated/npc/knight1.json1
-rw-r--r--db/_generated/npc/knight2.json1
-rw-r--r--db/_generated/npc/knight3.json1
-rw-r--r--db/_generated/npc/knight4.json1
-rw-r--r--db/_generated/npc/kyle.json1
-rw-r--r--db/_generated/npc/liela.json1
-rw-r--r--db/_generated/npc/maple_girl.json1
-rw-r--r--db/_generated/npc/marissa.json1
-rw-r--r--db/_generated/npc/misa.json1
-rw-r--r--db/_generated/npc/npc_mom.json1
-rw-r--r--db/_generated/npc/npc_red.json1
-rw-r--r--db/_generated/npc/npc_wife.json1
-rw-r--r--db/_generated/npc/nurse1.json1
-rw-r--r--db/_generated/npc/nurse2.json1
-rw-r--r--db/_generated/npc/omnichannel-ceo.json1
-rw-r--r--db/_generated/npc/omnigrunt.json1
-rw-r--r--db/_generated/npc/omnigrunt10.json1
-rw-r--r--db/_generated/npc/omnigrunt2.json1
-rw-r--r--db/_generated/npc/omnigrunt3.json1
-rw-r--r--db/_generated/npc/omnigrunt4.json1
-rw-r--r--db/_generated/npc/omnigrunt5.json1
-rw-r--r--db/_generated/npc/omnigrunt6.json1
-rw-r--r--db/_generated/npc/omnigrunt7.json1
-rw-r--r--db/_generated/npc/omnigrunt8.json1
-rw-r--r--db/_generated/npc/omnigrunt9.json1
-rw-r--r--db/_generated/npc/p_five.json1
-rw-r--r--db/_generated/npc/p_four.json1
-rw-r--r--db/_generated/npc/p_one.json1
-rw-r--r--db/_generated/npc/p_three.json1
-rw-r--r--db/_generated/npc/p_two.json1
-rw-r--r--db/_generated/npc/penguin.json1
-rw-r--r--db/_generated/npc/postboy.json1
-rw-r--r--db/_generated/npc/professor.json1
-rw-r--r--db/_generated/npc/random_encounter_dummy.json1
-rw-r--r--db/_generated/npc/rock.json1
-rw-r--r--db/_generated/npc/shady_guy.json1
-rw-r--r--db/_generated/npc/speck.json1
-rw-r--r--db/_generated/npc/sphalian_barmaid.json1
-rw-r--r--db/_generated/npc/sphalian_granny.json1
-rw-r--r--db/_generated/npc/sphalian_homemaker.json1
-rw-r--r--db/_generated/npc/sphalian_magician_fiery.json1
-rw-r--r--db/_generated/npc/sphalian_maniac_green.json1
-rw-r--r--db/_generated/npc/sphalian_monk_orange.json1
-rw-r--r--db/_generated/npc/sphalian_nurse.json1
-rw-r--r--db/_generated/npc/sphalian_shopkeeper.json1
-rw-r--r--db/_generated/npc/sphalian_tennisplayer.json1
-rw-r--r--db/_generated/npc/spyder_basement_bobby.json1
-rw-r--r--db/_generated/npc/spyder_basement_catholi.json1
-rw-r--r--db/_generated/npc/spyder_basement_coralli.json1
-rw-r--r--db/_generated/npc/spyder_basement_flick.json1
-rw-r--r--db/_generated/npc/spyder_basement_garret.json1
-rw-r--r--db/_generated/npc/spyder_basement_josephine.json1
-rw-r--r--db/_generated/npc/spyder_basement_josh.json1
-rw-r--r--db/_generated/npc/spyder_basement_roger.json1
-rw-r--r--db/_generated/npc/spyder_billie.json1
-rw-r--r--db/_generated/npc/spyder_boulder.json1
-rw-r--r--db/_generated/npc/spyder_box_goldpass.json1
-rw-r--r--db/_generated/npc/spyder_candy_eliane.json1
-rw-r--r--db/_generated/npc/spyder_candy_henrik.json1
-rw-r--r--db/_generated/npc/spyder_candycafe_nora.json1
-rw-r--r--db/_generated/npc/spyder_candycenter_diamond.json1
-rw-r--r--db/_generated/npc/spyder_candyhouse1_sawyer.json1
-rw-r--r--db/_generated/npc/spyder_candyhouse1_tillie.json1
-rw-r--r--db/_generated/npc/spyder_candyhouse2_barney.json1
-rw-r--r--db/_generated/npc/spyder_candyhouse2_indiana.json1
-rw-r--r--db/_generated/npc/spyder_candyhouse3_joanie.json1
-rw-r--r--db/_generated/npc/spyder_candyscoop_clint.json1
-rw-r--r--db/_generated/npc/spyder_captain.json1
-rw-r--r--db/_generated/npc/spyder_citypark_bobette.json1
-rw-r--r--db/_generated/npc/spyder_citypark_cd1.json1
-rw-r--r--db/_generated/npc/spyder_citypark_cd2.json1
-rw-r--r--db/_generated/npc/spyder_citypark_edith.json1
-rw-r--r--db/_generated/npc/spyder_citypark_florist.json1
-rw-r--r--db/_generated/npc/spyder_citypark_frances.json1
-rw-r--r--db/_generated/npc/spyder_citypark_mack.json1
-rw-r--r--db/_generated/npc/spyder_citypark_magdalene.json1
-rw-r--r--db/_generated/npc/spyder_citypark_potion1.json1
-rw-r--r--db/_generated/npc/spyder_citypark_potion2.json1
-rw-r--r--db/_generated/npc/spyder_citypark_prue.json1
-rw-r--r--db/_generated/npc/spyder_citypark_restoration.json1
-rw-r--r--db/_generated/npc/spyder_conileaffrolicking.json1
-rw-r--r--db/_generated/npc/spyder_cottonartshop_carter.json1
-rw-r--r--db/_generated/npc/spyder_cottonartshop_luvinia.json1
-rw-r--r--db/_generated/npc/spyder_cottonartshop_philis.json1
-rw-r--r--db/_generated/npc/spyder_cottonartshop_phoenix.json1
-rw-r--r--db/_generated/npc/spyder_cottoncafe_cayden.json1
-rw-r--r--db/_generated/npc/spyder_cottoncafe_hillary.json1
-rw-r--r--db/_generated/npc/spyder_cottoncafe_juliana.json1
-rw-r--r--db/_generated/npc/spyder_cottoncafe_lotus.json1
-rw-r--r--db/_generated/npc/spyder_cottoncafe_wilford.json1
-rw-r--r--db/_generated/npc/spyder_cottoncenter_ada.json1
-rw-r--r--db/_generated/npc/spyder_cottoncenter_krystal.json1
-rw-r--r--db/_generated/npc/spyder_cottonhouse1_lila.json1
-rw-r--r--db/_generated/npc/spyder_cottonhouse1_rodger.json1
-rw-r--r--db/_generated/npc/spyder_cottonhouse2_davis.json1
-rw-r--r--db/_generated/npc/spyder_cottonhouse2_neva.json1
-rw-r--r--db/_generated/npc/spyder_cottonhouse2_sidney.json1
-rw-r--r--db/_generated/npc/spyder_cottonscoop_joe.json1
-rw-r--r--db/_generated/npc/spyder_cottontown_barmaid.json1
-rw-r--r--db/_generated/npc/spyder_cottontown_hacker.json1
-rw-r--r--db/_generated/npc/spyder_cottontown_monk.json1
-rw-r--r--db/_generated/npc/spyder_cottontunnel_box1.json1
-rw-r--r--db/_generated/npc/spyder_cottontunnel_box2.json1
-rw-r--r--db/_generated/npc/spyder_cottontunnel_box3.json1
-rw-r--r--db/_generated/npc/spyder_cottontunnel_box4.json1
-rw-r--r--db/_generated/npc/spyder_cottontunnel_box5.json1
-rw-r--r--db/_generated/npc/spyder_cottontunnel_box6.json1
-rw-r--r--db/_generated/npc/spyder_cottontunnel_carlos.json1
-rw-r--r--db/_generated/npc/spyder_cottontunnel_professor.json1
-rw-r--r--db/_generated/npc/spyder_cottontunnel_shopassistant.json1
-rw-r--r--db/_generated/npc/spyder_dante.json1
-rw-r--r--db/_generated/npc/spyder_datacenter_bayliss.json1
-rw-r--r--db/_generated/npc/spyder_datacenter_chomsky.json1
-rw-r--r--db/_generated/npc/spyder_datacenter_fermi.json1
-rw-r--r--db/_generated/npc/spyder_datacenter_lagrange.json1
-rw-r--r--db/_generated/npc/spyder_datacenter_onnes.json1
-rw-r--r--db/_generated/npc/spyder_datacenter_s1.json1
-rw-r--r--db/_generated/npc/spyder_datacenter_s2.json1
-rw-r--r--db/_generated/npc/spyder_datacenter_s3.json1
-rw-r--r--db/_generated/npc/spyder_datacenter_s4.json1
-rw-r--r--db/_generated/npc/spyder_datacenter_s5.json1
-rw-r--r--db/_generated/npc/spyder_datacenter_s6.json1
-rw-r--r--db/_generated/npc/spyder_datacenter_s7.json1
-rw-r--r--db/_generated/npc/spyder_dojo_ares.json1
-rw-r--r--db/_generated/npc/spyder_dojo_billie.json1
-rw-r--r--db/_generated/npc/spyder_dojo_fu.json1
-rw-r--r--db/_generated/npc/spyder_dojo_hephastus.json1
-rw-r--r--db/_generated/npc/spyder_dojo_hermes.json1
-rw-r--r--db/_generated/npc/spyder_dojo_iroh.json1
-rw-r--r--db/_generated/npc/spyder_dojo_kataro.json1
-rw-r--r--db/_generated/npc/spyder_dojo_orion.json1
-rw-r--r--db/_generated/npc/spyder_dojo_saturn.json1
-rw-r--r--db/_generated/npc/spyder_dojo_sokka.json1
-rw-r--r--db/_generated/npc/spyder_dojo_thri.json1
-rw-r--r--db/_generated/npc/spyder_dojo_toph.json1
-rw-r--r--db/_generated/npc/spyder_dojo_tu.json1
-rw-r--r--db/_generated/npc/spyder_dojo_wan.json1
-rw-r--r--db/_generated/npc/spyder_dojo_xiang.json1
-rw-r--r--db/_generated/npc/spyder_dojo_yangchen.json1
-rw-r--r--db/_generated/npc/spyder_dojo_yin.json1
-rw-r--r--db/_generated/npc/spyder_dojo_zhao.json1
-rw-r--r--db/_generated/npc/spyder_dojo_zhu.json1
-rw-r--r--db/_generated/npc/spyder_dragonscave_angrybrute.json1
-rw-r--r--db/_generated/npc/spyder_dragonscave_benden.json1
-rw-r--r--db/_generated/npc/spyder_dragonscave_cailin.json1
-rw-r--r--db/_generated/npc/spyder_dragonscave_concernedbrute.json1
-rw-r--r--db/_generated/npc/spyder_dragonscave_daenny.json1
-rw-r--r--db/_generated/npc/spyder_dragonscave_griffin.json1
-rw-r--r--db/_generated/npc/spyder_dragonscave_lazybrute.json1
-rw-r--r--db/_generated/npc/spyder_dragonscave_lessa.json1
-rw-r--r--db/_generated/npc/spyder_dragonscave_lucille.json1
-rw-r--r--db/_generated/npc/spyder_dragonscave_mal.json1
-rw-r--r--db/_generated/npc/spyder_dragonscave_ray.json1
-rw-r--r--db/_generated/npc/spyder_dragonscave_tomas.json1
-rw-r--r--db/_generated/npc/spyder_dragonscave_tru.json1
-rw-r--r--db/_generated/npc/spyder_drokoro.json1
-rw-r--r--db/_generated/npc/spyder_dryadsgrove_aquemini.json1
-rw-r--r--db/_generated/npc/spyder_dryadsgrove_ferris.json1
-rw-r--r--db/_generated/npc/spyder_dryadsgrove_ignatia.json1
-rw-r--r--db/_generated/npc/spyder_dryadsgrove_petra.json1
-rw-r--r--db/_generated/npc/spyder_dryadsgrove_sylvia.json1
-rw-r--r--db/_generated/npc/spyder_flower_cady.json1
-rw-r--r--db/_generated/npc/spyder_flower_fez.json1
-rw-r--r--db/_generated/npc/spyder_flower_lissa.json1
-rw-r--r--db/_generated/npc/spyder_flower_mieke.json1
-rw-r--r--db/_generated/npc/spyder_flower_monk.json1
-rw-r--r--db/_generated/npc/spyder_flower_sandy.json1
-rw-r--r--db/_generated/npc/spyder_flower_teach.json1
-rw-r--r--db/_generated/npc/spyder_flowercenter_tiara.json1
-rw-r--r--db/_generated/npc/spyder_flowerhouse1_jonette.json1
-rw-r--r--db/_generated/npc/spyder_flowerhouse1_willie.json1
-rw-r--r--db/_generated/npc/spyder_flowerhouse2_bruce.json1
-rw-r--r--db/_generated/npc/spyder_flowerhouse2_pip.json1
-rw-r--r--db/_generated/npc/spyder_flowerpetshop_denzel.json1
-rw-r--r--db/_generated/npc/spyder_flowerpetshop_titus.json1
-rw-r--r--db/_generated/npc/spyder_flowerscoop_jarod.json1
-rw-r--r--db/_generated/npc/spyder_grannypiper.json1
-rw-r--r--db/_generated/npc/spyder_greenwash_aissa.json1
-rw-r--r--db/_generated/npc/spyder_greenwash_alex.json1
-rw-r--r--db/_generated/npc/spyder_greenwash_broer.json1
-rw-r--r--db/_generated/npc/spyder_greenwash_chip.json1
-rw-r--r--db/_generated/npc/spyder_greenwash_clarence.json1
-rw-r--r--db/_generated/npc/spyder_greenwash_dempsey.json1
-rw-r--r--db/_generated/npc/spyder_greenwash_dippel.json1
-rw-r--r--db/_generated/npc/spyder_greenwash_gluck.json1
-rw-r--r--db/_generated/npc/spyder_greenwash_gregor.json1
-rw-r--r--db/_generated/npc/spyder_greenwash_guard.json1
-rw-r--r--db/_generated/npc/spyder_greenwash_heidenstam.json1
-rw-r--r--db/_generated/npc/spyder_greenwash_hunt.json1
-rw-r--r--db/_generated/npc/spyder_greenwash_lewie.json1
-rw-r--r--db/_generated/npc/spyder_greenwash_lewis.json1
-rw-r--r--db/_generated/npc/spyder_greenwash_looten.json1
-rw-r--r--db/_generated/npc/spyder_greenwash_louis.json1
-rw-r--r--db/_generated/npc/spyder_greenwash_moreau.json1
-rw-r--r--db/_generated/npc/spyder_greenwash_morehouse.json1
-rw-r--r--db/_generated/npc/spyder_greenwash_norton.json1
-rw-r--r--db/_generated/npc/spyder_greenwash_selby.json1
-rw-r--r--db/_generated/npc/spyder_hospital1_audie.json1
-rw-r--r--db/_generated/npc/spyder_hospital1_aurora.json1
-rw-r--r--db/_generated/npc/spyder_hospital1_eleni.json1
-rw-r--r--db/_generated/npc/spyder_hospital1_felu.json1
-rw-r--r--db/_generated/npc/spyder_hospital1_fring.json1
-rw-r--r--db/_generated/npc/spyder_hospital1_lesley.json1
-rw-r--r--db/_generated/npc/spyder_hospital1_liane.json1
-rw-r--r--db/_generated/npc/spyder_hospital1_luzia.json1
-rw-r--r--db/_generated/npc/spyder_hospital1_marylyn.json1
-rw-r--r--db/_generated/npc/spyder_hospital1_melanie.json1
-rw-r--r--db/_generated/npc/spyder_hospital1_pem.json1
-rw-r--r--db/_generated/npc/spyder_hospital1_rakez.json1
-rw-r--r--db/_generated/npc/spyder_hospital1_rea.json1
-rw-r--r--db/_generated/npc/spyder_hospital1_rhizome.json1
-rw-r--r--db/_generated/npc/spyder_hospital1_smith.json1
-rw-r--r--db/_generated/npc/spyder_hospital1_trafford.json1
-rw-r--r--db/_generated/npc/spyder_hospital1_walt.json1
-rw-r--r--db/_generated/npc/spyder_hospital1_zekar.json1
-rw-r--r--db/_generated/npc/spyder_hospital_billie.json1
-rw-r--r--db/_generated/npc/spyder_leather_eula.json1
-rw-r--r--db/_generated/npc/spyder_leather_filbur.json1
-rw-r--r--db/_generated/npc/spyder_leathercenter_sofia.json1
-rw-r--r--db/_generated/npc/spyder_leathergym_brad.json1
-rw-r--r--db/_generated/npc/spyder_leathergym_bradfort.json1
-rw-r--r--db/_generated/npc/spyder_leathergym_chad.json1
-rw-r--r--db/_generated/npc/spyder_leathergym_chadfort.json1
-rw-r--r--db/_generated/npc/spyder_leathergym_chadine.json1
-rw-r--r--db/_generated/npc/spyder_leathergym_gigachad.json1
-rw-r--r--db/_generated/npc/spyder_leathergym_virgin.json1
-rw-r--r--db/_generated/npc/spyder_leatherhouse1_gail.json1
-rw-r--r--db/_generated/npc/spyder_leatherhouse1_roger.json1
-rw-r--r--db/_generated/npc/spyder_leatherhouse2_elias.json1
-rw-r--r--db/_generated/npc/spyder_leatherhouse2_gabe.json1
-rw-r--r--db/_generated/npc/spyder_leatherhouse2_memphis.json1
-rw-r--r--db/_generated/npc/spyder_leathermuseum_davie.json1
-rw-r--r--db/_generated/npc/spyder_leathermuseum_giles.json1
-rw-r--r--db/_generated/npc/spyder_leathermuseum_kasey.json1
-rw-r--r--db/_generated/npc/spyder_leatherscoop_blake.json1
-rw-r--r--db/_generated/npc/spyder_leathershaft1_beryll.json1
-rw-r--r--db/_generated/npc/spyder_leathershaft1_cole.json1
-rw-r--r--db/_generated/npc/spyder_leathershaft1_roxby.json1
-rw-r--r--db/_generated/npc/spyder_leathershaft1_rutherford.json1
-rw-r--r--db/_generated/npc/spyder_leathershaft1_surat.json1
-rw-r--r--db/_generated/npc/spyder_leathershaft2_colin.json1
-rw-r--r--db/_generated/npc/spyder_lionmountain_adam.json1
-rw-r--r--db/_generated/npc/spyder_lionmountain_alexander.json1
-rw-r--r--db/_generated/npc/spyder_lionmountain_arlene.json1
-rw-r--r--db/_generated/npc/spyder_lionmountain_chhurim.json1
-rw-r--r--db/_generated/npc/spyder_lionmountain_conrad.json1
-rw-r--r--db/_generated/npc/spyder_lionmountain_david.json1
-rw-r--r--db/_generated/npc/spyder_lionmountain_emilio.json1
-rw-r--r--db/_generated/npc/spyder_lionmountain_enforcer.json1
-rw-r--r--db/_generated/npc/spyder_lionmountain_jacques.json1
-rw-r--r--db/_generated/npc/spyder_lionmountain_kurt.json1
-rw-r--r--db/_generated/npc/spyder_lionmountain_nurse.json1
-rw-r--r--db/_generated/npc/spyder_lionmountain_scientist.json1
-rw-r--r--db/_generated/npc/spyder_lionmountain_tom.json1
-rw-r--r--db/_generated/npc/spyder_log.json1
-rw-r--r--db/_generated/npc/spyder_mansion_drinkingbuddya.json1
-rw-r--r--db/_generated/npc/spyder_mansion_drinkingbuddyb.json1
-rw-r--r--db/_generated/npc/spyder_mansion_gillette.json1
-rw-r--r--db/_generated/npc/spyder_mansion_lainey.json1
-rw-r--r--db/_generated/npc/spyder_mansion_lucy.json1
-rw-r--r--db/_generated/npc/spyder_mansion_lyle.json1
-rw-r--r--db/_generated/npc/spyder_mansion_reed.json1
-rw-r--r--db/_generated/npc/spyder_mansion_rolo.json1
-rw-r--r--db/_generated/npc/spyder_mansion_tamara.json1
-rw-r--r--db/_generated/npc/spyder_mansion_wayne.json1
-rw-r--r--db/_generated/npc/spyder_nimrod_antimony.json1
-rw-r--r--db/_generated/npc/spyder_nimrod_archer.json1
-rw-r--r--db/_generated/npc/spyder_nimrod_argon.json1
-rw-r--r--db/_generated/npc/spyder_nimrod_bowie.json1
-rw-r--r--db/_generated/npc/spyder_nimrod_chromerobo.json1
-rw-r--r--db/_generated/npc/spyder_nimrod_dirk.json1
-rw-r--r--db/_generated/npc/spyder_nimrod_honour.json1
-rw-r--r--db/_generated/npc/spyder_nimrod_jake.json1
-rw-r--r--db/_generated/npc/spyder_nimrod_jervis.json1
-rw-r--r--db/_generated/npc/spyder_nimrod_justice.json1
-rw-r--r--db/_generated/npc/spyder_nimrod_mace.json1
-rw-r--r--db/_generated/npc/spyder_nimrod_maverick.json1
-rw-r--r--db/_generated/npc/spyder_nimrod_rebel.json1
-rw-r--r--db/_generated/npc/spyder_nimrod_thatcher.json1
-rw-r--r--db/_generated/npc/spyder_nimrod_tru.json1
-rw-r--r--db/_generated/npc/spyder_nimrod_xeon.json1
-rw-r--r--db/_generated/npc/spyder_nimrod_zircon.json1
-rw-r--r--db/_generated/npc/spyder_omnichannel_beaverbrook.json1
-rw-r--r--db/_generated/npc/spyder_omnichannel_bettger.json1
-rw-r--r--db/_generated/npc/spyder_omnichannel_byrne.json1
-rw-r--r--db/_generated/npc/spyder_omnichannel_carnegie.json1
-rw-r--r--db/_generated/npc/spyder_omnichannel_crane.json1
-rw-r--r--db/_generated/npc/spyder_omnichannel_danita.json1
-rw-r--r--db/_generated/npc/spyder_omnichannel_dempsey.json1
-rw-r--r--db/_generated/npc/spyder_omnichannel_enforcer.json1
-rw-r--r--db/_generated/npc/spyder_omnichannel_ethan.json1
-rw-r--r--db/_generated/npc/spyder_omnichannel_gore.json1
-rw-r--r--db/_generated/npc/spyder_omnichannel_schwartz.json1
-rw-r--r--db/_generated/npc/spyder_omnichannel_strauss.json1
-rw-r--r--db/_generated/npc/spyder_omnichannel_talbot.json1
-rw-r--r--db/_generated/npc/spyder_omnichannel_thedukeofdeadair.json1
-rw-r--r--db/_generated/npc/spyder_omnichannel_tohei.json1
-rw-r--r--db/_generated/npc/spyder_omnichannel_william.json1
-rw-r--r--db/_generated/npc/spyder_omnichannel_worm.json1
-rw-r--r--db/_generated/npc/spyder_outsidewalled_midas.json1
-rw-r--r--db/_generated/npc/spyder_outsidewalled_rogue.json1
-rw-r--r--db/_generated/npc/spyder_papermanor_princeton.json1
-rw-r--r--db/_generated/npc/spyder_papermart_harith.json1
-rw-r--r--db/_generated/npc/spyder_papermart_miles.json1
-rw-r--r--db/_generated/npc/spyder_papermart_rafael.json1
-rw-r--r--db/_generated/npc/spyder_papermart_shirley.json1
-rw-r--r--db/_generated/npc/spyder_paperscoop_santino.json1
-rw-r--r--db/_generated/npc/spyder_papertown_mom.json1
-rw-r--r--db/_generated/npc/spyder_papertown_silver.json1
-rw-r--r--db/_generated/npc/spyder_rockittenfrolicking.json1
-rw-r--r--db/_generated/npc/spyder_route1_bjorn.json1
-rw-r--r--db/_generated/npc/spyder_route2_billie.json1
-rw-r--r--db/_generated/npc/spyder_route2_graf.json1
-rw-r--r--db/_generated/npc/spyder_route2_marion.json1
-rw-r--r--db/_generated/npc/spyder_route2_roddick.json1
-rw-r--r--db/_generated/npc/spyder_route3_connor.json1
-rw-r--r--db/_generated/npc/spyder_route3_curie.json1
-rw-r--r--db/_generated/npc/spyder_route3_novak.json1
-rw-r--r--db/_generated/npc/spyder_route3_qqq.json1
-rw-r--r--db/_generated/npc/spyder_route3_roxby.json1
-rw-r--r--db/_generated/npc/spyder_route3_ryland.json1
-rw-r--r--db/_generated/npc/spyder_route3_surat.json1
-rw-r--r--db/_generated/npc/spyder_route3_twig.json1
-rw-r--r--db/_generated/npc/spyder_route3_wanda.json1
-rw-r--r--db/_generated/npc/spyder_route3_weaver.json1
-rw-r--r--db/_generated/npc/spyder_route3_zoolander.json1
-rw-r--r--db/_generated/npc/spyder_route4_beck.json1
-rw-r--r--db/_generated/npc/spyder_route4_boost.json1
-rw-r--r--db/_generated/npc/spyder_route4_marshall.json1
-rw-r--r--db/_generated/npc/spyder_route4_rincewind.json1
-rw-r--r--db/_generated/npc/spyder_route4_roger.json1
-rw-r--r--db/_generated/npc/spyder_route4_rosamund.json1
-rw-r--r--db/_generated/npc/spyder_route4_super.json1
-rw-r--r--db/_generated/npc/spyder_route4_wulf.json1
-rw-r--r--db/_generated/npc/spyder_route5_cleo.json1
-rw-r--r--db/_generated/npc/spyder_route5_edith.json1
-rw-r--r--db/_generated/npc/spyder_route5_goliath.json1
-rw-r--r--db/_generated/npc/spyder_route5_hunter.json1
-rw-r--r--db/_generated/npc/spyder_route5_lexia.json1
-rw-r--r--db/_generated/npc/spyder_route5_sara.json1
-rw-r--r--db/_generated/npc/spyder_route5_tryphaena.json1
-rw-r--r--db/_generated/npc/spyder_route6_blair.json1
-rw-r--r--db/_generated/npc/spyder_route6_frances.json1
-rw-r--r--db/_generated/npc/spyder_route6_gunner.json1
-rw-r--r--db/_generated/npc/spyder_route6_maxwell.json1
-rw-r--r--db/_generated/npc/spyder_route6_mungo.json1
-rw-r--r--db/_generated/npc/spyder_route6_orion.json1
-rw-r--r--db/_generated/npc/spyder_route6_ping.json1
-rw-r--r--db/_generated/npc/spyder_route6_richard.json1
-rw-r--r--db/_generated/npc/spyder_route6_rigel.json1
-rw-r--r--db/_generated/npc/spyder_route7_arnaut.json1
-rw-r--r--db/_generated/npc/spyder_route7_arnold.json1
-rw-r--r--db/_generated/npc/spyder_route7_conrad.json1
-rw-r--r--db/_generated/npc/spyder_route7_fritz.json1
-rw-r--r--db/_generated/npc/spyder_route7_hugh.json1
-rw-r--r--db/_generated/npc/spyder_route7_jacopo.json1
-rw-r--r--db/_generated/npc/spyder_route7_manfred.json1
-rw-r--r--db/_generated/npc/spyder_route7_nino.json1
-rw-r--r--db/_generated/npc/spyder_route7_penitent.json1
-rw-r--r--db/_generated/npc/spyder_route7_pia.json1
-rw-r--r--db/_generated/npc/spyder_route7_sordello.json1
-rw-r--r--db/_generated/npc/spyder_route7_statius.json1
-rw-r--r--db/_generated/npc/spyder_route7_sylvester.json1
-rw-r--r--db/_generated/npc/spyder_routea_connie.json1
-rw-r--r--db/_generated/npc/spyder_routea_cureall.json1
-rw-r--r--db/_generated/npc/spyder_routea_dagger.json1
-rw-r--r--db/_generated/npc/spyder_routea_doris.json1
-rw-r--r--db/_generated/npc/spyder_routea_jarod.json1
-rw-r--r--db/_generated/npc/spyder_routea_joe.json1
-rw-r--r--db/_generated/npc/spyder_routea_john.json1
-rw-r--r--db/_generated/npc/spyder_routea_koan.json1
-rw-r--r--db/_generated/npc/spyder_routea_lexi.json1
-rw-r--r--db/_generated/npc/spyder_routea_little.json1
-rw-r--r--db/_generated/npc/spyder_routea_lotu.json1
-rw-r--r--db/_generated/npc/spyder_routea_rosy.json1
-rw-r--r--db/_generated/npc/spyder_routea_super.json1
-rw-r--r--db/_generated/npc/spyder_routea_tea.json1
-rw-r--r--db/_generated/npc/spyder_routea_vince.json1
-rw-r--r--db/_generated/npc/spyder_routeb_calypso.json1
-rw-r--r--db/_generated/npc/spyder_routeb_cytherea.json1
-rw-r--r--db/_generated/npc/spyder_routeb_electra.json1
-rw-r--r--db/_generated/npc/spyder_routeb_nephthys.json1
-rw-r--r--db/_generated/npc/spyder_routeb_sedna.json1
-rw-r--r--db/_generated/npc/spyder_routee_aiolos.json1
-rw-r--r--db/_generated/npc/spyder_routee_calliope.json1
-rw-r--r--db/_generated/npc/spyder_scoop_alyssa.json1
-rw-r--r--db/_generated/npc/spyder_scoop_arachne.json1
-rw-r--r--db/_generated/npc/spyder_scoop_berys.json1
-rw-r--r--db/_generated/npc/spyder_scoop_cochinia.json1
-rw-r--r--db/_generated/npc/spyder_scoop_cochinib.json1
-rw-r--r--db/_generated/npc/spyder_scoop_cochinic.json1
-rw-r--r--db/_generated/npc/spyder_scoop_donald.json1
-rw-r--r--db/_generated/npc/spyder_scoop_landrace.json1
-rw-r--r--db/_generated/npc/spyder_scoop_lanth.json1
-rw-r--r--db/_generated/npc/spyder_scoop_lapinoua.json1
-rw-r--r--db/_generated/npc/spyder_scoop_lapinoub.json1
-rw-r--r--db/_generated/npc/spyder_scoop_lapinouc.json1
-rw-r--r--db/_generated/npc/spyder_scoop_nash.json1
-rw-r--r--db/_generated/npc/spyder_scoop_orba.json1
-rw-r--r--db/_generated/npc/spyder_scoop_paine.json1
-rw-r--r--db/_generated/npc/spyder_scoop_reese.json1
-rw-r--r--db/_generated/npc/spyder_scoop_rubid.json1
-rw-r--r--db/_generated/npc/spyder_scoop_taggart.json1
-rw-r--r--db/_generated/npc/spyder_scoop_turner.json1
-rw-r--r--db/_generated/npc/spyder_scoop_weaver.json1
-rw-r--r--db/_generated/npc/spyder_screen.json1
-rw-r--r--db/_generated/npc/spyder_searoutec_alpha.json1
-rw-r--r--db/_generated/npc/spyder_searoutec_beech.json1
-rw-r--r--db/_generated/npc/spyder_searoutec_beta.json1
-rw-r--r--db/_generated/npc/spyder_searoutec_carstair.json1
-rw-r--r--db/_generated/npc/spyder_searoutec_gil.json1
-rw-r--r--db/_generated/npc/spyder_searoutec_leek.json1
-rw-r--r--db/_generated/npc/spyder_searoutec_maurice.json1
-rw-r--r--db/_generated/npc/spyder_searoutec_more.json1
-rw-r--r--db/_generated/npc/spyder_searoutec_nigel.json1
-rw-r--r--db/_generated/npc/spyder_searoutec_river.json1
-rw-r--r--db/_generated/npc/spyder_searoutec_rutherford.json1
-rw-r--r--db/_generated/npc/spyder_searoutec_sandy.json1
-rw-r--r--db/_generated/npc/spyder_searoutec_stafford.json1
-rw-r--r--db/_generated/npc/spyder_searoutec_wade.json1
-rw-r--r--db/_generated/npc/spyder_shopassistant.json1
-rw-r--r--db/_generated/npc/spyder_statue_blue.json1
-rw-r--r--db/_generated/npc/spyder_statue_green.json1
-rw-r--r--db/_generated/npc/spyder_statue_grey.json1
-rw-r--r--db/_generated/npc/spyder_statue_orange.json1
-rw-r--r--db/_generated/npc/spyder_statue_red.json1
-rw-r--r--db/_generated/npc/spyder_timbercafe_grady.json1
-rw-r--r--db/_generated/npc/spyder_timbercenter_luciana.json1
-rw-r--r--db/_generated/npc/spyder_timberhouse_zed.json1
-rw-r--r--db/_generated/npc/spyder_timberscoop_leandro.json1
-rw-r--r--db/_generated/npc/spyder_top_jackson.json1
-rw-r--r--db/_generated/npc/spyder_top_lenny.json1
-rw-r--r--db/_generated/npc/spyder_top_maura.json1
-rw-r--r--db/_generated/npc/spyder_top_mickey.json1
-rw-r--r--db/_generated/npc/spyder_top_penelope.json1
-rw-r--r--db/_generated/npc/spyder_top_ricardo.json1
-rw-r--r--db/_generated/npc/spyder_top_russell.json1
-rw-r--r--db/_generated/npc/spyder_tunnelb_beryll.json1
-rw-r--r--db/_generated/npc/spyder_tunnelb_greta.json1
-rw-r--r--db/_generated/npc/spyder_tunnelb_iris.json1
-rw-r--r--db/_generated/npc/spyder_tunnelb_lute.json1
-rw-r--r--db/_generated/npc/spyder_tunnelb_meitner.json1
-rw-r--r--db/_generated/npc/spyder_tunnelb_rhincus.json1
-rw-r--r--db/_generated/npc/spyder_tunnelb_shammer.json1
-rw-r--r--db/_generated/npc/spyder_tunnelb_tommy.json1
-rw-r--r--db/_generated/npc/spyder_tuxeball.json1
-rw-r--r--db/_generated/npc/spyder_tuxeball_green.json1
-rw-r--r--db/_generated/npc/spyder_tuxeball_red.json1
-rw-r--r--db/_generated/npc/spyder_tuxeball_violet.json1
-rw-r--r--db/_generated/npc/spyder_tuxeball_yellow.json1
-rw-r--r--db/_generated/npc/spyder_volcoli.json1
-rw-r--r--db/_generated/npc/spyder_walled_alexander.json1
-rw-r--r--db/_generated/npc/spyder_walled_astor.json1
-rw-r--r--db/_generated/npc/spyder_walled_augustus.json1
-rw-r--r--db/_generated/npc/spyder_walled_carnegie.json1
-rw-r--r--db/_generated/npc/spyder_walled_crassus.json1
-rw-r--r--db/_generated/npc/spyder_walled_ford.json1
-rw-r--r--db/_generated/npc/spyder_walled_fugger.json1
-rw-r--r--db/_generated/npc/spyder_walled_girard.json1
-rw-r--r--db/_generated/npc/spyder_walled_midas.json1
-rw-r--r--db/_generated/npc/spyder_walled_musa.json1
-rw-r--r--db/_generated/npc/spyder_walled_osman.json1
-rw-r--r--db/_generated/npc/spyder_walled_rufus.json1
-rw-r--r--db/_generated/npc/spyder_walled_vanderbilt.json1
-rw-r--r--db/_generated/npc/spyder_wayfarer1_addy.json1
-rw-r--r--db/_generated/npc/spyder_wayfarer1_bismuth.json1
-rw-r--r--db/_generated/npc/spyder_wayfarer1_bravo.json1
-rw-r--r--db/_generated/npc/spyder_wayfarer1_james.json1
-rw-r--r--db/_generated/npc/spyder_wayfarer1_jessie.json1
-rw-r--r--db/_generated/npc/spyder_wayfarer1_morningstar.json1
-rw-r--r--db/_generated/npc/spyder_wayfarer1_morton.json1
-rw-r--r--db/_generated/npc/spyder_wayfarer1_nightshade.json1
-rw-r--r--db/_generated/npc/spyder_wayfarer1_norm.json1
-rw-r--r--db/_generated/npc/spyder_wayfarer1_ratcher.json1
-rw-r--r--db/_generated/npc/spyder_wayfarer1_victor.json1
-rw-r--r--db/_generated/npc/spyder_wayfarer1_wes.json1
-rw-r--r--db/_generated/npc/spyder_wayfarer2_gae.json1
-rw-r--r--db/_generated/npc/spyder_wayfarer2_kim.json1
-rw-r--r--db/_generated/npc/taba_greeter.json1
-rw-r--r--db/_generated/npc/taba_house1_husband.json1
-rw-r--r--db/_generated/npc/taba_house1_wife.json1
-rw-r--r--db/_generated/npc/taba_house2_owner.json1
-rw-r--r--db/_generated/npc/taba_house2_reader1.json1
-rw-r--r--db/_generated/npc/taba_house2_reader2.json1
-rw-r--r--db/_generated/npc/taba_house3_owner.json1
-rw-r--r--db/_generated/npc/taba_house4_client1.json1
-rw-r--r--db/_generated/npc/taba_house4_client2.json1
-rw-r--r--db/_generated/npc/taba_house4_owner.json1
-rw-r--r--db/_generated/npc/tabanurse.json1
-rw-r--r--db/_generated/npc/tallon.json1
-rw-r--r--db/_generated/npc/timmy.json1
-rw-r--r--db/_generated/npc/tuxeball.json1
-rw-r--r--db/_generated/npc/tuxeball_green.json1
-rw-r--r--db/_generated/npc/tuxeball_red.json1
-rw-r--r--db/_generated/npc/tuxeball_violet.json1
-rw-r--r--db/_generated/npc/tuxeball_yellow.json1
-rw-r--r--db/_generated/npc/tuxemart-keeper.json1
-rw-r--r--db/_generated/npc/tuxemart_keeper.json1
-rw-r--r--db/_generated/npc/xerogrund1.json1
-rw-r--r--db/_generated/npc/xerogrund2.json1
-rw-r--r--db/_generated/npc/xerogrunt1.json1
-rw-r--r--db/_generated/npc/xerogrunt10.json1
-rw-r--r--db/_generated/npc/xerogrunt2.json1
-rw-r--r--db/_generated/npc/xerogrunt3.json1
-rw-r--r--db/_generated/npc/xerogrunt4.json1
-rw-r--r--db/_generated/npc/xerogrunt5.json1
-rw-r--r--db/_generated/npc/xerogrunt6.json1
-rw-r--r--db/_generated/npc/xerogrunt7.json1
-rw-r--r--db/_generated/npc/xerogrunt8.json1
-rw-r--r--db/_generated/npc/xerogrunt9.json1
527 files changed, 527 insertions, 0 deletions
diff --git a/db/_generated/npc/37707_female.json b/db/_generated/npc/37707_female.json
new file mode 100644
index 0000000..c118bbb
--- /dev/null
+++ b/db/_generated/npc/37707_female.json
@@ -0,0 +1 @@
+{"slug":"37707_female","template":[{"sprite_name":"37707_female","combat_front":"heroine","slug":"heroine"}]} \ No newline at end of file
diff --git a/db/_generated/npc/37707_female_missing.json b/db/_generated/npc/37707_female_missing.json
new file mode 100644
index 0000000..46b7bea
--- /dev/null
+++ b/db/_generated/npc/37707_female_missing.json
@@ -0,0 +1 @@
+{"slug":"37707_female_missing","template":[{"sprite_name":"37707_female_missing","combat_front":"heroine","slug":"heroine"}]} \ No newline at end of file
diff --git a/db/_generated/npc/37707_male.json b/db/_generated/npc/37707_male.json
new file mode 100644
index 0000000..a7bcad4
--- /dev/null
+++ b/db/_generated/npc/37707_male.json
@@ -0,0 +1 @@
+{"slug":"37707_male","template":[{"sprite_name":"37707_male","combat_front":"adventurer","slug":"noclass"}]} \ No newline at end of file
diff --git a/db/_generated/npc/37707_male_missing.json b/db/_generated/npc/37707_male_missing.json
new file mode 100644
index 0000000..1c475f9
--- /dev/null
+++ b/db/_generated/npc/37707_male_missing.json
@@ -0,0 +1 @@
+{"slug":"37707_male_missing","template":[{"sprite_name":"37707_male_missing","combat_front":"adventurer","slug":"noclass"}]} \ No newline at end of file
diff --git a/db/_generated/npc/acolyte.json b/db/_generated/npc/acolyte.json
new file mode 100644
index 0000000..14c530d
--- /dev/null
+++ b/db/_generated/npc/acolyte.json
@@ -0,0 +1 @@
+{"slug":"acolyte","template":[{"sprite_name":"disciple","combat_front":"disciple","slug":"disciple"}]} \ No newline at end of file
diff --git a/db/_generated/npc/aeble.json b/db/_generated/npc/aeble.json
new file mode 100644
index 0000000..ea854e2
--- /dev/null
+++ b/db/_generated/npc/aeble.json
@@ -0,0 +1 @@
+{"slug":"aeble","template":[{"sprite_name":"ceo","combat_front":"adventurer","slug":"ceo"}]} \ No newline at end of file
diff --git a/db/_generated/npc/allie.json b/db/_generated/npc/allie.json
new file mode 100644
index 0000000..aabcfef
--- /dev/null
+++ b/db/_generated/npc/allie.json
@@ -0,0 +1 @@
+{"slug":"allie","template":[{"sprite_name":"omnichannelallie","combat_front":"allie_front","slug":"heroine"}]} \ No newline at end of file
diff --git a/db/_generated/npc/bob.json b/db/_generated/npc/bob.json
new file mode 100644
index 0000000..700162a
--- /dev/null
+++ b/db/_generated/npc/bob.json
@@ -0,0 +1 @@
+{"slug":"bob","template":[{"sprite_name":"bob","combat_front":"adventurer","slug":"noclass"}]} \ No newline at end of file
diff --git a/db/_generated/npc/christie.json b/db/_generated/npc/christie.json
new file mode 100644
index 0000000..c4b3bc9
--- /dev/null
+++ b/db/_generated/npc/christie.json
@@ -0,0 +1 @@
+{"slug":"christie","template":[{"sprite_name":"christie","combat_front":"heroine","slug":"heroine"}]} \ No newline at end of file
diff --git a/db/_generated/npc/conworker1.json b/db/_generated/npc/conworker1.json
new file mode 100644
index 0000000..860bbea
--- /dev/null
+++ b/db/_generated/npc/conworker1.json
@@ -0,0 +1 @@
+{"slug":"conworker1","template":[{"sprite_name":"bob","combat_front":"adventurer","slug":"noclass"}]} \ No newline at end of file
diff --git a/db/_generated/npc/conworker2.json b/db/_generated/npc/conworker2.json
new file mode 100644
index 0000000..6622f5a
--- /dev/null
+++ b/db/_generated/npc/conworker2.json
@@ -0,0 +1 @@
+{"slug":"conworker2","template":[{"sprite_name":"bob","combat_front":"adventurer","slug":"noclass"}]} \ No newline at end of file
diff --git a/db/_generated/npc/conworker3.json b/db/_generated/npc/conworker3.json
new file mode 100644
index 0000000..011b6fb
--- /dev/null
+++ b/db/_generated/npc/conworker3.json
@@ -0,0 +1 @@
+{"slug":"conworker3","template":[{"sprite_name":"bob","combat_front":"adventurer","slug":"noclass"}]} \ No newline at end of file
diff --git a/db/_generated/npc/cotton_breeder.json b/db/_generated/npc/cotton_breeder.json
new file mode 100644
index 0000000..bb08bf4
--- /dev/null
+++ b/db/_generated/npc/cotton_breeder.json
@@ -0,0 +1 @@
+{"slug":"cotton_breeder","template":[{"sprite_name":"bob","combat_front":"adventurer","slug":"noclass"}]} \ No newline at end of file
diff --git a/db/_generated/npc/cotton_misa_bro.json b/db/_generated/npc/cotton_misa_bro.json
new file mode 100644
index 0000000..4de0315
--- /dev/null
+++ b/db/_generated/npc/cotton_misa_bro.json
@@ -0,0 +1 @@
+{"slug":"cotton_misa_bro","template":[{"sprite_name":"childactor_fiery","combat_front":"yellowbelt","slug":"childactor"}]} \ No newline at end of file
diff --git a/db/_generated/npc/cotton_misa_gramps.json b/db/_generated/npc/cotton_misa_gramps.json
new file mode 100644
index 0000000..b828bb2
--- /dev/null
+++ b/db/_generated/npc/cotton_misa_gramps.json
@@ -0,0 +1 @@
+{"slug":"cotton_misa_gramps","template":[{"sprite_name":"granny","combat_front":"heroine","slug":"granny"}]} \ No newline at end of file
diff --git a/db/_generated/npc/grace.json b/db/_generated/npc/grace.json
new file mode 100644
index 0000000..8942c69
--- /dev/null
+++ b/db/_generated/npc/grace.json
@@ -0,0 +1 @@
+{"slug":"grace","template":[{"sprite_name":"heroine","combat_front":"heroine","slug":"heroine"}]} \ No newline at end of file
diff --git a/db/_generated/npc/happy_guy.json b/db/_generated/npc/happy_guy.json
new file mode 100644
index 0000000..55c8cba
--- /dev/null
+++ b/db/_generated/npc/happy_guy.json
@@ -0,0 +1 @@
+{"slug":"happy_guy","template":[{"sprite_name":"ceo","combat_front":"adventurer","slug":"ceo"}]} \ No newline at end of file
diff --git a/db/_generated/npc/knight1.json b/db/_generated/npc/knight1.json
new file mode 100644
index 0000000..dff196f
--- /dev/null
+++ b/db/_generated/npc/knight1.json
@@ -0,0 +1 @@
+{"slug":"knight1","template":[{"sprite_name":"knight","combat_front":"knight","slug":"knight"}]} \ No newline at end of file
diff --git a/db/_generated/npc/knight2.json b/db/_generated/npc/knight2.json
new file mode 100644
index 0000000..05609d5
--- /dev/null
+++ b/db/_generated/npc/knight2.json
@@ -0,0 +1 @@
+{"slug":"knight2","template":[{"sprite_name":"knight","combat_front":"knight","slug":"knight"}]} \ No newline at end of file
diff --git a/db/_generated/npc/knight3.json b/db/_generated/npc/knight3.json
new file mode 100644
index 0000000..d17f779
--- /dev/null
+++ b/db/_generated/npc/knight3.json
@@ -0,0 +1 @@
+{"slug":"knight3","template":[{"sprite_name":"knight","combat_front":"knight","slug":"knight"}]} \ No newline at end of file
diff --git a/db/_generated/npc/knight4.json b/db/_generated/npc/knight4.json
new file mode 100644
index 0000000..82f046d
--- /dev/null
+++ b/db/_generated/npc/knight4.json
@@ -0,0 +1 @@
+{"slug":"knight4","template":[{"sprite_name":"knight","combat_front":"knight","slug":"knight"}]} \ No newline at end of file
diff --git a/db/_generated/npc/kyle.json b/db/_generated/npc/kyle.json
new file mode 100644
index 0000000..17ffb68
--- /dev/null
+++ b/db/_generated/npc/kyle.json
@@ -0,0 +1 @@
+{"slug":"kyle","template":[{"sprite_name":"cooldude","combat_front":"cooldude","slug":"cooldude"}]} \ No newline at end of file
diff --git a/db/_generated/npc/liela.json b/db/_generated/npc/liela.json
new file mode 100644
index 0000000..1c47007
--- /dev/null
+++ b/db/_generated/npc/liela.json
@@ -0,0 +1 @@
+{"slug":"liela","template":[{"sprite_name":"heroine","combat_front":"heroine","slug":"heroine"}]} \ No newline at end of file
diff --git a/db/_generated/npc/maple_girl.json b/db/_generated/npc/maple_girl.json
new file mode 100644
index 0000000..1a47138
--- /dev/null
+++ b/db/_generated/npc/maple_girl.json
@@ -0,0 +1 @@
+{"slug":"maple_girl","template":[{"sprite_name":"girl1","combat_front":"heroine","slug":"heroine"}],"monsters":[{"name":"Snowball","slug":"bamboon","level":5,"money_mod":10,"exp_req_mod":27,"gender":"male"}]} \ No newline at end of file
diff --git a/db/_generated/npc/marissa.json b/db/_generated/npc/marissa.json
new file mode 100644
index 0000000..339b00d
--- /dev/null
+++ b/db/_generated/npc/marissa.json
@@ -0,0 +1 @@
+{"slug":"marissa","template":[{"sprite_name":"girl1","combat_front":"heroine","slug":"heroine"}]} \ No newline at end of file
diff --git a/db/_generated/npc/misa.json b/db/_generated/npc/misa.json
new file mode 100644
index 0000000..67160e0
--- /dev/null
+++ b/db/_generated/npc/misa.json
@@ -0,0 +1 @@
+{"slug":"misa","template":[{"sprite_name":"fashionista","combat_front":"heroine","slug":"heroine"}]} \ No newline at end of file
diff --git a/db/_generated/npc/npc_mom.json b/db/_generated/npc/npc_mom.json
new file mode 100644
index 0000000..30cd2bd
--- /dev/null
+++ b/db/_generated/npc/npc_mom.json
@@ -0,0 +1 @@
+{"slug":"npc_mom","template":[{"sprite_name":"girl1","combat_front":"heroine","slug":"heroine"}]} \ No newline at end of file
diff --git a/db/_generated/npc/npc_red.json b/db/_generated/npc/npc_red.json
new file mode 100644
index 0000000..b4c97ca
--- /dev/null
+++ b/db/_generated/npc/npc_red.json
@@ -0,0 +1 @@
+{"slug":"npc_red","template":[{"sprite_name":"adventurer","combat_front":"adventurer","slug":"adventurer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/npc_wife.json b/db/_generated/npc/npc_wife.json
new file mode 100644
index 0000000..d695e15
--- /dev/null
+++ b/db/_generated/npc/npc_wife.json
@@ -0,0 +1 @@
+{"slug":"npc_wife","template":[{"sprite_name":"girl1","combat_front":"heroine","slug":"heroine"}]} \ No newline at end of file
diff --git a/db/_generated/npc/nurse1.json b/db/_generated/npc/nurse1.json
new file mode 100644
index 0000000..46ec074
--- /dev/null
+++ b/db/_generated/npc/nurse1.json
@@ -0,0 +1 @@
+{"slug":"nurse1","template":[{"sprite_name":"nurse","combat_front":"nurse","slug":"heroine"}]} \ No newline at end of file
diff --git a/db/_generated/npc/nurse2.json b/db/_generated/npc/nurse2.json
new file mode 100644
index 0000000..19dbe2d
--- /dev/null
+++ b/db/_generated/npc/nurse2.json
@@ -0,0 +1 @@
+{"slug":"nurse2","template":[{"sprite_name":"nurse","combat_front":"nurse","slug":"heroine"}]} \ No newline at end of file
diff --git a/db/_generated/npc/omnichannel-ceo.json b/db/_generated/npc/omnichannel-ceo.json
new file mode 100644
index 0000000..1618c13
--- /dev/null
+++ b/db/_generated/npc/omnichannel-ceo.json
@@ -0,0 +1 @@
+{"slug":"omnichannel-ceo","template":[{"sprite_name":"ceo"}]} \ No newline at end of file
diff --git a/db/_generated/npc/omnigrunt.json b/db/_generated/npc/omnigrunt.json
new file mode 100644
index 0000000..66ec7e2
--- /dev/null
+++ b/db/_generated/npc/omnigrunt.json
@@ -0,0 +1 @@
+{"slug":"omnigrunt","template":[{"sprite_name":"knight","combat_front":"knight","slug":"knight"}]} \ No newline at end of file
diff --git a/db/_generated/npc/omnigrunt10.json b/db/_generated/npc/omnigrunt10.json
new file mode 100644
index 0000000..d525a68
--- /dev/null
+++ b/db/_generated/npc/omnigrunt10.json
@@ -0,0 +1 @@
+{"slug":"omnigrunt10","template":[{"sprite_name":"knight","combat_front":"knight","slug":"knight"}]} \ No newline at end of file
diff --git a/db/_generated/npc/omnigrunt2.json b/db/_generated/npc/omnigrunt2.json
new file mode 100644
index 0000000..0966504
--- /dev/null
+++ b/db/_generated/npc/omnigrunt2.json
@@ -0,0 +1 @@
+{"slug":"omnigrunt2","template":[{"sprite_name":"knight","combat_front":"knight","slug":"knight"}]} \ No newline at end of file
diff --git a/db/_generated/npc/omnigrunt3.json b/db/_generated/npc/omnigrunt3.json
new file mode 100644
index 0000000..94c13f5
--- /dev/null
+++ b/db/_generated/npc/omnigrunt3.json
@@ -0,0 +1 @@
+{"slug":"omnigrunt3","template":[{"sprite_name":"knight","combat_front":"knight","slug":"knight"}]} \ No newline at end of file
diff --git a/db/_generated/npc/omnigrunt4.json b/db/_generated/npc/omnigrunt4.json
new file mode 100644
index 0000000..e413aca
--- /dev/null
+++ b/db/_generated/npc/omnigrunt4.json
@@ -0,0 +1 @@
+{"slug":"omnigrunt4","template":[{"sprite_name":"knight","combat_front":"knight","slug":"knight"}]} \ No newline at end of file
diff --git a/db/_generated/npc/omnigrunt5.json b/db/_generated/npc/omnigrunt5.json
new file mode 100644
index 0000000..956d930
--- /dev/null
+++ b/db/_generated/npc/omnigrunt5.json
@@ -0,0 +1 @@
+{"slug":"omnigrunt5","template":[{"sprite_name":"knight","combat_front":"knight","slug":"knight"}]} \ No newline at end of file
diff --git a/db/_generated/npc/omnigrunt6.json b/db/_generated/npc/omnigrunt6.json
new file mode 100644
index 0000000..b2efab4
--- /dev/null
+++ b/db/_generated/npc/omnigrunt6.json
@@ -0,0 +1 @@
+{"slug":"omnigrunt6","template":[{"sprite_name":"knight","combat_front":"knight","slug":"knight"}]} \ No newline at end of file
diff --git a/db/_generated/npc/omnigrunt7.json b/db/_generated/npc/omnigrunt7.json
new file mode 100644
index 0000000..4e2bbf6
--- /dev/null
+++ b/db/_generated/npc/omnigrunt7.json
@@ -0,0 +1 @@
+{"slug":"omnigrunt7","template":[{"sprite_name":"knight","combat_front":"knight","slug":"knight"}]} \ No newline at end of file
diff --git a/db/_generated/npc/omnigrunt8.json b/db/_generated/npc/omnigrunt8.json
new file mode 100644
index 0000000..e4ceac6
--- /dev/null
+++ b/db/_generated/npc/omnigrunt8.json
@@ -0,0 +1 @@
+{"slug":"omnigrunt8","template":[{"sprite_name":"knight","combat_front":"knight","slug":"knight"}]} \ No newline at end of file
diff --git a/db/_generated/npc/omnigrunt9.json b/db/_generated/npc/omnigrunt9.json
new file mode 100644
index 0000000..3aff294
--- /dev/null
+++ b/db/_generated/npc/omnigrunt9.json
@@ -0,0 +1 @@
+{"slug":"omnigrunt9","template":[{"sprite_name":"knight","combat_front":"knight","slug":"knight"}]} \ No newline at end of file
diff --git a/db/_generated/npc/p_five.json b/db/_generated/npc/p_five.json
new file mode 100644
index 0000000..11e1f65
--- /dev/null
+++ b/db/_generated/npc/p_five.json
@@ -0,0 +1 @@
+{"slug":"p_five","template":[{"sprite_name":"p_five","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/p_four.json b/db/_generated/npc/p_four.json
new file mode 100644
index 0000000..737a9b0
--- /dev/null
+++ b/db/_generated/npc/p_four.json
@@ -0,0 +1 @@
+{"slug":"p_four","template":[{"sprite_name":"p_four","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/p_one.json b/db/_generated/npc/p_one.json
new file mode 100644
index 0000000..4ddb886
--- /dev/null
+++ b/db/_generated/npc/p_one.json
@@ -0,0 +1 @@
+{"slug":"p_one","template":[{"sprite_name":"p_one","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/p_three.json b/db/_generated/npc/p_three.json
new file mode 100644
index 0000000..dce4d83
--- /dev/null
+++ b/db/_generated/npc/p_three.json
@@ -0,0 +1 @@
+{"slug":"p_three","template":[{"sprite_name":"p_three","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/p_two.json b/db/_generated/npc/p_two.json
new file mode 100644
index 0000000..a63ca6a
--- /dev/null
+++ b/db/_generated/npc/p_two.json
@@ -0,0 +1 @@
+{"slug":"p_two","template":[{"sprite_name":"p_two","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/penguin.json b/db/_generated/npc/penguin.json
new file mode 100644
index 0000000..013b109
--- /dev/null
+++ b/db/_generated/npc/penguin.json
@@ -0,0 +1 @@
+{"slug":"penguin","template":[{"sprite_name":"penguin","combat_front":"adventurer","slug":"noclass"}]} \ No newline at end of file
diff --git a/db/_generated/npc/postboy.json b/db/_generated/npc/postboy.json
new file mode 100644
index 0000000..98cc466
--- /dev/null
+++ b/db/_generated/npc/postboy.json
@@ -0,0 +1 @@
+{"slug":"postboy","template":[{"sprite_name":"postboy","combat_front":"adventurer","slug":"postboy"}]} \ No newline at end of file
diff --git a/db/_generated/npc/professor.json b/db/_generated/npc/professor.json
new file mode 100644
index 0000000..c178a72
--- /dev/null
+++ b/db/_generated/npc/professor.json
@@ -0,0 +1 @@
+{"slug":"professor","forfeit":false,"template":[{"sprite_name":"professor","combat_front":"professor","slug":"professor"}]} \ No newline at end of file
diff --git a/db/_generated/npc/random_encounter_dummy.json b/db/_generated/npc/random_encounter_dummy.json
new file mode 100644
index 0000000..6477d99
--- /dev/null
+++ b/db/_generated/npc/random_encounter_dummy.json
@@ -0,0 +1 @@
+{"slug":"random_encounter_dummy","template":[{"sprite_name":"girl1","combat_front":"heroine","slug":"heroine"}]} \ No newline at end of file
diff --git a/db/_generated/npc/rock.json b/db/_generated/npc/rock.json
new file mode 100644
index 0000000..a2094a2
--- /dev/null
+++ b/db/_generated/npc/rock.json
@@ -0,0 +1 @@
+{"slug":"rock","template":[{"sprite_name":"boulder","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/shady_guy.json b/db/_generated/npc/shady_guy.json
new file mode 100644
index 0000000..7f85db8
--- /dev/null
+++ b/db/_generated/npc/shady_guy.json
@@ -0,0 +1 @@
+{"slug":"shady_guy","template":[{"sprite_name":"ninja","combat_front":"ninja","slug":"ninja"}]} \ No newline at end of file
diff --git a/db/_generated/npc/speck.json b/db/_generated/npc/speck.json
new file mode 100644
index 0000000..2350b33
--- /dev/null
+++ b/db/_generated/npc/speck.json
@@ -0,0 +1 @@
+{"slug":"speck","template":[{"sprite_name":"beachcomber","combat_front":"beachgoer","slug":"beachgoer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/sphalian_barmaid.json b/db/_generated/npc/sphalian_barmaid.json
new file mode 100644
index 0000000..f26498e
--- /dev/null
+++ b/db/_generated/npc/sphalian_barmaid.json
@@ -0,0 +1 @@
+{"slug":"sphalian_barmaid","template":[{"sprite_name":"barmaid_red","combat_front":"barmaid","slug":"barmaid"}]} \ No newline at end of file
diff --git a/db/_generated/npc/sphalian_granny.json b/db/_generated/npc/sphalian_granny.json
new file mode 100644
index 0000000..67008bc
--- /dev/null
+++ b/db/_generated/npc/sphalian_granny.json
@@ -0,0 +1 @@
+{"slug":"sphalian_granny","template":[{"sprite_name":"granny","combat_front":"adventurer","slug":"granny"}]} \ No newline at end of file
diff --git a/db/_generated/npc/sphalian_homemaker.json b/db/_generated/npc/sphalian_homemaker.json
new file mode 100644
index 0000000..ad5340a
--- /dev/null
+++ b/db/_generated/npc/sphalian_homemaker.json
@@ -0,0 +1 @@
+{"slug":"sphalian_homemaker","template":[{"sprite_name":"homemaker_fiery","combat_front":"heroine","slug":"homemaker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/sphalian_magician_fiery.json b/db/_generated/npc/sphalian_magician_fiery.json
new file mode 100644
index 0000000..f89a4c4
--- /dev/null
+++ b/db/_generated/npc/sphalian_magician_fiery.json
@@ -0,0 +1 @@
+{"slug":"sphalian_magician_fiery","template":[{"sprite_name":"magician_fiery","combat_front":"magician","slug":"magician"}]} \ No newline at end of file
diff --git a/db/_generated/npc/sphalian_maniac_green.json b/db/_generated/npc/sphalian_maniac_green.json
new file mode 100644
index 0000000..2c5635c
--- /dev/null
+++ b/db/_generated/npc/sphalian_maniac_green.json
@@ -0,0 +1 @@
+{"slug":"sphalian_maniac_green","template":[{"sprite_name":"maniac_green","combat_front":"adventurer","slug":"maniac"}]} \ No newline at end of file
diff --git a/db/_generated/npc/sphalian_monk_orange.json b/db/_generated/npc/sphalian_monk_orange.json
new file mode 100644
index 0000000..f345311
--- /dev/null
+++ b/db/_generated/npc/sphalian_monk_orange.json
@@ -0,0 +1 @@
+{"slug":"sphalian_monk_orange","template":[{"sprite_name":"monk_orange","combat_front":"monk","slug":"monk"}]} \ No newline at end of file
diff --git a/db/_generated/npc/sphalian_nurse.json b/db/_generated/npc/sphalian_nurse.json
new file mode 100644
index 0000000..963816f
--- /dev/null
+++ b/db/_generated/npc/sphalian_nurse.json
@@ -0,0 +1 @@
+{"slug":"sphalian_nurse","template":[{"sprite_name":"nurse","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/sphalian_shopkeeper.json b/db/_generated/npc/sphalian_shopkeeper.json
new file mode 100644
index 0000000..0f7a77f
--- /dev/null
+++ b/db/_generated/npc/sphalian_shopkeeper.json
@@ -0,0 +1 @@
+{"slug":"sphalian_shopkeeper","template":[{"sprite_name":"shopassist_black","combat_front":"shopassist","slug":"shopassistant"}]} \ No newline at end of file
diff --git a/db/_generated/npc/sphalian_tennisplayer.json b/db/_generated/npc/sphalian_tennisplayer.json
new file mode 100644
index 0000000..e746997
--- /dev/null
+++ b/db/_generated/npc/sphalian_tennisplayer.json
@@ -0,0 +1 @@
+{"slug":"sphalian_tennisplayer","template":[{"sprite_name":"tennisplayer","combat_front":"tennisplayer","slug":"tennisplayer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_basement_bobby.json b/db/_generated/npc/spyder_basement_bobby.json
new file mode 100644
index 0000000..5c134b1
--- /dev/null
+++ b/db/_generated/npc/spyder_basement_bobby.json
@@ -0,0 +1 @@
+{"slug":"spyder_basement_bobby","template":[{"sprite_name":"postboy","combat_front":"rocker","slug":"postboy"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_basement_catholi.json b/db/_generated/npc/spyder_basement_catholi.json
new file mode 100644
index 0000000..05faaf2
--- /dev/null
+++ b/db/_generated/npc/spyder_basement_catholi.json
@@ -0,0 +1 @@
+{"slug":"spyder_basement_catholi","template":[{"sprite_name":"disciple","combat_front":"healer","slug":"healer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_basement_coralli.json b/db/_generated/npc/spyder_basement_coralli.json
new file mode 100644
index 0000000..27844b0
--- /dev/null
+++ b/db/_generated/npc/spyder_basement_coralli.json
@@ -0,0 +1 @@
+{"slug":"spyder_basement_coralli","template":[{"sprite_name":"barmaid_blonde","combat_front":"dancer","slug":"dancer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_basement_flick.json b/db/_generated/npc/spyder_basement_flick.json
new file mode 100644
index 0000000..1b08a43
--- /dev/null
+++ b/db/_generated/npc/spyder_basement_flick.json
@@ -0,0 +1 @@
+{"slug":"spyder_basement_flick","template":[{"sprite_name":"riverboatcaptain","combat_front":"enforcer_rookie","slug":"riverboatcaptain"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_basement_garret.json b/db/_generated/npc/spyder_basement_garret.json
new file mode 100644
index 0000000..02a2a67
--- /dev/null
+++ b/db/_generated/npc/spyder_basement_garret.json
@@ -0,0 +1 @@
+{"slug":"spyder_basement_garret","template":[{"sprite_name":"rogue_green","combat_front":"rogue","slug":"rogue"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_basement_josephine.json b/db/_generated/npc/spyder_basement_josephine.json
new file mode 100644
index 0000000..b2a5e43
--- /dev/null
+++ b/db/_generated/npc/spyder_basement_josephine.json
@@ -0,0 +1 @@
+{"slug":"spyder_basement_josephine","template":[{"sprite_name":"disciple","combat_front":"healer","slug":"healer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_basement_josh.json b/db/_generated/npc/spyder_basement_josh.json
new file mode 100644
index 0000000..cf01bb4
--- /dev/null
+++ b/db/_generated/npc/spyder_basement_josh.json
@@ -0,0 +1 @@
+{"slug":"spyder_basement_josh","template":[{"sprite_name":"boss_orange","combat_front":"baller","slug":"baller"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_basement_roger.json b/db/_generated/npc/spyder_basement_roger.json
new file mode 100644
index 0000000..ddbe796
--- /dev/null
+++ b/db/_generated/npc/spyder_basement_roger.json
@@ -0,0 +1 @@
+{"slug":"spyder_basement_roger","template":[{"sprite_name":"tennisplayer_lapi","combat_front":"tennisplayer","slug":"tennisplayer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_billie.json b/db/_generated/npc/spyder_billie.json
new file mode 100644
index 0000000..dd0f863
--- /dev/null
+++ b/db/_generated/npc/spyder_billie.json
@@ -0,0 +1 @@
+{"slug":"spyder_billie","forfeit":false,"template":[{"sprite_name":"fashionista","combat_front":"fashionista","slug":"fashionista"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_boulder.json b/db/_generated/npc/spyder_boulder.json
new file mode 100644
index 0000000..13e45c1
--- /dev/null
+++ b/db/_generated/npc/spyder_boulder.json
@@ -0,0 +1 @@
+{"slug":"spyder_boulder","template":[{"sprite_name":"boulder","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_box_goldpass.json b/db/_generated/npc/spyder_box_goldpass.json
new file mode 100644
index 0000000..6f223e6
--- /dev/null
+++ b/db/_generated/npc/spyder_box_goldpass.json
@@ -0,0 +1 @@
+{"slug":"spyder_box_goldpass","template":[{"sprite_name":"box","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_candy_eliane.json b/db/_generated/npc/spyder_candy_eliane.json
new file mode 100644
index 0000000..b8eb9d5
--- /dev/null
+++ b/db/_generated/npc/spyder_candy_eliane.json
@@ -0,0 +1 @@
+{"slug":"spyder_candy_eliane","template":[{"sprite_name":"florist_fiery","combat_front":"florist","slug":"florist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_candy_henrik.json b/db/_generated/npc/spyder_candy_henrik.json
new file mode 100644
index 0000000..00ead3d
--- /dev/null
+++ b/db/_generated/npc/spyder_candy_henrik.json
@@ -0,0 +1 @@
+{"slug":"spyder_candy_henrik","template":[{"sprite_name":"knight_red","combat_front":"enforcer_rookie","slug":"enforcer_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_candycafe_nora.json b/db/_generated/npc/spyder_candycafe_nora.json
new file mode 100644
index 0000000..9a7a508
--- /dev/null
+++ b/db/_generated/npc/spyder_candycafe_nora.json
@@ -0,0 +1 @@
+{"slug":"spyder_candycafe_nora","template":[{"sprite_name":"barmaid_red","combat_front":"barmaid","slug":"barmaid"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_candycenter_diamond.json b/db/_generated/npc/spyder_candycenter_diamond.json
new file mode 100644
index 0000000..693221e
--- /dev/null
+++ b/db/_generated/npc/spyder_candycenter_diamond.json
@@ -0,0 +1 @@
+{"slug":"spyder_candycenter_diamond","template":[{"sprite_name":"nurse","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_candyhouse1_sawyer.json b/db/_generated/npc/spyder_candyhouse1_sawyer.json
new file mode 100644
index 0000000..92f22ea
--- /dev/null
+++ b/db/_generated/npc/spyder_candyhouse1_sawyer.json
@@ -0,0 +1 @@
+{"slug":"spyder_candyhouse1_sawyer","template":[{"sprite_name":"maniac_yellow","combat_front":"adventurer","slug":"maniac"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_candyhouse1_tillie.json b/db/_generated/npc/spyder_candyhouse1_tillie.json
new file mode 100644
index 0000000..a6d1807
--- /dev/null
+++ b/db/_generated/npc/spyder_candyhouse1_tillie.json
@@ -0,0 +1 @@
+{"slug":"spyder_candyhouse1_tillie","template":[{"sprite_name":"picnicker","combat_front":"picnicker","slug":"picnicker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_candyhouse2_barney.json b/db/_generated/npc/spyder_candyhouse2_barney.json
new file mode 100644
index 0000000..273474b
--- /dev/null
+++ b/db/_generated/npc/spyder_candyhouse2_barney.json
@@ -0,0 +1 @@
+{"slug":"spyder_candyhouse2_barney","template":[{"sprite_name":"riverboatcaptain","combat_front":"enforcer_rookie","slug":"riverboatcaptain"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_candyhouse2_indiana.json b/db/_generated/npc/spyder_candyhouse2_indiana.json
new file mode 100644
index 0000000..10f7f76
--- /dev/null
+++ b/db/_generated/npc/spyder_candyhouse2_indiana.json
@@ -0,0 +1 @@
+{"slug":"spyder_candyhouse2_indiana","template":[{"sprite_name":"professor_green","combat_front":"professor","slug":"professor"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_candyhouse3_joanie.json b/db/_generated/npc/spyder_candyhouse3_joanie.json
new file mode 100644
index 0000000..0d32f91
--- /dev/null
+++ b/db/_generated/npc/spyder_candyhouse3_joanie.json
@@ -0,0 +1 @@
+{"slug":"spyder_candyhouse3_joanie","template":[{"sprite_name":"catgirl","combat_front":"catgirl","slug":"catgirl"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_candyscoop_clint.json b/db/_generated/npc/spyder_candyscoop_clint.json
new file mode 100644
index 0000000..36adbb5
--- /dev/null
+++ b/db/_generated/npc/spyder_candyscoop_clint.json
@@ -0,0 +1 @@
+{"slug":"spyder_candyscoop_clint","template":[{"sprite_name":"shopkeeper","combat_front":"adventurer","slug":"shopkeeper"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_captain.json b/db/_generated/npc/spyder_captain.json
new file mode 100644
index 0000000..df3e370
--- /dev/null
+++ b/db/_generated/npc/spyder_captain.json
@@ -0,0 +1 @@
+{"slug":"spyder_captain","template":[{"sprite_name":"riverboatcaptain","combat_front":"enforcer_rookie","slug":"riverboatcaptain"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_citypark_bobette.json b/db/_generated/npc/spyder_citypark_bobette.json
new file mode 100644
index 0000000..f25c734
--- /dev/null
+++ b/db/_generated/npc/spyder_citypark_bobette.json
@@ -0,0 +1 @@
+{"slug":"spyder_citypark_bobette","template":[{"sprite_name":"catgirl_green","combat_front":"catgirl","slug":"catgirl"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_citypark_cd1.json b/db/_generated/npc/spyder_citypark_cd1.json
new file mode 100644
index 0000000..966e34f
--- /dev/null
+++ b/db/_generated/npc/spyder_citypark_cd1.json
@@ -0,0 +1 @@
+{"slug":"spyder_citypark_cd1","template":[{"sprite_name":"box","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_citypark_cd2.json b/db/_generated/npc/spyder_citypark_cd2.json
new file mode 100644
index 0000000..8dd7337
--- /dev/null
+++ b/db/_generated/npc/spyder_citypark_cd2.json
@@ -0,0 +1 @@
+{"slug":"spyder_citypark_cd2","template":[{"sprite_name":"box","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_citypark_edith.json b/db/_generated/npc/spyder_citypark_edith.json
new file mode 100644
index 0000000..ed0afed
--- /dev/null
+++ b/db/_generated/npc/spyder_citypark_edith.json
@@ -0,0 +1 @@
+{"slug":"spyder_citypark_edith","template":[{"sprite_name":"picnicker","combat_front":"picnicker","slug":"picnicker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_citypark_florist.json b/db/_generated/npc/spyder_citypark_florist.json
new file mode 100644
index 0000000..67aee53
--- /dev/null
+++ b/db/_generated/npc/spyder_citypark_florist.json
@@ -0,0 +1 @@
+{"slug":"spyder_citypark_florist","template":[{"sprite_name":"florist_fiery","combat_front":"florist","slug":"florist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_citypark_frances.json b/db/_generated/npc/spyder_citypark_frances.json
new file mode 100644
index 0000000..52b5513
--- /dev/null
+++ b/db/_generated/npc/spyder_citypark_frances.json
@@ -0,0 +1 @@
+{"slug":"spyder_citypark_frances","template":[{"sprite_name":"florist_black","combat_front":"florist","slug":"florist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_citypark_mack.json b/db/_generated/npc/spyder_citypark_mack.json
new file mode 100644
index 0000000..ea109d5
--- /dev/null
+++ b/db/_generated/npc/spyder_citypark_mack.json
@@ -0,0 +1 @@
+{"slug":"spyder_citypark_mack","template":[{"sprite_name":"maniac_green","combat_front":"adventurer","slug":"maniac"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_citypark_magdalene.json b/db/_generated/npc/spyder_citypark_magdalene.json
new file mode 100644
index 0000000..85cf207
--- /dev/null
+++ b/db/_generated/npc/spyder_citypark_magdalene.json
@@ -0,0 +1 @@
+{"slug":"spyder_citypark_magdalene","template":[{"sprite_name":"granny","combat_front":"adventurer","slug":"granny"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_citypark_potion1.json b/db/_generated/npc/spyder_citypark_potion1.json
new file mode 100644
index 0000000..32ff482
--- /dev/null
+++ b/db/_generated/npc/spyder_citypark_potion1.json
@@ -0,0 +1 @@
+{"slug":"spyder_citypark_potion1","template":[{"sprite_name":"box","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_citypark_potion2.json b/db/_generated/npc/spyder_citypark_potion2.json
new file mode 100644
index 0000000..1a3e350
--- /dev/null
+++ b/db/_generated/npc/spyder_citypark_potion2.json
@@ -0,0 +1 @@
+{"slug":"spyder_citypark_potion2","template":[{"sprite_name":"box","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_citypark_prue.json b/db/_generated/npc/spyder_citypark_prue.json
new file mode 100644
index 0000000..b9951c0
--- /dev/null
+++ b/db/_generated/npc/spyder_citypark_prue.json
@@ -0,0 +1 @@
+{"slug":"spyder_citypark_prue","template":[{"sprite_name":"florist_rose","combat_front":"florist","slug":"florist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_citypark_restoration.json b/db/_generated/npc/spyder_citypark_restoration.json
new file mode 100644
index 0000000..a9d88f2
--- /dev/null
+++ b/db/_generated/npc/spyder_citypark_restoration.json
@@ -0,0 +1 @@
+{"slug":"spyder_citypark_restoration","template":[{"sprite_name":"box","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_conileaffrolicking.json b/db/_generated/npc/spyder_conileaffrolicking.json
new file mode 100644
index 0000000..81e40e8
--- /dev/null
+++ b/db/_generated/npc/spyder_conileaffrolicking.json
@@ -0,0 +1 @@
+{"slug":"spyder_conileaffrolicking","template":[{"sprite_name":"conileaf","combat_front":"adventurer","slug":"noclass"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottonartshop_carter.json b/db/_generated/npc/spyder_cottonartshop_carter.json
new file mode 100644
index 0000000..3162f13
--- /dev/null
+++ b/db/_generated/npc/spyder_cottonartshop_carter.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottonartshop_carter","template":[{"sprite_name":"shopkeeper_brown","combat_front":"adventurer","slug":"shopkeeper"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottonartshop_luvinia.json b/db/_generated/npc/spyder_cottonartshop_luvinia.json
new file mode 100644
index 0000000..9f21b5f
--- /dev/null
+++ b/db/_generated/npc/spyder_cottonartshop_luvinia.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottonartshop_luvinia","template":[{"sprite_name":"florist","combat_front":"florist","slug":"florist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottonartshop_philis.json b/db/_generated/npc/spyder_cottonartshop_philis.json
new file mode 100644
index 0000000..0bf8407
--- /dev/null
+++ b/db/_generated/npc/spyder_cottonartshop_philis.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottonartshop_philis","template":[{"sprite_name":"granny","combat_front":"adventurer","slug":"granny"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottonartshop_phoenix.json b/db/_generated/npc/spyder_cottonartshop_phoenix.json
new file mode 100644
index 0000000..f829cca
--- /dev/null
+++ b/db/_generated/npc/spyder_cottonartshop_phoenix.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottonartshop_phoenix","template":[{"sprite_name":"goth","combat_front":"adventurer","slug":"goth"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottoncafe_cayden.json b/db/_generated/npc/spyder_cottoncafe_cayden.json
new file mode 100644
index 0000000..35f4bf9
--- /dev/null
+++ b/db/_generated/npc/spyder_cottoncafe_cayden.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottoncafe_cayden","template":[{"sprite_name":"goth","combat_front":"adventurer","slug":"goth"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottoncafe_hillary.json b/db/_generated/npc/spyder_cottoncafe_hillary.json
new file mode 100644
index 0000000..dfbe371
--- /dev/null
+++ b/db/_generated/npc/spyder_cottoncafe_hillary.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottoncafe_hillary","template":[{"sprite_name":"florist_blue","combat_front":"florist","slug":"florist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottoncafe_juliana.json b/db/_generated/npc/spyder_cottoncafe_juliana.json
new file mode 100644
index 0000000..11e401a
--- /dev/null
+++ b/db/_generated/npc/spyder_cottoncafe_juliana.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottoncafe_juliana","template":[{"sprite_name":"homemaker","combat_front":"adventurer","slug":"homemaker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottoncafe_lotus.json b/db/_generated/npc/spyder_cottoncafe_lotus.json
new file mode 100644
index 0000000..1bc9134
--- /dev/null
+++ b/db/_generated/npc/spyder_cottoncafe_lotus.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottoncafe_lotus","template":[{"sprite_name":"granny","combat_front":"adventurer","slug":"granny"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottoncafe_wilford.json b/db/_generated/npc/spyder_cottoncafe_wilford.json
new file mode 100644
index 0000000..6e60884
--- /dev/null
+++ b/db/_generated/npc/spyder_cottoncafe_wilford.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottoncafe_wilford","template":[{"sprite_name":"shopassist","combat_front":"shopassist","slug":"shopassistant"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottoncenter_ada.json b/db/_generated/npc/spyder_cottoncenter_ada.json
new file mode 100644
index 0000000..0bbb2b3
--- /dev/null
+++ b/db/_generated/npc/spyder_cottoncenter_ada.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottoncenter_ada","template":[{"sprite_name":"nurse_green","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottoncenter_krystal.json b/db/_generated/npc/spyder_cottoncenter_krystal.json
new file mode 100644
index 0000000..5beaa0e
--- /dev/null
+++ b/db/_generated/npc/spyder_cottoncenter_krystal.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottoncenter_krystal","template":[{"sprite_name":"nurse","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottonhouse1_lila.json b/db/_generated/npc/spyder_cottonhouse1_lila.json
new file mode 100644
index 0000000..20b7815
--- /dev/null
+++ b/db/_generated/npc/spyder_cottonhouse1_lila.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottonhouse1_lila","template":[{"sprite_name":"homemaker_blonde","combat_front":"adventurer","slug":"homemaker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottonhouse1_rodger.json b/db/_generated/npc/spyder_cottonhouse1_rodger.json
new file mode 100644
index 0000000..2e0945d
--- /dev/null
+++ b/db/_generated/npc/spyder_cottonhouse1_rodger.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottonhouse1_rodger","template":[{"sprite_name":"firefighter","combat_front":"firefighter","slug":"firefighter"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottonhouse2_davis.json b/db/_generated/npc/spyder_cottonhouse2_davis.json
new file mode 100644
index 0000000..e54c282
--- /dev/null
+++ b/db/_generated/npc/spyder_cottonhouse2_davis.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottonhouse2_davis","template":[{"sprite_name":"shopkeeper_blonde","combat_front":"adventurer","slug":"shopkeeper"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottonhouse2_neva.json b/db/_generated/npc/spyder_cottonhouse2_neva.json
new file mode 100644
index 0000000..889999f
--- /dev/null
+++ b/db/_generated/npc/spyder_cottonhouse2_neva.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottonhouse2_neva","template":[{"sprite_name":"picnicker","combat_front":"picnicker","slug":"picnicker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottonhouse2_sidney.json b/db/_generated/npc/spyder_cottonhouse2_sidney.json
new file mode 100644
index 0000000..d6b578e
--- /dev/null
+++ b/db/_generated/npc/spyder_cottonhouse2_sidney.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottonhouse2_sidney","template":[{"sprite_name":"catgirl_fiery","combat_front":"catgirl","slug":"catgirl"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottonscoop_joe.json b/db/_generated/npc/spyder_cottonscoop_joe.json
new file mode 100644
index 0000000..8e7a061
--- /dev/null
+++ b/db/_generated/npc/spyder_cottonscoop_joe.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottonscoop_joe","template":[{"sprite_name":"shopkeeper","combat_front":"adventurer","slug":"shopkeeper"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottontown_barmaid.json b/db/_generated/npc/spyder_cottontown_barmaid.json
new file mode 100644
index 0000000..83809b2
--- /dev/null
+++ b/db/_generated/npc/spyder_cottontown_barmaid.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottontown_barmaid","template":[{"sprite_name":"barmaid","combat_front":"barmaid","slug":"barmaid"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottontown_hacker.json b/db/_generated/npc/spyder_cottontown_hacker.json
new file mode 100644
index 0000000..5b088cf
--- /dev/null
+++ b/db/_generated/npc/spyder_cottontown_hacker.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottontown_hacker","template":[{"sprite_name":"magician","combat_front":"magician","slug":"magician"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottontown_monk.json b/db/_generated/npc/spyder_cottontown_monk.json
new file mode 100644
index 0000000..9cf622e
--- /dev/null
+++ b/db/_generated/npc/spyder_cottontown_monk.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottontown_monk","template":[{"sprite_name":"monk","combat_front":"monk","slug":"monk"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottontunnel_box1.json b/db/_generated/npc/spyder_cottontunnel_box1.json
new file mode 100644
index 0000000..87f7947
--- /dev/null
+++ b/db/_generated/npc/spyder_cottontunnel_box1.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottontunnel_box1","template":[{"sprite_name":"box","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottontunnel_box2.json b/db/_generated/npc/spyder_cottontunnel_box2.json
new file mode 100644
index 0000000..c52e19a
--- /dev/null
+++ b/db/_generated/npc/spyder_cottontunnel_box2.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottontunnel_box2","template":[{"sprite_name":"box","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottontunnel_box3.json b/db/_generated/npc/spyder_cottontunnel_box3.json
new file mode 100644
index 0000000..5e87463
--- /dev/null
+++ b/db/_generated/npc/spyder_cottontunnel_box3.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottontunnel_box3","template":[{"sprite_name":"box","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottontunnel_box4.json b/db/_generated/npc/spyder_cottontunnel_box4.json
new file mode 100644
index 0000000..9ddf4b1
--- /dev/null
+++ b/db/_generated/npc/spyder_cottontunnel_box4.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottontunnel_box4","template":[{"sprite_name":"box","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottontunnel_box5.json b/db/_generated/npc/spyder_cottontunnel_box5.json
new file mode 100644
index 0000000..7796312
--- /dev/null
+++ b/db/_generated/npc/spyder_cottontunnel_box5.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottontunnel_box5","template":[{"sprite_name":"box","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottontunnel_box6.json b/db/_generated/npc/spyder_cottontunnel_box6.json
new file mode 100644
index 0000000..d35f18a
--- /dev/null
+++ b/db/_generated/npc/spyder_cottontunnel_box6.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottontunnel_box6","template":[{"sprite_name":"box","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottontunnel_carlos.json b/db/_generated/npc/spyder_cottontunnel_carlos.json
new file mode 100644
index 0000000..35a311e
--- /dev/null
+++ b/db/_generated/npc/spyder_cottontunnel_carlos.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottontunnel_carlos","template":[{"sprite_name":"dragonrider_black","combat_front":"dragonrider","slug":"dragonrider"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottontunnel_professor.json b/db/_generated/npc/spyder_cottontunnel_professor.json
new file mode 100644
index 0000000..2566b14
--- /dev/null
+++ b/db/_generated/npc/spyder_cottontunnel_professor.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottontunnel_professor","template":[{"sprite_name":"professor_fiery","combat_front":"professor","slug":"professor"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_cottontunnel_shopassistant.json b/db/_generated/npc/spyder_cottontunnel_shopassistant.json
new file mode 100644
index 0000000..601099e
--- /dev/null
+++ b/db/_generated/npc/spyder_cottontunnel_shopassistant.json
@@ -0,0 +1 @@
+{"slug":"spyder_cottontunnel_shopassistant","template":[{"sprite_name":"shopassist_black","combat_front":"shopassist","slug":"shopassistant"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dante.json b/db/_generated/npc/spyder_dante.json
new file mode 100644
index 0000000..7a87a0e
--- /dev/null
+++ b/db/_generated/npc/spyder_dante.json
@@ -0,0 +1 @@
+{"slug":"spyder_dante","template":[{"sprite_name":"shopassist","combat_front":"adventurer","slug":"shopassistant"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_datacenter_bayliss.json b/db/_generated/npc/spyder_datacenter_bayliss.json
new file mode 100644
index 0000000..08c7a64
--- /dev/null
+++ b/db/_generated/npc/spyder_datacenter_bayliss.json
@@ -0,0 +1 @@
+{"slug":"spyder_datacenter_bayliss","template":[{"sprite_name":"scientist_brown","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_datacenter_chomsky.json b/db/_generated/npc/spyder_datacenter_chomsky.json
new file mode 100644
index 0000000..4f633d4
--- /dev/null
+++ b/db/_generated/npc/spyder_datacenter_chomsky.json
@@ -0,0 +1 @@
+{"slug":"spyder_datacenter_chomsky","template":[{"sprite_name":"scientist_fiery","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_datacenter_fermi.json b/db/_generated/npc/spyder_datacenter_fermi.json
new file mode 100644
index 0000000..06bfa6d
--- /dev/null
+++ b/db/_generated/npc/spyder_datacenter_fermi.json
@@ -0,0 +1 @@
+{"slug":"spyder_datacenter_fermi","template":[{"sprite_name":"scientist_black","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_datacenter_lagrange.json b/db/_generated/npc/spyder_datacenter_lagrange.json
new file mode 100644
index 0000000..cf1c858
--- /dev/null
+++ b/db/_generated/npc/spyder_datacenter_lagrange.json
@@ -0,0 +1 @@
+{"slug":"spyder_datacenter_lagrange","template":[{"sprite_name":"scientist","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_datacenter_onnes.json b/db/_generated/npc/spyder_datacenter_onnes.json
new file mode 100644
index 0000000..b2c18ab
--- /dev/null
+++ b/db/_generated/npc/spyder_datacenter_onnes.json
@@ -0,0 +1 @@
+{"slug":"spyder_datacenter_onnes","template":[{"sprite_name":"scientist_fiery","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_datacenter_s1.json b/db/_generated/npc/spyder_datacenter_s1.json
new file mode 100644
index 0000000..394b4c5
--- /dev/null
+++ b/db/_generated/npc/spyder_datacenter_s1.json
@@ -0,0 +1 @@
+{"slug":"spyder_datacenter_s1","template":[{"sprite_name":"screen_small","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_datacenter_s2.json b/db/_generated/npc/spyder_datacenter_s2.json
new file mode 100644
index 0000000..71c838f
--- /dev/null
+++ b/db/_generated/npc/spyder_datacenter_s2.json
@@ -0,0 +1 @@
+{"slug":"spyder_datacenter_s2","template":[{"sprite_name":"screen_small","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_datacenter_s3.json b/db/_generated/npc/spyder_datacenter_s3.json
new file mode 100644
index 0000000..5fca5ca
--- /dev/null
+++ b/db/_generated/npc/spyder_datacenter_s3.json
@@ -0,0 +1 @@
+{"slug":"spyder_datacenter_s3","template":[{"sprite_name":"screen_small","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_datacenter_s4.json b/db/_generated/npc/spyder_datacenter_s4.json
new file mode 100644
index 0000000..4c1a456
--- /dev/null
+++ b/db/_generated/npc/spyder_datacenter_s4.json
@@ -0,0 +1 @@
+{"slug":"spyder_datacenter_s4","template":[{"sprite_name":"screen_small","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_datacenter_s5.json b/db/_generated/npc/spyder_datacenter_s5.json
new file mode 100644
index 0000000..9d38093
--- /dev/null
+++ b/db/_generated/npc/spyder_datacenter_s5.json
@@ -0,0 +1 @@
+{"slug":"spyder_datacenter_s5","template":[{"sprite_name":"screen_small","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_datacenter_s6.json b/db/_generated/npc/spyder_datacenter_s6.json
new file mode 100644
index 0000000..a83e8c7
--- /dev/null
+++ b/db/_generated/npc/spyder_datacenter_s6.json
@@ -0,0 +1 @@
+{"slug":"spyder_datacenter_s6","template":[{"sprite_name":"screen_small","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_datacenter_s7.json b/db/_generated/npc/spyder_datacenter_s7.json
new file mode 100644
index 0000000..4cddd02
--- /dev/null
+++ b/db/_generated/npc/spyder_datacenter_s7.json
@@ -0,0 +1 @@
+{"slug":"spyder_datacenter_s7","template":[{"sprite_name":"screen_small","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dojo_ares.json b/db/_generated/npc/spyder_dojo_ares.json
new file mode 100644
index 0000000..ca4caf3
--- /dev/null
+++ b/db/_generated/npc/spyder_dojo_ares.json
@@ -0,0 +1 @@
+{"slug":"spyder_dojo_ares","template":[{"sprite_name":"monk_black","combat_front":"monk","slug":"monk"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dojo_billie.json b/db/_generated/npc/spyder_dojo_billie.json
new file mode 100644
index 0000000..5e53cfa
--- /dev/null
+++ b/db/_generated/npc/spyder_dojo_billie.json
@@ -0,0 +1 @@
+{"slug":"spyder_dojo_billie","forfeit":false,"template":[{"sprite_name":"fashionista","combat_front":"fashionista","slug":"fashionista"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dojo_fu.json b/db/_generated/npc/spyder_dojo_fu.json
new file mode 100644
index 0000000..10416d0
--- /dev/null
+++ b/db/_generated/npc/spyder_dojo_fu.json
@@ -0,0 +1 @@
+{"slug":"spyder_dojo_fu","template":[{"sprite_name":"granny","combat_front":"adventurer","slug":"granny"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dojo_hephastus.json b/db/_generated/npc/spyder_dojo_hephastus.json
new file mode 100644
index 0000000..743bad5
--- /dev/null
+++ b/db/_generated/npc/spyder_dojo_hephastus.json
@@ -0,0 +1 @@
+{"slug":"spyder_dojo_hephastus","template":[{"sprite_name":"monk_blue","combat_front":"monk","slug":"monk"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dojo_hermes.json b/db/_generated/npc/spyder_dojo_hermes.json
new file mode 100644
index 0000000..acced37
--- /dev/null
+++ b/db/_generated/npc/spyder_dojo_hermes.json
@@ -0,0 +1 @@
+{"slug":"spyder_dojo_hermes","template":[{"sprite_name":"monk_orange","combat_front":"monk","slug":"monk"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dojo_iroh.json b/db/_generated/npc/spyder_dojo_iroh.json
new file mode 100644
index 0000000..d6b9723
--- /dev/null
+++ b/db/_generated/npc/spyder_dojo_iroh.json
@@ -0,0 +1 @@
+{"slug":"spyder_dojo_iroh","template":[{"sprite_name":"monk_red","combat_front":"monk","slug":"monk"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dojo_kataro.json b/db/_generated/npc/spyder_dojo_kataro.json
new file mode 100644
index 0000000..d544c40
--- /dev/null
+++ b/db/_generated/npc/spyder_dojo_kataro.json
@@ -0,0 +1 @@
+{"slug":"spyder_dojo_kataro","template":[{"sprite_name":"monk_orange","combat_front":"monk","slug":"monk"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dojo_orion.json b/db/_generated/npc/spyder_dojo_orion.json
new file mode 100644
index 0000000..ab283f3
--- /dev/null
+++ b/db/_generated/npc/spyder_dojo_orion.json
@@ -0,0 +1 @@
+{"slug":"spyder_dojo_orion","template":[{"sprite_name":"monk_green","combat_front":"monk","slug":"monk"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dojo_saturn.json b/db/_generated/npc/spyder_dojo_saturn.json
new file mode 100644
index 0000000..111cbd6
--- /dev/null
+++ b/db/_generated/npc/spyder_dojo_saturn.json
@@ -0,0 +1 @@
+{"slug":"spyder_dojo_saturn","template":[{"sprite_name":"monk_red","combat_front":"monk","slug":"monk"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dojo_sokka.json b/db/_generated/npc/spyder_dojo_sokka.json
new file mode 100644
index 0000000..7d4ce25
--- /dev/null
+++ b/db/_generated/npc/spyder_dojo_sokka.json
@@ -0,0 +1 @@
+{"slug":"spyder_dojo_sokka","template":[{"sprite_name":"monk_green","combat_front":"monk","slug":"monk"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dojo_thri.json b/db/_generated/npc/spyder_dojo_thri.json
new file mode 100644
index 0000000..9e9c67c
--- /dev/null
+++ b/db/_generated/npc/spyder_dojo_thri.json
@@ -0,0 +1 @@
+{"slug":"spyder_dojo_thri","forfeit":false,"template":[{"sprite_name":"maniac_yellow","combat_front":"riddler","slug":"maniac"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dojo_toph.json b/db/_generated/npc/spyder_dojo_toph.json
new file mode 100644
index 0000000..4bed1ea
--- /dev/null
+++ b/db/_generated/npc/spyder_dojo_toph.json
@@ -0,0 +1 @@
+{"slug":"spyder_dojo_toph","template":[{"sprite_name":"monk_black","combat_front":"monk","slug":"monk"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dojo_tu.json b/db/_generated/npc/spyder_dojo_tu.json
new file mode 100644
index 0000000..2d78117
--- /dev/null
+++ b/db/_generated/npc/spyder_dojo_tu.json
@@ -0,0 +1 @@
+{"slug":"spyder_dojo_tu","forfeit":false,"template":[{"sprite_name":"ninja_red","combat_front":"ninja","slug":"ninja"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dojo_wan.json b/db/_generated/npc/spyder_dojo_wan.json
new file mode 100644
index 0000000..418c97f
--- /dev/null
+++ b/db/_generated/npc/spyder_dojo_wan.json
@@ -0,0 +1 @@
+{"slug":"spyder_dojo_wan","forfeit":false,"template":[{"sprite_name":"ninja_blue","combat_front":"ninja","slug":"ninja"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dojo_xiang.json b/db/_generated/npc/spyder_dojo_xiang.json
new file mode 100644
index 0000000..e3c12fc
--- /dev/null
+++ b/db/_generated/npc/spyder_dojo_xiang.json
@@ -0,0 +1 @@
+{"slug":"spyder_dojo_xiang","template":[{"sprite_name":"granny","combat_front":"adventurer","slug":"granny"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dojo_yangchen.json b/db/_generated/npc/spyder_dojo_yangchen.json
new file mode 100644
index 0000000..5a57479
--- /dev/null
+++ b/db/_generated/npc/spyder_dojo_yangchen.json
@@ -0,0 +1 @@
+{"slug":"spyder_dojo_yangchen","template":[{"sprite_name":"monk_blue","combat_front":"monk","slug":"monk"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dojo_yin.json b/db/_generated/npc/spyder_dojo_yin.json
new file mode 100644
index 0000000..ac10bfd
--- /dev/null
+++ b/db/_generated/npc/spyder_dojo_yin.json
@@ -0,0 +1 @@
+{"slug":"spyder_dojo_yin","template":[{"sprite_name":"maniac_violet","combat_front":"adventurer","slug":"maniac"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dojo_zhao.json b/db/_generated/npc/spyder_dojo_zhao.json
new file mode 100644
index 0000000..72fbe90
--- /dev/null
+++ b/db/_generated/npc/spyder_dojo_zhao.json
@@ -0,0 +1 @@
+{"slug":"spyder_dojo_zhao","template":[{"sprite_name":"maniac_green","combat_front":"adventurer","slug":"maniac"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dojo_zhu.json b/db/_generated/npc/spyder_dojo_zhu.json
new file mode 100644
index 0000000..f848df2
--- /dev/null
+++ b/db/_generated/npc/spyder_dojo_zhu.json
@@ -0,0 +1 @@
+{"slug":"spyder_dojo_zhu","template":[{"sprite_name":"maniac_rose","combat_front":"adventurer","slug":"maniac"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dragonscave_angrybrute.json b/db/_generated/npc/spyder_dragonscave_angrybrute.json
new file mode 100644
index 0000000..3d3bfe2
--- /dev/null
+++ b/db/_generated/npc/spyder_dragonscave_angrybrute.json
@@ -0,0 +1 @@
+{"slug":"spyder_dragonscave_angrybrute","template":[{"sprite_name":"knight","combat_front":"enforcer_rookie","slug":"enforcer_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dragonscave_benden.json b/db/_generated/npc/spyder_dragonscave_benden.json
new file mode 100644
index 0000000..e3cff42
--- /dev/null
+++ b/db/_generated/npc/spyder_dragonscave_benden.json
@@ -0,0 +1 @@
+{"slug":"spyder_dragonscave_benden","template":[{"sprite_name":"dragonrider_black","combat_front":"dragonrider","slug":"dragonrider"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dragonscave_cailin.json b/db/_generated/npc/spyder_dragonscave_cailin.json
new file mode 100644
index 0000000..054a867
--- /dev/null
+++ b/db/_generated/npc/spyder_dragonscave_cailin.json
@@ -0,0 +1 @@
+{"slug":"spyder_dragonscave_cailin","template":[{"sprite_name":"dragonrider_blue","combat_front":"dragonrider","slug":"dragonrider"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dragonscave_concernedbrute.json b/db/_generated/npc/spyder_dragonscave_concernedbrute.json
new file mode 100644
index 0000000..a95d0a2
--- /dev/null
+++ b/db/_generated/npc/spyder_dragonscave_concernedbrute.json
@@ -0,0 +1 @@
+{"slug":"spyder_dragonscave_concernedbrute","template":[{"sprite_name":"knight","combat_front":"enforcer_rookie","slug":"enforcer_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dragonscave_daenny.json b/db/_generated/npc/spyder_dragonscave_daenny.json
new file mode 100644
index 0000000..7c59232
--- /dev/null
+++ b/db/_generated/npc/spyder_dragonscave_daenny.json
@@ -0,0 +1 @@
+{"slug":"spyder_dragonscave_daenny","template":[{"sprite_name":"dragonrider","combat_front":"dragonrider","slug":"dragonrider"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dragonscave_griffin.json b/db/_generated/npc/spyder_dragonscave_griffin.json
new file mode 100644
index 0000000..8f14d03
--- /dev/null
+++ b/db/_generated/npc/spyder_dragonscave_griffin.json
@@ -0,0 +1 @@
+{"slug":"spyder_dragonscave_griffin","template":[{"sprite_name":"dragonrider_fiery","combat_front":"dragonrider","slug":"dragonrider"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dragonscave_lazybrute.json b/db/_generated/npc/spyder_dragonscave_lazybrute.json
new file mode 100644
index 0000000..c41172e
--- /dev/null
+++ b/db/_generated/npc/spyder_dragonscave_lazybrute.json
@@ -0,0 +1 @@
+{"slug":"spyder_dragonscave_lazybrute","template":[{"sprite_name":"knight","combat_front":"enforcer_rookie","slug":"enforcer_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dragonscave_lessa.json b/db/_generated/npc/spyder_dragonscave_lessa.json
new file mode 100644
index 0000000..9a3acc4
--- /dev/null
+++ b/db/_generated/npc/spyder_dragonscave_lessa.json
@@ -0,0 +1 @@
+{"slug":"spyder_dragonscave_lessa","template":[{"sprite_name":"dragonrider_black","combat_front":"dragonrider","slug":"dragonrider"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dragonscave_lucille.json b/db/_generated/npc/spyder_dragonscave_lucille.json
new file mode 100644
index 0000000..42ad752
--- /dev/null
+++ b/db/_generated/npc/spyder_dragonscave_lucille.json
@@ -0,0 +1 @@
+{"slug":"spyder_dragonscave_lucille","template":[{"sprite_name":"knight","combat_front":"enforcer_agent","slug":"enforcer_agent"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dragonscave_mal.json b/db/_generated/npc/spyder_dragonscave_mal.json
new file mode 100644
index 0000000..7ae64d1
--- /dev/null
+++ b/db/_generated/npc/spyder_dragonscave_mal.json
@@ -0,0 +1 @@
+{"slug":"spyder_dragonscave_mal","template":[{"sprite_name":"spyderboss_fiery","combat_front":"spyder_boss","slug":"spyder_boss"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dragonscave_ray.json b/db/_generated/npc/spyder_dragonscave_ray.json
new file mode 100644
index 0000000..361d7ac
--- /dev/null
+++ b/db/_generated/npc/spyder_dragonscave_ray.json
@@ -0,0 +1 @@
+{"slug":"spyder_dragonscave_ray","template":[{"sprite_name":"spyderrookie","combat_front":"spyder_rookie","slug":"spyder_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dragonscave_tomas.json b/db/_generated/npc/spyder_dragonscave_tomas.json
new file mode 100644
index 0000000..70d68eb
--- /dev/null
+++ b/db/_generated/npc/spyder_dragonscave_tomas.json
@@ -0,0 +1 @@
+{"slug":"spyder_dragonscave_tomas","template":[{"sprite_name":"dragonrider_green","combat_front":"dragonrider","slug":"dragonrider"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dragonscave_tru.json b/db/_generated/npc/spyder_dragonscave_tru.json
new file mode 100644
index 0000000..1538bad
--- /dev/null
+++ b/db/_generated/npc/spyder_dragonscave_tru.json
@@ -0,0 +1 @@
+{"slug":"spyder_dragonscave_tru","template":[{"sprite_name":"knight","combat_front":"knightlord","slug":"knightlord"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_drokoro.json b/db/_generated/npc/spyder_drokoro.json
new file mode 100644
index 0000000..b74233b
--- /dev/null
+++ b/db/_generated/npc/spyder_drokoro.json
@@ -0,0 +1 @@
+{"slug":"spyder_drokoro","template":[{"sprite_name":"drokoro","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dryadsgrove_aquemini.json b/db/_generated/npc/spyder_dryadsgrove_aquemini.json
new file mode 100644
index 0000000..bf3ccf9
--- /dev/null
+++ b/db/_generated/npc/spyder_dryadsgrove_aquemini.json
@@ -0,0 +1 @@
+{"slug":"spyder_dryadsgrove_aquemini","template":[{"sprite_name":"woodnymph","combat_front":"waternymph","slug":"waternymph"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dryadsgrove_ferris.json b/db/_generated/npc/spyder_dryadsgrove_ferris.json
new file mode 100644
index 0000000..198a2ff
--- /dev/null
+++ b/db/_generated/npc/spyder_dryadsgrove_ferris.json
@@ -0,0 +1 @@
+{"slug":"spyder_dryadsgrove_ferris","template":[{"sprite_name":"woodnymph","combat_front":"metalnymph","slug":"metalnymph"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dryadsgrove_ignatia.json b/db/_generated/npc/spyder_dryadsgrove_ignatia.json
new file mode 100644
index 0000000..028ccc9
--- /dev/null
+++ b/db/_generated/npc/spyder_dryadsgrove_ignatia.json
@@ -0,0 +1 @@
+{"slug":"spyder_dryadsgrove_ignatia","template":[{"sprite_name":"firenymph","combat_front":"firenymph","slug":"firenymph"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dryadsgrove_petra.json b/db/_generated/npc/spyder_dryadsgrove_petra.json
new file mode 100644
index 0000000..cb8c43d
--- /dev/null
+++ b/db/_generated/npc/spyder_dryadsgrove_petra.json
@@ -0,0 +1 @@
+{"slug":"spyder_dryadsgrove_petra","template":[{"sprite_name":"woodnymph","combat_front":"earthnymph","slug":"earthnymph"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_dryadsgrove_sylvia.json b/db/_generated/npc/spyder_dryadsgrove_sylvia.json
new file mode 100644
index 0000000..635d35c
--- /dev/null
+++ b/db/_generated/npc/spyder_dryadsgrove_sylvia.json
@@ -0,0 +1 @@
+{"slug":"spyder_dryadsgrove_sylvia","template":[{"sprite_name":"woodnymph","combat_front":"woodnymph","slug":"woodnymph"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_flower_cady.json b/db/_generated/npc/spyder_flower_cady.json
new file mode 100644
index 0000000..f58ba91
--- /dev/null
+++ b/db/_generated/npc/spyder_flower_cady.json
@@ -0,0 +1 @@
+{"slug":"spyder_flower_cady","template":[{"sprite_name":"snugglepot","combat_front":"yellowbelt","slug":"snugglepot"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_flower_fez.json b/db/_generated/npc/spyder_flower_fez.json
new file mode 100644
index 0000000..07474c0
--- /dev/null
+++ b/db/_generated/npc/spyder_flower_fez.json
@@ -0,0 +1 @@
+{"slug":"spyder_flower_fez","template":[{"sprite_name":"beachcomber_copper","combat_front":"yellowbelt","slug":"beachcomber"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_flower_lissa.json b/db/_generated/npc/spyder_flower_lissa.json
new file mode 100644
index 0000000..fb72700
--- /dev/null
+++ b/db/_generated/npc/spyder_flower_lissa.json
@@ -0,0 +1 @@
+{"slug":"spyder_flower_lissa","template":[{"sprite_name":"florist","combat_front":"florist","slug":"florist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_flower_mieke.json b/db/_generated/npc/spyder_flower_mieke.json
new file mode 100644
index 0000000..790ca14
--- /dev/null
+++ b/db/_generated/npc/spyder_flower_mieke.json
@@ -0,0 +1 @@
+{"slug":"spyder_flower_mieke","template":[{"sprite_name":"catgirl_blue","combat_front":"catgirl","slug":"catgirl"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_flower_monk.json b/db/_generated/npc/spyder_flower_monk.json
new file mode 100644
index 0000000..852fb59
--- /dev/null
+++ b/db/_generated/npc/spyder_flower_monk.json
@@ -0,0 +1 @@
+{"slug":"spyder_flower_monk","template":[{"sprite_name":"monk_blue","combat_front":"monk","slug":"monk"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_flower_sandy.json b/db/_generated/npc/spyder_flower_sandy.json
new file mode 100644
index 0000000..303b79f
--- /dev/null
+++ b/db/_generated/npc/spyder_flower_sandy.json
@@ -0,0 +1 @@
+{"slug":"spyder_flower_sandy","template":[{"sprite_name":"childactor","combat_front":"yellowbelt","slug":"childactor"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_flower_teach.json b/db/_generated/npc/spyder_flower_teach.json
new file mode 100644
index 0000000..01ee2e2
--- /dev/null
+++ b/db/_generated/npc/spyder_flower_teach.json
@@ -0,0 +1 @@
+{"slug":"spyder_flower_teach","template":[{"sprite_name":"picnicker","combat_front":"picnicker","slug":"picnicker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_flowercenter_tiara.json b/db/_generated/npc/spyder_flowercenter_tiara.json
new file mode 100644
index 0000000..7967539
--- /dev/null
+++ b/db/_generated/npc/spyder_flowercenter_tiara.json
@@ -0,0 +1 @@
+{"slug":"spyder_flowercenter_tiara","template":[{"sprite_name":"nurse","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_flowerhouse1_jonette.json b/db/_generated/npc/spyder_flowerhouse1_jonette.json
new file mode 100644
index 0000000..dd8f787
--- /dev/null
+++ b/db/_generated/npc/spyder_flowerhouse1_jonette.json
@@ -0,0 +1 @@
+{"slug":"spyder_flowerhouse1_jonette","template":[{"sprite_name":"granny","combat_front":"adventurer","slug":"granny"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_flowerhouse1_willie.json b/db/_generated/npc/spyder_flowerhouse1_willie.json
new file mode 100644
index 0000000..ea6731e
--- /dev/null
+++ b/db/_generated/npc/spyder_flowerhouse1_willie.json
@@ -0,0 +1 @@
+{"slug":"spyder_flowerhouse1_willie","template":[{"sprite_name":"firefighter","combat_front":"firefighter","slug":"firefighter"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_flowerhouse2_bruce.json b/db/_generated/npc/spyder_flowerhouse2_bruce.json
new file mode 100644
index 0000000..aacdd1a
--- /dev/null
+++ b/db/_generated/npc/spyder_flowerhouse2_bruce.json
@@ -0,0 +1 @@
+{"slug":"spyder_flowerhouse2_bruce","template":[{"sprite_name":"scientist_black","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_flowerhouse2_pip.json b/db/_generated/npc/spyder_flowerhouse2_pip.json
new file mode 100644
index 0000000..884de46
--- /dev/null
+++ b/db/_generated/npc/spyder_flowerhouse2_pip.json
@@ -0,0 +1 @@
+{"slug":"spyder_flowerhouse2_pip","template":[{"sprite_name":"soldier","combat_front":"soldier","slug":"soldier"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_flowerpetshop_denzel.json b/db/_generated/npc/spyder_flowerpetshop_denzel.json
new file mode 100644
index 0000000..4be939e
--- /dev/null
+++ b/db/_generated/npc/spyder_flowerpetshop_denzel.json
@@ -0,0 +1 @@
+{"slug":"spyder_flowerpetshop_denzel","template":[{"sprite_name":"shopkeeper_blonde","combat_front":"adventurer","slug":"shopkeeper"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_flowerpetshop_titus.json b/db/_generated/npc/spyder_flowerpetshop_titus.json
new file mode 100644
index 0000000..6849e4b
--- /dev/null
+++ b/db/_generated/npc/spyder_flowerpetshop_titus.json
@@ -0,0 +1 @@
+{"slug":"spyder_flowerpetshop_titus","template":[{"sprite_name":"shopassist_grey","combat_front":"shopassist","slug":"shopassistant"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_flowerscoop_jarod.json b/db/_generated/npc/spyder_flowerscoop_jarod.json
new file mode 100644
index 0000000..4de8af5
--- /dev/null
+++ b/db/_generated/npc/spyder_flowerscoop_jarod.json
@@ -0,0 +1 @@
+{"slug":"spyder_flowerscoop_jarod","template":[{"sprite_name":"shopkeeper","combat_front":"adventurer","slug":"shopkeeper"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_grannypiper.json b/db/_generated/npc/spyder_grannypiper.json
new file mode 100644
index 0000000..dd693cc
--- /dev/null
+++ b/db/_generated/npc/spyder_grannypiper.json
@@ -0,0 +1 @@
+{"slug":"spyder_grannypiper","template":[{"sprite_name":"granny","combat_front":"adventurer","slug":"granny"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_greenwash_aissa.json b/db/_generated/npc/spyder_greenwash_aissa.json
new file mode 100644
index 0000000..a60cfc6
--- /dev/null
+++ b/db/_generated/npc/spyder_greenwash_aissa.json
@@ -0,0 +1 @@
+{"slug":"spyder_greenwash_aissa","template":[{"sprite_name":"nurse_red","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_greenwash_alex.json b/db/_generated/npc/spyder_greenwash_alex.json
new file mode 100644
index 0000000..c973cdd
--- /dev/null
+++ b/db/_generated/npc/spyder_greenwash_alex.json
@@ -0,0 +1 @@
+{"slug":"spyder_greenwash_alex","template":[{"sprite_name":"florist_rose","combat_front":"florist","slug":"florist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_greenwash_broer.json b/db/_generated/npc/spyder_greenwash_broer.json
new file mode 100644
index 0000000..9a778c1
--- /dev/null
+++ b/db/_generated/npc/spyder_greenwash_broer.json
@@ -0,0 +1 @@
+{"slug":"spyder_greenwash_broer","template":[{"sprite_name":"nurse_lapi","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_greenwash_chip.json b/db/_generated/npc/spyder_greenwash_chip.json
new file mode 100644
index 0000000..1d16876
--- /dev/null
+++ b/db/_generated/npc/spyder_greenwash_chip.json
@@ -0,0 +1 @@
+{"slug":"spyder_greenwash_chip","template":[{"sprite_name":"scientist_fiery","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_greenwash_clarence.json b/db/_generated/npc/spyder_greenwash_clarence.json
new file mode 100644
index 0000000..4993532
--- /dev/null
+++ b/db/_generated/npc/spyder_greenwash_clarence.json
@@ -0,0 +1 @@
+{"slug":"spyder_greenwash_clarence","template":[{"sprite_name":"scientist_brown","combat_front":"aviator","slug":"aviator"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_greenwash_dempsey.json b/db/_generated/npc/spyder_greenwash_dempsey.json
new file mode 100644
index 0000000..d909f99
--- /dev/null
+++ b/db/_generated/npc/spyder_greenwash_dempsey.json
@@ -0,0 +1 @@
+{"slug":"spyder_greenwash_dempsey","template":[{"sprite_name":"rogue_copper","combat_front":"rogue","slug":"rogue"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_greenwash_dippel.json b/db/_generated/npc/spyder_greenwash_dippel.json
new file mode 100644
index 0000000..4526dc1
--- /dev/null
+++ b/db/_generated/npc/spyder_greenwash_dippel.json
@@ -0,0 +1 @@
+{"slug":"spyder_greenwash_dippel","template":[{"sprite_name":"scientist_fiery","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_greenwash_gluck.json b/db/_generated/npc/spyder_greenwash_gluck.json
new file mode 100644
index 0000000..dbe4db2
--- /dev/null
+++ b/db/_generated/npc/spyder_greenwash_gluck.json
@@ -0,0 +1 @@
+{"slug":"spyder_greenwash_gluck","template":[{"sprite_name":"florist_fiery","combat_front":"florist","slug":"florist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_greenwash_gregor.json b/db/_generated/npc/spyder_greenwash_gregor.json
new file mode 100644
index 0000000..91e7add
--- /dev/null
+++ b/db/_generated/npc/spyder_greenwash_gregor.json
@@ -0,0 +1 @@
+{"slug":"spyder_greenwash_gregor","template":[{"sprite_name":"scientist_brown","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_greenwash_guard.json b/db/_generated/npc/spyder_greenwash_guard.json
new file mode 100644
index 0000000..271e848
--- /dev/null
+++ b/db/_generated/npc/spyder_greenwash_guard.json
@@ -0,0 +1 @@
+{"slug":"spyder_greenwash_guard","template":[{"sprite_name":"soldier","combat_front":"soldier","slug":"soldier"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_greenwash_heidenstam.json b/db/_generated/npc/spyder_greenwash_heidenstam.json
new file mode 100644
index 0000000..aece3c5
--- /dev/null
+++ b/db/_generated/npc/spyder_greenwash_heidenstam.json
@@ -0,0 +1 @@
+{"slug":"spyder_greenwash_heidenstam","template":[{"sprite_name":"postboy_red","combat_front":"cooldude","slug":"postboy"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_greenwash_hunt.json b/db/_generated/npc/spyder_greenwash_hunt.json
new file mode 100644
index 0000000..c004d93
--- /dev/null
+++ b/db/_generated/npc/spyder_greenwash_hunt.json
@@ -0,0 +1 @@
+{"slug":"spyder_greenwash_hunt","template":[{"sprite_name":"scientist_black","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_greenwash_lewie.json b/db/_generated/npc/spyder_greenwash_lewie.json
new file mode 100644
index 0000000..e217dc4
--- /dev/null
+++ b/db/_generated/npc/spyder_greenwash_lewie.json
@@ -0,0 +1 @@
+{"slug":"spyder_greenwash_lewie","template":[{"sprite_name":"firefighter","combat_front":"firefighter","slug":"firefighter"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_greenwash_lewis.json b/db/_generated/npc/spyder_greenwash_lewis.json
new file mode 100644
index 0000000..5b1435d
--- /dev/null
+++ b/db/_generated/npc/spyder_greenwash_lewis.json
@@ -0,0 +1 @@
+{"slug":"spyder_greenwash_lewis","template":[{"sprite_name":"firefighter","combat_front":"firefighter","slug":"firefighter"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_greenwash_looten.json b/db/_generated/npc/spyder_greenwash_looten.json
new file mode 100644
index 0000000..c924321
--- /dev/null
+++ b/db/_generated/npc/spyder_greenwash_looten.json
@@ -0,0 +1 @@
+{"slug":"spyder_greenwash_looten","forfeit":false,"template":[{"sprite_name":"goth","combat_front":"goth","slug":"goth"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_greenwash_louis.json b/db/_generated/npc/spyder_greenwash_louis.json
new file mode 100644
index 0000000..fad4a08
--- /dev/null
+++ b/db/_generated/npc/spyder_greenwash_louis.json
@@ -0,0 +1 @@
+{"slug":"spyder_greenwash_louis","template":[{"sprite_name":"scientist","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_greenwash_moreau.json b/db/_generated/npc/spyder_greenwash_moreau.json
new file mode 100644
index 0000000..a89f03d
--- /dev/null
+++ b/db/_generated/npc/spyder_greenwash_moreau.json
@@ -0,0 +1 @@
+{"slug":"spyder_greenwash_moreau","template":[{"sprite_name":"scientist_black","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_greenwash_morehouse.json b/db/_generated/npc/spyder_greenwash_morehouse.json
new file mode 100644
index 0000000..1e88c0b
--- /dev/null
+++ b/db/_generated/npc/spyder_greenwash_morehouse.json
@@ -0,0 +1 @@
+{"slug":"spyder_greenwash_morehouse","template":[{"sprite_name":"scientist","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_greenwash_norton.json b/db/_generated/npc/spyder_greenwash_norton.json
new file mode 100644
index 0000000..4b1fe9a
--- /dev/null
+++ b/db/_generated/npc/spyder_greenwash_norton.json
@@ -0,0 +1 @@
+{"slug":"spyder_greenwash_norton","template":[{"sprite_name":"firefighter","combat_front":"firefighter","slug":"firefighter"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_greenwash_selby.json b/db/_generated/npc/spyder_greenwash_selby.json
new file mode 100644
index 0000000..802af9a
--- /dev/null
+++ b/db/_generated/npc/spyder_greenwash_selby.json
@@ -0,0 +1 @@
+{"slug":"spyder_greenwash_selby","template":[{"sprite_name":"scientist_fiery","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_hospital1_audie.json b/db/_generated/npc/spyder_hospital1_audie.json
new file mode 100644
index 0000000..b2de64d
--- /dev/null
+++ b/db/_generated/npc/spyder_hospital1_audie.json
@@ -0,0 +1 @@
+{"slug":"spyder_hospital1_audie","template":[{"sprite_name":"nurse_blue","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_hospital1_aurora.json b/db/_generated/npc/spyder_hospital1_aurora.json
new file mode 100644
index 0000000..97e6654
--- /dev/null
+++ b/db/_generated/npc/spyder_hospital1_aurora.json
@@ -0,0 +1 @@
+{"slug":"spyder_hospital1_aurora","template":[{"sprite_name":"spyderboss_blonde","combat_front":"spyder_boss","slug":"spyder_boss"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_hospital1_eleni.json b/db/_generated/npc/spyder_hospital1_eleni.json
new file mode 100644
index 0000000..fe5f983
--- /dev/null
+++ b/db/_generated/npc/spyder_hospital1_eleni.json
@@ -0,0 +1 @@
+{"slug":"spyder_hospital1_eleni","template":[{"sprite_name":"spyderboss_lapi","combat_front":"spyder_boss","slug":"spyder_boss"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_hospital1_felu.json b/db/_generated/npc/spyder_hospital1_felu.json
new file mode 100644
index 0000000..8209bdf
--- /dev/null
+++ b/db/_generated/npc/spyder_hospital1_felu.json
@@ -0,0 +1 @@
+{"slug":"spyder_hospital1_felu","template":[{"sprite_name":"spyderrookie","combat_front":"spyder_rookie","slug":"spyder_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_hospital1_fring.json b/db/_generated/npc/spyder_hospital1_fring.json
new file mode 100644
index 0000000..9727954
--- /dev/null
+++ b/db/_generated/npc/spyder_hospital1_fring.json
@@ -0,0 +1 @@
+{"slug":"spyder_hospital1_fring","template":[{"sprite_name":"spyderrookie","combat_front":"spyder_rookie","slug":"spyder_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_hospital1_lesley.json b/db/_generated/npc/spyder_hospital1_lesley.json
new file mode 100644
index 0000000..50d40f1
--- /dev/null
+++ b/db/_generated/npc/spyder_hospital1_lesley.json
@@ -0,0 +1 @@
+{"slug":"spyder_hospital1_lesley","template":[{"sprite_name":"scientist_black","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_hospital1_liane.json b/db/_generated/npc/spyder_hospital1_liane.json
new file mode 100644
index 0000000..3f90e66
--- /dev/null
+++ b/db/_generated/npc/spyder_hospital1_liane.json
@@ -0,0 +1 @@
+{"slug":"spyder_hospital1_liane","template":[{"sprite_name":"spyderboss_green","combat_front":"spyder_boss","slug":"spyder_boss"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_hospital1_luzia.json b/db/_generated/npc/spyder_hospital1_luzia.json
new file mode 100644
index 0000000..8ac7a5c
--- /dev/null
+++ b/db/_generated/npc/spyder_hospital1_luzia.json
@@ -0,0 +1 @@
+{"slug":"spyder_hospital1_luzia","template":[{"sprite_name":"spyderboss_fiery","combat_front":"spyder_boss","slug":"spyder_boss"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_hospital1_marylyn.json b/db/_generated/npc/spyder_hospital1_marylyn.json
new file mode 100644
index 0000000..7e32259
--- /dev/null
+++ b/db/_generated/npc/spyder_hospital1_marylyn.json
@@ -0,0 +1 @@
+{"slug":"spyder_hospital1_marylyn","template":[{"sprite_name":"nurse_green","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_hospital1_melanie.json b/db/_generated/npc/spyder_hospital1_melanie.json
new file mode 100644
index 0000000..a48d38a
--- /dev/null
+++ b/db/_generated/npc/spyder_hospital1_melanie.json
@@ -0,0 +1 @@
+{"slug":"spyder_hospital1_melanie","template":[{"sprite_name":"nurse_blonde","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_hospital1_pem.json b/db/_generated/npc/spyder_hospital1_pem.json
new file mode 100644
index 0000000..702989f
--- /dev/null
+++ b/db/_generated/npc/spyder_hospital1_pem.json
@@ -0,0 +1 @@
+{"slug":"spyder_hospital1_pem","template":[{"sprite_name":"spyderrookie","combat_front":"spyder_rookie","slug":"spyder_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_hospital1_rakez.json b/db/_generated/npc/spyder_hospital1_rakez.json
new file mode 100644
index 0000000..e42c51e
--- /dev/null
+++ b/db/_generated/npc/spyder_hospital1_rakez.json
@@ -0,0 +1 @@
+{"slug":"spyder_hospital1_rakez","template":[{"sprite_name":"spyderrookie","combat_front":"spyder_rookie","slug":"spyder_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_hospital1_rea.json b/db/_generated/npc/spyder_hospital1_rea.json
new file mode 100644
index 0000000..155155f
--- /dev/null
+++ b/db/_generated/npc/spyder_hospital1_rea.json
@@ -0,0 +1 @@
+{"slug":"spyder_hospital1_rea","template":[{"sprite_name":"spyderboss","combat_front":"spyder_boss","slug":"spyder_boss"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_hospital1_rhizome.json b/db/_generated/npc/spyder_hospital1_rhizome.json
new file mode 100644
index 0000000..371a149
--- /dev/null
+++ b/db/_generated/npc/spyder_hospital1_rhizome.json
@@ -0,0 +1 @@
+{"slug":"spyder_hospital1_rhizome","template":[{"sprite_name":"professor_brown","combat_front":"professor","slug":"professor"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_hospital1_smith.json b/db/_generated/npc/spyder_hospital1_smith.json
new file mode 100644
index 0000000..046960e
--- /dev/null
+++ b/db/_generated/npc/spyder_hospital1_smith.json
@@ -0,0 +1 @@
+{"slug":"spyder_hospital1_smith","template":[{"sprite_name":"scientist_brown","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_hospital1_trafford.json b/db/_generated/npc/spyder_hospital1_trafford.json
new file mode 100644
index 0000000..d6baff1
--- /dev/null
+++ b/db/_generated/npc/spyder_hospital1_trafford.json
@@ -0,0 +1 @@
+{"slug":"spyder_hospital1_trafford","template":[{"sprite_name":"scientist_fiery","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_hospital1_walt.json b/db/_generated/npc/spyder_hospital1_walt.json
new file mode 100644
index 0000000..10519fd
--- /dev/null
+++ b/db/_generated/npc/spyder_hospital1_walt.json
@@ -0,0 +1 @@
+{"slug":"spyder_hospital1_walt","template":[{"sprite_name":"spyderrookie","combat_front":"spyder_rookie","slug":"spyder_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_hospital1_zekar.json b/db/_generated/npc/spyder_hospital1_zekar.json
new file mode 100644
index 0000000..52449f1
--- /dev/null
+++ b/db/_generated/npc/spyder_hospital1_zekar.json
@@ -0,0 +1 @@
+{"slug":"spyder_hospital1_zekar","template":[{"sprite_name":"spyderrookie","combat_front":"spyder_rookie","slug":"spyder_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_hospital_billie.json b/db/_generated/npc/spyder_hospital_billie.json
new file mode 100644
index 0000000..0839c68
--- /dev/null
+++ b/db/_generated/npc/spyder_hospital_billie.json
@@ -0,0 +1 @@
+{"slug":"spyder_hospital_billie","forfeit":false,"template":[{"sprite_name":"fashionista","combat_front":"fashionista","slug":"fashionista"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leather_eula.json b/db/_generated/npc/spyder_leather_eula.json
new file mode 100644
index 0000000..87b920e
--- /dev/null
+++ b/db/_generated/npc/spyder_leather_eula.json
@@ -0,0 +1 @@
+{"slug":"spyder_leather_eula","template":[{"sprite_name":"barmaid","combat_front":"barmaid","slug":"barmaid"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leather_filbur.json b/db/_generated/npc/spyder_leather_filbur.json
new file mode 100644
index 0000000..8987ac3
--- /dev/null
+++ b/db/_generated/npc/spyder_leather_filbur.json
@@ -0,0 +1 @@
+{"slug":"spyder_leather_filbur","template":[{"sprite_name":"maniac_violet","combat_front":"adventurer","slug":"maniac"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leathercenter_sofia.json b/db/_generated/npc/spyder_leathercenter_sofia.json
new file mode 100644
index 0000000..083d265
--- /dev/null
+++ b/db/_generated/npc/spyder_leathercenter_sofia.json
@@ -0,0 +1 @@
+{"slug":"spyder_leathercenter_sofia","template":[{"sprite_name":"nurse","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leathergym_brad.json b/db/_generated/npc/spyder_leathergym_brad.json
new file mode 100644
index 0000000..0541bc2
--- /dev/null
+++ b/db/_generated/npc/spyder_leathergym_brad.json
@@ -0,0 +1 @@
+{"slug":"spyder_leathergym_brad","template":[{"sprite_name":"miner","combat_front":"adventurer","slug":"miner"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leathergym_bradfort.json b/db/_generated/npc/spyder_leathergym_bradfort.json
new file mode 100644
index 0000000..4bcf270
--- /dev/null
+++ b/db/_generated/npc/spyder_leathergym_bradfort.json
@@ -0,0 +1 @@
+{"slug":"spyder_leathergym_bradfort","template":[{"sprite_name":"postboy_green","combat_front":"adventurer","slug":"postboy"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leathergym_chad.json b/db/_generated/npc/spyder_leathergym_chad.json
new file mode 100644
index 0000000..22acfb9
--- /dev/null
+++ b/db/_generated/npc/spyder_leathergym_chad.json
@@ -0,0 +1 @@
+{"slug":"spyder_leathergym_chad","template":[{"sprite_name":"spyderrookie","combat_front":"spyder_rookie","slug":"spyder_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leathergym_chadfort.json b/db/_generated/npc/spyder_leathergym_chadfort.json
new file mode 100644
index 0000000..b77cd9a
--- /dev/null
+++ b/db/_generated/npc/spyder_leathergym_chadfort.json
@@ -0,0 +1 @@
+{"slug":"spyder_leathergym_chadfort","template":[{"sprite_name":"soldier","combat_front":"soldier","slug":"soldier"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leathergym_chadine.json b/db/_generated/npc/spyder_leathergym_chadine.json
new file mode 100644
index 0000000..8887b5d
--- /dev/null
+++ b/db/_generated/npc/spyder_leathergym_chadine.json
@@ -0,0 +1 @@
+{"slug":"spyder_leathergym_chadine","template":[{"sprite_name":"barmaid_blonde","combat_front":"barmaid","slug":"barmaid"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leathergym_gigachad.json b/db/_generated/npc/spyder_leathergym_gigachad.json
new file mode 100644
index 0000000..dd4aed7
--- /dev/null
+++ b/db/_generated/npc/spyder_leathergym_gigachad.json
@@ -0,0 +1 @@
+{"slug":"spyder_leathergym_gigachad","template":[{"sprite_name":"magician_brown","combat_front":"magician","slug":"magician"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leathergym_virgin.json b/db/_generated/npc/spyder_leathergym_virgin.json
new file mode 100644
index 0000000..16d6d71
--- /dev/null
+++ b/db/_generated/npc/spyder_leathergym_virgin.json
@@ -0,0 +1 @@
+{"slug":"spyder_leathergym_virgin","template":[{"sprite_name":"goth","combat_front":"adventurer","slug":"goth"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leatherhouse1_gail.json b/db/_generated/npc/spyder_leatherhouse1_gail.json
new file mode 100644
index 0000000..a764166
--- /dev/null
+++ b/db/_generated/npc/spyder_leatherhouse1_gail.json
@@ -0,0 +1 @@
+{"slug":"spyder_leatherhouse1_gail","template":[{"sprite_name":"florist_fiery","combat_front":"florist","slug":"florist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leatherhouse1_roger.json b/db/_generated/npc/spyder_leatherhouse1_roger.json
new file mode 100644
index 0000000..9740ef9
--- /dev/null
+++ b/db/_generated/npc/spyder_leatherhouse1_roger.json
@@ -0,0 +1 @@
+{"slug":"spyder_leatherhouse1_roger","template":[{"sprite_name":"tennisplayer","combat_front":"adventurer","slug":"tennisplayer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leatherhouse2_elias.json b/db/_generated/npc/spyder_leatherhouse2_elias.json
new file mode 100644
index 0000000..f70bf94
--- /dev/null
+++ b/db/_generated/npc/spyder_leatherhouse2_elias.json
@@ -0,0 +1 @@
+{"slug":"spyder_leatherhouse2_elias","template":[{"sprite_name":"snugglepot","combat_front":"snugglepot","slug":"snugglepot"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leatherhouse2_gabe.json b/db/_generated/npc/spyder_leatherhouse2_gabe.json
new file mode 100644
index 0000000..45d037f
--- /dev/null
+++ b/db/_generated/npc/spyder_leatherhouse2_gabe.json
@@ -0,0 +1 @@
+{"slug":"spyder_leatherhouse2_gabe","template":[{"sprite_name":"scientist_brown","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leatherhouse2_memphis.json b/db/_generated/npc/spyder_leatherhouse2_memphis.json
new file mode 100644
index 0000000..4f28d12
--- /dev/null
+++ b/db/_generated/npc/spyder_leatherhouse2_memphis.json
@@ -0,0 +1 @@
+{"slug":"spyder_leatherhouse2_memphis","template":[{"sprite_name":"miner_blue","combat_front":"miner","slug":"miner"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leathermuseum_davie.json b/db/_generated/npc/spyder_leathermuseum_davie.json
new file mode 100644
index 0000000..404611c
--- /dev/null
+++ b/db/_generated/npc/spyder_leathermuseum_davie.json
@@ -0,0 +1 @@
+{"slug":"spyder_leathermuseum_davie","template":[{"sprite_name":"miner_green","combat_front":"miner","slug":"miner"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leathermuseum_giles.json b/db/_generated/npc/spyder_leathermuseum_giles.json
new file mode 100644
index 0000000..d83ebe8
--- /dev/null
+++ b/db/_generated/npc/spyder_leathermuseum_giles.json
@@ -0,0 +1 @@
+{"slug":"spyder_leathermuseum_giles","template":[{"sprite_name":"maniac_rose","combat_front":"adventurer","slug":"maniac"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leathermuseum_kasey.json b/db/_generated/npc/spyder_leathermuseum_kasey.json
new file mode 100644
index 0000000..01b5257
--- /dev/null
+++ b/db/_generated/npc/spyder_leathermuseum_kasey.json
@@ -0,0 +1 @@
+{"slug":"spyder_leathermuseum_kasey","template":[{"sprite_name":"postboy_red","combat_front":"adventurer","slug":"postboy"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leatherscoop_blake.json b/db/_generated/npc/spyder_leatherscoop_blake.json
new file mode 100644
index 0000000..ac8a93f
--- /dev/null
+++ b/db/_generated/npc/spyder_leatherscoop_blake.json
@@ -0,0 +1 @@
+{"slug":"spyder_leatherscoop_blake","template":[{"sprite_name":"shopkeeper","combat_front":"adventurer","slug":"shopkeeper"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leathershaft1_beryll.json b/db/_generated/npc/spyder_leathershaft1_beryll.json
new file mode 100644
index 0000000..96b0954
--- /dev/null
+++ b/db/_generated/npc/spyder_leathershaft1_beryll.json
@@ -0,0 +1 @@
+{"slug":"spyder_leathershaft1_beryll","template":[{"sprite_name":"scientist_fiery","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leathershaft1_cole.json b/db/_generated/npc/spyder_leathershaft1_cole.json
new file mode 100644
index 0000000..9564ef3
--- /dev/null
+++ b/db/_generated/npc/spyder_leathershaft1_cole.json
@@ -0,0 +1 @@
+{"slug":"spyder_leathershaft1_cole","template":[{"sprite_name":"miner_red","combat_front":"miner","slug":"miner"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leathershaft1_roxby.json b/db/_generated/npc/spyder_leathershaft1_roxby.json
new file mode 100644
index 0000000..38ecab1
--- /dev/null
+++ b/db/_generated/npc/spyder_leathershaft1_roxby.json
@@ -0,0 +1 @@
+{"slug":"spyder_leathershaft1_roxby","template":[{"sprite_name":"miner","combat_front":"miner","slug":"miner"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leathershaft1_rutherford.json b/db/_generated/npc/spyder_leathershaft1_rutherford.json
new file mode 100644
index 0000000..839180f
--- /dev/null
+++ b/db/_generated/npc/spyder_leathershaft1_rutherford.json
@@ -0,0 +1 @@
+{"slug":"spyder_leathershaft1_rutherford","template":[{"sprite_name":"scientist_fiery","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leathershaft1_surat.json b/db/_generated/npc/spyder_leathershaft1_surat.json
new file mode 100644
index 0000000..e0de735
--- /dev/null
+++ b/db/_generated/npc/spyder_leathershaft1_surat.json
@@ -0,0 +1 @@
+{"slug":"spyder_leathershaft1_surat","template":[{"sprite_name":"miner_yellow","combat_front":"miner","slug":"miner"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_leathershaft2_colin.json b/db/_generated/npc/spyder_leathershaft2_colin.json
new file mode 100644
index 0000000..d0ffb6e
--- /dev/null
+++ b/db/_generated/npc/spyder_leathershaft2_colin.json
@@ -0,0 +1 @@
+{"slug":"spyder_leathershaft2_colin","template":[{"sprite_name":"maniac","combat_front":"adventurer","slug":"maniac"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_lionmountain_adam.json b/db/_generated/npc/spyder_lionmountain_adam.json
new file mode 100644
index 0000000..1e98743
--- /dev/null
+++ b/db/_generated/npc/spyder_lionmountain_adam.json
@@ -0,0 +1 @@
+{"slug":"spyder_lionmountain_adam","template":[{"sprite_name":"miner_green","combat_front":"miner","slug":"miner"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_lionmountain_alexander.json b/db/_generated/npc/spyder_lionmountain_alexander.json
new file mode 100644
index 0000000..f8f08d1
--- /dev/null
+++ b/db/_generated/npc/spyder_lionmountain_alexander.json
@@ -0,0 +1 @@
+{"slug":"spyder_lionmountain_alexander","template":[{"sprite_name":"miner","combat_front":"miner","slug":"miner"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_lionmountain_arlene.json b/db/_generated/npc/spyder_lionmountain_arlene.json
new file mode 100644
index 0000000..4f65241
--- /dev/null
+++ b/db/_generated/npc/spyder_lionmountain_arlene.json
@@ -0,0 +1 @@
+{"slug":"spyder_lionmountain_arlene","template":[{"sprite_name":"miner_red","combat_front":"miner","slug":"miner"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_lionmountain_chhurim.json b/db/_generated/npc/spyder_lionmountain_chhurim.json
new file mode 100644
index 0000000..feb1f1c
--- /dev/null
+++ b/db/_generated/npc/spyder_lionmountain_chhurim.json
@@ -0,0 +1 @@
+{"slug":"spyder_lionmountain_chhurim","template":[{"sprite_name":"miner_blue","combat_front":"miner","slug":"miner"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_lionmountain_conrad.json b/db/_generated/npc/spyder_lionmountain_conrad.json
new file mode 100644
index 0000000..1fcbff2
--- /dev/null
+++ b/db/_generated/npc/spyder_lionmountain_conrad.json
@@ -0,0 +1 @@
+{"slug":"spyder_lionmountain_conrad","template":[{"sprite_name":"miner_yellow","combat_front":"miner","slug":"miner"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_lionmountain_david.json b/db/_generated/npc/spyder_lionmountain_david.json
new file mode 100644
index 0000000..4ea4cfd
--- /dev/null
+++ b/db/_generated/npc/spyder_lionmountain_david.json
@@ -0,0 +1 @@
+{"slug":"spyder_lionmountain_david","template":[{"sprite_name":"miner_yellow","combat_front":"miner","slug":"miner"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_lionmountain_emilio.json b/db/_generated/npc/spyder_lionmountain_emilio.json
new file mode 100644
index 0000000..b092a8b
--- /dev/null
+++ b/db/_generated/npc/spyder_lionmountain_emilio.json
@@ -0,0 +1 @@
+{"slug":"spyder_lionmountain_emilio","template":[{"sprite_name":"miner_green","combat_front":"miner","slug":"miner"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_lionmountain_enforcer.json b/db/_generated/npc/spyder_lionmountain_enforcer.json
new file mode 100644
index 0000000..4e86983
--- /dev/null
+++ b/db/_generated/npc/spyder_lionmountain_enforcer.json
@@ -0,0 +1 @@
+{"slug":"spyder_lionmountain_enforcer","template":[{"sprite_name":"knight_green","combat_front":"enforcer_agent","slug":"enforcer_agent"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_lionmountain_jacques.json b/db/_generated/npc/spyder_lionmountain_jacques.json
new file mode 100644
index 0000000..4f2362d
--- /dev/null
+++ b/db/_generated/npc/spyder_lionmountain_jacques.json
@@ -0,0 +1 @@
+{"slug":"spyder_lionmountain_jacques","template":[{"sprite_name":"miner_blue","combat_front":"miner","slug":"miner"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_lionmountain_kurt.json b/db/_generated/npc/spyder_lionmountain_kurt.json
new file mode 100644
index 0000000..51b85da
--- /dev/null
+++ b/db/_generated/npc/spyder_lionmountain_kurt.json
@@ -0,0 +1 @@
+{"slug":"spyder_lionmountain_kurt","template":[{"sprite_name":"miner","combat_front":"miner","slug":"miner"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_lionmountain_nurse.json b/db/_generated/npc/spyder_lionmountain_nurse.json
new file mode 100644
index 0000000..8df7b4d
--- /dev/null
+++ b/db/_generated/npc/spyder_lionmountain_nurse.json
@@ -0,0 +1 @@
+{"slug":"spyder_lionmountain_nurse","template":[{"sprite_name":"nurse","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_lionmountain_scientist.json b/db/_generated/npc/spyder_lionmountain_scientist.json
new file mode 100644
index 0000000..ddffeee
--- /dev/null
+++ b/db/_generated/npc/spyder_lionmountain_scientist.json
@@ -0,0 +1 @@
+{"slug":"spyder_lionmountain_scientist","template":[{"sprite_name":"scientist_fiery","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_lionmountain_tom.json b/db/_generated/npc/spyder_lionmountain_tom.json
new file mode 100644
index 0000000..3548216
--- /dev/null
+++ b/db/_generated/npc/spyder_lionmountain_tom.json
@@ -0,0 +1 @@
+{"slug":"spyder_lionmountain_tom","template":[{"sprite_name":"miner_red","combat_front":"miner","slug":"miner"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_log.json b/db/_generated/npc/spyder_log.json
new file mode 100644
index 0000000..2d3ba1a
--- /dev/null
+++ b/db/_generated/npc/spyder_log.json
@@ -0,0 +1 @@
+{"slug":"spyder_log","template":[{"sprite_name":"log","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_mansion_drinkingbuddya.json b/db/_generated/npc/spyder_mansion_drinkingbuddya.json
new file mode 100644
index 0000000..d6c0d2d
--- /dev/null
+++ b/db/_generated/npc/spyder_mansion_drinkingbuddya.json
@@ -0,0 +1 @@
+{"slug":"spyder_mansion_drinkingbuddya","template":[{"sprite_name":"rogue_green","combat_front":"rogue","slug":"rogue"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_mansion_drinkingbuddyb.json b/db/_generated/npc/spyder_mansion_drinkingbuddyb.json
new file mode 100644
index 0000000..f8c72ec
--- /dev/null
+++ b/db/_generated/npc/spyder_mansion_drinkingbuddyb.json
@@ -0,0 +1 @@
+{"slug":"spyder_mansion_drinkingbuddyb","template":[{"sprite_name":"warrior","combat_front":"enforcer_rookie","slug":"warrior"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_mansion_gillette.json b/db/_generated/npc/spyder_mansion_gillette.json
new file mode 100644
index 0000000..24eaa47
--- /dev/null
+++ b/db/_generated/npc/spyder_mansion_gillette.json
@@ -0,0 +1 @@
+{"slug":"spyder_mansion_gillette","template":[{"sprite_name":"magician_brown","combat_front":"magician","slug":"magician"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_mansion_lainey.json b/db/_generated/npc/spyder_mansion_lainey.json
new file mode 100644
index 0000000..ba1ed86
--- /dev/null
+++ b/db/_generated/npc/spyder_mansion_lainey.json
@@ -0,0 +1 @@
+{"slug":"spyder_mansion_lainey","template":[{"sprite_name":"barmaid","combat_front":"barmaid","slug":"barmaid"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_mansion_lucy.json b/db/_generated/npc/spyder_mansion_lucy.json
new file mode 100644
index 0000000..6a43e9c
--- /dev/null
+++ b/db/_generated/npc/spyder_mansion_lucy.json
@@ -0,0 +1 @@
+{"slug":"spyder_mansion_lucy","template":[{"sprite_name":"barmaid_red","combat_front":"barmaid","slug":"barmaid"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_mansion_lyle.json b/db/_generated/npc/spyder_mansion_lyle.json
new file mode 100644
index 0000000..021e78c
--- /dev/null
+++ b/db/_generated/npc/spyder_mansion_lyle.json
@@ -0,0 +1 @@
+{"slug":"spyder_mansion_lyle","template":[{"sprite_name":"riverboatcaptain","combat_front":"pirate","slug":"pirate"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_mansion_reed.json b/db/_generated/npc/spyder_mansion_reed.json
new file mode 100644
index 0000000..ad0af4f
--- /dev/null
+++ b/db/_generated/npc/spyder_mansion_reed.json
@@ -0,0 +1 @@
+{"slug":"spyder_mansion_reed","template":[{"sprite_name":"magician_fiery","combat_front":"magician","slug":"magician"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_mansion_rolo.json b/db/_generated/npc/spyder_mansion_rolo.json
new file mode 100644
index 0000000..c5dfb73
--- /dev/null
+++ b/db/_generated/npc/spyder_mansion_rolo.json
@@ -0,0 +1 @@
+{"slug":"spyder_mansion_rolo","template":[{"sprite_name":"riverboatcaptain","combat_front":"enforcer_rookie","slug":"riverboatcaptain"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_mansion_tamara.json b/db/_generated/npc/spyder_mansion_tamara.json
new file mode 100644
index 0000000..658f767
--- /dev/null
+++ b/db/_generated/npc/spyder_mansion_tamara.json
@@ -0,0 +1 @@
+{"slug":"spyder_mansion_tamara","template":[{"sprite_name":"picnicker","combat_front":"picnicker","slug":"picnicker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_mansion_wayne.json b/db/_generated/npc/spyder_mansion_wayne.json
new file mode 100644
index 0000000..999021f
--- /dev/null
+++ b/db/_generated/npc/spyder_mansion_wayne.json
@@ -0,0 +1 @@
+{"slug":"spyder_mansion_wayne","template":[{"sprite_name":"magician_black","combat_front":"magician","slug":"magician"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_nimrod_antimony.json b/db/_generated/npc/spyder_nimrod_antimony.json
new file mode 100644
index 0000000..918e56a
--- /dev/null
+++ b/db/_generated/npc/spyder_nimrod_antimony.json
@@ -0,0 +1 @@
+{"slug":"spyder_nimrod_antimony","template":[{"sprite_name":"scientist_fiery","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_nimrod_archer.json b/db/_generated/npc/spyder_nimrod_archer.json
new file mode 100644
index 0000000..c1915da
--- /dev/null
+++ b/db/_generated/npc/spyder_nimrod_archer.json
@@ -0,0 +1 @@
+{"slug":"spyder_nimrod_archer","template":[{"sprite_name":"soldier","combat_front":"soldier","slug":"soldier"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_nimrod_argon.json b/db/_generated/npc/spyder_nimrod_argon.json
new file mode 100644
index 0000000..0397372
--- /dev/null
+++ b/db/_generated/npc/spyder_nimrod_argon.json
@@ -0,0 +1 @@
+{"slug":"spyder_nimrod_argon","template":[{"sprite_name":"scientist_black","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_nimrod_bowie.json b/db/_generated/npc/spyder_nimrod_bowie.json
new file mode 100644
index 0000000..c881904
--- /dev/null
+++ b/db/_generated/npc/spyder_nimrod_bowie.json
@@ -0,0 +1 @@
+{"slug":"spyder_nimrod_bowie","template":[{"sprite_name":"knight","combat_front":"enforcer_boss","slug":"enforcer_boss"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_nimrod_chromerobo.json b/db/_generated/npc/spyder_nimrod_chromerobo.json
new file mode 100644
index 0000000..17b9ed4
--- /dev/null
+++ b/db/_generated/npc/spyder_nimrod_chromerobo.json
@@ -0,0 +1 @@
+{"slug":"spyder_nimrod_chromerobo","template":[{"sprite_name":"robot","combat_front":"chrome_robo","slug":"robot"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_nimrod_dirk.json b/db/_generated/npc/spyder_nimrod_dirk.json
new file mode 100644
index 0000000..0b1f0d6
--- /dev/null
+++ b/db/_generated/npc/spyder_nimrod_dirk.json
@@ -0,0 +1 @@
+{"slug":"spyder_nimrod_dirk","template":[{"sprite_name":"knight","combat_front":"enforcer_rookie","slug":"enforcer_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_nimrod_honour.json b/db/_generated/npc/spyder_nimrod_honour.json
new file mode 100644
index 0000000..f23d785
--- /dev/null
+++ b/db/_generated/npc/spyder_nimrod_honour.json
@@ -0,0 +1 @@
+{"slug":"spyder_nimrod_honour","template":[{"sprite_name":"soldier","combat_front":"soldier","slug":"soldier"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_nimrod_jake.json b/db/_generated/npc/spyder_nimrod_jake.json
new file mode 100644
index 0000000..d6c28dd
--- /dev/null
+++ b/db/_generated/npc/spyder_nimrod_jake.json
@@ -0,0 +1 @@
+{"slug":"spyder_nimrod_jake","template":[{"sprite_name":"soldier","combat_front":"soldier","slug":"soldier"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_nimrod_jervis.json b/db/_generated/npc/spyder_nimrod_jervis.json
new file mode 100644
index 0000000..d8777af
--- /dev/null
+++ b/db/_generated/npc/spyder_nimrod_jervis.json
@@ -0,0 +1 @@
+{"slug":"spyder_nimrod_jervis","template":[{"sprite_name":"scientist_brown","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_nimrod_justice.json b/db/_generated/npc/spyder_nimrod_justice.json
new file mode 100644
index 0000000..35d9da0
--- /dev/null
+++ b/db/_generated/npc/spyder_nimrod_justice.json
@@ -0,0 +1 @@
+{"slug":"spyder_nimrod_justice","template":[{"sprite_name":"soldier","combat_front":"soldier","slug":"soldier"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_nimrod_mace.json b/db/_generated/npc/spyder_nimrod_mace.json
new file mode 100644
index 0000000..7bbd709
--- /dev/null
+++ b/db/_generated/npc/spyder_nimrod_mace.json
@@ -0,0 +1 @@
+{"slug":"spyder_nimrod_mace","template":[{"sprite_name":"scientist","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_nimrod_maverick.json b/db/_generated/npc/spyder_nimrod_maverick.json
new file mode 100644
index 0000000..4434e9d
--- /dev/null
+++ b/db/_generated/npc/spyder_nimrod_maverick.json
@@ -0,0 +1 @@
+{"slug":"spyder_nimrod_maverick","template":[{"sprite_name":"soldier","combat_front":"soldier","slug":"soldier"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_nimrod_rebel.json b/db/_generated/npc/spyder_nimrod_rebel.json
new file mode 100644
index 0000000..93c9381
--- /dev/null
+++ b/db/_generated/npc/spyder_nimrod_rebel.json
@@ -0,0 +1 @@
+{"slug":"spyder_nimrod_rebel","template":[{"sprite_name":"soldier","combat_front":"aviator","slug":"aviator"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_nimrod_thatcher.json b/db/_generated/npc/spyder_nimrod_thatcher.json
new file mode 100644
index 0000000..f9712a7
--- /dev/null
+++ b/db/_generated/npc/spyder_nimrod_thatcher.json
@@ -0,0 +1 @@
+{"slug":"spyder_nimrod_thatcher","template":[{"sprite_name":"knight","combat_front":"enforcer_agent","slug":"enforcer_agent"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_nimrod_tru.json b/db/_generated/npc/spyder_nimrod_tru.json
new file mode 100644
index 0000000..f4b3583
--- /dev/null
+++ b/db/_generated/npc/spyder_nimrod_tru.json
@@ -0,0 +1 @@
+{"slug":"spyder_nimrod_tru","template":[{"sprite_name":"knight","combat_front":"knightlord","slug":"knightlord"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_nimrod_xeon.json b/db/_generated/npc/spyder_nimrod_xeon.json
new file mode 100644
index 0000000..eb0d36f
--- /dev/null
+++ b/db/_generated/npc/spyder_nimrod_xeon.json
@@ -0,0 +1 @@
+{"slug":"spyder_nimrod_xeon","template":[{"sprite_name":"robot","combat_front":"xeon","slug":"robot"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_nimrod_zircon.json b/db/_generated/npc/spyder_nimrod_zircon.json
new file mode 100644
index 0000000..26dc998
--- /dev/null
+++ b/db/_generated/npc/spyder_nimrod_zircon.json
@@ -0,0 +1 @@
+{"slug":"spyder_nimrod_zircon","template":[{"sprite_name":"scientist_brown","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_omnichannel_beaverbrook.json b/db/_generated/npc/spyder_omnichannel_beaverbrook.json
new file mode 100644
index 0000000..708869f
--- /dev/null
+++ b/db/_generated/npc/spyder_omnichannel_beaverbrook.json
@@ -0,0 +1 @@
+{"slug":"spyder_omnichannel_beaverbrook","forfeit":false,"template":[{"sprite_name":"ceo","combat_front":"ceo","slug":"ceo"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_omnichannel_bettger.json b/db/_generated/npc/spyder_omnichannel_bettger.json
new file mode 100644
index 0000000..d818163
--- /dev/null
+++ b/db/_generated/npc/spyder_omnichannel_bettger.json
@@ -0,0 +1 @@
+{"slug":"spyder_omnichannel_bettger","template":[{"sprite_name":"rogue_copper","combat_front":"rogue","slug":"rogue"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_omnichannel_byrne.json b/db/_generated/npc/spyder_omnichannel_byrne.json
new file mode 100644
index 0000000..6e4d7dd
--- /dev/null
+++ b/db/_generated/npc/spyder_omnichannel_byrne.json
@@ -0,0 +1 @@
+{"slug":"spyder_omnichannel_byrne","template":[{"sprite_name":"professor_green","combat_front":"professor","slug":"professor"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_omnichannel_carnegie.json b/db/_generated/npc/spyder_omnichannel_carnegie.json
new file mode 100644
index 0000000..6b3428a
--- /dev/null
+++ b/db/_generated/npc/spyder_omnichannel_carnegie.json
@@ -0,0 +1 @@
+{"slug":"spyder_omnichannel_carnegie","template":[{"sprite_name":"cooldude","combat_front":"cooldude","slug":"cooldude"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_omnichannel_crane.json b/db/_generated/npc/spyder_omnichannel_crane.json
new file mode 100644
index 0000000..9f6cfd5
--- /dev/null
+++ b/db/_generated/npc/spyder_omnichannel_crane.json
@@ -0,0 +1 @@
+{"slug":"spyder_omnichannel_crane","template":[{"sprite_name":"spyderrookie","combat_front":"spyder_rookie","slug":"spyder_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_omnichannel_danita.json b/db/_generated/npc/spyder_omnichannel_danita.json
new file mode 100644
index 0000000..b902780
--- /dev/null
+++ b/db/_generated/npc/spyder_omnichannel_danita.json
@@ -0,0 +1 @@
+{"slug":"spyder_omnichannel_danita","template":[{"sprite_name":"nurse","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_omnichannel_dempsey.json b/db/_generated/npc/spyder_omnichannel_dempsey.json
new file mode 100644
index 0000000..5bf8226
--- /dev/null
+++ b/db/_generated/npc/spyder_omnichannel_dempsey.json
@@ -0,0 +1 @@
+{"slug":"spyder_omnichannel_dempsey","template":[{"sprite_name":"spyderboss","combat_front":"spyder_boss","slug":"spyder_boss"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_omnichannel_enforcer.json b/db/_generated/npc/spyder_omnichannel_enforcer.json
new file mode 100644
index 0000000..87acb2a
--- /dev/null
+++ b/db/_generated/npc/spyder_omnichannel_enforcer.json
@@ -0,0 +1 @@
+{"slug":"spyder_omnichannel_enforcer","template":[{"sprite_name":"knight","combat_front":"enforcer_rookie","slug":"enforcer_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_omnichannel_ethan.json b/db/_generated/npc/spyder_omnichannel_ethan.json
new file mode 100644
index 0000000..b27e6ef
--- /dev/null
+++ b/db/_generated/npc/spyder_omnichannel_ethan.json
@@ -0,0 +1 @@
+{"slug":"spyder_omnichannel_ethan","template":[{"sprite_name":"maniac_yellow","combat_front":"adventurer","slug":"maniac"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_omnichannel_gore.json b/db/_generated/npc/spyder_omnichannel_gore.json
new file mode 100644
index 0000000..f7d8b89
--- /dev/null
+++ b/db/_generated/npc/spyder_omnichannel_gore.json
@@ -0,0 +1 @@
+{"slug":"spyder_omnichannel_gore","template":[{"sprite_name":"spyderrookie","combat_front":"spyder_rookie","slug":"spyder_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_omnichannel_schwartz.json b/db/_generated/npc/spyder_omnichannel_schwartz.json
new file mode 100644
index 0000000..43fd18c
--- /dev/null
+++ b/db/_generated/npc/spyder_omnichannel_schwartz.json
@@ -0,0 +1 @@
+{"slug":"spyder_omnichannel_schwartz","template":[{"sprite_name":"rogue","combat_front":"rogue","slug":"rogue"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_omnichannel_strauss.json b/db/_generated/npc/spyder_omnichannel_strauss.json
new file mode 100644
index 0000000..ea3acd0
--- /dev/null
+++ b/db/_generated/npc/spyder_omnichannel_strauss.json
@@ -0,0 +1 @@
+{"slug":"spyder_omnichannel_strauss","template":[{"sprite_name":"warrior","combat_front":"warrior","slug":"warrior"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_omnichannel_talbot.json b/db/_generated/npc/spyder_omnichannel_talbot.json
new file mode 100644
index 0000000..6b9d54b
--- /dev/null
+++ b/db/_generated/npc/spyder_omnichannel_talbot.json
@@ -0,0 +1 @@
+{"slug":"spyder_omnichannel_talbot","template":[{"sprite_name":"spyderrookie","combat_front":"spyder_rookie","slug":"spyder_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_omnichannel_thedukeofdeadair.json b/db/_generated/npc/spyder_omnichannel_thedukeofdeadair.json
new file mode 100644
index 0000000..4e6a614
--- /dev/null
+++ b/db/_generated/npc/spyder_omnichannel_thedukeofdeadair.json
@@ -0,0 +1 @@
+{"slug":"spyder_omnichannel_thedukeofdeadair","template":[{"sprite_name":"rogue_red","combat_front":"rogue","slug":"rogue"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_omnichannel_tohei.json b/db/_generated/npc/spyder_omnichannel_tohei.json
new file mode 100644
index 0000000..84bd4a7
--- /dev/null
+++ b/db/_generated/npc/spyder_omnichannel_tohei.json
@@ -0,0 +1 @@
+{"slug":"spyder_omnichannel_tohei","template":[{"sprite_name":"spyderrookie","combat_front":"spyder_rookie","slug":"spyder_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_omnichannel_william.json b/db/_generated/npc/spyder_omnichannel_william.json
new file mode 100644
index 0000000..002914c
--- /dev/null
+++ b/db/_generated/npc/spyder_omnichannel_william.json
@@ -0,0 +1 @@
+{"slug":"spyder_omnichannel_william","template":[{"sprite_name":"beachcomber_black","combat_front":"yellowbelt","slug":"yellowbelt"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_omnichannel_worm.json b/db/_generated/npc/spyder_omnichannel_worm.json
new file mode 100644
index 0000000..6840147
--- /dev/null
+++ b/db/_generated/npc/spyder_omnichannel_worm.json
@@ -0,0 +1 @@
+{"slug":"spyder_omnichannel_worm","template":[{"sprite_name":"37707_female","combat_front":"ceo","slug":"ceo"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_outsidewalled_midas.json b/db/_generated/npc/spyder_outsidewalled_midas.json
new file mode 100644
index 0000000..8d93b58
--- /dev/null
+++ b/db/_generated/npc/spyder_outsidewalled_midas.json
@@ -0,0 +1 @@
+{"slug":"spyder_outsidewalled_midas","template":[{"sprite_name":"picnicker","combat_front":"picnicker","slug":"picnicker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_outsidewalled_rogue.json b/db/_generated/npc/spyder_outsidewalled_rogue.json
new file mode 100644
index 0000000..351fa75
--- /dev/null
+++ b/db/_generated/npc/spyder_outsidewalled_rogue.json
@@ -0,0 +1 @@
+{"slug":"spyder_outsidewalled_rogue","template":[{"sprite_name":"rogue_green","combat_front":"rogue","slug":"rogue"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_papermanor_princeton.json b/db/_generated/npc/spyder_papermanor_princeton.json
new file mode 100644
index 0000000..6d7aee3
--- /dev/null
+++ b/db/_generated/npc/spyder_papermanor_princeton.json
@@ -0,0 +1 @@
+{"slug":"spyder_papermanor_princeton","template":[{"sprite_name":"maniac_yellow","combat_front":"adventurer","slug":"maniac"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_papermart_harith.json b/db/_generated/npc/spyder_papermart_harith.json
new file mode 100644
index 0000000..c3fcc1b
--- /dev/null
+++ b/db/_generated/npc/spyder_papermart_harith.json
@@ -0,0 +1 @@
+{"slug":"spyder_papermart_harith","template":[{"sprite_name":"beachcomber_copper","combat_front":"adventurer","slug":"beachcomber"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_papermart_miles.json b/db/_generated/npc/spyder_papermart_miles.json
new file mode 100644
index 0000000..b0b54fd
--- /dev/null
+++ b/db/_generated/npc/spyder_papermart_miles.json
@@ -0,0 +1 @@
+{"slug":"spyder_papermart_miles","template":[{"sprite_name":"tennisplayer_fiery","combat_front":"tennisplayer","slug":"tennisplayer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_papermart_rafael.json b/db/_generated/npc/spyder_papermart_rafael.json
new file mode 100644
index 0000000..8a01140
--- /dev/null
+++ b/db/_generated/npc/spyder_papermart_rafael.json
@@ -0,0 +1 @@
+{"slug":"spyder_papermart_rafael","template":[{"sprite_name":"tennisplayer_lapi","combat_front":"tennisplayer","slug":"tennisplayer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_papermart_shirley.json b/db/_generated/npc/spyder_papermart_shirley.json
new file mode 100644
index 0000000..785fd84
--- /dev/null
+++ b/db/_generated/npc/spyder_papermart_shirley.json
@@ -0,0 +1 @@
+{"slug":"spyder_papermart_shirley","template":[{"sprite_name":"picnicker","combat_front":"picnicker","slug":"picnicker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_paperscoop_santino.json b/db/_generated/npc/spyder_paperscoop_santino.json
new file mode 100644
index 0000000..50c1400
--- /dev/null
+++ b/db/_generated/npc/spyder_paperscoop_santino.json
@@ -0,0 +1 @@
+{"slug":"spyder_paperscoop_santino","template":[{"sprite_name":"shopkeeper","combat_front":"adventurer","slug":"shopkeeper"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_papertown_mom.json b/db/_generated/npc/spyder_papertown_mom.json
new file mode 100644
index 0000000..ab61021
--- /dev/null
+++ b/db/_generated/npc/spyder_papertown_mom.json
@@ -0,0 +1 @@
+{"slug":"spyder_papertown_mom","template":[{"sprite_name":"homemaker","combat_front":"adventurer","slug":"homemaker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_papertown_silver.json b/db/_generated/npc/spyder_papertown_silver.json
new file mode 100644
index 0000000..6f54516
--- /dev/null
+++ b/db/_generated/npc/spyder_papertown_silver.json
@@ -0,0 +1 @@
+{"slug":"spyder_papertown_silver","template":[{"sprite_name":"florist","combat_front":"florist","slug":"florist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_rockittenfrolicking.json b/db/_generated/npc/spyder_rockittenfrolicking.json
new file mode 100644
index 0000000..b2f37af
--- /dev/null
+++ b/db/_generated/npc/spyder_rockittenfrolicking.json
@@ -0,0 +1 @@
+{"slug":"spyder_rockittenfrolicking","template":[{"sprite_name":"rockitten","combat_front":"adventurer","slug":"noclass"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route1_bjorn.json b/db/_generated/npc/spyder_route1_bjorn.json
new file mode 100644
index 0000000..fe89c7a
--- /dev/null
+++ b/db/_generated/npc/spyder_route1_bjorn.json
@@ -0,0 +1 @@
+{"slug":"spyder_route1_bjorn","template":[{"sprite_name":"beachcomber","combat_front":"adventurer","slug":"beachcomber"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route2_billie.json b/db/_generated/npc/spyder_route2_billie.json
new file mode 100644
index 0000000..6a30487
--- /dev/null
+++ b/db/_generated/npc/spyder_route2_billie.json
@@ -0,0 +1 @@
+{"slug":"spyder_route2_billie","forfeit":false,"template":[{"sprite_name":"fashionista","combat_front":"fashionista","slug":"fashionista"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route2_graf.json b/db/_generated/npc/spyder_route2_graf.json
new file mode 100644
index 0000000..dd38083
--- /dev/null
+++ b/db/_generated/npc/spyder_route2_graf.json
@@ -0,0 +1 @@
+{"slug":"spyder_route2_graf","template":[{"sprite_name":"tennisplayer_green","combat_front":"tennisplayer","slug":"tennisplayer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route2_marion.json b/db/_generated/npc/spyder_route2_marion.json
new file mode 100644
index 0000000..24469fe
--- /dev/null
+++ b/db/_generated/npc/spyder_route2_marion.json
@@ -0,0 +1 @@
+{"slug":"spyder_route2_marion","template":[{"sprite_name":"picnicker","combat_front":"picnicker","slug":"picnicker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route2_roddick.json b/db/_generated/npc/spyder_route2_roddick.json
new file mode 100644
index 0000000..c6c84c0
--- /dev/null
+++ b/db/_generated/npc/spyder_route2_roddick.json
@@ -0,0 +1 @@
+{"slug":"spyder_route2_roddick","template":[{"sprite_name":"tennisplayer_fiery","combat_front":"tennisplayer","slug":"tennisplayer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route3_connor.json b/db/_generated/npc/spyder_route3_connor.json
new file mode 100644
index 0000000..550fe56
--- /dev/null
+++ b/db/_generated/npc/spyder_route3_connor.json
@@ -0,0 +1 @@
+{"slug":"spyder_route3_connor","template":[{"sprite_name":"tennisplayer","combat_front":"tennisplayer","slug":"tennisplayer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route3_curie.json b/db/_generated/npc/spyder_route3_curie.json
new file mode 100644
index 0000000..e370183
--- /dev/null
+++ b/db/_generated/npc/spyder_route3_curie.json
@@ -0,0 +1 @@
+{"slug":"spyder_route3_curie","template":[{"sprite_name":"scientist","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route3_novak.json b/db/_generated/npc/spyder_route3_novak.json
new file mode 100644
index 0000000..e23f539
--- /dev/null
+++ b/db/_generated/npc/spyder_route3_novak.json
@@ -0,0 +1 @@
+{"slug":"spyder_route3_novak","template":[{"sprite_name":"tennisplayer","combat_front":"tennisplayer","slug":"tennisplayer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route3_qqq.json b/db/_generated/npc/spyder_route3_qqq.json
new file mode 100644
index 0000000..589c351
--- /dev/null
+++ b/db/_generated/npc/spyder_route3_qqq.json
@@ -0,0 +1 @@
+{"slug":"spyder_route3_qqq","template":[{"sprite_name":"spyderrookie","combat_front":"spyder_rookie","slug":"spyder_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route3_roxby.json b/db/_generated/npc/spyder_route3_roxby.json
new file mode 100644
index 0000000..1ff2253
--- /dev/null
+++ b/db/_generated/npc/spyder_route3_roxby.json
@@ -0,0 +1 @@
+{"slug":"spyder_route3_roxby","template":[{"sprite_name":"miner_green","combat_front":"miner","slug":"miner"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route3_ryland.json b/db/_generated/npc/spyder_route3_ryland.json
new file mode 100644
index 0000000..3694c98
--- /dev/null
+++ b/db/_generated/npc/spyder_route3_ryland.json
@@ -0,0 +1 @@
+{"slug":"spyder_route3_ryland","template":[{"sprite_name":"spyderrookie","combat_front":"spyder_rookie","slug":"spyder_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route3_surat.json b/db/_generated/npc/spyder_route3_surat.json
new file mode 100644
index 0000000..5d91539
--- /dev/null
+++ b/db/_generated/npc/spyder_route3_surat.json
@@ -0,0 +1 @@
+{"slug":"spyder_route3_surat","template":[{"sprite_name":"miner_red","combat_front":"miner","slug":"miner"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route3_twig.json b/db/_generated/npc/spyder_route3_twig.json
new file mode 100644
index 0000000..7309cf6
--- /dev/null
+++ b/db/_generated/npc/spyder_route3_twig.json
@@ -0,0 +1 @@
+{"slug":"spyder_route3_twig","template":[{"sprite_name":"miner_yellow","combat_front":"miner","slug":"miner"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route3_wanda.json b/db/_generated/npc/spyder_route3_wanda.json
new file mode 100644
index 0000000..60e7834
--- /dev/null
+++ b/db/_generated/npc/spyder_route3_wanda.json
@@ -0,0 +1 @@
+{"slug":"spyder_route3_wanda","template":[{"sprite_name":"fisher","combat_front":"fisher","slug":"fisher"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route3_weaver.json b/db/_generated/npc/spyder_route3_weaver.json
new file mode 100644
index 0000000..1ce2996
--- /dev/null
+++ b/db/_generated/npc/spyder_route3_weaver.json
@@ -0,0 +1 @@
+{"slug":"spyder_route3_weaver","template":[{"sprite_name":"knight","combat_front":"knight","slug":"knight"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route3_zoolander.json b/db/_generated/npc/spyder_route3_zoolander.json
new file mode 100644
index 0000000..e408bfc
--- /dev/null
+++ b/db/_generated/npc/spyder_route3_zoolander.json
@@ -0,0 +1 @@
+{"slug":"spyder_route3_zoolander","template":[{"sprite_name":"overseer","combat_front":"overseer","slug":"mineoverseer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route4_beck.json b/db/_generated/npc/spyder_route4_beck.json
new file mode 100644
index 0000000..1f09e37
--- /dev/null
+++ b/db/_generated/npc/spyder_route4_beck.json
@@ -0,0 +1 @@
+{"slug":"spyder_route4_beck","template":[{"sprite_name":"tennisplayer","combat_front":"yellowbelt","slug":"yellowbelt"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route4_boost.json b/db/_generated/npc/spyder_route4_boost.json
new file mode 100644
index 0000000..6858bdd
--- /dev/null
+++ b/db/_generated/npc/spyder_route4_boost.json
@@ -0,0 +1 @@
+{"slug":"spyder_route4_boost","template":[{"sprite_name":"box","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route4_marshall.json b/db/_generated/npc/spyder_route4_marshall.json
new file mode 100644
index 0000000..0ab78a2
--- /dev/null
+++ b/db/_generated/npc/spyder_route4_marshall.json
@@ -0,0 +1 @@
+{"slug":"spyder_route4_marshall","template":[{"sprite_name":"soldier","combat_front":"soldier","slug":"soldier"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route4_rincewind.json b/db/_generated/npc/spyder_route4_rincewind.json
new file mode 100644
index 0000000..8f85fbd
--- /dev/null
+++ b/db/_generated/npc/spyder_route4_rincewind.json
@@ -0,0 +1 @@
+{"slug":"spyder_route4_rincewind","template":[{"sprite_name":"beachcomber_blue","combat_front":"yellowbelt","slug":"yellowbelt"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route4_roger.json b/db/_generated/npc/spyder_route4_roger.json
new file mode 100644
index 0000000..3b24fc1
--- /dev/null
+++ b/db/_generated/npc/spyder_route4_roger.json
@@ -0,0 +1 @@
+{"slug":"spyder_route4_roger","template":[{"sprite_name":"soldier","combat_front":"soldier","slug":"soldier"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route4_rosamund.json b/db/_generated/npc/spyder_route4_rosamund.json
new file mode 100644
index 0000000..88a80c9
--- /dev/null
+++ b/db/_generated/npc/spyder_route4_rosamund.json
@@ -0,0 +1 @@
+{"slug":"spyder_route4_rosamund","template":[{"sprite_name":"picnicker","combat_front":"picnicker","slug":"picnicker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route4_super.json b/db/_generated/npc/spyder_route4_super.json
new file mode 100644
index 0000000..90ae6d9
--- /dev/null
+++ b/db/_generated/npc/spyder_route4_super.json
@@ -0,0 +1 @@
+{"slug":"spyder_route4_super","template":[{"sprite_name":"box","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route4_wulf.json b/db/_generated/npc/spyder_route4_wulf.json
new file mode 100644
index 0000000..279b729
--- /dev/null
+++ b/db/_generated/npc/spyder_route4_wulf.json
@@ -0,0 +1 @@
+{"slug":"spyder_route4_wulf","template":[{"sprite_name":"maniac","combat_front":"alchemist","slug":"alchemist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route5_cleo.json b/db/_generated/npc/spyder_route5_cleo.json
new file mode 100644
index 0000000..fc696b2
--- /dev/null
+++ b/db/_generated/npc/spyder_route5_cleo.json
@@ -0,0 +1 @@
+{"slug":"spyder_route5_cleo","template":[{"sprite_name":"catgirl_blonde","combat_front":"catgirl","slug":"catgirl"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route5_edith.json b/db/_generated/npc/spyder_route5_edith.json
new file mode 100644
index 0000000..c746309
--- /dev/null
+++ b/db/_generated/npc/spyder_route5_edith.json
@@ -0,0 +1 @@
+{"slug":"spyder_route5_edith","template":[{"sprite_name":"picnicker","combat_front":"picnicker","slug":"picnicker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route5_goliath.json b/db/_generated/npc/spyder_route5_goliath.json
new file mode 100644
index 0000000..877059d
--- /dev/null
+++ b/db/_generated/npc/spyder_route5_goliath.json
@@ -0,0 +1 @@
+{"slug":"spyder_route5_goliath","template":[{"sprite_name":"spyderrookie","combat_front":"spyder_rookie","slug":"spyder_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route5_hunter.json b/db/_generated/npc/spyder_route5_hunter.json
new file mode 100644
index 0000000..2fea446
--- /dev/null
+++ b/db/_generated/npc/spyder_route5_hunter.json
@@ -0,0 +1 @@
+{"slug":"spyder_route5_hunter","template":[{"sprite_name":"soldier","combat_front":"soldier","slug":"soldier"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route5_lexia.json b/db/_generated/npc/spyder_route5_lexia.json
new file mode 100644
index 0000000..4b4e2f7
--- /dev/null
+++ b/db/_generated/npc/spyder_route5_lexia.json
@@ -0,0 +1 @@
+{"slug":"spyder_route5_lexia","template":[{"sprite_name":"granny","combat_front":"adventurer","slug":"granny"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route5_sara.json b/db/_generated/npc/spyder_route5_sara.json
new file mode 100644
index 0000000..79cd799
--- /dev/null
+++ b/db/_generated/npc/spyder_route5_sara.json
@@ -0,0 +1 @@
+{"slug":"spyder_route5_sara","template":[{"sprite_name":"picnicker","combat_front":"picnicker","slug":"picnicker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route5_tryphaena.json b/db/_generated/npc/spyder_route5_tryphaena.json
new file mode 100644
index 0000000..ea8ec80
--- /dev/null
+++ b/db/_generated/npc/spyder_route5_tryphaena.json
@@ -0,0 +1 @@
+{"slug":"spyder_route5_tryphaena","template":[{"sprite_name":"florist_blue","combat_front":"florist","slug":"florist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route6_blair.json b/db/_generated/npc/spyder_route6_blair.json
new file mode 100644
index 0000000..57b66b5
--- /dev/null
+++ b/db/_generated/npc/spyder_route6_blair.json
@@ -0,0 +1 @@
+{"slug":"spyder_route6_blair","template":[{"sprite_name":"miner_yellow","combat_front":"miner","slug":"miner"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route6_frances.json b/db/_generated/npc/spyder_route6_frances.json
new file mode 100644
index 0000000..cf92ffc
--- /dev/null
+++ b/db/_generated/npc/spyder_route6_frances.json
@@ -0,0 +1 @@
+{"slug":"spyder_route6_frances","template":[{"sprite_name":"florist_brown","combat_front":"florist","slug":"florist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route6_gunner.json b/db/_generated/npc/spyder_route6_gunner.json
new file mode 100644
index 0000000..f381073
--- /dev/null
+++ b/db/_generated/npc/spyder_route6_gunner.json
@@ -0,0 +1 @@
+{"slug":"spyder_route6_gunner","template":[{"sprite_name":"knight","combat_front":"enforcer_rookie","slug":"enforcer_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route6_maxwell.json b/db/_generated/npc/spyder_route6_maxwell.json
new file mode 100644
index 0000000..f974ee0
--- /dev/null
+++ b/db/_generated/npc/spyder_route6_maxwell.json
@@ -0,0 +1 @@
+{"slug":"spyder_route6_maxwell","template":[{"sprite_name":"professor_blue","combat_front":"professor","slug":"professor"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route6_mungo.json b/db/_generated/npc/spyder_route6_mungo.json
new file mode 100644
index 0000000..048c450
--- /dev/null
+++ b/db/_generated/npc/spyder_route6_mungo.json
@@ -0,0 +1 @@
+{"slug":"spyder_route6_mungo","template":[{"sprite_name":"scientist_brown","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route6_orion.json b/db/_generated/npc/spyder_route6_orion.json
new file mode 100644
index 0000000..47fed52
--- /dev/null
+++ b/db/_generated/npc/spyder_route6_orion.json
@@ -0,0 +1 @@
+{"slug":"spyder_route6_orion","template":[{"sprite_name":"professor","combat_front":"professor","slug":"professor"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route6_ping.json b/db/_generated/npc/spyder_route6_ping.json
new file mode 100644
index 0000000..22402be
--- /dev/null
+++ b/db/_generated/npc/spyder_route6_ping.json
@@ -0,0 +1 @@
+{"slug":"spyder_route6_ping","template":[{"sprite_name":"picnicker","combat_front":"picnicker","slug":"picnicker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route6_richard.json b/db/_generated/npc/spyder_route6_richard.json
new file mode 100644
index 0000000..2c50f18
--- /dev/null
+++ b/db/_generated/npc/spyder_route6_richard.json
@@ -0,0 +1 @@
+{"slug":"spyder_route6_richard","template":[{"sprite_name":"magician_grey","combat_front":"magician","slug":"magician"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route6_rigel.json b/db/_generated/npc/spyder_route6_rigel.json
new file mode 100644
index 0000000..a23effe
--- /dev/null
+++ b/db/_generated/npc/spyder_route6_rigel.json
@@ -0,0 +1 @@
+{"slug":"spyder_route6_rigel","template":[{"sprite_name":"scientist_fiery","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route7_arnaut.json b/db/_generated/npc/spyder_route7_arnaut.json
new file mode 100644
index 0000000..f239a3f
--- /dev/null
+++ b/db/_generated/npc/spyder_route7_arnaut.json
@@ -0,0 +1 @@
+{"slug":"spyder_route7_arnaut","template":[{"sprite_name":"rogue_copper","combat_front":"winger","slug":"winger"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route7_arnold.json b/db/_generated/npc/spyder_route7_arnold.json
new file mode 100644
index 0000000..1fc2dc2
--- /dev/null
+++ b/db/_generated/npc/spyder_route7_arnold.json
@@ -0,0 +1 @@
+{"slug":"spyder_route7_arnold","template":[{"sprite_name":"scientist","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route7_conrad.json b/db/_generated/npc/spyder_route7_conrad.json
new file mode 100644
index 0000000..9251491
--- /dev/null
+++ b/db/_generated/npc/spyder_route7_conrad.json
@@ -0,0 +1 @@
+{"slug":"spyder_route7_conrad","template":[{"sprite_name":"picnicker","combat_front":"picnicker","slug":"picnicker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route7_fritz.json b/db/_generated/npc/spyder_route7_fritz.json
new file mode 100644
index 0000000..1967163
--- /dev/null
+++ b/db/_generated/npc/spyder_route7_fritz.json
@@ -0,0 +1 @@
+{"slug":"spyder_route7_fritz","template":[{"sprite_name":"maniac_violet","combat_front":"adventurer","slug":"maniac"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route7_hugh.json b/db/_generated/npc/spyder_route7_hugh.json
new file mode 100644
index 0000000..e3ff10c
--- /dev/null
+++ b/db/_generated/npc/spyder_route7_hugh.json
@@ -0,0 +1 @@
+{"slug":"spyder_route7_hugh","template":[{"sprite_name":"cooldude_black","combat_front":"rocker","slug":"rocker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route7_jacopo.json b/db/_generated/npc/spyder_route7_jacopo.json
new file mode 100644
index 0000000..3f00e82
--- /dev/null
+++ b/db/_generated/npc/spyder_route7_jacopo.json
@@ -0,0 +1 @@
+{"slug":"spyder_route7_jacopo","template":[{"sprite_name":"magician_blonde","combat_front":"magician","slug":"magician"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route7_manfred.json b/db/_generated/npc/spyder_route7_manfred.json
new file mode 100644
index 0000000..c5cfc70
--- /dev/null
+++ b/db/_generated/npc/spyder_route7_manfred.json
@@ -0,0 +1 @@
+{"slug":"spyder_route7_manfred","template":[{"sprite_name":"postboy_green","combat_front":"cooldude","slug":"postboy"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route7_nino.json b/db/_generated/npc/spyder_route7_nino.json
new file mode 100644
index 0000000..e2fe9c8
--- /dev/null
+++ b/db/_generated/npc/spyder_route7_nino.json
@@ -0,0 +1 @@
+{"slug":"spyder_route7_nino","template":[{"sprite_name":"professor_lapi","combat_front":"professor","slug":"professor"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route7_penitent.json b/db/_generated/npc/spyder_route7_penitent.json
new file mode 100644
index 0000000..6d54874
--- /dev/null
+++ b/db/_generated/npc/spyder_route7_penitent.json
@@ -0,0 +1 @@
+{"slug":"spyder_route7_penitent","template":[{"sprite_name":"boss_orange","combat_front":"baller","slug":"baller"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route7_pia.json b/db/_generated/npc/spyder_route7_pia.json
new file mode 100644
index 0000000..a011641
--- /dev/null
+++ b/db/_generated/npc/spyder_route7_pia.json
@@ -0,0 +1 @@
+{"slug":"spyder_route7_pia","template":[{"sprite_name":"florist_fiery","combat_front":"florist","slug":"florist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route7_sordello.json b/db/_generated/npc/spyder_route7_sordello.json
new file mode 100644
index 0000000..40e2425
--- /dev/null
+++ b/db/_generated/npc/spyder_route7_sordello.json
@@ -0,0 +1 @@
+{"slug":"spyder_route7_sordello","template":[{"sprite_name":"tennisplayer_green","combat_front":"coach","slug":"coach"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route7_statius.json b/db/_generated/npc/spyder_route7_statius.json
new file mode 100644
index 0000000..f46ea23
--- /dev/null
+++ b/db/_generated/npc/spyder_route7_statius.json
@@ -0,0 +1 @@
+{"slug":"spyder_route7_statius","template":[{"sprite_name":"monk_black","combat_front":"monk","slug":"monk"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_route7_sylvester.json b/db/_generated/npc/spyder_route7_sylvester.json
new file mode 100644
index 0000000..d244297
--- /dev/null
+++ b/db/_generated/npc/spyder_route7_sylvester.json
@@ -0,0 +1 @@
+{"slug":"spyder_route7_sylvester","template":[{"sprite_name":"beachcomber_copper","combat_front":"beachgoer","slug":"beachgoer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_routea_connie.json b/db/_generated/npc/spyder_routea_connie.json
new file mode 100644
index 0000000..5654e13
--- /dev/null
+++ b/db/_generated/npc/spyder_routea_connie.json
@@ -0,0 +1 @@
+{"slug":"spyder_routea_connie","template":[{"sprite_name":"beachcomber_copper","combat_front":"beachgoer","slug":"beachgoer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_routea_cureall.json b/db/_generated/npc/spyder_routea_cureall.json
new file mode 100644
index 0000000..51eaa58
--- /dev/null
+++ b/db/_generated/npc/spyder_routea_cureall.json
@@ -0,0 +1 @@
+{"slug":"spyder_routea_cureall","template":[{"sprite_name":"box","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_routea_dagger.json b/db/_generated/npc/spyder_routea_dagger.json
new file mode 100644
index 0000000..064cce1
--- /dev/null
+++ b/db/_generated/npc/spyder_routea_dagger.json
@@ -0,0 +1 @@
+{"slug":"spyder_routea_dagger","template":[{"sprite_name":"boss_orange","combat_front":"rocker","slug":"rocker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_routea_doris.json b/db/_generated/npc/spyder_routea_doris.json
new file mode 100644
index 0000000..0c6c686
--- /dev/null
+++ b/db/_generated/npc/spyder_routea_doris.json
@@ -0,0 +1 @@
+{"slug":"spyder_routea_doris","template":[{"sprite_name":"florist_blue","combat_front":"florist","slug":"florist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_routea_jarod.json b/db/_generated/npc/spyder_routea_jarod.json
new file mode 100644
index 0000000..d613181
--- /dev/null
+++ b/db/_generated/npc/spyder_routea_jarod.json
@@ -0,0 +1 @@
+{"slug":"spyder_routea_jarod","template":[{"sprite_name":"firefighter","combat_front":"firefighter","slug":"firefighter"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_routea_joe.json b/db/_generated/npc/spyder_routea_joe.json
new file mode 100644
index 0000000..83e18fd
--- /dev/null
+++ b/db/_generated/npc/spyder_routea_joe.json
@@ -0,0 +1 @@
+{"slug":"spyder_routea_joe","template":[{"sprite_name":"beachcomber_fiery","combat_front":"yellowbelt","slug":"yellowbelt"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_routea_john.json b/db/_generated/npc/spyder_routea_john.json
new file mode 100644
index 0000000..b0e8288
--- /dev/null
+++ b/db/_generated/npc/spyder_routea_john.json
@@ -0,0 +1 @@
+{"slug":"spyder_routea_john","template":[{"sprite_name":"maniac_green","combat_front":"adventurer","slug":"maniac"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_routea_koan.json b/db/_generated/npc/spyder_routea_koan.json
new file mode 100644
index 0000000..6784761
--- /dev/null
+++ b/db/_generated/npc/spyder_routea_koan.json
@@ -0,0 +1 @@
+{"slug":"spyder_routea_koan","template":[{"sprite_name":"boss_red","combat_front":"rocker","slug":"rocker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_routea_lexi.json b/db/_generated/npc/spyder_routea_lexi.json
new file mode 100644
index 0000000..b5fed64
--- /dev/null
+++ b/db/_generated/npc/spyder_routea_lexi.json
@@ -0,0 +1 @@
+{"slug":"spyder_routea_lexi","template":[{"sprite_name":"catgirl_violet","combat_front":"catgirl","slug":"catgirl"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_routea_little.json b/db/_generated/npc/spyder_routea_little.json
new file mode 100644
index 0000000..4cf537e
--- /dev/null
+++ b/db/_generated/npc/spyder_routea_little.json
@@ -0,0 +1 @@
+{"slug":"spyder_routea_little","template":[{"sprite_name":"knight_red","combat_front":"knight","slug":"knight"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_routea_lotu.json b/db/_generated/npc/spyder_routea_lotu.json
new file mode 100644
index 0000000..c6e629a
--- /dev/null
+++ b/db/_generated/npc/spyder_routea_lotu.json
@@ -0,0 +1 @@
+{"slug":"spyder_routea_lotu","template":[{"sprite_name":"monk_red","combat_front":"monk","slug":"monk"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_routea_rosy.json b/db/_generated/npc/spyder_routea_rosy.json
new file mode 100644
index 0000000..50ea45a
--- /dev/null
+++ b/db/_generated/npc/spyder_routea_rosy.json
@@ -0,0 +1 @@
+{"slug":"spyder_routea_rosy","template":[{"sprite_name":"picnicker","combat_front":"picnicker","slug":"picnicker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_routea_super.json b/db/_generated/npc/spyder_routea_super.json
new file mode 100644
index 0000000..ad41f13
--- /dev/null
+++ b/db/_generated/npc/spyder_routea_super.json
@@ -0,0 +1 @@
+{"slug":"spyder_routea_super","template":[{"sprite_name":"box","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_routea_tea.json b/db/_generated/npc/spyder_routea_tea.json
new file mode 100644
index 0000000..30a26c1
--- /dev/null
+++ b/db/_generated/npc/spyder_routea_tea.json
@@ -0,0 +1 @@
+{"slug":"spyder_routea_tea","template":[{"sprite_name":"box","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_routea_vince.json b/db/_generated/npc/spyder_routea_vince.json
new file mode 100644
index 0000000..54b1323
--- /dev/null
+++ b/db/_generated/npc/spyder_routea_vince.json
@@ -0,0 +1 @@
+{"slug":"spyder_routea_vince","template":[{"sprite_name":"goth","combat_front":"goth","slug":"goth"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_routeb_calypso.json b/db/_generated/npc/spyder_routeb_calypso.json
new file mode 100644
index 0000000..47ece42
--- /dev/null
+++ b/db/_generated/npc/spyder_routeb_calypso.json
@@ -0,0 +1 @@
+{"slug":"spyder_routeb_calypso","template":[{"sprite_name":"knight_yellow","combat_front":"enforcer_boss","slug":"enforcer_boss"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_routeb_cytherea.json b/db/_generated/npc/spyder_routeb_cytherea.json
new file mode 100644
index 0000000..b91ebbd
--- /dev/null
+++ b/db/_generated/npc/spyder_routeb_cytherea.json
@@ -0,0 +1 @@
+{"slug":"spyder_routeb_cytherea","template":[{"sprite_name":"knight","combat_front":"enforcer_rookie","slug":"enforcer_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_routeb_electra.json b/db/_generated/npc/spyder_routeb_electra.json
new file mode 100644
index 0000000..5cd1688
--- /dev/null
+++ b/db/_generated/npc/spyder_routeb_electra.json
@@ -0,0 +1 @@
+{"slug":"spyder_routeb_electra","template":[{"sprite_name":"knight_green","combat_front":"enforcer_agent","slug":"enforcer_agent"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_routeb_nephthys.json b/db/_generated/npc/spyder_routeb_nephthys.json
new file mode 100644
index 0000000..8385cd2
--- /dev/null
+++ b/db/_generated/npc/spyder_routeb_nephthys.json
@@ -0,0 +1 @@
+{"slug":"spyder_routeb_nephthys","template":[{"sprite_name":"knight_red","combat_front":"enforcer_agent","slug":"enforcer_agent"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_routeb_sedna.json b/db/_generated/npc/spyder_routeb_sedna.json
new file mode 100644
index 0000000..630a618
--- /dev/null
+++ b/db/_generated/npc/spyder_routeb_sedna.json
@@ -0,0 +1 @@
+{"slug":"spyder_routeb_sedna","template":[{"sprite_name":"knight_red","combat_front":"enforcer_rookie","slug":"enforcer_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_routee_aiolos.json b/db/_generated/npc/spyder_routee_aiolos.json
new file mode 100644
index 0000000..85d61cf
--- /dev/null
+++ b/db/_generated/npc/spyder_routee_aiolos.json
@@ -0,0 +1 @@
+{"slug":"spyder_routee_aiolos","template":[{"sprite_name":"knight_green","combat_front":"enforcer_rookie","slug":"enforcer_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_routee_calliope.json b/db/_generated/npc/spyder_routee_calliope.json
new file mode 100644
index 0000000..a6d16b3
--- /dev/null
+++ b/db/_generated/npc/spyder_routee_calliope.json
@@ -0,0 +1 @@
+{"slug":"spyder_routee_calliope","template":[{"sprite_name":"knight_red","combat_front":"enforcer_agent","slug":"enforcer_agent"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_scoop_alyssa.json b/db/_generated/npc/spyder_scoop_alyssa.json
new file mode 100644
index 0000000..fa6a970
--- /dev/null
+++ b/db/_generated/npc/spyder_scoop_alyssa.json
@@ -0,0 +1 @@
+{"slug":"spyder_scoop_alyssa","template":[{"sprite_name":"nurse_blonde","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_scoop_arachne.json b/db/_generated/npc/spyder_scoop_arachne.json
new file mode 100644
index 0000000..2e3b4f2
--- /dev/null
+++ b/db/_generated/npc/spyder_scoop_arachne.json
@@ -0,0 +1 @@
+{"slug":"spyder_scoop_arachne","template":[{"sprite_name":"spyderboss_blonde","combat_front":"spyder_boss","slug":"spyder_boss"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_scoop_berys.json b/db/_generated/npc/spyder_scoop_berys.json
new file mode 100644
index 0000000..2ab4dda
--- /dev/null
+++ b/db/_generated/npc/spyder_scoop_berys.json
@@ -0,0 +1 @@
+{"slug":"spyder_scoop_berys","template":[{"sprite_name":"professor_black","combat_front":"professor","slug":"professor"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_scoop_cochinia.json b/db/_generated/npc/spyder_scoop_cochinia.json
new file mode 100644
index 0000000..a89f5f5
--- /dev/null
+++ b/db/_generated/npc/spyder_scoop_cochinia.json
@@ -0,0 +1 @@
+{"slug":"spyder_scoop_cochinia","template":[{"sprite_name":"varmint","combat_front":"cochini","slug":"noclass"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_scoop_cochinib.json b/db/_generated/npc/spyder_scoop_cochinib.json
new file mode 100644
index 0000000..40a853b
--- /dev/null
+++ b/db/_generated/npc/spyder_scoop_cochinib.json
@@ -0,0 +1 @@
+{"slug":"spyder_scoop_cochinib","template":[{"sprite_name":"varmint","combat_front":"cochini","slug":"noclass"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_scoop_cochinic.json b/db/_generated/npc/spyder_scoop_cochinic.json
new file mode 100644
index 0000000..286d666
--- /dev/null
+++ b/db/_generated/npc/spyder_scoop_cochinic.json
@@ -0,0 +1 @@
+{"slug":"spyder_scoop_cochinic","template":[{"sprite_name":"varmint","combat_front":"cochini","slug":"noclass"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_scoop_donald.json b/db/_generated/npc/spyder_scoop_donald.json
new file mode 100644
index 0000000..7916064
--- /dev/null
+++ b/db/_generated/npc/spyder_scoop_donald.json
@@ -0,0 +1 @@
+{"slug":"spyder_scoop_donald","template":[{"sprite_name":"cooldude_fiery","combat_front":"cooldude","slug":"cooldude"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_scoop_landrace.json b/db/_generated/npc/spyder_scoop_landrace.json
new file mode 100644
index 0000000..f821052
--- /dev/null
+++ b/db/_generated/npc/spyder_scoop_landrace.json
@@ -0,0 +1 @@
+{"slug":"spyder_scoop_landrace","template":[{"sprite_name":"landrace","combat_front":"sludgehog","slug":"noclass"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_scoop_lanth.json b/db/_generated/npc/spyder_scoop_lanth.json
new file mode 100644
index 0000000..2fe0e5c
--- /dev/null
+++ b/db/_generated/npc/spyder_scoop_lanth.json
@@ -0,0 +1 @@
+{"slug":"spyder_scoop_lanth","template":[{"sprite_name":"professor","combat_front":"professor","slug":"professor"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_scoop_lapinoua.json b/db/_generated/npc/spyder_scoop_lapinoua.json
new file mode 100644
index 0000000..aa7e588
--- /dev/null
+++ b/db/_generated/npc/spyder_scoop_lapinoua.json
@@ -0,0 +1 @@
+{"slug":"spyder_scoop_lapinoua","template":[{"sprite_name":"varmint","combat_front":"lapinou","slug":"noclass"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_scoop_lapinoub.json b/db/_generated/npc/spyder_scoop_lapinoub.json
new file mode 100644
index 0000000..8d4e3e0
--- /dev/null
+++ b/db/_generated/npc/spyder_scoop_lapinoub.json
@@ -0,0 +1 @@
+{"slug":"spyder_scoop_lapinoub","template":[{"sprite_name":"varmint","combat_front":"lapinou","slug":"noclass"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_scoop_lapinouc.json b/db/_generated/npc/spyder_scoop_lapinouc.json
new file mode 100644
index 0000000..be8273a
--- /dev/null
+++ b/db/_generated/npc/spyder_scoop_lapinouc.json
@@ -0,0 +1 @@
+{"slug":"spyder_scoop_lapinouc","template":[{"sprite_name":"varmint","combat_front":"lapinou","slug":"noclass"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_scoop_nash.json b/db/_generated/npc/spyder_scoop_nash.json
new file mode 100644
index 0000000..1ad31bd
--- /dev/null
+++ b/db/_generated/npc/spyder_scoop_nash.json
@@ -0,0 +1 @@
+{"slug":"spyder_scoop_nash","template":[{"sprite_name":"scientist_fiery","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_scoop_orba.json b/db/_generated/npc/spyder_scoop_orba.json
new file mode 100644
index 0000000..5cadc5e
--- /dev/null
+++ b/db/_generated/npc/spyder_scoop_orba.json
@@ -0,0 +1 @@
+{"slug":"spyder_scoop_orba","template":[{"sprite_name":"spyderrookie","combat_front":"spyder_rookie","slug":"spyder_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_scoop_paine.json b/db/_generated/npc/spyder_scoop_paine.json
new file mode 100644
index 0000000..e2c5c77
--- /dev/null
+++ b/db/_generated/npc/spyder_scoop_paine.json
@@ -0,0 +1 @@
+{"slug":"spyder_scoop_paine","template":[{"sprite_name":"nurse_green","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_scoop_reese.json b/db/_generated/npc/spyder_scoop_reese.json
new file mode 100644
index 0000000..244fb5d
--- /dev/null
+++ b/db/_generated/npc/spyder_scoop_reese.json
@@ -0,0 +1 @@
+{"slug":"spyder_scoop_reese","template":[{"sprite_name":"scientist_brown","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_scoop_rubid.json b/db/_generated/npc/spyder_scoop_rubid.json
new file mode 100644
index 0000000..47d2a6d
--- /dev/null
+++ b/db/_generated/npc/spyder_scoop_rubid.json
@@ -0,0 +1 @@
+{"slug":"spyder_scoop_rubid","template":[{"sprite_name":"scientist","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_scoop_taggart.json b/db/_generated/npc/spyder_scoop_taggart.json
new file mode 100644
index 0000000..6e672ed
--- /dev/null
+++ b/db/_generated/npc/spyder_scoop_taggart.json
@@ -0,0 +1 @@
+{"slug":"spyder_scoop_taggart","template":[{"sprite_name":"nurse_red","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_scoop_turner.json b/db/_generated/npc/spyder_scoop_turner.json
new file mode 100644
index 0000000..d9397d4
--- /dev/null
+++ b/db/_generated/npc/spyder_scoop_turner.json
@@ -0,0 +1 @@
+{"slug":"spyder_scoop_turner","template":[{"sprite_name":"knight","combat_front":"enforcer_rookie","slug":"enforcer_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_scoop_weaver.json b/db/_generated/npc/spyder_scoop_weaver.json
new file mode 100644
index 0000000..df60d49
--- /dev/null
+++ b/db/_generated/npc/spyder_scoop_weaver.json
@@ -0,0 +1 @@
+{"slug":"spyder_scoop_weaver","template":[{"sprite_name":"spyderrookie","combat_front":"spyder_rookie","slug":"spyder_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_screen.json b/db/_generated/npc/spyder_screen.json
new file mode 100644
index 0000000..b8c1cd9
--- /dev/null
+++ b/db/_generated/npc/spyder_screen.json
@@ -0,0 +1 @@
+{"slug":"spyder_screen","template":[{"sprite_name":"screen","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_searoutec_alpha.json b/db/_generated/npc/spyder_searoutec_alpha.json
new file mode 100644
index 0000000..c939c58
--- /dev/null
+++ b/db/_generated/npc/spyder_searoutec_alpha.json
@@ -0,0 +1 @@
+{"slug":"spyder_searoutec_alpha","template":[{"sprite_name":"swimmer_red","combat_front":"swimmer","slug":"swimmer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_searoutec_beech.json b/db/_generated/npc/spyder_searoutec_beech.json
new file mode 100644
index 0000000..b26cb66
--- /dev/null
+++ b/db/_generated/npc/spyder_searoutec_beech.json
@@ -0,0 +1 @@
+{"slug":"spyder_searoutec_beech","template":[{"sprite_name":"swimmer_red","combat_front":"swimmer","slug":"swimmer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_searoutec_beta.json b/db/_generated/npc/spyder_searoutec_beta.json
new file mode 100644
index 0000000..72b7152
--- /dev/null
+++ b/db/_generated/npc/spyder_searoutec_beta.json
@@ -0,0 +1 @@
+{"slug":"spyder_searoutec_beta","template":[{"sprite_name":"swimmer_orange","combat_front":"swimmer","slug":"swimmer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_searoutec_carstair.json b/db/_generated/npc/spyder_searoutec_carstair.json
new file mode 100644
index 0000000..f5520f2
--- /dev/null
+++ b/db/_generated/npc/spyder_searoutec_carstair.json
@@ -0,0 +1 @@
+{"slug":"spyder_searoutec_carstair","template":[{"sprite_name":"beachcomber_blue","combat_front":"yellowbelt","slug":"beachcomber"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_searoutec_gil.json b/db/_generated/npc/spyder_searoutec_gil.json
new file mode 100644
index 0000000..3d0a8d0
--- /dev/null
+++ b/db/_generated/npc/spyder_searoutec_gil.json
@@ -0,0 +1 @@
+{"slug":"spyder_searoutec_gil","template":[{"sprite_name":"swimmer_blue","combat_front":"swimmer","slug":"swimmer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_searoutec_leek.json b/db/_generated/npc/spyder_searoutec_leek.json
new file mode 100644
index 0000000..2c22549
--- /dev/null
+++ b/db/_generated/npc/spyder_searoutec_leek.json
@@ -0,0 +1 @@
+{"slug":"spyder_searoutec_leek","template":[{"sprite_name":"swimmer","combat_front":"swimmer","slug":"swimmer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_searoutec_maurice.json b/db/_generated/npc/spyder_searoutec_maurice.json
new file mode 100644
index 0000000..aa80238
--- /dev/null
+++ b/db/_generated/npc/spyder_searoutec_maurice.json
@@ -0,0 +1 @@
+{"slug":"spyder_searoutec_maurice","template":[{"sprite_name":"fisher_fiery","combat_front":"fisher","slug":"fisher"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_searoutec_more.json b/db/_generated/npc/spyder_searoutec_more.json
new file mode 100644
index 0000000..f7e11ad
--- /dev/null
+++ b/db/_generated/npc/spyder_searoutec_more.json
@@ -0,0 +1 @@
+{"slug":"spyder_searoutec_more","template":[{"sprite_name":"swimmer_green","combat_front":"swimmer","slug":"swimmer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_searoutec_nigel.json b/db/_generated/npc/spyder_searoutec_nigel.json
new file mode 100644
index 0000000..f58f454
--- /dev/null
+++ b/db/_generated/npc/spyder_searoutec_nigel.json
@@ -0,0 +1 @@
+{"slug":"spyder_searoutec_nigel","template":[{"sprite_name":"dragonrider_blue","combat_front":"dragonrider","slug":"dragonrider"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_searoutec_river.json b/db/_generated/npc/spyder_searoutec_river.json
new file mode 100644
index 0000000..09cd4b8
--- /dev/null
+++ b/db/_generated/npc/spyder_searoutec_river.json
@@ -0,0 +1 @@
+{"slug":"spyder_searoutec_river","template":[{"sprite_name":"swimmer_orange","combat_front":"swimmer","slug":"swimmer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_searoutec_rutherford.json b/db/_generated/npc/spyder_searoutec_rutherford.json
new file mode 100644
index 0000000..31673aa
--- /dev/null
+++ b/db/_generated/npc/spyder_searoutec_rutherford.json
@@ -0,0 +1 @@
+{"slug":"spyder_searoutec_rutherford","template":[{"sprite_name":"scientist","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_searoutec_sandy.json b/db/_generated/npc/spyder_searoutec_sandy.json
new file mode 100644
index 0000000..1385b8e
--- /dev/null
+++ b/db/_generated/npc/spyder_searoutec_sandy.json
@@ -0,0 +1 @@
+{"slug":"spyder_searoutec_sandy","template":[{"sprite_name":"fisher","combat_front":"fisher","slug":"fisher"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_searoutec_stafford.json b/db/_generated/npc/spyder_searoutec_stafford.json
new file mode 100644
index 0000000..207c2a9
--- /dev/null
+++ b/db/_generated/npc/spyder_searoutec_stafford.json
@@ -0,0 +1 @@
+{"slug":"spyder_searoutec_stafford","template":[{"sprite_name":"beachcomber_copper","combat_front":"yellowbelt","slug":"beachcomber"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_searoutec_wade.json b/db/_generated/npc/spyder_searoutec_wade.json
new file mode 100644
index 0000000..4614490
--- /dev/null
+++ b/db/_generated/npc/spyder_searoutec_wade.json
@@ -0,0 +1 @@
+{"slug":"spyder_searoutec_wade","template":[{"sprite_name":"swimmer_blue","combat_front":"swimmer","slug":"swimmer"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_shopassistant.json b/db/_generated/npc/spyder_shopassistant.json
new file mode 100644
index 0000000..1fac676
--- /dev/null
+++ b/db/_generated/npc/spyder_shopassistant.json
@@ -0,0 +1 @@
+{"slug":"spyder_shopassistant","template":[{"sprite_name":"shopassist","combat_front":"shopassist","slug":"shopassistant"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_statue_blue.json b/db/_generated/npc/spyder_statue_blue.json
new file mode 100644
index 0000000..b076b02
--- /dev/null
+++ b/db/_generated/npc/spyder_statue_blue.json
@@ -0,0 +1 @@
+{"slug":"spyder_statue_blue","template":[{"sprite_name":"statue_blue","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_statue_green.json b/db/_generated/npc/spyder_statue_green.json
new file mode 100644
index 0000000..f004bf9
--- /dev/null
+++ b/db/_generated/npc/spyder_statue_green.json
@@ -0,0 +1 @@
+{"slug":"spyder_statue_green","template":[{"sprite_name":"statue_green","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_statue_grey.json b/db/_generated/npc/spyder_statue_grey.json
new file mode 100644
index 0000000..5cdd189
--- /dev/null
+++ b/db/_generated/npc/spyder_statue_grey.json
@@ -0,0 +1 @@
+{"slug":"spyder_statue_grey","template":[{"sprite_name":"statue_grey","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_statue_orange.json b/db/_generated/npc/spyder_statue_orange.json
new file mode 100644
index 0000000..87385ee
--- /dev/null
+++ b/db/_generated/npc/spyder_statue_orange.json
@@ -0,0 +1 @@
+{"slug":"spyder_statue_orange","template":[{"sprite_name":"statue_orange","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_statue_red.json b/db/_generated/npc/spyder_statue_red.json
new file mode 100644
index 0000000..f0e401c
--- /dev/null
+++ b/db/_generated/npc/spyder_statue_red.json
@@ -0,0 +1 @@
+{"slug":"spyder_statue_red","template":[{"sprite_name":"statue_red","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_timbercafe_grady.json b/db/_generated/npc/spyder_timbercafe_grady.json
new file mode 100644
index 0000000..ebbdc19
--- /dev/null
+++ b/db/_generated/npc/spyder_timbercafe_grady.json
@@ -0,0 +1 @@
+{"slug":"spyder_timbercafe_grady","template":[{"sprite_name":"magician","combat_front":"magician","slug":"magician"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_timbercenter_luciana.json b/db/_generated/npc/spyder_timbercenter_luciana.json
new file mode 100644
index 0000000..57065fb
--- /dev/null
+++ b/db/_generated/npc/spyder_timbercenter_luciana.json
@@ -0,0 +1 @@
+{"slug":"spyder_timbercenter_luciana","template":[{"sprite_name":"nurse","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_timberhouse_zed.json b/db/_generated/npc/spyder_timberhouse_zed.json
new file mode 100644
index 0000000..273dd14
--- /dev/null
+++ b/db/_generated/npc/spyder_timberhouse_zed.json
@@ -0,0 +1 @@
+{"slug":"spyder_timberhouse_zed","template":[{"sprite_name":"firefighter","combat_front":"firefighter","slug":"firefighter"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_timberscoop_leandro.json b/db/_generated/npc/spyder_timberscoop_leandro.json
new file mode 100644
index 0000000..88b5c15
--- /dev/null
+++ b/db/_generated/npc/spyder_timberscoop_leandro.json
@@ -0,0 +1 @@
+{"slug":"spyder_timberscoop_leandro","template":[{"sprite_name":"shopkeeper","combat_front":"adventurer","slug":"shopkeeper"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_top_jackson.json b/db/_generated/npc/spyder_top_jackson.json
new file mode 100644
index 0000000..8a42525
--- /dev/null
+++ b/db/_generated/npc/spyder_top_jackson.json
@@ -0,0 +1 @@
+{"slug":"spyder_top_jackson","template":[{"sprite_name":"rogue_copper","combat_front":"rogue","slug":"rogue"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_top_lenny.json b/db/_generated/npc/spyder_top_lenny.json
new file mode 100644
index 0000000..46c03d4
--- /dev/null
+++ b/db/_generated/npc/spyder_top_lenny.json
@@ -0,0 +1 @@
+{"slug":"spyder_top_lenny","template":[{"sprite_name":"magician","combat_front":"magician","slug":"magician"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_top_maura.json b/db/_generated/npc/spyder_top_maura.json
new file mode 100644
index 0000000..e756164
--- /dev/null
+++ b/db/_generated/npc/spyder_top_maura.json
@@ -0,0 +1 @@
+{"slug":"spyder_top_maura","template":[{"sprite_name":"barmaid_blonde","combat_front":"barmaid","slug":"barmaid"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_top_mickey.json b/db/_generated/npc/spyder_top_mickey.json
new file mode 100644
index 0000000..644eb04
--- /dev/null
+++ b/db/_generated/npc/spyder_top_mickey.json
@@ -0,0 +1 @@
+{"slug":"spyder_top_mickey","template":[{"sprite_name":"scientist_fiery","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_top_penelope.json b/db/_generated/npc/spyder_top_penelope.json
new file mode 100644
index 0000000..4bfcd0e
--- /dev/null
+++ b/db/_generated/npc/spyder_top_penelope.json
@@ -0,0 +1 @@
+{"slug":"spyder_top_penelope","template":[{"sprite_name":"barmaid_red","combat_front":"barmaid","slug":"barmaid"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_top_ricardo.json b/db/_generated/npc/spyder_top_ricardo.json
new file mode 100644
index 0000000..1b40f9c
--- /dev/null
+++ b/db/_generated/npc/spyder_top_ricardo.json
@@ -0,0 +1 @@
+{"slug":"spyder_top_ricardo","template":[{"sprite_name":"rogue_red","combat_front":"rogue","slug":"rogue"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_top_russell.json b/db/_generated/npc/spyder_top_russell.json
new file mode 100644
index 0000000..bcecea8
--- /dev/null
+++ b/db/_generated/npc/spyder_top_russell.json
@@ -0,0 +1 @@
+{"slug":"spyder_top_russell","template":[{"sprite_name":"magician_fiery","combat_front":"mage","slug":"mage"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_tunnelb_beryll.json b/db/_generated/npc/spyder_tunnelb_beryll.json
new file mode 100644
index 0000000..495c775
--- /dev/null
+++ b/db/_generated/npc/spyder_tunnelb_beryll.json
@@ -0,0 +1 @@
+{"slug":"spyder_tunnelb_beryll","template":[{"sprite_name":"scientist","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_tunnelb_greta.json b/db/_generated/npc/spyder_tunnelb_greta.json
new file mode 100644
index 0000000..7cd0aca
--- /dev/null
+++ b/db/_generated/npc/spyder_tunnelb_greta.json
@@ -0,0 +1 @@
+{"slug":"spyder_tunnelb_greta","template":[{"sprite_name":"picnicker","combat_front":"picnicker","slug":"picnicker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_tunnelb_iris.json b/db/_generated/npc/spyder_tunnelb_iris.json
new file mode 100644
index 0000000..a63dd14
--- /dev/null
+++ b/db/_generated/npc/spyder_tunnelb_iris.json
@@ -0,0 +1 @@
+{"slug":"spyder_tunnelb_iris","template":[{"sprite_name":"florist_brown","combat_front":"florist","slug":"florist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_tunnelb_lute.json b/db/_generated/npc/spyder_tunnelb_lute.json
new file mode 100644
index 0000000..6781547
--- /dev/null
+++ b/db/_generated/npc/spyder_tunnelb_lute.json
@@ -0,0 +1 @@
+{"slug":"spyder_tunnelb_lute","template":[{"sprite_name":"scientist_black","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_tunnelb_meitner.json b/db/_generated/npc/spyder_tunnelb_meitner.json
new file mode 100644
index 0000000..6bb5c99
--- /dev/null
+++ b/db/_generated/npc/spyder_tunnelb_meitner.json
@@ -0,0 +1 @@
+{"slug":"spyder_tunnelb_meitner","template":[{"sprite_name":"scientist_fiery","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_tunnelb_rhincus.json b/db/_generated/npc/spyder_tunnelb_rhincus.json
new file mode 100644
index 0000000..c6d400a
--- /dev/null
+++ b/db/_generated/npc/spyder_tunnelb_rhincus.json
@@ -0,0 +1 @@
+{"slug":"spyder_tunnelb_rhincus","template":[{"sprite_name":"box","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_tunnelb_shammer.json b/db/_generated/npc/spyder_tunnelb_shammer.json
new file mode 100644
index 0000000..6decc30
--- /dev/null
+++ b/db/_generated/npc/spyder_tunnelb_shammer.json
@@ -0,0 +1 @@
+{"slug":"spyder_tunnelb_shammer","template":[{"sprite_name":"box","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_tunnelb_tommy.json b/db/_generated/npc/spyder_tunnelb_tommy.json
new file mode 100644
index 0000000..dd34808
--- /dev/null
+++ b/db/_generated/npc/spyder_tunnelb_tommy.json
@@ -0,0 +1 @@
+{"slug":"spyder_tunnelb_tommy","template":[{"sprite_name":"beachcomber_gray","combat_front":"yellowbelt","slug":"yellowbelt"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_tuxeball.json b/db/_generated/npc/spyder_tuxeball.json
new file mode 100644
index 0000000..65123da
--- /dev/null
+++ b/db/_generated/npc/spyder_tuxeball.json
@@ -0,0 +1 @@
+{"slug":"spyder_tuxeball","template":[{"sprite_name":"tuxeball","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_tuxeball_green.json b/db/_generated/npc/spyder_tuxeball_green.json
new file mode 100644
index 0000000..d112ca2
--- /dev/null
+++ b/db/_generated/npc/spyder_tuxeball_green.json
@@ -0,0 +1 @@
+{"slug":"spyder_tuxeball_green","template":[{"sprite_name":"tuxeball_green","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_tuxeball_red.json b/db/_generated/npc/spyder_tuxeball_red.json
new file mode 100644
index 0000000..229a222
--- /dev/null
+++ b/db/_generated/npc/spyder_tuxeball_red.json
@@ -0,0 +1 @@
+{"slug":"spyder_tuxeball_red","template":[{"sprite_name":"tuxeball_red","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_tuxeball_violet.json b/db/_generated/npc/spyder_tuxeball_violet.json
new file mode 100644
index 0000000..644e8d8
--- /dev/null
+++ b/db/_generated/npc/spyder_tuxeball_violet.json
@@ -0,0 +1 @@
+{"slug":"spyder_tuxeball_violet","template":[{"sprite_name":"tuxeball_violet","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_tuxeball_yellow.json b/db/_generated/npc/spyder_tuxeball_yellow.json
new file mode 100644
index 0000000..6b27a24
--- /dev/null
+++ b/db/_generated/npc/spyder_tuxeball_yellow.json
@@ -0,0 +1 @@
+{"slug":"spyder_tuxeball_yellow","template":[{"sprite_name":"tuxeball_yellow","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_volcoli.json b/db/_generated/npc/spyder_volcoli.json
new file mode 100644
index 0000000..f54d02e
--- /dev/null
+++ b/db/_generated/npc/spyder_volcoli.json
@@ -0,0 +1 @@
+{"slug":"spyder_volcoli","template":[{"sprite_name":"volcoli","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_walled_alexander.json b/db/_generated/npc/spyder_walled_alexander.json
new file mode 100644
index 0000000..5257958
--- /dev/null
+++ b/db/_generated/npc/spyder_walled_alexander.json
@@ -0,0 +1 @@
+{"slug":"spyder_walled_alexander","forfeit":false,"template":[{"sprite_name":"ceo","combat_front":"ceo","slug":"ceo"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_walled_astor.json b/db/_generated/npc/spyder_walled_astor.json
new file mode 100644
index 0000000..cb70b7c
--- /dev/null
+++ b/db/_generated/npc/spyder_walled_astor.json
@@ -0,0 +1 @@
+{"slug":"spyder_walled_astor","forfeit":false,"template":[{"sprite_name":"cooldude","combat_front":"cooldude","slug":"cooldude"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_walled_augustus.json b/db/_generated/npc/spyder_walled_augustus.json
new file mode 100644
index 0000000..afa124f
--- /dev/null
+++ b/db/_generated/npc/spyder_walled_augustus.json
@@ -0,0 +1 @@
+{"slug":"spyder_walled_augustus","forfeit":false,"template":[{"sprite_name":"ceo","combat_front":"ceo","slug":"ceo"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_walled_carnegie.json b/db/_generated/npc/spyder_walled_carnegie.json
new file mode 100644
index 0000000..cb85505
--- /dev/null
+++ b/db/_generated/npc/spyder_walled_carnegie.json
@@ -0,0 +1 @@
+{"slug":"spyder_walled_carnegie","forfeit":false,"template":[{"sprite_name":"ceo","combat_front":"ceo","slug":"ceo"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_walled_crassus.json b/db/_generated/npc/spyder_walled_crassus.json
new file mode 100644
index 0000000..dc24cce
--- /dev/null
+++ b/db/_generated/npc/spyder_walled_crassus.json
@@ -0,0 +1 @@
+{"slug":"spyder_walled_crassus","forfeit":false,"template":[{"sprite_name":"ceo","combat_front":"ceo","slug":"ceo"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_walled_ford.json b/db/_generated/npc/spyder_walled_ford.json
new file mode 100644
index 0000000..8d07dea
--- /dev/null
+++ b/db/_generated/npc/spyder_walled_ford.json
@@ -0,0 +1 @@
+{"slug":"spyder_walled_ford","forfeit":false,"template":[{"sprite_name":"picnicker","combat_front":"picnicker","slug":"picnicker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_walled_fugger.json b/db/_generated/npc/spyder_walled_fugger.json
new file mode 100644
index 0000000..0330113
--- /dev/null
+++ b/db/_generated/npc/spyder_walled_fugger.json
@@ -0,0 +1 @@
+{"slug":"spyder_walled_fugger","forfeit":false,"template":[{"sprite_name":"ceo","combat_front":"ceo","slug":"ceo"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_walled_girard.json b/db/_generated/npc/spyder_walled_girard.json
new file mode 100644
index 0000000..7a2c6fd
--- /dev/null
+++ b/db/_generated/npc/spyder_walled_girard.json
@@ -0,0 +1 @@
+{"slug":"spyder_walled_girard","forfeit":false,"template":[{"sprite_name":"ceo","combat_front":"ceo","slug":"ceo"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_walled_midas.json b/db/_generated/npc/spyder_walled_midas.json
new file mode 100644
index 0000000..7530a4f
--- /dev/null
+++ b/db/_generated/npc/spyder_walled_midas.json
@@ -0,0 +1 @@
+{"slug":"spyder_walled_midas","forfeit":false,"template":[{"sprite_name":"picnicker","combat_front":"picnicker","slug":"picnicker"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_walled_musa.json b/db/_generated/npc/spyder_walled_musa.json
new file mode 100644
index 0000000..1f9145d
--- /dev/null
+++ b/db/_generated/npc/spyder_walled_musa.json
@@ -0,0 +1 @@
+{"slug":"spyder_walled_musa","forfeit":false,"template":[{"sprite_name":"ceo","combat_front":"ceo","slug":"ceo"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_walled_osman.json b/db/_generated/npc/spyder_walled_osman.json
new file mode 100644
index 0000000..f3f2c2d
--- /dev/null
+++ b/db/_generated/npc/spyder_walled_osman.json
@@ -0,0 +1 @@
+{"slug":"spyder_walled_osman","forfeit":false,"template":[{"sprite_name":"cooldude","combat_front":"cooldude","slug":"cooldude"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_walled_rufus.json b/db/_generated/npc/spyder_walled_rufus.json
new file mode 100644
index 0000000..582bd9f
--- /dev/null
+++ b/db/_generated/npc/spyder_walled_rufus.json
@@ -0,0 +1 @@
+{"slug":"spyder_walled_rufus","forfeit":false,"template":[{"sprite_name":"cooldude","combat_front":"cooldude","slug":"cooldude"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_walled_vanderbilt.json b/db/_generated/npc/spyder_walled_vanderbilt.json
new file mode 100644
index 0000000..cafcebe
--- /dev/null
+++ b/db/_generated/npc/spyder_walled_vanderbilt.json
@@ -0,0 +1 @@
+{"slug":"spyder_walled_vanderbilt","forfeit":false,"template":[{"sprite_name":"ceo","combat_front":"ceo","slug":"ceo"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_wayfarer1_addy.json b/db/_generated/npc/spyder_wayfarer1_addy.json
new file mode 100644
index 0000000..a7b4a1d
--- /dev/null
+++ b/db/_generated/npc/spyder_wayfarer1_addy.json
@@ -0,0 +1 @@
+{"slug":"spyder_wayfarer1_addy","template":[{"sprite_name":"nurse_green","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_wayfarer1_bismuth.json b/db/_generated/npc/spyder_wayfarer1_bismuth.json
new file mode 100644
index 0000000..c1a2239
--- /dev/null
+++ b/db/_generated/npc/spyder_wayfarer1_bismuth.json
@@ -0,0 +1 @@
+{"slug":"spyder_wayfarer1_bismuth","template":[{"sprite_name":"scientist_black","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_wayfarer1_bravo.json b/db/_generated/npc/spyder_wayfarer1_bravo.json
new file mode 100644
index 0000000..324e3ee
--- /dev/null
+++ b/db/_generated/npc/spyder_wayfarer1_bravo.json
@@ -0,0 +1 @@
+{"slug":"spyder_wayfarer1_bravo","template":[{"sprite_name":"knight","combat_front":"enforcer_agent","slug":"enforcer_agent"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_wayfarer1_james.json b/db/_generated/npc/spyder_wayfarer1_james.json
new file mode 100644
index 0000000..d843526
--- /dev/null
+++ b/db/_generated/npc/spyder_wayfarer1_james.json
@@ -0,0 +1 @@
+{"slug":"spyder_wayfarer1_james","template":[{"sprite_name":"scientist","combat_front":"scientist","slug":"scientist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_wayfarer1_jessie.json b/db/_generated/npc/spyder_wayfarer1_jessie.json
new file mode 100644
index 0000000..c1f14c9
--- /dev/null
+++ b/db/_generated/npc/spyder_wayfarer1_jessie.json
@@ -0,0 +1 @@
+{"slug":"spyder_wayfarer1_jessie","template":[{"sprite_name":"nurse_red","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_wayfarer1_morningstar.json b/db/_generated/npc/spyder_wayfarer1_morningstar.json
new file mode 100644
index 0000000..6123e64
--- /dev/null
+++ b/db/_generated/npc/spyder_wayfarer1_morningstar.json
@@ -0,0 +1 @@
+{"slug":"spyder_wayfarer1_morningstar","template":[{"sprite_name":"nurse_lapi","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_wayfarer1_morton.json b/db/_generated/npc/spyder_wayfarer1_morton.json
new file mode 100644
index 0000000..e3d72fd
--- /dev/null
+++ b/db/_generated/npc/spyder_wayfarer1_morton.json
@@ -0,0 +1 @@
+{"slug":"spyder_wayfarer1_morton","template":[{"sprite_name":"beachcomber_fiery","combat_front":"yellowbelt","slug":"yellowbelt"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_wayfarer1_nightshade.json b/db/_generated/npc/spyder_wayfarer1_nightshade.json
new file mode 100644
index 0000000..a9e35e0
--- /dev/null
+++ b/db/_generated/npc/spyder_wayfarer1_nightshade.json
@@ -0,0 +1 @@
+{"slug":"spyder_wayfarer1_nightshade","template":[{"sprite_name":"nurse_blue","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_wayfarer1_norm.json b/db/_generated/npc/spyder_wayfarer1_norm.json
new file mode 100644
index 0000000..b13455d
--- /dev/null
+++ b/db/_generated/npc/spyder_wayfarer1_norm.json
@@ -0,0 +1 @@
+{"slug":"spyder_wayfarer1_norm","template":[{"sprite_name":"shopkeeper_brown","combat_front":"adventurer","slug":"shopkeeper"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_wayfarer1_ratcher.json b/db/_generated/npc/spyder_wayfarer1_ratcher.json
new file mode 100644
index 0000000..4dead95
--- /dev/null
+++ b/db/_generated/npc/spyder_wayfarer1_ratcher.json
@@ -0,0 +1 @@
+{"slug":"spyder_wayfarer1_ratcher","template":[{"sprite_name":"nurse","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_wayfarer1_victor.json b/db/_generated/npc/spyder_wayfarer1_victor.json
new file mode 100644
index 0000000..aa0421a
--- /dev/null
+++ b/db/_generated/npc/spyder_wayfarer1_victor.json
@@ -0,0 +1 @@
+{"slug":"spyder_wayfarer1_victor","template":[{"sprite_name":"knight","combat_front":"enforcer_rookie","slug":"enforcer_rookie"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_wayfarer1_wes.json b/db/_generated/npc/spyder_wayfarer1_wes.json
new file mode 100644
index 0000000..211b65c
--- /dev/null
+++ b/db/_generated/npc/spyder_wayfarer1_wes.json
@@ -0,0 +1 @@
+{"slug":"spyder_wayfarer1_wes","template":[{"sprite_name":"maniac_violet","combat_front":"adventurer","slug":"maniac"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_wayfarer2_gae.json b/db/_generated/npc/spyder_wayfarer2_gae.json
new file mode 100644
index 0000000..da44b52
--- /dev/null
+++ b/db/_generated/npc/spyder_wayfarer2_gae.json
@@ -0,0 +1 @@
+{"slug":"spyder_wayfarer2_gae","template":[{"sprite_name":"granny","combat_front":"adventurer","slug":"granny"}]} \ No newline at end of file
diff --git a/db/_generated/npc/spyder_wayfarer2_kim.json b/db/_generated/npc/spyder_wayfarer2_kim.json
new file mode 100644
index 0000000..6f6b759
--- /dev/null
+++ b/db/_generated/npc/spyder_wayfarer2_kim.json
@@ -0,0 +1 @@
+{"slug":"spyder_wayfarer2_kim","template":[{"sprite_name":"maniac","combat_front":"adventurer","slug":"maniac"}]} \ No newline at end of file
diff --git a/db/_generated/npc/taba_greeter.json b/db/_generated/npc/taba_greeter.json
new file mode 100644
index 0000000..9f53874
--- /dev/null
+++ b/db/_generated/npc/taba_greeter.json
@@ -0,0 +1 @@
+{"slug":"taba_greeter","template":[{"sprite_name":"shopassist","combat_front":"adventurer","slug":"shopassistant"}]} \ No newline at end of file
diff --git a/db/_generated/npc/taba_house1_husband.json b/db/_generated/npc/taba_house1_husband.json
new file mode 100644
index 0000000..da70bf1
--- /dev/null
+++ b/db/_generated/npc/taba_house1_husband.json
@@ -0,0 +1 @@
+{"slug":"taba_house1_husband","template":[{"sprite_name":"maniac","combat_front":"adventurer","slug":"maniac"}]} \ No newline at end of file
diff --git a/db/_generated/npc/taba_house1_wife.json b/db/_generated/npc/taba_house1_wife.json
new file mode 100644
index 0000000..bd10268
--- /dev/null
+++ b/db/_generated/npc/taba_house1_wife.json
@@ -0,0 +1 @@
+{"slug":"taba_house1_wife","template":[{"sprite_name":"granny","combat_front":"heroine","slug":"heroine"}]} \ No newline at end of file
diff --git a/db/_generated/npc/taba_house2_owner.json b/db/_generated/npc/taba_house2_owner.json
new file mode 100644
index 0000000..d4c2448
--- /dev/null
+++ b/db/_generated/npc/taba_house2_owner.json
@@ -0,0 +1 @@
+{"slug":"taba_house2_owner","template":[{"sprite_name":"christie_fiery","combat_front":"heroine","slug":"heroine"}]} \ No newline at end of file
diff --git a/db/_generated/npc/taba_house2_reader1.json b/db/_generated/npc/taba_house2_reader1.json
new file mode 100644
index 0000000..7bb49ae
--- /dev/null
+++ b/db/_generated/npc/taba_house2_reader1.json
@@ -0,0 +1 @@
+{"slug":"taba_house2_reader1","template":[{"sprite_name":"heroine_brown","combat_front":"heroine","slug":"heroine"}]} \ No newline at end of file
diff --git a/db/_generated/npc/taba_house2_reader2.json b/db/_generated/npc/taba_house2_reader2.json
new file mode 100644
index 0000000..5d5e60d
--- /dev/null
+++ b/db/_generated/npc/taba_house2_reader2.json
@@ -0,0 +1 @@
+{"slug":"taba_house2_reader2","template":[{"sprite_name":"heroine_red","combat_front":"heroine","slug":"heroine"}]} \ No newline at end of file
diff --git a/db/_generated/npc/taba_house3_owner.json b/db/_generated/npc/taba_house3_owner.json
new file mode 100644
index 0000000..a5da4fa
--- /dev/null
+++ b/db/_generated/npc/taba_house3_owner.json
@@ -0,0 +1 @@
+{"slug":"taba_house3_owner","template":[{"sprite_name":"christie_black","combat_front":"heroine","slug":"heroine"}]} \ No newline at end of file
diff --git a/db/_generated/npc/taba_house4_client1.json b/db/_generated/npc/taba_house4_client1.json
new file mode 100644
index 0000000..e0460dc
--- /dev/null
+++ b/db/_generated/npc/taba_house4_client1.json
@@ -0,0 +1 @@
+{"slug":"taba_house4_client1","template":[{"sprite_name":"shopassist_grey","combat_front":"adventurer","slug":"shopassistant"}]} \ No newline at end of file
diff --git a/db/_generated/npc/taba_house4_client2.json b/db/_generated/npc/taba_house4_client2.json
new file mode 100644
index 0000000..f6f1a5a
--- /dev/null
+++ b/db/_generated/npc/taba_house4_client2.json
@@ -0,0 +1 @@
+{"slug":"taba_house4_client2","template":[{"sprite_name":"shopassist_red","combat_front":"adventurer","slug":"shopassistant"}]} \ No newline at end of file
diff --git a/db/_generated/npc/taba_house4_owner.json b/db/_generated/npc/taba_house4_owner.json
new file mode 100644
index 0000000..28f64c4
--- /dev/null
+++ b/db/_generated/npc/taba_house4_owner.json
@@ -0,0 +1 @@
+{"slug":"taba_house4_owner","template":[{"sprite_name":"christie_brown","combat_front":"heroine","slug":"heroine"}]} \ No newline at end of file
diff --git a/db/_generated/npc/tabanurse.json b/db/_generated/npc/tabanurse.json
new file mode 100644
index 0000000..08a7162
--- /dev/null
+++ b/db/_generated/npc/tabanurse.json
@@ -0,0 +1 @@
+{"slug":"tabanurse","template":[{"sprite_name":"nurse","combat_front":"nurse","slug":"nurse"}]} \ No newline at end of file
diff --git a/db/_generated/npc/tallon.json b/db/_generated/npc/tallon.json
new file mode 100644
index 0000000..ce9bdfd
--- /dev/null
+++ b/db/_generated/npc/tallon.json
@@ -0,0 +1 @@
+{"slug":"tallon","template":[{"sprite_name":"ninja","combat_front":"ninja","slug":"ninja"}]} \ No newline at end of file
diff --git a/db/_generated/npc/timmy.json b/db/_generated/npc/timmy.json
new file mode 100644
index 0000000..02f7ed7
--- /dev/null
+++ b/db/_generated/npc/timmy.json
@@ -0,0 +1 @@
+{"slug":"timmy","gender":"male","template":[{"sprite_name":"childactor","combat_front":"heroine","slug":"childactor"}]} \ No newline at end of file
diff --git a/db/_generated/npc/tuxeball.json b/db/_generated/npc/tuxeball.json
new file mode 100644
index 0000000..a67dc69
--- /dev/null
+++ b/db/_generated/npc/tuxeball.json
@@ -0,0 +1 @@
+{"slug":"tuxeball","template":[{"sprite_name":"tuxeball","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/tuxeball_green.json b/db/_generated/npc/tuxeball_green.json
new file mode 100644
index 0000000..668e3b7
--- /dev/null
+++ b/db/_generated/npc/tuxeball_green.json
@@ -0,0 +1 @@
+{"slug":"tuxeball_green","template":[{"sprite_name":"tuxeball_green","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/tuxeball_red.json b/db/_generated/npc/tuxeball_red.json
new file mode 100644
index 0000000..0309a08
--- /dev/null
+++ b/db/_generated/npc/tuxeball_red.json
@@ -0,0 +1 @@
+{"slug":"tuxeball_red","template":[{"sprite_name":"tuxeball_red","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/tuxeball_violet.json b/db/_generated/npc/tuxeball_violet.json
new file mode 100644
index 0000000..a454f7a
--- /dev/null
+++ b/db/_generated/npc/tuxeball_violet.json
@@ -0,0 +1 @@
+{"slug":"tuxeball_violet","template":[{"sprite_name":"tuxeball_violet","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/tuxeball_yellow.json b/db/_generated/npc/tuxeball_yellow.json
new file mode 100644
index 0000000..a7d8270
--- /dev/null
+++ b/db/_generated/npc/tuxeball_yellow.json
@@ -0,0 +1 @@
+{"slug":"tuxeball_yellow","template":[{"sprite_name":"tuxeball_yellow","combat_front":"noclass","slug":"interactive_obj"}]} \ No newline at end of file
diff --git a/db/_generated/npc/tuxemart-keeper.json b/db/_generated/npc/tuxemart-keeper.json
new file mode 100644
index 0000000..73b8197
--- /dev/null
+++ b/db/_generated/npc/tuxemart-keeper.json
@@ -0,0 +1 @@
+{"slug":"tuxemart-keeper","template":[{"sprite_name":"shopassist"}]} \ No newline at end of file
diff --git a/db/_generated/npc/tuxemart_keeper.json b/db/_generated/npc/tuxemart_keeper.json
new file mode 100644
index 0000000..2d01296
--- /dev/null
+++ b/db/_generated/npc/tuxemart_keeper.json
@@ -0,0 +1 @@
+{"slug":"tuxemart_keeper","template":[{"sprite_name":"shopassist","combat_front":"adventurer","slug":"shopassistant"}]} \ No newline at end of file
diff --git a/db/_generated/npc/xerogrund1.json b/db/_generated/npc/xerogrund1.json
new file mode 100644
index 0000000..ab9da71
--- /dev/null
+++ b/db/_generated/npc/xerogrund1.json
@@ -0,0 +1 @@
+{"slug":"xerogrund1","template":[{"sprite_name":"xerogrunt","combat_front":"adventurer","slug":"xerogrunt"}]} \ No newline at end of file
diff --git a/db/_generated/npc/xerogrund2.json b/db/_generated/npc/xerogrund2.json
new file mode 100644
index 0000000..cb52c0a
--- /dev/null
+++ b/db/_generated/npc/xerogrund2.json
@@ -0,0 +1 @@
+{"slug":"xerogrund2","template":[{"sprite_name":"xerogrunt","combat_front":"adventurer","slug":"xerogrunt"}]} \ No newline at end of file
diff --git a/db/_generated/npc/xerogrunt1.json b/db/_generated/npc/xerogrunt1.json
new file mode 100644
index 0000000..7d69e5b
--- /dev/null
+++ b/db/_generated/npc/xerogrunt1.json
@@ -0,0 +1 @@
+{"slug":"xerogrunt1","template":[{"sprite_name":"xerogrunt","combat_front":"adventurer","slug":"xerogrunt"}]} \ No newline at end of file
diff --git a/db/_generated/npc/xerogrunt10.json b/db/_generated/npc/xerogrunt10.json
new file mode 100644
index 0000000..6b5033e
--- /dev/null
+++ b/db/_generated/npc/xerogrunt10.json
@@ -0,0 +1 @@
+{"slug":"xerogrunt10","template":[{"sprite_name":"xerogrunt","combat_front":"adventurer","slug":"xerogrunt"}]} \ No newline at end of file
diff --git a/db/_generated/npc/xerogrunt2.json b/db/_generated/npc/xerogrunt2.json
new file mode 100644
index 0000000..86c0c3f
--- /dev/null
+++ b/db/_generated/npc/xerogrunt2.json
@@ -0,0 +1 @@
+{"slug":"xerogrunt2","template":[{"sprite_name":"xerogrunt","combat_front":"adventurer","slug":"xerogrunt"}]} \ No newline at end of file
diff --git a/db/_generated/npc/xerogrunt3.json b/db/_generated/npc/xerogrunt3.json
new file mode 100644
index 0000000..4f38d96
--- /dev/null
+++ b/db/_generated/npc/xerogrunt3.json
@@ -0,0 +1 @@
+{"slug":"xerogrunt3","template":[{"sprite_name":"xerogrunt","combat_front":"adventurer","slug":"xerogrunt"}]} \ No newline at end of file
diff --git a/db/_generated/npc/xerogrunt4.json b/db/_generated/npc/xerogrunt4.json
new file mode 100644
index 0000000..be093ce
--- /dev/null
+++ b/db/_generated/npc/xerogrunt4.json
@@ -0,0 +1 @@
+{"slug":"xerogrunt4","template":[{"sprite_name":"xerogrunt","combat_front":"adventurer","slug":"xerogrunt"}]} \ No newline at end of file
diff --git a/db/_generated/npc/xerogrunt5.json b/db/_generated/npc/xerogrunt5.json
new file mode 100644
index 0000000..2caa2df
--- /dev/null
+++ b/db/_generated/npc/xerogrunt5.json
@@ -0,0 +1 @@
+{"slug":"xerogrunt5","template":[{"sprite_name":"xerogrunt","combat_front":"adventurer","slug":"xerogrunt"}]} \ No newline at end of file
diff --git a/db/_generated/npc/xerogrunt6.json b/db/_generated/npc/xerogrunt6.json
new file mode 100644
index 0000000..14f4dc0
--- /dev/null
+++ b/db/_generated/npc/xerogrunt6.json
@@ -0,0 +1 @@
+{"slug":"xerogrunt6","template":[{"sprite_name":"xerogrunt","combat_front":"adventurer","slug":"xerogrunt"}]} \ No newline at end of file
diff --git a/db/_generated/npc/xerogrunt7.json b/db/_generated/npc/xerogrunt7.json
new file mode 100644
index 0000000..ee6977a
--- /dev/null
+++ b/db/_generated/npc/xerogrunt7.json
@@ -0,0 +1 @@
+{"slug":"xerogrunt7","template":[{"sprite_name":"xerogrunt","combat_front":"adventurer","slug":"xerogrunt"}]} \ No newline at end of file
diff --git a/db/_generated/npc/xerogrunt8.json b/db/_generated/npc/xerogrunt8.json
new file mode 100644
index 0000000..c9606c4
--- /dev/null
+++ b/db/_generated/npc/xerogrunt8.json
@@ -0,0 +1 @@
+{"slug":"xerogrunt8","template":[{"sprite_name":"xerogrunt","combat_front":"adventurer","slug":"xerogrunt"}]} \ No newline at end of file
diff --git a/db/_generated/npc/xerogrunt9.json b/db/_generated/npc/xerogrunt9.json
new file mode 100644
index 0000000..da6b27d
--- /dev/null
+++ b/db/_generated/npc/xerogrunt9.json
@@ -0,0 +1 @@
+{"slug":"xerogrunt9","template":[{"sprite_name":"xerogrunt","combat_front":"adventurer","slug":"xerogrunt"}]} \ No newline at end of file