FILES ----- player.config cinematics\story\opengate\opengate.cinematic cinematics\story\opengate\opengatecracks.png cinematics\story\opengate\opengateinside.png cinematics\story\opengate\opengatepiece1.png cinematics\story\opengate\opengatepiece1white.png cinematics\story\opengate\opengatepiece1white2.png cinematics\story\opengate\opengatepiece2.png cinematics\story\opengate\opengatepiece2white.png cinematics\story\opengate\opengatepiece2white2.png cinematics\story\opengate\opengatepiece3.png cinematics\story\opengate\opengatepiece3white.png cinematics\story\opengate\opengatepiece3white2.png cinematics\story\opengate\opengatepiece4.png cinematics\story\opengate\opengatepiece4white.png cinematics\story\opengate\opengatepiece4white2.png cinematics\story\opengate\opengatepiece5.png cinematics\story\opengate\opengatepiece5white.png cinematics\story\opengate\opengatepiece5white2.png cinematics\story\opengate\opengatepiece6.png cinematics\story\opengate\opengatepiece6white.png cinematics\story\opengate\opengatepiece6white2.png [NEW] cinematics\story\opengate\opengatewarp.frames [NEW] cinematics\story\opengate\opengatewarp.png dungeons\apex\apextestfacility\apextestfacility4a.json dungeons\apex\apextestfacility\apextestfacility4b.json dungeons\apex\apextestfacility\apextestfacility4c.json dungeons\apex\apextestfacility\apextestfacility4d.json dungeons\hylotl\hylotlruinedcastle\castletop1.json dungeons\hylotl\hylotlruinedcastle\castletop2.json dungeons\hylotl\hylotlruinedcastle\castletop3.json dungeons\hylotl\hylotlruinedcastle\castletop4.json dungeons\hylotl\hylotlruinedcastle\castletop5.json dungeons\hylotl\hylotlruinedcastle\hylotlcastlebase1.json [NEW] dungeons\hylotl\hylotlruinedcastle\hylotlcastlebase2.json [NEW] dungeons\hylotl\hylotlruinedcastle\hylotlcastletemplate.json dungeons\hylotl\hylotlruinedcastle\hylotlruinedcastle.dungeon dungeons\hylotl\hylotlruinedcastle\lowertunnel_mossy1.json dungeons\hylotl\hylotlruinedcastle\lowertunnel_mossy10.json dungeons\hylotl\hylotlruinedcastle\lowertunnel_mossy2.json dungeons\hylotl\hylotlruinedcastle\lowertunnel_mossy3.json dungeons\hylotl\hylotlruinedcastle\lowertunnel_mossy4.json dungeons\hylotl\hylotlruinedcastle\lowertunnel_mossy5.json dungeons\hylotl\hylotlruinedcastle\lowertunnel_mossy6.json dungeons\hylotl\hylotlruinedcastle\lowertunnel_mossy7.json dungeons\hylotl\hylotlruinedcastle\lowertunnel_mossy8.json dungeons\hylotl\hylotlruinedcastle\lowertunnel_mossy9.json dungeons\hylotl\hylotlruinedcastle\room10dojo.json [NEW] dungeons\hylotl\hylotlruinedcastle\room1passage.json [NEW] dungeons\hylotl\hylotlruinedcastle\room2shrine.json [NEW] dungeons\hylotl\hylotlruinedcastle\room3passage.json dungeons\hylotl\hylotlruinedcastle\room4screen.json [NEW] dungeons\hylotl\hylotlruinedcastle\room6dining.json [NEW] dungeons\hylotl\hylotlruinedcastle\room7bedroom.json dungeons\hylotl\hylotlruinedcastle\room8study.json [NEW] dungeons\hylotl\hylotlruinedcastle\room9display.json dungeons\other\outpost\outpost.json dungeons\other\outpost\outpost_full.json items\categories.config items\active\effects\lightning.lua items\active\weapons\weapon.lua items\active\weapons\biome\bioluminescent\lightbow.activeitem items\active\weapons\biome\cave\cavebow.activeitem items\active\weapons\biome\icecaves\frozenbow.activeitem items\active\weapons\biome\jungle\poisonbow.activeitem items\active\weapons\bow\bow.animation items\active\weapons\bow\bow.lua items\active\weapons\bow\energybow.animation [NEW] items\active\weapons\bow\abilities\bowshot.lua [NEW] items\active\weapons\bow\abilities\bowshot.weaponability [NEW] items\active\weapons\bow\abilities\zenshot.lua [NEW] items\active\weapons\bow\abilities\zenshot.weaponability items\active\weapons\bow\bow\bow.activeitem items\active\weapons\bow\compoundbow\compoundbow.activeitem items\active\weapons\bow\cupidsbow\cupidsbow.activeitem items\active\weapons\bow\ironbow\ironbow.activeitem items\active\weapons\bow\tungstenbow\tungstenbow.activeitem items\active\weapons\melee\abilities\spear\charge\charge.lua items\active\weapons\npc\npcbow.activeitem items\active\weapons\npc\npcfirebow.activeitem items\active\weapons\npc\npctungstenbow.activeitem items\active\weapons\protectorate\aegisaltbow\aegisaltbow.activeitem items\active\weapons\staff\abilities\controlprojectile\elementbouncer.weaponability [NEW] items\active\weapons\staff\abilities\controlprojectile\elementorb.weaponability items\active\weapons\staff\abilities\controlprojectile\elementrain.weaponability items\active\weapons\staff\abilities\controlprojectile\elementswarm.weaponability items\active\weapons\staff\abilities\guidedbolt\guidedbolt.lua items\active\weapons\staff\generated\commonstaff.activeitem items\armors\apex\apex-tier1\apextier1.chest items\armors\apex\apex-tier1\apextier1.head items\armors\apex\apex-tier1\apextier1.legs items\armors\apex\apex-tier2\apextier2.chest items\armors\apex\apex-tier2\apextier2.head items\armors\apex\apex-tier2\apextier2.legs items\armors\apex\apex-tier3\apextier3.chest items\armors\apex\apex-tier3\apextier3.head items\armors\apex\apex-tier3\apextier3.legs items\armors\apex\apex-tier4\apextier4.chest items\armors\apex\apex-tier4\apextier4.head items\armors\apex\apex-tier4\apextier4.legs items\armors\apex\apex-tier5accelerator\apextier5accelerator.chest items\armors\apex\apex-tier5accelerator\apextier5accelerator.head items\armors\apex\apex-tier5accelerator\apextier5accelerator.legs items\armors\apex\apex-tier5manipulator\apextier5manipulator.chest items\armors\apex\apex-tier5manipulator\apextier5manipulator.head items\armors\apex\apex-tier5manipulator\apextier5manipulator.legs items\armors\apex\apex-tier5separator\apextier5separator.chest items\armors\apex\apex-tier5separator\apextier5separator.head items\armors\apex\apex-tier5separator\apextier5separator.legs items\armors\apex\apex-tier6accelerator\apextier6accelerator.chest items\armors\apex\apex-tier6accelerator\apextier6accelerator.head items\armors\apex\apex-tier6accelerator\apextier6accelerator.legs items\armors\apex\apex-tier6manipulator\apextier6manipulator.chest items\armors\apex\apex-tier6manipulator\apextier6manipulator.head items\armors\apex\apex-tier6manipulator\apextier6manipulator.legs items\armors\apex\apex-tier6separator\apextier6separator.chest items\armors\apex\apex-tier6separator\apextier6separator.head items\armors\apex\apex-tier6separator\apextier6separator.legs items\armors\avian\avian-tier1\aviantier1.chest items\armors\avian\avian-tier1\aviantier1.head items\armors\avian\avian-tier1\aviantier1.legs items\armors\avian\avian-tier2\aviantier2.chest items\armors\avian\avian-tier2\aviantier2.head items\armors\avian\avian-tier2\aviantier2.legs items\armors\avian\avian-tier3\aviantier3.chest items\armors\avian\avian-tier3\aviantier3.head items\armors\avian\avian-tier3\aviantier3.legs items\armors\avian\avian-tier4\aviantier4.chest items\armors\avian\avian-tier4\aviantier4.head items\armors\avian\avian-tier4\aviantier4.legs items\armors\avian\avian-tier5accelerator\aviantier5accelerator.chest items\armors\avian\avian-tier5accelerator\aviantier5accelerator.head items\armors\avian\avian-tier5accelerator\aviantier5accelerator.legs items\armors\avian\avian-tier5manipulator\aviantier5manipulator.chest items\armors\avian\avian-tier5manipulator\aviantier5manipulator.head items\armors\avian\avian-tier5manipulator\aviantier5manipulator.legs items\armors\avian\avian-tier5separator\aviantier5separator.chest items\armors\avian\avian-tier5separator\aviantier5separator.head items\armors\avian\avian-tier5separator\aviantier5separator.legs items\armors\avian\avian-tier6accelerator\aviantier6accelerator.chest items\armors\avian\avian-tier6accelerator\aviantier6accelerator.head items\armors\avian\avian-tier6accelerator\aviantier6accelerator.legs items\armors\avian\avian-tier6manipulator\aviantier6manipulator.chest items\armors\avian\avian-tier6manipulator\aviantier6manipulator.head items\armors\avian\avian-tier6manipulator\aviantier6manipulator.legs items\armors\avian\avian-tier6separator\aviantier6separator.chest items\armors\avian\avian-tier6separator\aviantier6separator.head items\armors\avian\avian-tier6separator\aviantier6separator.legs [NEW] items\armors\decorative\costumes\barrel\barrel.chest [NEW] items\armors\decorative\costumes\barrel\barrel.head [NEW] items\armors\decorative\costumes\barrel\bsleeve.png [NEW] items\armors\decorative\costumes\barrel\chest.png [NEW] items\armors\decorative\costumes\barrel\fsleeve.png [NEW] items\armors\decorative\costumes\barrel\head.png [NEW] items\armors\decorative\costumes\barrel\icons.png [NEW] items\armors\decorative\costumes\barrel\mask.png items\armors\floran\floran-tier1\florantier1.chest items\armors\floran\floran-tier1\florantier1.head items\armors\floran\floran-tier1\florantier1.legs items\armors\floran\floran-tier2\florantier2.chest items\armors\floran\floran-tier2\florantier2.head items\armors\floran\floran-tier2\florantier2.legs items\armors\floran\floran-tier3\florantier3.chest items\armors\floran\floran-tier3\florantier3.head items\armors\floran\floran-tier3\florantier3.legs items\armors\floran\floran-tier4\florantier4.chest items\armors\floran\floran-tier4\florantier4.head items\armors\floran\floran-tier4\florantier4.legs items\armors\floran\floran-tier5accelerator\florantier5accelerator.chest items\armors\floran\floran-tier5accelerator\florantier5accelerator.head items\armors\floran\floran-tier5accelerator\florantier5accelerator.legs items\armors\floran\floran-tier5manipulator\florantier5manipulator.chest items\armors\floran\floran-tier5manipulator\florantier5manipulator.head items\armors\floran\floran-tier5manipulator\florantier5manipulator.legs items\armors\floran\floran-tier5separator\florantier5separator.chest items\armors\floran\floran-tier5separator\florantier5separator.head items\armors\floran\floran-tier5separator\florantier5separator.legs items\armors\floran\floran-tier6accelerator\florantier6accelerator.chest items\armors\floran\floran-tier6accelerator\florantier6accelerator.head items\armors\floran\floran-tier6accelerator\florantier6accelerator.legs items\armors\floran\floran-tier6manipulator\florantier6manipulator.chest items\armors\floran\floran-tier6manipulator\florantier6manipulator.head items\armors\floran\floran-tier6manipulator\florantier6manipulator.legs items\armors\floran\floran-tier6separator\florantier6separator.chest items\armors\floran\floran-tier6separator\florantier6separator.head items\armors\floran\floran-tier6separator\florantier6separator.legs items\armors\glitch\glitch-tier1\glitchtier1.chest items\armors\glitch\glitch-tier1\glitchtier1.head items\armors\glitch\glitch-tier1\glitchtier1.legs items\armors\glitch\glitch-tier2\glitchtier2.chest items\armors\glitch\glitch-tier2\glitchtier2.head items\armors\glitch\glitch-tier2\glitchtier2.legs items\armors\glitch\glitch-tier3\glitchtier3.chest items\armors\glitch\glitch-tier3\glitchtier3.head items\armors\glitch\glitch-tier3\glitchtier3.legs items\armors\glitch\glitch-tier4\glitchtier4.chest items\armors\glitch\glitch-tier4\glitchtier4.head items\armors\glitch\glitch-tier4\glitchtier4.legs items\armors\glitch\glitch-tier5accelerator\glitchtier5accelerator.chest items\armors\glitch\glitch-tier5accelerator\glitchtier5accelerator.head items\armors\glitch\glitch-tier5accelerator\glitchtier5accelerator.legs items\armors\glitch\glitch-tier5manipulator\glitchtier5manipulator.chest items\armors\glitch\glitch-tier5manipulator\glitchtier5manipulator.head items\armors\glitch\glitch-tier5manipulator\glitchtier5manipulator.legs items\armors\glitch\glitch-tier5separator\glitchtier5separator.chest items\armors\glitch\glitch-tier5separator\glitchtier5separator.head items\armors\glitch\glitch-tier5separator\glitchtier5separator.legs items\armors\glitch\glitch-tier6accelerator\glitchtier6accelerator.chest items\armors\glitch\glitch-tier6accelerator\glitchtier6accelerator.head items\armors\glitch\glitch-tier6accelerator\glitchtier6accelerator.legs items\armors\glitch\glitch-tier6manipulator\glitchtier6manipulator.chest items\armors\glitch\glitch-tier6manipulator\glitchtier6manipulator.head items\armors\glitch\glitch-tier6manipulator\glitchtier6manipulator.legs items\armors\glitch\glitch-tier6separator\glitchtier6separator.chest items\armors\glitch\glitch-tier6separator\glitchtier6separator.head items\armors\glitch\glitch-tier6separator\glitchtier6separator.legs items\armors\human\human-tier1\humantier1.chest items\armors\human\human-tier1\humantier1.head items\armors\human\human-tier1\humantier1.legs items\armors\human\human-tier10old\humantier10old.chest items\armors\human\human-tier10old\humantier10old.head items\armors\human\human-tier10old\humantier10old.legs items\armors\human\human-tier2\humantier2.chest items\armors\human\human-tier2\humantier2.head items\armors\human\human-tier2\humantier2.legs items\armors\human\human-tier3\humantier3.chest items\armors\human\human-tier3\humantier3.head items\armors\human\human-tier3\humantier3.legs items\armors\human\human-tier4\humantier4.chest items\armors\human\human-tier4\humantier4.head items\armors\human\human-tier4\humantier4.legs items\armors\human\human-tier5accelerator\humantier5accelerator.chest items\armors\human\human-tier5accelerator\humantier5accelerator.head items\armors\human\human-tier5accelerator\humantier5accelerator.legs items\armors\human\human-tier5manipulator\humantier5manipulator.chest items\armors\human\human-tier5manipulator\humantier5manipulator.head items\armors\human\human-tier5manipulator\humantier5manipulator.legs items\armors\human\human-tier5separator\humantier5separator.chest items\armors\human\human-tier5separator\humantier5separator.head items\armors\human\human-tier5separator\humantier5separator.legs items\armors\human\human-tier6accelerator\humantier6accelerator.chest items\armors\human\human-tier6accelerator\humantier6accelerator.head items\armors\human\human-tier6accelerator\humantier6accelerator.legs items\armors\human\human-tier6manipulator\humantier6manipulator.chest items\armors\human\human-tier6manipulator\humantier6manipulator.head items\armors\human\human-tier6manipulator\humantier6manipulator.legs items\armors\human\human-tier6separator\humantier6separator.chest items\armors\human\human-tier6separator\humantier6separator.head items\armors\human\human-tier6separator\humantier6separator.legs items\armors\hylotl\hylotl-tier1\hylotltier1.chest items\armors\hylotl\hylotl-tier1\hylotltier1.head items\armors\hylotl\hylotl-tier1\hylotltier1.legs items\armors\hylotl\hylotl-tier2\hylotltier2.chest items\armors\hylotl\hylotl-tier2\hylotltier2.head items\armors\hylotl\hylotl-tier2\hylotltier2.legs items\armors\hylotl\hylotl-tier3\hylotltier3.chest items\armors\hylotl\hylotl-tier3\hylotltier3.head items\armors\hylotl\hylotl-tier3\hylotltier3.legs items\armors\hylotl\hylotl-tier4\hylotltier4.chest items\armors\hylotl\hylotl-tier4\hylotltier4.head items\armors\hylotl\hylotl-tier4\hylotltier4.legs items\armors\hylotl\hylotl-tier5accelerator\hylotltier5accelerator.chest items\armors\hylotl\hylotl-tier5accelerator\hylotltier5accelerator.head items\armors\hylotl\hylotl-tier5accelerator\hylotltier5accelerator.legs items\armors\hylotl\hylotl-tier5manipulator\hylotltier5manipulator.chest items\armors\hylotl\hylotl-tier5manipulator\hylotltier5manipulator.head items\armors\hylotl\hylotl-tier5manipulator\hylotltier5manipulator.legs items\armors\hylotl\hylotl-tier5separator\hylotltier5separator.chest items\armors\hylotl\hylotl-tier5separator\hylotltier5separator.head items\armors\hylotl\hylotl-tier5separator\hylotltier5separator.legs items\armors\hylotl\hylotl-tier6accelerator\hylotltier6accelerator.chest items\armors\hylotl\hylotl-tier6accelerator\hylotltier6accelerator.head items\armors\hylotl\hylotl-tier6accelerator\hylotltier6accelerator.legs items\armors\hylotl\hylotl-tier6manipulator\hylotltier6manipulator.chest items\armors\hylotl\hylotl-tier6manipulator\hylotltier6manipulator.head items\armors\hylotl\hylotl-tier6manipulator\hylotltier6manipulator.legs items\armors\hylotl\hylotl-tier6separator\hylotltier6separator.chest items\armors\hylotl\hylotl-tier6separator\hylotltier6separator.head items\armors\hylotl\hylotl-tier6separator\hylotltier6separator.legs items\armors\novakid\nova-tier1\novatier1.chest items\armors\novakid\nova-tier1\novatier1.head items\armors\novakid\nova-tier1\novatier1.legs items\armors\novakid\nova-tier2\novatier2.chest items\armors\novakid\nova-tier2\novatier2.head items\armors\novakid\nova-tier2\novatier2.legs items\armors\novakid\nova-tier3\novatier3.chest items\armors\novakid\nova-tier3\novatier3.head items\armors\novakid\nova-tier3\novatier3.legs items\armors\novakid\nova-tier4\novatier4.chest items\armors\novakid\nova-tier4\novatier4.head items\armors\novakid\nova-tier4\novatier4.legs items\armors\novakid\nova-tier5accelerator\novatier5accelerator.chest items\armors\novakid\nova-tier5accelerator\novatier5accelerator.head items\armors\novakid\nova-tier5accelerator\novatier5accelerator.legs items\armors\novakid\nova-tier5manipulator\novatier5manipulator.chest items\armors\novakid\nova-tier5manipulator\novatier5manipulator.head items\armors\novakid\nova-tier5manipulator\novatier5manipulator.legs items\armors\novakid\nova-tier5separator\novatier5separator.chest items\armors\novakid\nova-tier5separator\novatier5separator.head items\armors\novakid\nova-tier5separator\novatier5separator.legs items\armors\novakid\nova-tier6accelerator\novatier6accelerator.chest items\armors\novakid\nova-tier6accelerator\novatier6accelerator.head items\armors\novakid\nova-tier6accelerator\novatier6accelerator.legs items\armors\novakid\nova-tier6manipulator\novatier6manipulator.chest items\armors\novakid\nova-tier6manipulator\novatier6manipulator.head items\armors\novakid\nova-tier6manipulator\novatier6manipulator.legs items\armors\novakid\nova-tier6separator\novatier6separator.chest items\armors\novakid\nova-tier6separator\novatier6separator.head items\armors\novakid\nova-tier6separator\novatier6separator.legs items\buildscripts\buildbow.lua items\buildscripts\buildweapon.lua items\buildscripts\weaponabilities.config leveling\bow.functions monsters\ghosts\skimbus\skimbus.animation monsters\ghosts\skimbus\skimbus.frames objects\hylotl\hylotlclassicgong\hylotlclassicgong.object objects\hylotl\hylotlshojiscreen\hylotlshojiscreen.object objects\hylotl\hylotlspeaker\hylotlradio.animation objects\hylotl\hylotlspeaker\hylotlradio.object objects\outpost\treasuredtrophies\treasuredtrophies.object [NEW] objects\outpost\ursaminer\icon.png [NEW] objects\outpost\ursaminer\ursaminer.object [NEW] objects\outpost\ursaminer\ursaminerleft.frames [NEW] objects\outpost\ursaminer\ursaminerleft.png [NEW] objects\outpost\ursaminer\ursaminerleftlit.frames [NEW] objects\outpost\ursaminer\ursaminerleftlit.png objects\protectorate\objects\protectorateradio\protectorateradio.animation objects\protectorate\objects\protectorateradio\protectorateradio.object projectiles\physics.config [NEW] projectiles\activeitems\staff\elementbouncer\bouncespikes.lua [NEW] projectiles\activeitems\staff\elementbouncer\default.frames [NEW] projectiles\activeitems\staff\elementbouncer\electricbouncer.png [NEW] projectiles\activeitems\staff\elementbouncer\electricbouncer.projectile projectiles\activeitems\staff\elementbouncer\firebouncer.projectile [NEW] projectiles\activeitems\staff\elementbouncer\icebouncer.png [NEW] projectiles\activeitems\staff\elementbouncer\icebouncer.projectile [NEW] projectiles\activeitems\staff\elementbouncer\poisonbouncer.png [NEW] projectiles\activeitems\staff\elementbouncer\poisonbouncer.projectile projectiles\activeitems\staff\elementcloud\cloud.png projectiles\activeitems\staff\elementcloud\cloudappear.png [NEW] projectiles\activeitems\staff\elementorb\default.frames [NEW] projectiles\activeitems\staff\elementorb\electricorb.png [NEW] projectiles\activeitems\staff\elementorb\electricorb.projectile [NEW] projectiles\activeitems\staff\elementorb\fireorb.png [NEW] projectiles\activeitems\staff\elementorb\fireorb.projectile [NEW] projectiles\activeitems\staff\elementorb\iceorb.png [NEW] projectiles\activeitems\staff\elementorb\iceorb.projectile [NEW] projectiles\activeitems\staff\elementorb\poisonorb.frames [NEW] projectiles\activeitems\staff\elementorb\poisonorb.png [NEW] projectiles\activeitems\staff\elementorb\poisonorb.projectile [NEW] projectiles\activeitems\staff\elementstickyspikes\default.frames [NEW] projectiles\activeitems\staff\elementstickyspikes\electricspikes.png [NEW] projectiles\activeitems\staff\elementstickyspikes\electricstickyspikes.projectile [NEW] projectiles\activeitems\staff\elementstickyspikes\firespikes.png [NEW] projectiles\activeitems\staff\elementstickyspikes\firestickyspikes.projectile [NEW] projectiles\activeitems\staff\elementstickyspikes\icespikes.png [NEW] projectiles\activeitems\staff\elementstickyspikes\icestickyspikes.projectile [NEW] projectiles\activeitems\staff\elementstickyspikes\poisonspikes.png [NEW] projectiles\activeitems\staff\elementstickyspikes\poisonstickyspikes.projectile [NEW] projectiles\activeitems\staff\elementswarmer\electricswarmer - copy.png [NEW] projectiles\activeitems\staff\elementswarmer\electricswarmer.png [NEW] projectiles\activeitems\staff\elementswarmer\electricswarmer.projectile [NEW] projectiles\activeitems\staff\elementswarmer\iceswarmer.png [NEW] projectiles\activeitems\staff\elementswarmer\iceswarmer.projectile projectiles\activeitems\staff\healingzone\default.frames projectiles\activeitems\staff\healingzone\healingzone.png projectiles\activeitems\staff\healingzone\healingzone.projectile projectiles\activeitems\staff\lowgravzone\default.frames projectiles\activeitems\staff\lowgravzone\lowgravzone.png projectiles\activeitems\staff\lowgravzone\lowgravzone.projectile [NEW] projectiles\explosions\elementimpact\electricimpact.config [NEW] projectiles\explosions\elementimpact\iceimpact.config [NEW] projectiles\explosions\elementimpact\poisonimpact.config quests\generated\locations.config [NEW] recipes\treasuredtrophies\adaptablecrossbow.recipe [NEW] recipes\treasuredtrophies\giantbowhead.recipe tilesets\packed\objects-by-category\light.json tilesets\packed\objects-by-category\other.json tilesets\packed\objects-by-colonytag\commerce.json tilesets\packed\objects-by-colonytag\hylotl.json tilesets\packed\objects-by-colonytag\hylotlvillage.json tilesets\packed\objects-by-colonytag\light.json tilesets\packed\objects-by-colonytag\outpost.json tilesets\packed\objects-by-race\generic.json tilesets\packed\objects-by-race\hylotl.json DIFFS ----- player.config 336,339d335 < { "item" : "ironbow" }, < { "item" : "aegisaltbow" }, < { "item" : "feroziumbow" }, < cinematics\story\opengate\opengate.cinematic 325a326,349 > { > "startTime" : 62.09, > "endTime" : 130, > "drawables" : [ > { > "image" : "/cinematics/story/opengate/opengatewarp.png:" > } > ], > "animationFrames" : 16, > "keyframes" : [ > { > "timecode" : 0, > "alpha" : 1, > "zoom" : 1.5, > "position" : [484, 303], > "frame" : 0 > }, > { > "timecode" : 20, > "frame" : 300 > } > ] > }, > 328c352 < "startTime" : 61.95, --- > "startTime" : 61.9, 345c369 < "timecode" : 0.15, --- > "timecode" : 0.14, 372c396 < "position" : [398, 362] --- > "position" : [398, 361] 377c401 < "position" : [398, 362] --- > "position" : [398, 361] 401c425 < "position" : [398, 362] --- > "position" : [398, 361] 430c454 < "position" : [398, 362] --- > "position" : [398, 361] 517c541 < "timecode" : 3.4, --- > "timecode" : 3.6, 601c625 < "timecode" : 3.5, --- > "timecode" : 3.65, 711c735 < "position" : [427, 199] --- > "position" : [427, 198] 716c740 < "position" : [427, 199] --- > "position" : [427, 198] 739c763 < "position" : [427, 199] --- > "position" : [427, 198] 767c791 < "position" : [427, 199] --- > "position" : [427, 198] 770c794 < "timecode" : 4.5, --- > "timecode" : 4.6, 1374a1399,1424 > > { > "startTime" : 70, > "endTime" : 127, > "useCamera" : false, > "drawables" : [ > { > "image" : "/cinematics/story/black.png" > } > ], > "keyframes" : [ > { > "timecode" : 0, > "zoom" : 100, > "alpha" : 0, > "position" : [480, 280] > }, > { > "timecode" : 1, > "zoom" : 100, > "alpha" : 1, > "position" : [480, 280] > } > ] > }, > dungeons\apex\apextestfacility\apextestfacility4a.json [TMX file differences are left out for huge size.] dungeons\apex\apextestfacility\apextestfacility4b.json [TMX file differences are left out for huge size.] dungeons\apex\apextestfacility\apextestfacility4c.json [TMX file differences are left out for huge size.] dungeons\apex\apextestfacility\apextestfacility4d.json [TMX file differences are left out for huge size.] dungeons\hylotl\hylotlruinedcastle\castletop1.json [TMX file differences are left out for huge size.] dungeons\hylotl\hylotlruinedcastle\castletop2.json [TMX file differences are left out for huge size.] dungeons\hylotl\hylotlruinedcastle\castletop3.json [TMX file differences are left out for huge size.] dungeons\hylotl\hylotlruinedcastle\castletop4.json [TMX file differences are left out for huge size.] dungeons\hylotl\hylotlruinedcastle\castletop5.json [TMX file differences are left out for huge size.] dungeons\hylotl\hylotlruinedcastle\hylotlcastlebase1.json [TMX file differences are left out for huge size.] dungeons\hylotl\hylotlruinedcastle\hylotlruinedcastle.dungeon 7c7 < "anchor" : [ "hylotlcastlebase1" ], --- > "anchor" : [ "hylotlcastlebase1", "hylotlcastlebase2" ], 20,23c20 < // [ "maxSpawnCount", [3] ], < // [ "doNotCombineWith", [ "examplepiece" ] ] < // [ "doNotConnectToPart", [ "examplepiece" ] ] < // [ "ignorePartMaximumRule" ] --- > [ "doNotCombineWith", [ "hylotlcastlebase1", "hylotlcastlebase2" ] ] 28a26,34 > { > "name" : "hylotlcastlebase2", > "rules" : [ > [ "doNotCombineWith", [ "hylotlcastlebase1", "hylotlcastlebase2" ] ] > ], > "def" : [ "tmx", "hylotlcastlebase2.json" ], > "chance" : 1 > }, > 149c155 < "name" : "room1", --- > "name" : "room1passage", 153c159 < "def" : [ "tmx", "room1.json" ], --- > "def" : [ "tmx", "room1passage.json" ], 157c163 < "name" : "room2", --- > "name" : "room2shrine", 161c167 < "def" : [ "tmx", "room2.json" ], --- > "def" : [ "tmx", "room2shrine.json" ], 165c171 < "name" : "room3", --- > "name" : "room3passage", 169c175 < "def" : [ "tmx", "room3.json" ], --- > "def" : [ "tmx", "room3passage.json" ], 189c195 < "name" : "room6", --- > "name" : "room6dining", 193c199 < "def" : [ "tmx", "room6.json" ], --- > "def" : [ "tmx", "room6dining.json" ], 197c203 < "name" : "room7", --- > "name" : "room7bedroom", 201c207 < "def" : [ "tmx", "room7.json" ], --- > "def" : [ "tmx", "room7bedroom.json" ], 213c219 < "name" : "room9", --- > "name" : "room9display", 217c223 < "def" : [ "tmx", "room9.json" ], --- > "def" : [ "tmx", "room9display.json" ], 228,235d233 < { < "name" : "fillroom", < "rules" : [ < [ "ignorePartMaximumRule" ] < ], < "def" : [ "tmx", "room3.json" ], < "chance" : 0 < }, 364c362 < "chance" : 100 --- > "chance" : 1 dungeons\hylotl\hylotlruinedcastle\lowertunnel_mossy1.json [TMX file differences are left out for huge size.] dungeons\hylotl\hylotlruinedcastle\lowertunnel_mossy10.json [TMX file differences are left out for huge size.] dungeons\hylotl\hylotlruinedcastle\lowertunnel_mossy2.json [TMX file differences are left out for huge size.] dungeons\hylotl\hylotlruinedcastle\lowertunnel_mossy3.json [TMX file differences are left out for huge size.] dungeons\hylotl\hylotlruinedcastle\lowertunnel_mossy4.json [TMX file differences are left out for huge size.] dungeons\hylotl\hylotlruinedcastle\lowertunnel_mossy5.json [TMX file differences are left out for huge size.] dungeons\hylotl\hylotlruinedcastle\lowertunnel_mossy6.json [TMX file differences are left out for huge size.] dungeons\hylotl\hylotlruinedcastle\lowertunnel_mossy7.json [TMX file differences are left out for huge size.] dungeons\hylotl\hylotlruinedcastle\lowertunnel_mossy8.json [TMX file differences are left out for huge size.] dungeons\hylotl\hylotlruinedcastle\lowertunnel_mossy9.json [TMX file differences are left out for huge size.] dungeons\hylotl\hylotlruinedcastle\room10dojo.json [TMX file differences are left out for huge size.] dungeons\hylotl\hylotlruinedcastle\room4screen.json [TMX file differences are left out for huge size.] dungeons\hylotl\hylotlruinedcastle\room8study.json [TMX file differences are left out for huge size.] dungeons\other\outpost\outpost.json [TMX file differences are left out for huge size.] dungeons\other\outpost\outpost_full.json [TMX file differences are left out for huge size.] items\categories.config 9a10,12 > "chestarmour" : "Chest Armour", > "headarmour" : "Head Armour", > "legarmour" : "Leg Armour", items\active\effects\lightning.lua 46a47,53 > local getLinePosition = function(bolt, positionType) > return bolt["world"..positionType.."Position"] > or (bolt["item"..positionType.."Position"] and vec2.add(activeItemAnimation.ownerPosition(), activeItemAnimation.handPosition(bolt["item"..positionType.."Position"]))) > or (bolt["part"..positionType.."Position"] and vec2.add(activeItemAnimation.ownerPosition(), > activeItemAnimation.handPosition(activeItemAnimation.partPoint(bolt["part"..positionType.."Position"][1], bolt["part"..positionType.."Position"][2])))) > end > 50,57c57,59 < -- bolt.startLine = vec2.add(activeItemAnimation.ownerPosition(), activeItemAnimation.handPosition(bolt.startLine)) < if bolt.endPosition then < bolt.endLine = vec2.add(bolt.endPosition, bolt.endLine) < -- Put end point in the same space as the start point to draw properly over the world wrap < bolt.endLine = vec2.add(bolt.startLine, world.distance(bolt.endLine, bolt.startLine)) < else < -- bolt.endLine = vec2.add(activeItemAnimation.ownerPosition(), activeItemAnimation.handPosition(bolt.endLine)) < end --- > local startPosition = getLinePosition(bolt, "Start") > local endPosition = getLinePosition(bolt, "End") > endPosition = vec2.add(startPosition, world.distance(endPosition, startPosition)) 59c61 < bolt.endLine = vec2.add(bolt.endLine, randomOffset(bolt.endPointDisplacement)) --- > endPosition = vec2.add(endPosition, randomOffset(bolt.endPointDisplacement)) 61c63 < drawLightning(bolt.startLine, bolt.endLine, bolt.displacement, bolt.minDisplacement, bolt.forks, bolt.forkAngleRange, bolt.width, bolt.color) --- > drawLightning(startPosition, endPosition, bolt.displacement, bolt.minDisplacement, bolt.forks, bolt.forkAngleRange, bolt.width, bolt.color) items\active\weapons\weapon.lua 14c14 < newWeapon.handGrip = config.getParameter("handGrip") --- > newWeapon.handGrip = config.getParameter("handGrip", "inside") 153,157c153,154 < if (self:isFrontHand()) then < activeItem.setArmFrame(self.stance.frontArmFrame) < else < activeItem.setArmFrame(self.stance.backArmFrame) < end --- > activeItem.setFrontArmFrame(self.stance.frontArmFrame) > activeItem.setBackArmFrame(self.stance.backArmFrame) 245,249c242,243 < if (self:isFrontHand()) then < activeItem.setArmFrame(stance.frontArmFrame) < else < activeItem.setArmFrame(stance.backArmFrame) < end --- > activeItem.setFrontArmFrame(self.stance.frontArmFrame) > activeItem.setBackArmFrame(self.stance.backArmFrame) items\active\weapons\biome\bioluminescent\lightbow.activeitem 35,53c35,42 < "walkWhileFiring" : true, < < "fireOffset" : [1.75, 0.125], < < "energyPerShot" : 30, < < "cooldownTime" : 0.25, < "inaccuracy" : 0.01, < < "drawFrameSelector" : "bowImageSelector", < "drawPowerMultiplier" : "drawTimeMultiplier", < "drawSpeedMultiplier" : "drawTimeMultiplier", < < "projectileType" : "lightarrow", < "powerProjectileType" : "chargedlightarrow", < "powerProjectileTime" : [0.9, 1.1], < "projectileParameters" : { < "speed" : 80, < "power" : 5.2 --- > "primaryAbilityType" : "bowshot", > "primaryAbility" : { > "fireOffset" : [1.75, 0.125], > "projectileType" : "lightarrow", > "powerProjectileType" : "chargedlightarrow", > "projectileParameters" : { > "power" : 5.2 > } items\active\weapons\biome\cave\cavebow.activeitem 24c24 < "offset" : [0, 0.125] --- > "offset" : [0.25, 0.125] 35,53c35,42 < "walkWhileFiring" : true, < < "fireOffset" : [1.75, 0.125], < < "energyPerShot" : 30, < < "cooldownTime" : 0.25, < "inaccuracy" : 0.01, < < "drawFrameSelector" : "bowImageSelector", < "drawPowerMultiplier" : "drawTimeMultiplier", < "drawSpeedMultiplier" : "drawTimeMultiplier", < < "projectileType" : "woodenarrow", < "powerProjectileType" : "chargedarrow", < "powerProjectileTime" : [0.9, 1.1], < "projectileParameters" : { < "speed" : 80, < "power" : 5.2 --- > "primaryAbilityType" : "bowshot", > "primaryAbility" : { > "fireOffset" : [1.75, 0.125], > "projectileType" : "ironarrow", > "powerProjectileType" : "chargedironarrow", > "projectileParameters" : { > "power" : 5.2 > } items\active\weapons\biome\icecaves\frozenbow.activeitem 35c35 < "walkWhileFiring" : true, --- > "elementalType" : "ice", 37,53c37,44 < "fireOffset" : [1.75, 0.125], < < "energyPerShot" : 30, < < "cooldownTime" : 0.25, < "inaccuracy" : 0.01, < < "drawFrameSelector" : "bowImageSelector", < "drawPowerMultiplier" : "drawTimeMultiplier", < "drawSpeedMultiplier" : "drawTimeMultiplier", < < "projectileType" : "icearrow", < "powerProjectileType" : "chargedicearrow", < "powerProjectileTime" : [0.9, 1.1], < "projectileParameters" : { < "speed" : 80, < "power" : 5.2 --- > "primaryAbilityType" : "bowshot", > "primaryAbility" : { > "fireOffset" : [1.75, 0.125], > "projectileType" : "icearrow", > "powerProjectileType" : "chargedicearrow", > "projectileParameters" : { > "power" : 5.2 > } items\active\weapons\biome\jungle\poisonbow.activeitem 35,47d34 < "walkWhileFiring" : true, < < "fireOffset" : [1.75, 0.125], < < "energyPerShot" : 30, < < "cooldownTime" : 0.25, < "inaccuracy" : 0.01, < < "drawFrameSelector" : "poisonBowImageSelector", < "drawPowerMultiplier" : "drawTimeMultiplier", < "drawSpeedMultiplier" : "drawTimeMultiplier", < 49,54c36,46 < "projectileType" : "poisonarrow", < "powerProjectileType" : "chargedpoisonarrow", < "powerProjectileTime" : [0.9, 1.1], < "projectileParameters" : { < "speed" : 80, < "power" : 5.2 --- > > "primaryAbilityType" : "bowshot", > "primaryAbility" : { > "fireOffset" : [1.75, 0.125], > "drawFrameSelector" : "poisonBowImageSelector", > "drawArmFrames" : ["rotation", "swim.2", "swim.2", "swim.2", "swimIdle.1", "swimIdle.1"], > "projectileType" : "poisonarrow", > "powerProjectileType" : "chargedpoisonarrow", > "projectileParameters" : { > "power" : 5.2 > } items\active\weapons\bow\bow.animation 7c7,8 < "image" : ":" --- > "image" : ":", > "transformationGroups" : ["weapon"] 10a12,15 > }, > > "transformationGroups" : { > "weapon" : {} items\active\weapons\bow\bow.lua 0a1 > require "/scripts/util.lua" 1a3 > require "/items/active/weapons/weapon.lua" 6,9c8 < self.energyPerShot = config.getParameter("energyPerShot", 0) < self.walkWhileFiring = config.getParameter("walkWhileFiring", true) < self.fireOffset = config.getParameter("fireOffset") < self.handGrip = config.getParameter("handGrip", "inside") --- > self.weapon = Weapon:new() 11c10 < updateAim() --- > self.weapon:addTransformationGroup("weapon", {0,0}, 0) 13,14c12,13 < self.drawTime = 0 < storage.cooldownTimer = storage.cooldownTimer or 0 --- > local primaryAbility = getPrimaryAbility() > self.weapon:addAbility(primaryAbility) 16,66c15,17 < animator.setGlobalTag("drawFrame", "0") < end < < function update(dt, fireMode, shiftHeld) < updateAim() < < storage.cooldownTimer = math.max(storage.cooldownTimer - dt, 0) < < if status.resourceLocked("energy") then < self.drawTime = 0 < elseif fireMode ~= "none" and storage.cooldownTimer <= 0 then < if self.drawTime == 0 then < animator.playSound("draw") < end < < if self.walkWhileFiring then mcontroller.controlModifiers({runningSuppressed = true}) end < self.drawTime = self.drawTime + dt < elseif fireMode == "none" and self.drawTime > 0 then < release() < end < < if self.handGrip == "wrap" then < activeItem.setOutsideOfHand(isFrontHand()) < elseif self.handGrip == "embed" then < activeItem.setOutsideOfHand(not isFrontHand()) < elseif self.handGrip == "outside" then < activeItem.setOutsideOfHand(true) < elseif self.handGrip == "inside" then < activeItem.setOutsideOfHand(false) < end < < animator.setGlobalTag("drawFrame", math.floor(root.evalFunction(config.getParameter("drawFrameSelector"), self.drawTime))) < end < < function release() < if not world.pointTileCollision(firePosition()) and status.overConsumeResource("energy", self.energyPerShot) then < world.spawnProjectile( < projectileType(), < firePosition(), < activeItem.ownerEntityId(), < aimVector(), < false, < projectileParameters() < ) < end < < animator.stopAllSounds("draw") < if perfectTiming() then < animator.playSound("perfectRelease") < else < animator.playSound("release") --- > local secondaryAttack = getAltAbility(self.weapon.elementalType) > if secondaryAttack then > self.weapon:addAbility(secondaryAttack) 69,70c20 < self.drawTime = 0 < storage.cooldownTimer = config.getParameter("cooldownTime", 1.0) --- > self.weapon:init() 73,113c23,24 < function perfectTiming() < local powerProjectileTime = config.getParameter("powerProjectileTime") < return self.drawTime > powerProjectileTime[1] and self.drawTime < powerProjectileTime[2] < end < < function projectileType() < if perfectTiming() then < return config.getParameter("powerProjectileType") < else < return config.getParameter("projectileType") < end < end < < function projectileParameters() < local projectileParameters = config.getParameter("projectileParameters", {}) < local projectileConfig = root.projectileConfig(projectileType()) < projectileParameters.speed = projectileParameters.speed or projectileConfig.speed < projectileParameters.speed = projectileParameters.speed * root.evalFunction(config.getParameter("drawSpeedMultiplier"), self.drawTime) < projectileParameters.power = projectileParameters.power or projectileConfig.power < projectileParameters.power = projectileParameters.power < * config.getParameter("damageLevelMultiplier") < * root.evalFunction(config.getParameter("drawPowerMultiplier"), self.drawTime) < projectileParameters.powerMultiplier = activeItem.ownerPowerMultiplier() < < return projectileParameters < end < < function updateAim() < self.aimAngle, self.aimDirection = activeItem.aimAngleAndDirection(self.fireOffset[2], activeItem.ownerAimPosition()) < activeItem.setArmAngle(self.aimAngle) < activeItem.setFacingDirection(self.aimDirection) < end < < function firePosition() < return vec2.add(mcontroller.position(), activeItem.handPosition(self.fireOffset)) < end < < function aimVector() < local aimVector = vec2.rotate({1, 0}, self.aimAngle + sb.nrand(config.getParameter("inaccuracy", 0), 0)) < aimVector[1] = aimVector[1] * self.aimDirection < return aimVector --- > function update(dt, fireMode, shiftHeld) > self.weapon:update(dt, fireMode, shiftHeld) 116,117c27,28 < function isFrontHand() < return (activeItem.hand() == "primary") == (self.aimDirection < 0) --- > function uninit() > self.weapon:uninit() items\active\weapons\bow\energybow.animation 7c7,8 < "image" : ":" --- > "image" : ":", > "transformationGroups" : ["weapon"] 15c16,17 < "image" : ":" --- > "image" : ":", > "transformationGroups" : ["weapon"] 28c30,31 < ] --- > ], > "transformationGroups" : ["weapon"] 35c38,39 < "color" : [90, 50, 120] --- > "color" : [90, 50, 120], > "transformationGroups" : ["weapon"] 36a41,44 > }, > > "transformationGroups" : { > "weapon" : {} items\active\weapons\bow\bow\bow.activeitem 35c35,36 < "walkWhileFiring" : true, --- > "primaryAbilityType" : "bowshot", > "primaryAbility" : { 37c38 < "fireOffset" : [1.75, 0], --- > }, 39c40,41 < "energyPerShot" : 30, --- > "altAbilityType" : "zenshot", > "altAbility" : { 41,53d42 < "cooldownTime" : 0.25, < "inaccuracy" : 0.01, < < "drawFrameSelector" : "bowImageSelector", < "drawPowerMultiplier" : "drawTimeMultiplier", < "drawSpeedMultiplier" : "drawTimeMultiplier", < < "projectileType" : "woodenarrow", < "powerProjectileType" : "chargedarrow", < "powerProjectileTime" : [0.9, 1.1], < "projectileParameters" : { < "speed" : 80, < "power" : 5.2 items\active\weapons\bow\compoundbow\compoundbow.activeitem 35,53c35,43 < "walkWhileFiring" : true, < < "fireOffset" : [1.75, 0], < < "energyPerShot" : 30, < < "cooldownTime" : 0.25, < "inaccuracy" : 0.01, < < "drawFrameSelector" : "poisonBowImageSelector", < "drawPowerMultiplier" : "drawTimeMultiplier", < "drawSpeedMultiplier" : "drawTimeMultiplier", < < "projectileType" : "ironarrow", < "powerProjectileType" : "chargedironarrow", < "powerProjectileTime" : [0.9, 1.1], < "projectileParameters" : { < "speed" : 80, < "power" : 5.2 --- > "primaryAbilityType" : "bowshot", > "primaryAbility" : { > "drawFrameSelector" : "poisonBowImageSelector", > "drawArmFrames" : ["rotation", "swim.2", "swim.2", "swim.2", "swimIdle.1", "swimIdle.1"], > "projectileType" : "ironarrow", > "powerProjectileType" : "chargedironarrow", > "projectileParameters" : { > "power" : 5.2 > } items\active\weapons\bow\cupidsbow\cupidsbow.activeitem 16c16 < "level" : 6, --- > "level" : 5, 35,53c35,41 < "walkWhileFiring" : true, < < "fireOffset" : [1.75, 0], < < "energyPerShot" : 30, < < "cooldownTime" : 0.25, < "inaccuracy" : 0.01, < < "drawFrameSelector" : "bowImageSelector", < "drawPowerMultiplier" : "drawTimeMultiplier", < "drawSpeedMultiplier" : "drawTimeMultiplier", < < "projectileType" : "heartarrow", < "powerProjectileType" : "chargedheartarrow", < "powerProjectileTime" : [0.9, 1.1], < "projectileParameters" : { < "speed" : 80, < "power" : 5.2 --- > "primaryAbilityType" : "bowshot", > "primaryAbility" : { > "projectileType" : "heartarrow", > "powerProjectileType" : "chargedheartarrow", > "projectileParameters" : { > "power" : 5.2 > } items\active\weapons\bow\ironbow\ironbow.activeitem 35,53c35,41 < "walkWhileFiring" : true, < < "fireOffset" : [1.75, 0], < < "energyPerShot" : 30, < < "cooldownTime" : 0.25, < "inaccuracy" : 0.01, < < "drawFrameSelector" : "bowImageSelector", < "drawPowerMultiplier" : "drawTimeMultiplier", < "drawSpeedMultiplier" : "drawTimeMultiplier", < < "projectileType" : "ironarrow", < "powerProjectileType" : "chargedironarrow", < "powerProjectileTime" : [0.9, 1.1], < "projectileParameters" : { < "speed" : 80, < "power" : 5.2 --- > "primaryAbilityType" : "bowshot", > "primaryAbility" : { > "projectileType" : "ironarrow", > "powerProjectileType" : "chargedironarrow", > "projectileParameters" : { > "power" : 5.2 > } items\active\weapons\bow\tungstenbow\tungstenbow.activeitem 35,53c35,41 < "walkWhileFiring" : true, < < "fireOffset" : [1.75, 0], < < "energyPerShot" : 30, < < "cooldownTime" : 0.25, < "inaccuracy" : 0.01, < < "drawFrameSelector" : "bowImageSelector", < "drawPowerMultiplier" : "drawTimeMultiplier", < "drawSpeedMultiplier" : "drawTimeMultiplier", < < "projectileType" : "ironarrow", < "powerProjectileType" : "chargedironarrow", < "powerProjectileTime" : [0.9, 1.1], < "projectileParameters" : { < "speed" : 80, < "power" : 5.2 --- > "primaryAbilityType" : "bowshot", > "primaryAbility" : { > "projectileType" : "ironarrow", > "powerProjectileType" : "chargedironarrow", > "projectileParameters" : { > "power" : 5.2 > } items\active\weapons\melee\abilities\spear\charge\charge.lua 104,106c104,106 < bolt.startLine = vec2.rotate(vec2.add(self.weapon.weaponOffset, {0, 4.0}), self.weapon.relativeWeaponRotation) < bolt.endLine = vec2.rotate(vec2.add(self.weapon.weaponOffset, {0, 4.0 - length}), self.weapon.relativeWeaponRotation) < bolt.displacement = vec2.mag(vec2.sub(bolt.endLine, bolt.startLine)) / 4 --- > bolt.itemStartPosition = vec2.rotate(vec2.add(self.weapon.weaponOffset, {0, 4.0}), self.weapon.relativeWeaponRotation) > bolt.itemEndPosition = vec2.rotate(vec2.add(self.weapon.weaponOffset, {0, 4.0 - length}), self.weapon.relativeWeaponRotation) > bolt.displacement = vec2.mag(vec2.sub(bolt.itemEndPosition, bolt.itemStartPosition)) / 4 items\active\weapons\npc\npcbow.activeitem 35,53c35,41 < "walkWhileFiring" : true, < < "fireOffset" : [1.75, 0], < < "energyPerShot" : 30, < < "cooldownTime" : 0.25, < "inaccuracy" : 0.01, < < "drawFrameSelector" : "bowImageSelector", < "drawPowerMultiplier" : "drawTimeMultiplier", < "drawSpeedMultiplier" : "drawTimeMultiplier", < < "projectileType" : "woodenarrow", < "powerProjectileType" : "woodenarrow", < "powerProjectileTime" : [0.9, 1.1], < "projectileParameters" : { < "speed" : 50, < "power" : 5.2 --- > "primaryAbilityType" : "bowshot", > "primaryAbility" : { > "projectileType" : "woodenarrow", > "powerProjectileType" : "woodenarrow", > "projectileParameters" : { > "speed" : 50 > } items\active\weapons\npc\npcfirebow.activeitem 35,53c35,41 < "walkWhileFiring" : true, < < "fireOffset" : [1.75, 0], < < "energyPerShot" : 30, < < "cooldownTime" : 0.25, < "inaccuracy" : 0.01, < < "drawFrameSelector" : "bowImageSelector", < "drawPowerMultiplier" : "drawTimeMultiplier", < "drawSpeedMultiplier" : "drawTimeMultiplier", < < "projectileType" : "flamingwoodenarrow", < "powerProjectileType" : "flamingwoodenarrow", < "powerProjectileTime" : [0.9, 1.1], < "projectileParameters" : { < "speed" : 50, < "power" : 5.2 --- > "primaryAbilityType" : "bowshot", > "primaryAbility" : { > "projectileType" : "flamingwoodenarrow", > "powerProjectileType" : "flamingwoodenarrow", > "projectileParameters" : { > "speed" : 50 > } items\active\weapons\npc\npctungstenbow.activeitem 35,53c35,41 < "walkWhileFiring" : true, < < "fireOffset" : [1.75, 0], < < "energyPerShot" : 30, < < "cooldownTime" : 0.25, < "inaccuracy" : 0.01, < < "drawFrameSelector" : "bowImageSelector", < "drawPowerMultiplier" : "drawTimeMultiplier", < "drawSpeedMultiplier" : "drawTimeMultiplier", < < "projectileType" : "ironarrow", < "powerProjectileType" : "chargedironarrow", < "powerProjectileTime" : [0.9, 1.1], < "projectileParameters" : { < "speed" : 50, < "power" : 5.2 --- > "primaryAbilityType" : "bowshot", > "primaryAbility" : { > "projectileType" : "ironarrow", > "powerProjectileType" : "ironarrow", > "projectileParameters" : { > "speed" : 50 > } items\active\weapons\protectorate\aegisaltbow\aegisaltbow.activeitem 24c24 < "offset" : [0.25, 0] --- > "offset" : [0, 0] 27c27 < "offset" : [0.25, 0] --- > "offset" : [0, 0] 39,57c39,46 < "walkWhileFiring" : true, < < "fireOffset" : [1.75, 0], < < "energyPerShot" : 30, < < "cooldownTime" : 0.5, < "inaccuracy" : 0.01, < < "drawFrameSelector" : "bowImageSelector", < "drawPowerMultiplier" : "drawTimeMultiplier", < "drawSpeedMultiplier" : "constant", < < "projectileType" : "energyarrow", < "powerProjectileType" : "chargedenergyarrow", < "powerProjectileTime" : [0.9, 1.1], < "projectileParameters" : { < "speed" : 100, < "power" : 5.2 --- > "primaryAbilityType" : "bowshot", > "primaryAbility" : { > "drawSpeedMultiplier" : "constant", > "projectileType" : "energyarrow", > "powerProjectileType" : "chargedenergyarrow", > "projectileParameters" : { > "power" : 5.2 > } items\active\weapons\staff\abilities\controlprojectile\elementbouncer.weaponability 10c10 < "name" : "Element Bouncer", --- > "name" : " Bouncer", 18c18 < "projectileType" : "firebouncer", --- > "projectileType" : "bouncer", items\active\weapons\staff\abilities\controlprojectile\elementrain.weaponability 10c10 < "name" : "Element Rain", --- > "name" : " Rain", items\active\weapons\staff\abilities\controlprojectile\elementswarm.weaponability 28c28 < "projectileType" : "fireswarmer", --- > "projectileType" : "electricswarmer", items\active\weapons\staff\abilities\guidedbolt\guidedbolt.lua 155,156c155,156 < bolt.startLine = segment[1] < bolt.endLine = segment[2] --- > bolt.worldStartPosition = segment[1] > bolt.worldEndPosition = segment[2] items\active\weapons\staff\generated\commonstaff.activeitem 64,65c64,65 < "primaryAbilities" : ["elementrain", "elementswarm", "elementbouncer", "elementball", "elementportal"], < "altAbilities" : ["healingzone", "lowgravzone", "slowzone", "pushzone", "pullzone", "forcecage"], --- > "primaryAbilities" : ["elementrain", "elementswarm", "elementbouncer", "elementorb", "elementportal"], > "altAbilities" : ["healingzone", "lowgravzone", "slowzone", "pushzone", "pullzone"], items\armors\apex\apex-tier1\apextier1.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\apex\apex-tier1\apextier1.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\apex\apex-tier1\apextier1.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\apex\apex-tier2\apextier2.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\apex\apex-tier2\apextier2.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\apex\apex-tier2\apextier2.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\apex\apex-tier3\apextier3.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\apex\apex-tier3\apextier3.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\apex\apex-tier3\apextier3.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\apex\apex-tier4\apextier4.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\apex\apex-tier4\apextier4.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\apex\apex-tier4\apextier4.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\apex\apex-tier5accelerator\apextier5accelerator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\apex\apex-tier5accelerator\apextier5accelerator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\apex\apex-tier5accelerator\apextier5accelerator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\apex\apex-tier5manipulator\apextier5manipulator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\apex\apex-tier5manipulator\apextier5manipulator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\apex\apex-tier5manipulator\apextier5manipulator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\apex\apex-tier5separator\apextier5separator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\apex\apex-tier5separator\apextier5separator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\apex\apex-tier5separator\apextier5separator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\apex\apex-tier6accelerator\apextier6accelerator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\apex\apex-tier6accelerator\apextier6accelerator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\apex\apex-tier6accelerator\apextier6accelerator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\apex\apex-tier6manipulator\apextier6manipulator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\apex\apex-tier6manipulator\apextier6manipulator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\apex\apex-tier6manipulator\apextier6manipulator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\apex\apex-tier6separator\apextier6separator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\apex\apex-tier6separator\apextier6separator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\apex\apex-tier6separator\apextier6separator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\avian\avian-tier1\aviantier1.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\avian\avian-tier1\aviantier1.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\avian\avian-tier1\aviantier1.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\avian\avian-tier2\aviantier2.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\avian\avian-tier2\aviantier2.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\avian\avian-tier2\aviantier2.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\avian\avian-tier3\aviantier3.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\avian\avian-tier3\aviantier3.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\avian\avian-tier3\aviantier3.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\avian\avian-tier4\aviantier4.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\avian\avian-tier4\aviantier4.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\avian\avian-tier4\aviantier4.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\avian\avian-tier5accelerator\aviantier5accelerator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\avian\avian-tier5accelerator\aviantier5accelerator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\avian\avian-tier5accelerator\aviantier5accelerator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\avian\avian-tier5manipulator\aviantier5manipulator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\avian\avian-tier5manipulator\aviantier5manipulator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\avian\avian-tier5manipulator\aviantier5manipulator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\avian\avian-tier5separator\aviantier5separator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\avian\avian-tier5separator\aviantier5separator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\avian\avian-tier5separator\aviantier5separator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\avian\avian-tier6accelerator\aviantier6accelerator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\avian\avian-tier6accelerator\aviantier6accelerator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\avian\avian-tier6accelerator\aviantier6accelerator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\avian\avian-tier6manipulator\aviantier6manipulator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\avian\avian-tier6manipulator\aviantier6manipulator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\avian\avian-tier6manipulator\aviantier6manipulator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\avian\avian-tier6separator\aviantier6separator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\avian\avian-tier6separator\aviantier6separator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\avian\avian-tier6separator\aviantier6separator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\floran\floran-tier1\florantier1.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\floran\floran-tier1\florantier1.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\floran\floran-tier1\florantier1.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\floran\floran-tier2\florantier2.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\floran\floran-tier2\florantier2.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\floran\floran-tier2\florantier2.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\floran\floran-tier3\florantier3.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\floran\floran-tier3\florantier3.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\floran\floran-tier3\florantier3.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\floran\floran-tier4\florantier4.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\floran\floran-tier4\florantier4.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\floran\floran-tier4\florantier4.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\floran\floran-tier5accelerator\florantier5accelerator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\floran\floran-tier5accelerator\florantier5accelerator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\floran\floran-tier5accelerator\florantier5accelerator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\floran\floran-tier5manipulator\florantier5manipulator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\floran\floran-tier5manipulator\florantier5manipulator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\floran\floran-tier5manipulator\florantier5manipulator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\floran\floran-tier5separator\florantier5separator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\floran\floran-tier5separator\florantier5separator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\floran\floran-tier5separator\florantier5separator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\floran\floran-tier6accelerator\florantier6accelerator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\floran\floran-tier6accelerator\florantier6accelerator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\floran\floran-tier6accelerator\florantier6accelerator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\floran\floran-tier6manipulator\florantier6manipulator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\floran\floran-tier6manipulator\florantier6manipulator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\floran\floran-tier6manipulator\florantier6manipulator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\floran\floran-tier6separator\florantier6separator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\floran\floran-tier6separator\florantier6separator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\floran\floran-tier6separator\florantier6separator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\glitch\glitch-tier1\glitchtier1.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\glitch\glitch-tier1\glitchtier1.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\glitch\glitch-tier1\glitchtier1.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\glitch\glitch-tier2\glitchtier2.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\glitch\glitch-tier2\glitchtier2.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\glitch\glitch-tier2\glitchtier2.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\glitch\glitch-tier3\glitchtier3.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\glitch\glitch-tier3\glitchtier3.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\glitch\glitch-tier3\glitchtier3.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\glitch\glitch-tier4\glitchtier4.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\glitch\glitch-tier4\glitchtier4.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\glitch\glitch-tier4\glitchtier4.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\glitch\glitch-tier5accelerator\glitchtier5accelerator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\glitch\glitch-tier5accelerator\glitchtier5accelerator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\glitch\glitch-tier5accelerator\glitchtier5accelerator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\glitch\glitch-tier5manipulator\glitchtier5manipulator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\glitch\glitch-tier5manipulator\glitchtier5manipulator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\glitch\glitch-tier5manipulator\glitchtier5manipulator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\glitch\glitch-tier5separator\glitchtier5separator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\glitch\glitch-tier5separator\glitchtier5separator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\glitch\glitch-tier5separator\glitchtier5separator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\glitch\glitch-tier6accelerator\glitchtier6accelerator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\glitch\glitch-tier6accelerator\glitchtier6accelerator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\glitch\glitch-tier6accelerator\glitchtier6accelerator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\glitch\glitch-tier6manipulator\glitchtier6manipulator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\glitch\glitch-tier6manipulator\glitchtier6manipulator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\glitch\glitch-tier6manipulator\glitchtier6manipulator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\glitch\glitch-tier6separator\glitchtier6separator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\glitch\glitch-tier6separator\glitchtier6separator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\glitch\glitch-tier6separator\glitchtier6separator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\human\human-tier1\humantier1.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\human\human-tier1\humantier1.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\human\human-tier1\humantier1.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\human\human-tier10old\humantier10old.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\human\human-tier10old\humantier10old.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\human\human-tier10old\humantier10old.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\human\human-tier2\humantier2.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\human\human-tier2\humantier2.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\human\human-tier2\humantier2.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\human\human-tier3\humantier3.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\human\human-tier3\humantier3.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\human\human-tier3\humantier3.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\human\human-tier4\humantier4.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\human\human-tier4\humantier4.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\human\human-tier4\humantier4.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\human\human-tier5accelerator\humantier5accelerator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\human\human-tier5accelerator\humantier5accelerator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\human\human-tier5accelerator\humantier5accelerator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\human\human-tier5manipulator\humantier5manipulator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\human\human-tier5manipulator\humantier5manipulator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\human\human-tier5manipulator\humantier5manipulator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\human\human-tier5separator\humantier5separator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\human\human-tier5separator\humantier5separator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\human\human-tier5separator\humantier5separator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\human\human-tier6accelerator\humantier6accelerator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\human\human-tier6accelerator\humantier6accelerator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\human\human-tier6accelerator\humantier6accelerator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\human\human-tier6manipulator\humantier6manipulator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\human\human-tier6manipulator\humantier6manipulator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\human\human-tier6manipulator\humantier6manipulator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\human\human-tier6separator\humantier6separator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\human\human-tier6separator\humantier6separator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\human\human-tier6separator\humantier6separator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\hylotl\hylotl-tier1\hylotltier1.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\hylotl\hylotl-tier1\hylotltier1.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\hylotl\hylotl-tier1\hylotltier1.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\hylotl\hylotl-tier2\hylotltier2.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\hylotl\hylotl-tier2\hylotltier2.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\hylotl\hylotl-tier2\hylotltier2.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\hylotl\hylotl-tier3\hylotltier3.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\hylotl\hylotl-tier3\hylotltier3.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\hylotl\hylotl-tier3\hylotltier3.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\hylotl\hylotl-tier4\hylotltier4.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\hylotl\hylotl-tier4\hylotltier4.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\hylotl\hylotl-tier4\hylotltier4.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\hylotl\hylotl-tier5accelerator\hylotltier5accelerator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\hylotl\hylotl-tier5accelerator\hylotltier5accelerator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\hylotl\hylotl-tier5accelerator\hylotltier5accelerator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\hylotl\hylotl-tier5manipulator\hylotltier5manipulator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\hylotl\hylotl-tier5manipulator\hylotltier5manipulator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\hylotl\hylotl-tier5manipulator\hylotltier5manipulator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\hylotl\hylotl-tier5separator\hylotltier5separator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\hylotl\hylotl-tier5separator\hylotltier5separator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\hylotl\hylotl-tier5separator\hylotltier5separator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\hylotl\hylotl-tier6accelerator\hylotltier6accelerator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\hylotl\hylotl-tier6accelerator\hylotltier6accelerator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\hylotl\hylotl-tier6accelerator\hylotltier6accelerator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\hylotl\hylotl-tier6manipulator\hylotltier6manipulator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\hylotl\hylotl-tier6manipulator\hylotltier6manipulator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\hylotl\hylotl-tier6manipulator\hylotltier6manipulator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\hylotl\hylotl-tier6separator\hylotltier6separator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\hylotl\hylotl-tier6separator\hylotltier6separator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\hylotl\hylotl-tier6separator\hylotltier6separator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\novakid\nova-tier1\novatier1.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\novakid\nova-tier1\novatier1.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\novakid\nova-tier1\novatier1.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\novakid\nova-tier2\novatier2.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\novakid\nova-tier2\novatier2.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\novakid\nova-tier2\novatier2.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\novakid\nova-tier3\novatier3.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\novakid\nova-tier3\novatier3.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\novakid\nova-tier3\novatier3.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\novakid\nova-tier4\novatier4.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\novakid\nova-tier4\novatier4.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\novakid\nova-tier4\novatier4.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\novakid\nova-tier5accelerator\novatier5accelerator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\novakid\nova-tier5accelerator\novatier5accelerator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\novakid\nova-tier5accelerator\novatier5accelerator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\novakid\nova-tier5manipulator\novatier5manipulator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\novakid\nova-tier5manipulator\novatier5manipulator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\novakid\nova-tier5manipulator\novatier5manipulator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\novakid\nova-tier5separator\novatier5separator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\novakid\nova-tier5separator\novatier5separator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\novakid\nova-tier5separator\novatier5separator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\novakid\nova-tier6accelerator\novatier6accelerator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\novakid\nova-tier6accelerator\novatier6accelerator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\novakid\nova-tier6accelerator\novatier6accelerator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\novakid\nova-tier6manipulator\novatier6manipulator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\novakid\nova-tier6manipulator\novatier6manipulator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\novakid\nova-tier6manipulator\novatier6manipulator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\armors\novakid\nova-tier6separator\novatier6separator.chest 7c7 < "category" : "chestwear", --- > "category" : "chestarmour", items\armors\novakid\nova-tier6separator\novatier6separator.head 7c7 < "category" : "headwear", --- > "category" : "headarmour", items\armors\novakid\nova-tier6separator\novatier6separator.legs 7c7 < "category" : "legwear", --- > "category" : "legarmour", items\buildscripts\buildbow.lua 1a2,3 > require "/scripts/versioningutils.lua" > require "/items/buildscripts/abilities.lua" 3a6,17 > if level then > parameters.level = level > end > > -- select, load and merge abilities > setupAbility(config, parameters, "alt") > setupAbility(config, parameters, "primary") > > -- elemental type > local elementalType = parameters.elementalType or config.elementalType or "physical" > replacePatternInData(config, nil, "", elementalType) > 9,14c23,28 < config.tooltipFields.energyPerShotLabel = config.energyPerShot or 0 < local bestDrawTime = (config.powerProjectileTime[1] + config.powerProjectileTime[2]) / 2 < local bestDrawMultiplier = root.evalFunction(config.drawPowerMultiplier, bestDrawTime) < config.tooltipFields.maxDamageLabel = util.round(config.projectileParameters.power * config.damageLevelMultiplier * bestDrawMultiplier, 1) < if config.elementalType and config.elementalType ~= "physical" then < config.tooltipFields.damageKindImage = "/interface/elements/"..config.elementalType..".png" --- > config.tooltipFields.energyPerShotLabel = config.primaryAbility.energyPerShot or 0 > local bestDrawTime = (config.primaryAbility.powerProjectileTime[1] + config.primaryAbility.powerProjectileTime[2]) / 2 > local bestDrawMultiplier = root.evalFunction(config.primaryAbility.drawPowerMultiplier, bestDrawTime) > config.tooltipFields.maxDamageLabel = util.round(config.primaryAbility.projectileParameters.power * config.damageLevelMultiplier * bestDrawMultiplier, 1) > if elementalType ~= "physical" then > config.tooltipFields.damageKindImage = "/interface/elements/"..elementalType..".png" items\buildscripts\buildweapon.lua 45a46 > replacePatternInData(config, nil, "", elementalType:gsub("^%l", string.upper)) items\buildscripts\weaponabilities.config 68c68 < "elementball" : "/items/active/weapons/staff/abilities/controlprojectile/elementball.weaponability", --- > "elementorb" : "/items/active/weapons/staff/abilities/controlprojectile/elementorb.weaponability", 82a83,86 > > // bows > "bowshot" : "/items/active/weapons/bow/abilities/bowshot.weaponability", > "zenshot" : "/items/active/weapons/bow/abilities/zenshot.weaponability", leveling\bow.functions 2a3 > "normalizedDrawTimeMultiplier" : [ "linear", "clamp", [0, 0], [0.1, 0.01], [0.2, 0.25], [0.89, 0.9], [0.9, 1.0] ], monsters\ghosts\skimbus\skimbus.animation 19,20c19,27 < "frames" : 5, < "cycle" : 1.0 --- > "frames" : 1, > "cycle" : 0.1, > "mode" : "transition", > "transition" : "chargewinduploop" > }, > "chargewinduploop" : { > "frames" : 4, > "cycle" : 0.4, > "mode" : "loop" 22a30,35 > "frames" : 1, > "cycle" : 0.1, > "mode" : "transition", > "transition" : "chargeloop" > }, > "chargeloop" : { 26a40 > 86a101,105 > "chargewinduploop" : { > "properties" : { > "image" : ":winduploop." > } > }, 89a109,113 > } > }, > "chargeloop" : { > "properties" : { > "image" : ":chargeloop." monsters\ghosts\skimbus\skimbus.frames 9,10c9,10 < [ null, "windup.1", null, "windup.2", "windup.3", "windup.4", "windup.5", null, "windup.6"], < [ null, "charge.1", "charge.2", "charge.3", "charge.4", "charge.5", "charge.6", "charge.7", "charge.8"] --- > [ null, "windup.1", null, "winduploop.1", "winduploop.2", "winduploop.3", "winduploop.4", null, "charge.1"], > [ null, "chargeloop.1", "chargeloop.2", "chargeloop.3", "chargeloop.4", "chargeloop.5", "chargeloop.6", "chargeloop.7", "chargeloop.8"] objects\hylotl\hylotlclassicgong\hylotlclassicgong.object 27a28,29 > "interactiveSpaces" : [ [-1,1], [0,1], [-1,2], [0,2], [-1,3], [0,3] ], > objects\hylotl\hylotlshojiscreen\hylotlshojiscreen.object 24,25d23 < "frames" : 1, < "animationCycle" : 0.5, 29d26 < 31c28,33 < ] --- > ], > > "objectType" : "loungeable", > "sitCoverImage" : "/objects/hylotl/hylotlshojiscreen/hylotlshojiscreen.png", > "sitFlipDirection" : false, > "sitPosition" : [0, 19] objects\hylotl\hylotlspeaker\hylotlradio.animation 84a85 > "flippable" : false, objects\hylotl\hylotlspeaker\hylotlradio.object 20c20 < "lightColor" : [0, 25, 0], --- > "lightColor" : [0, 0, 0], objects\outpost\treasuredtrophies\treasuredtrophies.object 18a19,33 > "interactAction" : "OpenCraftingInterface", > "interactData" : { > "config" : "/interface/windowconfig/2stopshop.config", > "paneLayoutOverride" : { > "windowtitle" : { > "title" : "Treasured Trophies", > "subtitle" : "Turn in rare items for bountiful bounties!", > "icon" : { > "file" : "/interface/bounty/bountyicon.png" > } > } > }, > "filter" : [ "treasuredtrophies" ] > }, > 47,61c62 < ], < < "interactAction" : "OpenNpcBountyInterface", < "interactData" : { < "bounties" : [ < { < "proof" : "monsterclaw", < "rewards" : [ < ["money", 50, {}] < ], < "title" : "test", < "description" : "additional testing" < } < ] < } --- > ] objects\protectorate\objects\protectorateradio\protectorateradio.animation 82a83 > "flippable" : false, objects\protectorate\objects\protectorateradio\protectorateradio.object 20c20 < "lightColor" : [0, 25, 0], --- > "lightColor" : [0, 0, 0], projectiles\physics.config 584a585,599 > "wallsticky" : { > "mass" : 1.0, > "gravityMultiplier" : 0.0, > "stickyCollision" : true, > "stickyForce" : 50.0, > "maxMovementPerStep" : 0.4, > > "collisionPoly" : [ [-0.3, -0.3], [0.3, -0.3], [0.3, 0.3], [-0.3, 0.3] ], > "ignorePlatformCollision" : true, > > "airFriction" : 1.0, > "liquidFriction" : 1.0, > "groundFriction" : 1.0 > }, > projectiles\activeitems\staff\elementbouncer\firebouncer.projectile 14,31d13 < }, < { < "action" : "projectile", < "type" : "molotovflame", < "inheritSpeedFactor" : 0, < "offset" : [0.5, 0], < "config" : { < "timeToLive" : 5 < } < }, < { < "action" : "projectile", < "type" : "molotovflame", < "inheritSpeedFactor" : 0, < "offset" : [-0.5, 0], < "config" : { < "timeToLive" : 5 < } 50c32,34 < "bounces" : 7, --- > "bounces" : 6, > > "scripts" : [ "/projectiles/activeitems/staff/staffprojectile.lua", "/projectiles/activeitems/staff/elementbouncer/bouncespikes.lua" ], 52c36,37 < "scripts" : [ "/projectiles/activeitems/staff/staffprojectile.lua" ], --- > "spikeProjectile" : "firestickyspikes", > "spikeDamageFactor" : 0.2, projectiles\activeitems\staff\healingzone\default.frames 4c4 < "dimensions" : [3, 2], --- > "dimensions" : [6, 2], 6,7c6,7 < [ "0", "1", "2"], < [ "3", "4", "5"] --- > [ "0", "1", "2", "3", "4", "5" ], > [ "6", "7", "8", "9", "10", "11" ] projectiles\activeitems\staff\healingzone\healingzone.projectile 6,7c6,7 < "animationCycle" : 1.0, < "frameNumber" : 6, --- > "animationCycle" : 1.2, > "frameNumber" : 12, projectiles\activeitems\staff\lowgravzone\default.frames 3,4c3,4 < "size" : [60, 60], < "dimensions" : [3, 2], --- > "size" : [104, 104], > "dimensions" : [4, 1], 6,7c6 < [ "0", "1", "2"], < [ "3", "4", "5"] --- > [ "0", "1", "2", "3"] projectiles\activeitems\staff\lowgravzone\lowgravzone.projectile 6,7c6,7 < "animationCycle" : 1.0, < "frameNumber" : 6, --- > "animationCycle" : 0.3, > "frameNumber" : 4, 15c15 < "statusEffectArea" : [ [-3.5, 0], [-2.5, -2.5], [0, -3.5], [2.5, -2.5], [3.5, 0], [2.5, 2.5], [0, 3.5], [-2.5, 2.5] ], --- > "statusEffectArea" : [ [-6.0, 0], [-4.0, -4.0], [0, -6.0], [4.0, -4.0], [6.0, 0], [4.0, 4.0], [0, 6.0], [-4.0, 4.0] ], quests\generated\locations.config 2626a2627,2634 > }, > "entrance" : { > "name" : "entrance of the old Hylotl castle", > "tags" : [ "hylotl", "friendly" ] > }, > "rearentrance" : { > "name" : "rear entrance of the old Hylotl castle", > "tags" : [ "hylotl", "friendly" ] tilesets\packed\objects-by-category\light.json 1599c1599 < "tilesetDirection" : "right" --- > "tilesetDirection" : "left" tilesets\packed\objects-by-category\other.json 7c7 < "tilecount" : 271, --- > "tilecount" : 272, 1442a1443,1451 > "271" : { > "//description" : "A family business. Sells refined ores for crafting.", > "//name" : "ursaminer", > "//shortdescription" : "Ursa Miner", > "imagePositionX" : "-104", > "imagePositionY" : "0", > "object" : "ursaminer", > "tilesetDirection" : "left" > }, 2672a2682,2684 > }, > "271" : { > "image" : "../../../../../tiled/packed/objects/ursaminer.png" tilesets\packed\objects-by-colonytag\commerce.json 7c7 < "tilecount" : 126, --- > "tilecount" : 127, 287a288,296 > "126" : { > "//description" : "A family business. Sells refined ores for crafting.", > "//name" : "ursaminer", > "//shortdescription" : "Ursa Miner", > "imagePositionX" : "-104", > "imagePositionY" : "0", > "object" : "ursaminer", > "tilesetDirection" : "left" > }, 1221a1231,1233 > }, > "126" : { > "image" : "../../../../../tiled/packed/objects/ursaminer.png" tilesets\packed\objects-by-colonytag\hylotl.json 534c534 < "tilesetDirection" : "right" --- > "tilesetDirection" : "left" tilesets\packed\objects-by-colonytag\hylotlvillage.json 282c282 < "tilesetDirection" : "right" --- > "tilesetDirection" : "left" tilesets\packed\objects-by-colonytag\light.json 1039c1039 < "tilesetDirection" : "right" --- > "tilesetDirection" : "left" tilesets\packed\objects-by-colonytag\outpost.json 7c7 < "tilecount" : 77, --- > "tilecount" : 78, 672a673,681 > "77" : { > "//description" : "A family business. Sells refined ores for crafting.", > "//name" : "ursaminer", > "//shortdescription" : "Ursa Miner", > "imagePositionX" : "-104", > "imagePositionY" : "0", > "object" : "ursaminer", > "tilesetDirection" : "left" > }, 916a926,928 > }, > "77" : { > "image" : "../../../../../tiled/packed/objects/ursaminer.png" tilesets\packed\objects-by-race\generic.json 7c7 < "tilecount" : 1698, --- > "tilecount" : 1699, 6608a6609,6617 > "1698" : { > "//description" : "A family business. Sells refined ores for crafting.", > "//name" : "ursaminer", > "//shortdescription" : "Ursa Miner", > "imagePositionX" : "-104", > "imagePositionY" : "0", > "object" : "ursaminer", > "tilesetDirection" : "left" > }, 16749a16759,16761 > }, > "1698" : { > "image" : "../../../../../tiled/packed/objects/ursaminer.png" tilesets\packed\objects-by-race\hylotl.json 414c414 < "tilesetDirection" : "right" --- > "tilesetDirection" : "left"