FILES ----- dungeon_worlds.config [NEW] metamaterials.config terrestrial_worlds.config ai\ai.config ai\apexai.png [NEW] ai\apexaiold.png ai\avianai.png [NEW] ai\avianaiold.png ai\floranai.png [NEW] ai\floranaiold.png ai\glitchai.png [NEW] ai\glitchaiold.png [NEW] ai\horseaiold.png ai\humanai.png ai\hylotlai.png [NEW] ai\hylotlaiold.png ai\missionapex1.aimission [NEW] ai\missionapex1icon.png ai\missionavian1.aimission [NEW] ai\missionavian1icon.png ai\missionfloran1.aimission [NEW] ai\missionfloran1icon.png ai\missionglitch1.aimission [NEW] ai\missionglitch1icon.png ai\missionhuman1.aimission [NEW] ai\missionhuman1icon.png ai\missionhylotl1.aimission [NEW] ai\missionhylotl1icon.png ai\novakidai.png [NEW] ai\commands\enableteleporter.aicommand [NEW] ai\commands\enginestatus.aicommand [NEW] ai\commands\givebeamaxe.aicommand [NEW] ai\commands\givepainttool.aicommand [NEW] ai\commands\givewiretool.aicommand [NEW] ai\commands\shipstatus1.aicommand [NEW] ai\commands\shipstatus2.aicommand [NEW] ai\commands\shipstatus3.aicommand [NEW] ai\commands\unknownobject.aicommand [NEW] ai\commands\upgradebeamaxe1.aicommand [NEW] ai\commands\upgradebeamaxe2.aicommand [NEW] ai\commands\upgradebeamaxe3.aicommand [NEW] ai\commands\upgradebeamaxe4.aicommand [NEW] ai\commands\upgradebeamaxe5.aicommand [NEW] ai\commands\upgradebeamaxe6.aicommand [NEW] ai\commands\upgradebeamaxe7.aicommand [NEW] ai\commands\upgradebeamaxe8.aicommand [NEW] ai\commands\upgradebeamaxe9.aicommand [NEW] ai\commands\upgradeship1.aicommand [NEW] ai\commands\upgradeship2.aicommand [NEW] ai\commands\upgradeship3.aicommand [NEW] ai\commands\whathappened.aicommand [NEW] ai\commands\whereami.aicommand [NEW] ai\commands\whoareyou.aicommand ai\portraits\apexportrait.png ai\portraits\avianportrait.png ai\portraits\floranportrait.png ai\portraits\glitchportrait.png ai\portraits\humanportrait.png ai\portraits\hylotlportrait.png ai\portraits\novakidportrait.png [NEW] ai\portraits\alt\apexportrait.png [NEW] ai\portraits\alt\avianportrait.png [NEW] ai\portraits\alt\floranportrait.png [NEW] ai\portraits\alt\glitchportrait.png [NEW] ai\portraits\alt\humanportrait.png [NEW] ai\portraits\alt\hylotlportrait.png [NEW] ai\portraits\alt\novakidportrait.png behaviors\sequences\apexmission\lanaend.behavior behaviors\sequences\avianmission\tonauacend.behavior behaviors\sequences\floranmission\nuruendscene.behavior behaviors\sequences\glitchmission\baronstart.behavior behaviors\sequences\hylotlmission\koichiend.behavior cinematics\artifacts\floranartifact.cinematic [NEW] cinematics\artifacts\floranartifact.frames cinematics\artifacts\floranartifact.png [NEW] cinematics\artifacts\floranartifact_name.png [NEW] cinematics\artifacts\glitchartifact.cinematic [NEW] cinematics\artifacts\glitchartifact.frames [NEW] cinematics\artifacts\glitchartifact.png [NEW] cinematics\artifacts\glitchartifact_name.png [NEW] cinematics\artifacts\humanartifact.cinematic [NEW] cinematics\artifacts\humanartifact.frames [NEW] cinematics\artifacts\humanartifact.png [NEW] cinematics\artifacts\humanartifact_name.png cinematics\story\esther\esther.cinematic [NEW] dungeons\floran\floranhuntinggrounds\4a-objects-clue3.png [NEW] dungeons\floran\floranhuntinggrounds\4b-objects-clue1.png [NEW] dungeons\floran\floranhuntinggrounds\5a-objects-clue4.png [NEW] dungeons\floran\floranhuntinggrounds\5c-objects-clue5.png [NEW] dungeons\floran\floranhuntinggrounds\endleft1a-chestobjects-clue2.png [NEW] dungeons\floran\floranhuntinggrounds\endleft1b-chestobjects-clue2.png [NEW] dungeons\floran\floranhuntinggrounds\endright1a-chestobjects-clue2.png [NEW] dungeons\floran\floranhuntinggrounds\endright1b-chestobjects-clue2.png dungeons\floran\floranhuntinggrounds\floranhuntinggrounds.dungeon dungeons\floran\floranvillagetower\floranvillagetower.dungeon [NEW] dungeons\floran\floranvillagetower\roof1a-objects-clue5.png [NEW] dungeons\floran\floranvillagetower\roof2a-objects-clue2.png [NEW] dungeons\floran\floranvillagetower\roof2b-objects-clue3.png [NEW] dungeons\floran\floranvillagetower\roof3a-objects-clue2.png [NEW] dungeons\floran\floranvillagetower\roof3b-objects-clue1.png [NEW] dungeons\floran\floranvillagetower\roof4a-objects-clue1.png [NEW] dungeons\floran\floranvillagetower\roof4b-objects-clue4.png dungeons\floran\floranvillagetower\roof4b-objects.png dungeons\missions\hylotlmissions\hylotlmission1.json dungeons\other\ancientgateway\ancientgateway.json dungeons\other\arena\arena1.json dungeons\other\arena\arena2.json dungeons\other\arena\arena3.json dungeons\other\outpost\outpost.json effects\stargazer.effectsource humanoid\esther\femalebody.png humanoid\esther\malebody.png humanoid\lana\backarm.png humanoid\lana\femalebody.png humanoid\lana\frontarm.png humanoid\lana\malebody.png [NEW] interface\chatbubbles\baron.frames interface\chatbubbles\baron.png interface\crafting\anvilbody.png interface\crafting\apothecarybody.png interface\crafting\campfirebody.png interface\crafting\cookingbody.png interface\crafting\craftingbody.png interface\crafting\farmbody.png interface\crafting\fossilstationbody.png interface\crafting\furnacebody.png interface\crafting\furniturebody.png interface\crafting\furniturestore.png interface\crafting\inventorsbody.png interface\crafting\printerbody.png interface\crafting\researchbody.png interface\crafting\shopbody.png interface\crafting\spinningwheelbody.png interface\crafting\wiringbody.png interface\merchant\buybody.png interface\merchant\sellbody.png interface\merchant\tabbase.png interface\merchant\tabover.png interface\merchant\tabselected.png interface\merchant\tabselectedover.png interface\objectcrafting\fossilstation.config interface\tabs\tabbase.png interface\tabs\tabover.png interface\tabs\tabselected.png interface\tabs\tabselectedover.png [NEW] interface\warping\monolithwarp.config interface\windowconfig\crafting.config interface\windowconfig\craftinganvil.config interface\windowconfig\craftingcampfire.config interface\windowconfig\craftingfarming.config interface\windowconfig\craftingfood.config interface\windowconfig\craftingfurnace.config interface\windowconfig\craftingfurniture.config interface\windowconfig\craftingfurniturestore.config interface\windowconfig\craftingmedical.config interface\windowconfig\craftingmerchant.config interface\windowconfig\inventorstable.config interface\windowconfig\merchant.config interface\windowconfig\questlog.config interface\windowconfig\spinningwheel.config interface\windowconfig\wiringstation.config [NEW] items\active\weapons\arena\flamethrowerblade\default.frames items\active\weapons\arena\flamethrowerblade\flamethrowerblade.activeitem [NEW] items\active\weapons\arena\flamethrowerblade\flamethrowerblade.animation items\active\weapons\arena\flamethrowerblade\flamethrowerblade.png [NEW] items\active\weapons\arena\flamethrowerblade\flamethrowerbladefullbright.png items\active\weapons\melee\broadsword\astrosabredeluxe.activeitem items\active\weapons\melee\broadsword\astrosabredeluxe.png items\active\weapons\melee\broadsword\astrosabredeluxefullbright.png items\active\weapons\melee\broadsword\timepierce.activeitem items\active\weapons\other\adaptablecrossbow\adaptableammo.altability items\active\weapons\other\adaptablecrossbow\adaptablecrossbow.frames items\active\weapons\other\adaptablecrossbow\adaptablecrossbow.png items\active\weapons\other\flamingdemonsword\flamingdemonsword.activeitem items\active\weapons\other\flamingdemonsword\flamingdemonsword.animation items\active\weapons\other\gristlegun\gristlegun.activeitem items\active\weapons\other\soulseeker\soulseeker.activeitem [NEW] items\armors\backerhats\gunterhat\gunterhat.head [NEW] items\armors\backerhats\gunterhat\head.png [NEW] items\armors\backerhats\gunterhat\icons.png [NEW] items\armors\backerhats\gunterhat\mask.png items\armors\backerhats\soulguise\soulguise.head items\armors\backerhats\stargazer\head.png items\armors\backerhats\stargazer\icons.png items\armors\backerhats\tricornhat\head.png items\armors\backerhats\tricornhat\icons.png items\liquids\healingwater.liqitem items\liquids\slime.liqitem monsters\boss\apeboss\apeboss.monstertype monsters\boss\apebossprojector\apebossprojector.monstertype monsters\boss\crystalboss\crystalboss.monstertype monsters\boss\cultistboss\cultistboss.monstertype monsters\boss\dragonboss\dragonboss.monstertype monsters\boss\kluexboss\kluexboss.monstertype monsters\boss\kluexbossstatue\kluexbossstatue.monstertype monsters\boss\missile\missile.monstertype monsters\boss\penguinminiufo\penguinminiufo.monstertype monsters\boss\penguintank\penguintank.monstertype monsters\boss\penguinufo\penguinufo.monstertype monsters\boss\robotboss\robotboss.monstertype monsters\boss\spiderboss\spiderboss.monstertype npcs\apexslave.npctype npcs\base.npctype npcs\chefmerchant.npctype npcs\doctormerchant.npctype npcs\merchant.npctype npcs\merchantpools.config npcs\nakedvillager.npctype npcs\oremerchant.npctype npcs\servant.npctype npcs\stimmerchant.npctype npcs\toolmerchant.npctype npcs\tutorialtenant.npctype npcs\villageguard.npctype npcs\villager.npctype npcs\wizardmerchant.npctype npcs\biome\colourfulvillager.npctype npcs\biome\forestvillager.npctype npcs\biome\foundryworker.npctype npcs\biome\hazmatscientist.npctype npcs\biome\savannahvillager.npctype npcs\biome\shadowvillager.npctype npcs\biome\snowscientist.npctype npcs\biome\snowvillager.npctype npcs\biome\undergroundvillager.npctype npcs\dungeon\avianairship\airshipquartermaster.npctype npcs\dungeon\aviantower\towerascendant.npctype npcs\dungeon\floranhuntinggrounds\wildhunter.npctype npcs\dungeon\floranhuntinggrounds\wildhunterveteran.npctype npcs\furniture\astronaut.npctype npcs\furniture\cabin.npctype npcs\furniture\farm.npctype npcs\furniture\gothic.npctype npcs\furniture\island.npctype npcs\furniture\retroscifi.npctype npcs\furniture\saloon.npctype npcs\furniture\sea.npctype npcs\furniture\spooky.npctype npcs\furniture\steampunk.npctype npcs\mission\floranchieftain.npctype npcs\outpost\baronoutpost.npctype npcs\outpost\lanaoutpost.npctype npcs\story\baron.npctype npcs\story\estheroid.config npcs\story\koichioid.config npcs\story\lanaoid.config npcs\story\noxoid.config npcs\story\nuruoid.config npcs\story\tonauac.npctype npcs\story\tonauacoid.config npcs\subbiometenants\bones.npctype npcs\subbiometenants\flesh.npctype npcs\subbiometenants\foundry.npctype npcs\subbiometenants\geode.npctype npcs\subbiometenants\giantflower.npctype npcs\subbiometenants\glow.npctype npcs\subbiometenants\oasis.npctype npcs\subbiometenants\prism.npctype npcs\subbiometenants\scorched.npctype npcs\subbiometenants\spring.npctype npcs\subbiometenants\steamspring.npctype npcs\subbiometenants\tar.npctype npcs\tenants\apexresearchlab.npctype npcs\tenants\avianairship.npctype npcs\tenants\aviantomb.npctype npcs\tenants\chefmerchanttenant.npctype npcs\tenants\creepling.npctype npcs\tenants\electrician.npctype npcs\tenants\friendlycultist.npctype npcs\tenants\friendlyguardtenant.npctype npcs\tenants\generictenant.npctype npcs\tenants\glitchcastle.npctype npcs\tenants\glitchsewer.npctype npcs\tenants\hazmat.npctype npcs\tenants\humanbunker.npctype npcs\tenants\humanprison.npctype npcs\tenants\merchanttenant.npctype npcs\tenants\neon.npctype npcs\tenants\philanthropist.npctype npcs\tenants\scientist.npctype npcs\tenants\socialite.npctype objects\ancient\ancientconsole\ancientconsole.lua objects\ancient\ancientconsole\ancientconsole.object objects\ancient\monolithgate\monolithgate.animation objects\ancient\monolithgate\monolithgate.lua objects\ancient\monolithgate\monolithgate.object [NEW] objects\ancient\monolithgate\monolithgateinner.frames [NEW] objects\ancient\monolithgate\monolithgateinner.png [NEW] objects\apex\classiccurtain3\classiccurtain3.frames [NEW] objects\apex\classiccurtain3\classiccurtain3.object [NEW] objects\apex\classiccurtain3\classiccurtain3.png [NEW] objects\apex\classiccurtain3\classiccurtain3icon.png objects\clues\floran\floranwebbing\floranwebbing.object objects\clues\hylotl\hylotlmusicbox\hylotlmusicbox.object objects\floran\huntingpunjisticks1\huntingpunjisticks1.object objects\floran\huntingpunjisticks2\huntingpunjisticks2.object objects\floran\huntingtrophy3\huntingtrophy3.object objects\generic\backerstatue\cameronstatue.object objects\outpost\infinityexpress\infinityexpress.object [NEW] objects\outpost\outpostbarstool\outpostbarstool.frames [NEW] objects\outpost\outpostbarstool\outpostbarstool.object [NEW] objects\outpost\outpostbarstool\outpostbarstool.png [NEW] objects\outpost\outpostbarstool\outpostbarstoolicon.png [NEW] objects\outpost\penguinbar\penguinbarbottom.frames [NEW] objects\outpost\penguinbar\penguinbarbottom.object [NEW] objects\outpost\penguinbar\penguinbarbottom.png [NEW] objects\outpost\penguinbar\penguinbaricon.png [NEW] objects\outpost\penguinbar\penguinbartop.frames [NEW] objects\outpost\penguinbar\penguinbartop.object [NEW] objects\outpost\penguinbar\penguinbartop.png [NEW] objects\outpost\penguinbarlamp\penguinbarlamp.frames [NEW] objects\outpost\penguinbarlamp\penguinbarlamp.object [NEW] objects\outpost\penguinbarlamp\penguinbarlamp.png [NEW] objects\outpost\penguinbarlamp\penguinbarlampicon.png [NEW] objects\outpost\penguinbarlamp\penguinbarlamplit.frames [NEW] objects\outpost\penguinbarlamp\penguinbarlamplit.png [NEW] objects\outpost\penguinbarsign\penguinbarsign.animation [NEW] objects\outpost\penguinbarsign\penguinbarsign.frames [NEW] objects\outpost\penguinbarsign\penguinbarsign.object [NEW] objects\outpost\penguinbarsign\penguinbarsign.png [NEW] objects\outpost\penguinbarsign\penguinbarsignicon.png [NEW] objects\outpost\penguinbarsign\penguinbarsignlit.frames [NEW] objects\outpost\penguinbarsign\penguinbarsignlit.png [NEW] objects\outpost\shipyardcaptain\shipyardcaptainportrait.png [NEW] objects\ship\brokenfuelhatch.lua objects\ship\aviantechstation\aviantechstation.object objects\ship\brokenapexfuelhatch\brokenapexfuelhatchtier0.object objects\ship\brokenavianfuelhatch\brokenavianfuelhatchtier0.object objects\ship\brokenfloranfuelhatch\brokenfloranfuelhatchtier0.object objects\ship\brokenglitchfuelhatch\brokenglitchfuelhatchtier0.object objects\ship\brokenhumanfuelhatch\brokenhumanfuelhatchtier0.object objects\ship\brokenhylotlfuelhatch\brokenhylotlfuelhatchtier0.object objects\ship\brokennovakidfuelhatch\brokennovakidfuelhatchtier0.object objects\ship\florantechstation\florantechstation.object objects\ship\glitchtechstation\glitchtechstation.object objects\ship\glitchteleporter\glitchteleporter.png objects\ship\glitchteleporter\glitchteleporterlit.png objects\ship\glitchteleportertier0\glitchteleportertier0.png objects\ship\humantechstation\humantechstation.object objects\ship\hylotltechstation\hylotltechstation.object objects\ship\novakidtechstation\novakidtechstation.object objects\ship\techstation\techstation.object [NEW] objects\spawner\techstation.lua objects\themed\saloon\saloontable\saloontable.object objects\themed\saloon\saloontable\saloontable.png [NEW] objects\wired\secretdoor\secretdoor.animation [NEW] objects\wired\secretdoor\secretdoor.frames [NEW] objects\wired\secretdoor\secretdoor.lua [NEW] objects\wired\secretdoor\secretdoor.object [NEW] objects\wired\secretdoor\secretdoor.png [NEW] objects\wired\secretdoor\secretdooricon.png [NEW] objects\wired\secretdoor\secretdoorpreview.png [NEW] objects\wired\secretdoor\secrettrapdoor.frames [NEW] objects\wired\secretdoor\secrettrapdoor.object [NEW] objects\wired\secretdoor\secrettrapdoor.png [NEW] objects\wired\secretdoor\secrettrapdooricon.png [NEW] objects\wired\secretdoor\secrettrapdoorpreview.png particles\stargazer.particle projectiles\physics.config [NEW] projectiles\explosions\gravityexplosion\hgravityexplosion.frames [NEW] projectiles\explosions\gravityexplosion\hgravityexplosion.png [NEW] projectiles\explosions\gravityexplosion\hgravityexplosion.projectile [NEW] projectiles\explosions\gravityexplosion\ngravityexplosion.frames [NEW] projectiles\explosions\gravityexplosion\ngravityexplosion.png [NEW] projectiles\explosions\gravityexplosion\ngravityexplosion.projectile projectiles\explosions\hivebombexplosion\hivebombexplosion1.projectile projectiles\explosions\hivebombexplosion\hivebombexplosion2.projectile projectiles\explosions\hivebombexplosion\hivebombexplosion3.projectile projectiles\explosions\hivebombexplosion\hivebombexplosion4.projectile [NEW] projectiles\guns\arrows\hgravitybolt\hgravitybolt.frames [NEW] projectiles\guns\arrows\hgravitybolt\hgravitybolt.png [NEW] projectiles\guns\arrows\hgravitybolt\hgravitybolt.projectile [NEW] projectiles\guns\arrows\ngravitybolt\ngravitybolt.frames [NEW] projectiles\guns\arrows\ngravitybolt\ngravitybolt.png [NEW] projectiles\guns\arrows\ngravitybolt\ngravitybolt.projectile [NEW] quests\generated\questpools\common.config [NEW] quests\generated\questpools\guard.config [NEW] quests\generated\questpools\hats.config [NEW] quests\generated\questpools\merchant.config [NEW] quests\generated\questpools\shady.config [NEW] quests\generated\questpools\tenant.config quests\generated\templates\add_object_to_house.questtemplate quests\generated\templates\borrow.questtemplate quests\generated\templates\bribe.questtemplate quests\generated\templates\build_home.questtemplate quests\generated\templates\collect_fine.questtemplate quests\generated\templates\collect_gift.questtemplate quests\generated\templates\extort.questtemplate quests\generated\templates\gift.questtemplate quests\generated\templates\hat.questtemplate quests\generated\templates\helmet.questtemplate quests\generated\templates\intimidate.questtemplate quests\generated\templates\kidnapping.questtemplate quests\generated\templates\kill_monster.questtemplate quests\generated\templates\kill_monster_group.questtemplate quests\generated\templates\kill_npcs.questtemplate quests\generated\templates\new_stock1.questtemplate quests\generated\templates\new_stock2.questtemplate quests\generated\templates\protect.questtemplate quests\generated\templates\recruit_guard.questtemplate quests\generated\templates\request_craft.questtemplate quests\generated\templates\return_stolen.questtemplate quests\generated\templates\share_secret.questtemplate quests\generated\templates\spread_rumors.questtemplate quests\generated\templates\steal.questtemplate quests\generated\templates\themed_build.questtemplate quests\outpost\floranarena1.questtemplate quests\scripts\generated\build_home.lua quests\scripts\generated\clothing.lua quests\scripts\generated\collect_fine.lua quests\scripts\generated\collect_gift.lua quests\scripts\generated\common.lua quests\scripts\generated\fetch.lua quests\scripts\generated\gift.lua quests\scripts\generated\intimidate.lua quests\scripts\generated\kill.lua quests\scripts\generated\kill_monster.lua quests\scripts\generated\new_stock.lua quests\scripts\generated\protect.lua quests\scripts\generated\recruit_guard.lua quests\scripts\generated\return_stolen.lua quests\scripts\generated\secret_note.lua quests\scripts\generated\steal.lua quests\scripts\generated\text_generation.lua quests\scripts\story\gateway1.lua quests\scripts\story\human_mission1.lua [NEW] quests\scripts\story\shiprepair.lua quests\scripts\tutorial\protectorate.lua quests\story\gateway1.questtemplate quests\story\glitch_mission2.questtemplate quests\story\human_mission1.questtemplate [NEW] quests\story\shiprepair.questtemplate quests\tutorial\protectorate.questtemplate scripts\spawnpoint.lua scripts\tenant.lua scripts\util.lua scripts\questgen\generator.lua scripts\questgen\predicands.lua [NEW] sfx\melee\flamingdemonsword_loop.ogg ships\apex\apext0blocks.png ships\apex\apext1blocks.png ships\apex\apext2blocks.png ships\apex\apext3blocks.png ships\apex\apext4blocks.png ships\apex\apext5blocks.png ships\apex\apext6blocks.png ships\apex\apext7blocks.png ships\apex\apext8blocks.png ships\avian\aviant0blocks.png ships\avian\aviant1blocks.png ships\avian\aviant2blocks.png ships\avian\aviant3blocks.png ships\avian\aviant4blocks.png ships\avian\aviant5blocks.png ships\avian\aviant6blocks.png ships\avian\aviant7blocks.png ships\avian\aviant8blocks.png ships\floran\florant0blocks.png ships\floran\florant1blocks.png ships\floran\florant2blocks.png ships\floran\florant3blocks.png ships\floran\florant4blocks.png ships\floran\florant5blocks.png ships\floran\florant6blocks.png ships\floran\florant7blocks.png ships\floran\florant8blocks.png ships\glitch\glitcht0blocks.png ships\glitch\glitcht1blocks.png ships\glitch\glitcht2blocks.png ships\glitch\glitcht3blocks.png ships\glitch\glitcht4blocks.png ships\glitch\glitcht5blocks.png ships\glitch\glitcht6blocks.png ships\glitch\glitcht7blocks.png ships\glitch\glitcht8blocks.png ships\human\humant0blocks.png ships\human\humant1blocks.png ships\human\humant2blocks.png ships\human\humant3blocks.png ships\human\humant4blocks.png ships\human\humant5blocks.png ships\human\humant6blocks.png ships\human\humant7blocks.png ships\human\humant8blocks.png ships\hylotl\hylotlt0blocks.png ships\hylotl\hylotlt1blocks.png ships\hylotl\hylotlt2blocks.png ships\hylotl\hylotlt3blocks.png ships\hylotl\hylotlt4blocks.png ships\hylotl\hylotlt5blocks.png ships\hylotl\hylotlt6blocks.png ships\hylotl\hylotlt7blocks.png ships\hylotl\hylotlt8blocks.png ships\novakid\novakidt0blocks.png ships\novakid\novakidt1blocks.png ships\novakid\novakidt2blocks.png ships\novakid\novakidt3blocks.png ships\novakid\novakidt4blocks.png ships\novakid\novakidt5blocks.png ships\novakid\novakidt6blocks.png ships\novakid\novakidt7blocks.png ships\novakid\novakidt8blocks.png species\humanfemalenamegen.config species\humanmalenamegen.config species\novakidnamegen.config stagehands\mission\glitchmissionmanager.stagehand tilesets\packed\objects-by-category\decorative.json tilesets\packed\objects-by-category\furniture.json tilesets\packed\objects-by-category\light.json tilesets\packed\objects-by-colonytag\apex.json tilesets\packed\objects-by-colonytag\apexmansion.json tilesets\packed\objects-by-colonytag\avian.json tilesets\packed\objects-by-colonytag\commerce.json tilesets\packed\objects-by-colonytag\floran.json tilesets\packed\objects-by-colonytag\floranhuntinggrounds.json tilesets\packed\objects-by-colonytag\geode.json tilesets\packed\objects-by-colonytag\glitch.json tilesets\packed\objects-by-colonytag\human.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\novakid.json tilesets\packed\objects-by-colonytag\outpost.json tilesets\packed\objects-by-colonytag\pretty.json tilesets\packed\objects-by-colonytag\valuable.json tilesets\packed\objects-by-race\apex.json tilesets\packed\objects-by-race\avian.json tilesets\packed\objects-by-race\floran.json tilesets\packed\objects-by-race\generic.json tilesets\packed\objects-by-race\glitch.json tilesets\packed\objects-by-race\human.json tilesets\packed\objects-by-race\hylotl.json tilesets\packed\objects-by-race\novakid.json tilesets\packed\objects-by-type\loungeable.json treasure\common.treasurepools DIFFS ----- dungeon_worlds.config 37c37 < "threatLevel" : 3, --- > "threatLevel" : 6, 74,96d73 < "hylotlmission1" : { < "primaryDungeon" : "hylotlmission1", < "threatLevel" : 1, < "gravity" : 80, < "worldSize" : [2000, 2000], < "dungeonBaseHeight" : 1400, < "dungeonSurfaceHeight" : 1209, < "biome" : "oceanmission", < "ambientLightLevel" : [32, 32, 32], < "musicTrack" : "/music/the-deep.ogg" < }, < < "ancientgateway" : { < "primaryDungeon" : "ancientgateway", < "threatLevel" : 1, < "gravity" : 40, < "worldSize" : [1000, 1000], < "dungeonBaseHeight" : 500, < "ambientLightLevel" : [128, 128, 128], < "ambientNoises" : "/sfx/environmental/space_loop4.ogg", < "musicTrack" : "/music/temple-of-kluex.ogg" < }, < 111c88 < "threatLevel" : 2, --- > "threatLevel" : 3, 119a97,108 > "hylotlmission1" : { > "primaryDungeon" : "hylotlmission1", > "threatLevel" : 4, > "gravity" : 80, > "worldSize" : [2000, 2000], > "dungeonBaseHeight" : 1400, > "dungeonSurfaceHeight" : 1209, > "biome" : "oceanmission", > "ambientLightLevel" : [32, 32, 32], > "musicTrack" : "/music/the-deep.ogg" > }, > 122c111 < "threatLevel" : 4, --- > "threatLevel" : 5, 137c126 < "threatLevel" : 5, --- > "threatLevel" : 6, 156a146,156 > }, > > "ancientgateway" : { > "primaryDungeon" : "ancientgateway", > "threatLevel" : 1, > "gravity" : 40, > "worldSize" : [1000, 1000], > "dungeonBaseHeight" : 500, > "ambientLightLevel" : [128, 128, 128], > "ambientNoises" : "/sfx/environmental/space_loop4.ogg", > "musicTrack" : "/music/temple-of-kluex.ogg" terrestrial_worlds.config 43c43 < "blendSize" : 70, --- > "blendSize" : 140, ai\ai.config 413c413 < "2" : ["upgradeShip3", "unknownobject", "shipstatus2"], --- > "2" : ["unknownobject", "shipstatus2"], ai\missionapex1.aimission 3c3 < "icon" : "lunarbaseicon.png", --- > "icon" : "missionapex1icon.png", ai\missionavian1.aimission 3c3 < "icon" : "lunarbaseicon.png", --- > "icon" : "missionavian1icon.png", ai\missionfloran1.aimission 3c3 < "icon" : "floranmission1icon.png", --- > "icon" : "missionfloran1icon.png", ai\missionglitch1.aimission 3c3 < "icon" : "lunarbaseicon.png", --- > "icon" : "missionglitch1icon.png", ai\missionhuman1.aimission 3c3 < "icon" : "lunarbaseicon.png", --- > "icon" : "missionhuman1icon.png", ai\missionhylotl1.aimission 3c3 < "icon" : "lunarbaseicon.png", --- > "icon" : "missionhylotl1icon.png", behaviors\sequences\apexmission\lanaend.behavior 268c268 < "name": "exitteleporter" --- > "name": "arkteleporter" 271c271 < "entity": "exitteleporter" --- > "entity": "arkteleporter" 279c279 < "entity": "exitteleporter" --- > "entity": "arkteleporter" 282c282 < "position": "exitteleporter" --- > "position": "arkteleporter" 310c310 < "position": "exitteleporter", --- > "position": "arkteleporter", behaviors\sequences\avianmission\tonauacend.behavior 310c310 < "name": "exitteleporter" --- > "name": "arkteleporter" behaviors\sequences\floranmission\nuruendscene.behavior 458c458 < "name": "exitteleporter" --- > "name": "arkteleporter" behaviors\sequences\glitchmission\baronstart.behavior 232c232 < "name": "exitteleporter" --- > "name": "arkteleporter" behaviors\sequences\hylotlmission\koichiend.behavior 376c376 < "name": "exitteleporter" --- > "name": "arkteleporter" cinematics\artifacts\floranartifact.cinematic 9c9 < "image" : "/cinematics/screen.png" --- > "image" : "/cinematics/artifacts/floranartifact.png:" 11a12 > "animationFrames" : 6, 14,15c15,16 < "timecode" : 0.01, < "zoom" : 0, --- > "timecode" : 0.6, > "zoom" : 2, 17,23c18,19 < "position" : [360, 330] < }, < { < "timecode" : 0.1, < "zoom" : 0, < "alpha" : 1, < "position" : [360, 330] --- > "position" : [479, 280], > "frame" : 0 26,27c22,23 < "timecode" : 0.6, < "zoom" : 1, --- > "timecode" : 1.1, > "zoom" : 2, 33c29 < "zoom" : 1, --- > "zoom" : 2, 39c35 < "zoom" : 1, --- > "zoom" : 0.5, 40a37 > "frame" : 40, 48c45 < "image" : "/cinematics/artifacts/floranartifact.png" --- > "image" : "/cinematics/artifacts/floranartifact_top.png" 53c50 < "timecode" : 0.6, --- > "timecode" : 0.1, 59c56 < "timecode" : 1.1, --- > "timecode" : 0.3, 65c62 < "timecode" : 5, --- > "timecode" : 0.8, 71,72c68,69 < "timecode" : 5.4, < "zoom" : 0.5, --- > "timecode" : 1.8, > "zoom" : 2, 107a105,137 > } > ] > }, > { > "drawables" : [ > { > "image" : "/cinematics/artifacts/floranartifact_name.png" > } > ], > "keyframes" : [ > { > "timecode" : 0.01, > "zoom" : 1, > "alpha" : 0, > "position" : [480, 188] > }, > { > "timecode" : 0.9, > "zoom" : 1, > "alpha" : 0, > "position" : [480, 188] > }, > { > "timecode" : 4, > "zoom" : 1, > "alpha" : 1, > "position" : [480, 188] > }, > { > "timecode" : 5, > "zoom" : 1, > "alpha" : 0.0, > "position" : [480, 188] cinematics\story\esther\esther.cinematic 661c661 < "text" : "But this tranquilty proved finite. A being arose, one of hate and destruction. It was the Ruin.", --- > "text" : "But this tranquility proved finite. A being arose, one of hate and destruction. It was the Ruin.", 1013c1013 < "text" : "These six artifacts, when unitied, form the key that opens the gate to the Ruin.", --- > "text" : "These six artifacts, when united, form the key that opens the gate to the Ruin.", dungeons\floran\floranhuntinggrounds\floranhuntinggrounds.dungeon 1307c1307 < "brush" : [ [ "clear" ], [ "object", "chestfloran1", { "direction" : "left", "parameters" : { "treasurePools" : [ "basicChestTreasure" ] } } ] ] --- > "brush" : [ [ "clear" ], [ "object", "chestfloran1", { "direction" : "left", "parameters" : { "treasurePools" : [ "smallChestTreasure" ] } } ] ] 1313c1313 < "brush" : [ [ "clear" ], [ "object", "chestfloran1", { "direction" : "right", "parameters" : { "treasurePools" : [ "basicChestTreasure" ] } } ] ] --- > "brush" : [ [ "clear" ], [ "object", "chestfloran1", { "direction" : "right", "parameters" : { "treasurePools" : [ "smallChestTreasure" ] } } ] ] 2345a2346,2401 > // CLUE OBJECTS > > { > "value" : [10, 10, 0, 255], > "comment" : "championspeardisplay", > "brush" : [ [ "clear" ], [ "object", "championspeardisplay", { "direction" : "left" } ] ] > }, > > { > "value" : [15, 15, 0, 255], > "comment" : "championspeardisplay", > "brush" : [ [ "clear" ], [ "object", "championspeardisplay", { "direction" : "right" } ] ] > }, > > { > "value" : [0, 10, 10, 255], > "comment" : "floranhunterpainting", > "brush" : [ [ "clear" ], [ "object", "floranhunterpainting" ] ] > }, > > { > "value" : [10, 0, 10, 255], > "comment" : "floranspinneret", > "brush" : [ [ "clear" ], [ "object", "floranspinneret", { "direction" : "left" } ] ] > }, > > { > "value" : [15, 0, 15, 255], > "comment" : "floranspinneret", > "brush" : [ [ "clear" ], [ "object", "floranspinneret", { "direction" : "right" } ] ] > }, > > { > "value" : [20, 20, 0, 255], > "comment" : "floranwebbing facing left", > "brush" : [ [ "clear" ], [ "object", "floranwebbing", { "direction" : "left" } ] ] > }, > > { > "value" : [25, 25, 0, 255], > "comment" : "floranwebbing facing right", > "brush" : [ [ "clear" ], [ "object", "floranwebbing", { "direction" : "right" } ] ] > }, > > { > "value" : [0, 20, 20, 255], > "comment" : "ixolingpike facing left", > "brush" : [ [ "clear" ], [ "object", "ixolingpike", { "direction" : "left" } ] ] > }, > > { > "value" : [0, 25, 25, 255], > "comment" : "ixolingpike facing right", > "brush" : [ [ "clear" ], [ "object", "ixolingpike", { "direction" : "right" } ] ] > }, > 2528c2584,2585 < "def" : [ "image", [ "entrance1.png", "entrance1-objects.png" ] ] --- > "def" : [ "image", [ "entrance1.png", "entrance1-objects.png" ] ], > "chance" : 1 2537c2594,2595 < "def" : [ "image", [ "1a.png", "1a-objects.png" ] ] --- > "def" : [ "image", [ "1a.png", "1a-objects.png" ] ], > "chance" : 1 2547c2605,2606 < "def" : [ "image", [ "1a.png", "1a-objects.png" ] ] --- > "def" : [ "image", [ "1a.png", "1a-objects.png" ] ], > "chance" : 1 2556c2615,2616 < "def" : [ "image", [ "2a.png", "2a-objects.png" ] ] --- > "def" : [ "image", [ "2a.png", "2a-objects.png" ] ], > "chance" : 1 2565c2625,2626 < "def" : [ "image", [ "2a.png", "2a-chestobjects.png" ] ] --- > "def" : [ "image", [ "2a.png", "2a-chestobjects.png" ] ], > "chance" : 1 2574c2635,2636 < "def" : [ "image", [ "2b.png", "2b-objects.png" ] ] --- > "def" : [ "image", [ "2b.png", "2b-objects.png" ] ], > "chance" : 1 2583c2645,2646 < "def" : [ "image", [ "2b.png", "2b-chestobjects.png" ] ] --- > "def" : [ "image", [ "2b.png", "2b-chestobjects.png" ] ], > "chance" : 1 2592c2655,2656 < "def" : [ "image", [ "3a.png", "3a-objects.png" ] ] --- > "def" : [ "image", [ "3a.png", "3a-objects.png" ] ], > "chance" : 1 2601c2665,2666 < "def" : [ "image", [ "3b.png", "3b-objects.png" ] ] --- > "def" : [ "image", [ "3b.png", "3b-objects.png" ] ], > "chance" : 1 2610c2675,2676 < "def" : [ "image", [ "3c.png", "3c-objects.png" ] ] --- > "def" : [ "image", [ "3c.png", "3c-objects.png" ] ], > "chance" : 1 2619c2685,2686 < "def" : [ "image", [ "3d.png", "3d-objects.png" ] ] --- > "def" : [ "image", [ "3d.png", "3d-objects.png" ] ], > "chance" : 1 2626c2693 < [ "doNotConnectToPart", [ "entrance1", "4a", "4b" ] ] --- > [ "doNotConnectToPart", [ "entrance1", "4a", "4a-clue3", "4b", "4b-clue1" ] ] 2628c2695,2706 < "def" : [ "image", [ "4a.png", "4a-objects.png" ] ] --- > "def" : [ "image", [ "4a.png", "4a-objects.png" ] ], > "chance" : 1 > }, > > { > "name" : "4a-clue3", > "rules" : [ > [ "doNotCombineWith", [ "4a-clue3", "4b-clue1", "5a-clue4", "5c-clue5", "endleft1a-chest-clue2", "endleft1b-chest-clue2", "endright1a-chest-clue2", "endright1b-chest-clue2" ] ], > [ "doNotConnectToPart", [ "entrance1", "4a", "4a-clue3", "4b", "4b-clue1" ] ] > ], > "def" : [ "image", [ "4a.png", "4a-objects-clue3.png" ] ], > "chance" : 1 2635c2713 < [ "doNotConnectToPart", [ "entrance1", "4a", "4b" ] ] --- > [ "doNotConnectToPart", [ "entrance1", "4a", "4a-clue3", "4b", "4b-clue1" ] ] 2637c2715,2726 < "def" : [ "image", [ "4b.png", "4b-objects.png" ] ] --- > "def" : [ "image", [ "4b.png", "4b-objects.png" ] ], > "chance" : 1 > }, > > { > "name" : "4b-clue1", > "rules" : [ > [ "doNotCombineWith", [ "4a-clue3", "4b-clue1", "5a-clue4", "5c-clue5", "endleft1a-chest-clue2", "endleft1b-chest-clue2", "endright1a-chest-clue2", "endright1b-chest-clue2" ] ], > [ "doNotConnectToPart", [ "entrance1", "4a", "4a-clue3", "4b", "4b-clue1" ] ] > ], > "def" : [ "image", [ "4b.png", "4b-objects-clue1.png" ] ], > "chance" : 1 2643,2644c2732,2743 < [ "maxSpawnCount", [1] ], < [ "doNotConnectToPart", [ "1a", "1a-chest", "5a", "5b", "5b-chest", "5c" ] ] --- > [ "doNotCombineWith", [ "5a", "5a-clue4" ] ], > [ "doNotConnectToPart", [ "1a", "1a-chest", "5a", "5a-clue4", "5b", "5b-chest", "5c", "5c-clue5" ] ] > ], > "def" : [ "image", [ "5a.png", "5a-objects.png" ] ], > "chance" : 1 > }, > > { > "name" : "5a-clue4", > "rules" : [ > [ "doNotCombineWith", [ "5a", "4a-clue3", "4b-clue1", "5a-clue4", "5c-clue5", "endleft1a-chest-clue2", "endleft1b-chest-clue2", "endright1a-chest-clue2", "endright1b-chest-clue2" ] ], > [ "doNotConnectToPart", [ "1a", "1a-chest", "5a", "5a-clue4", "5b", "5b-chest", "5c", "5c-clue5" ] ] 2646c2745,2746 < "def" : [ "image", [ "5a.png", "5a-objects.png" ] ] --- > "def" : [ "image", [ "5a.png", "5a-objects-clue4.png" ] ], > "chance" : 1 2653c2753 < [ "doNotConnectToPart", [ "1a", "1a-chest", "5a", "5b", "5b-chest", "5c" ] ] --- > [ "doNotConnectToPart", [ "1a", "1a-chest", "5a", "5a-clue4", "5b", "5b-chest", "5c", "5c-clue5" ] ] 2655c2755,2756 < "def" : [ "image", [ "5b.png", "5b-objects.png" ] ] --- > "def" : [ "image", [ "5b.png", "5b-objects.png" ] ], > "chance" : 1 2662c2763 < [ "doNotConnectToPart", [ "1a", "1a-chest", "5a", "5b", "5b-chest", "5c" ] ] --- > [ "doNotConnectToPart", [ "1a", "1a-chest", "5a", "5a-clue4", "5b", "5b-chest", "5c", "5c-clue5" ] ] 2664c2765,2766 < "def" : [ "image", [ "5b.png", "5b-chestobjects.png" ] ] --- > "def" : [ "image", [ "5b.png", "5b-chestobjects.png" ] ], > "chance" : 1 2670,2671c2772,2773 < [ "maxSpawnCount", [1] ], < [ "doNotConnectToPart", [ "5a", "5b", "5c" ] ] --- > [ "doNotCombineWith", [ "5c", "5c-clue5" ] ], > [ "doNotConnectToPart", [ "5a", "5a-clue4", "5b", "5b-chest", "5c", "5c-clue5" ] ] 2673c2775,2786 < "def" : [ "image", [ "5c.png", "5c-objects.png" ] ] --- > "def" : [ "image", [ "5c.png", "5c-objects.png" ] ], > "chance" : 1 > }, > > { > "name" : "5c-clue5", > "rules" : [ > [ "doNotCombineWith", [ "5c", "4a-clue3", "4b-clue1", "5a-clue4", "5c-clue5", "endleft1a-chest-clue2", "endleft1b-chest-clue2", "endright1a-chest-clue2", "endright1b-chest-clue2" ] ], > [ "doNotConnectToPart", [ "5a", "5a-clue4", "5b", "5b-chest", "5c", "5c-clue5" ] ] > ], > "def" : [ "image", [ "5c.png", "5c-objects-clue5.png" ] ], > "chance" : 1 2680,2681c2793 < // [ "doNotCombineWith", [ "endleft1a-chest", "endleft1b-chest", "endright1a-chest", "endright1b-chest" ] ], < [ "doNotCombineWith", [ "endleft1a-chest", "endright1a-chest" ] ], --- > [ "doNotCombineWith", [ "endleft1a-chest", "endleft1a-chest-clue2", "endright1a-chest", "endright1a-chest-clue2" ] ], 2684a2797,2807 > "chance" : 0.001 > }, > > { > "name" : "endleft1a-chest-clue2", > "rules" : [ > [ "ignorePartMaximumRule" ], > [ "doNotCombineWith", [ "endleft1a-chest", "endright1a-chest", "4a-clue3", "4b-clue1", "5a-clue4", "5c-clue5", "endleft1a-chest-clue2", "endleft1b-chest-clue2", "endright1a-chest-clue2", "endright1b-chest-clue2" ] ], > [ "doNotConnectToPart", [ "entrance1" ] ] > ], > "def" : [ "image", [ "endleft1.png", "endleft1a-chestobjects-clue2.png" ] ], 2692,2693c2815 < // [ "doNotCombineWith", [ "endleft1a-chest", "endleft1b-chest", "endright1a-chest", "endright1b-chest" ] ], < [ "doNotCombineWith", [ "endleft1b-chest", "endright1b-chest" ] ], --- > [ "doNotCombineWith", [ "endleft1b-chest", "endleft1b-chest-clue2", "endright1b-chest", "endright1b-chest-clue2" ] ], 2696a2819,2829 > "chance" : 0.001 > }, > > { > "name" : "endleft1b-chest-clue2", > "rules" : [ > [ "ignorePartMaximumRule" ], > [ "doNotCombineWith", [ "endleft1b-chest", "endright1b-chest", "4a-clue3", "4b-clue1", "5a-clue4", "5c-clue5", "endleft1a-chest-clue2", "endleft1b-chest-clue2", "endright1a-chest-clue2", "endright1b-chest-clue2" ] ], > [ "doNotConnectToPart", [ "entrance1" ] ] > ], > "def" : [ "image", [ "endleft1.png", "endleft1b-chestobjects-clue2.png" ] ], 2700,2722c2833,2855 < // { < // "name" : "endleft1c", < // "rules" : [ < // [ "ignorePartMaximumRule" ], < // [ "doNotCombineWith", [ "endleft1c", "endright1c", "endleft1d-chest", "endright1d-chest" ] ], < // [ "doNotConnectToPart", [ "entrance1" ] ] < // ], < // "def" : [ "image", [ "endleft1.png", "endleft1c-objects.png" ] ], < // "chance" : 0.01 < // }, < < // PROBLEMATIC ENDCAPS - TALK TO BARTWE < < // { < // "name" : "endleft1d-chest", < // "rules" : [ < // [ "ignorePartMaximumRule" ], < // [ "doNotCombineWith", [ "endleft1c", "endright1c", "endleft1d-chest", "endright1d-chest" ] ], < // [ "doNotConnectToPart", [ "entrance1" ] ] < // ], < // "def" : [ "image", [ "endleft1.png", "endleft1d-chestobjects.png" ] ], < // "chance" : 0.01 < // }, --- > /* > { > "name" : "endleft1c", > "rules" : [ > [ "ignorePartMaximumRule" ], > [ "doNotCombineWith", [ "endleft1c", "endright1c" ] ], > [ "doNotConnectToPart", [ "entrance1" ] ] > ], > "def" : [ "image", [ "endleft1.png", "endleft1c-objects.png" ] ], > "chance" : 0 > }, > > { > "name" : "endleft1d-chest", > "rules" : [ > [ "ignorePartMaximumRule" ], > [ "doNotCombineWith", [ "endleft1d-chest", "endright1d-chest" ] ], > [ "doNotConnectToPart", [ "entrance1" ] ] > ], > "def" : [ "image", [ "endleft1.png", "endleft1d-chestobjects.png" ] ], > "chance" : 0.001 > }, > */ 2738,2739c2871 < // [ "doNotCombineWith", [ "endleft1a-chest", "endleft1b-chest", "endright1a-chest", "endright1b-chest" ] ], < [ "doNotCombineWith", [ "endleft1a-chest", "endright1a-chest" ] ], --- > [ "doNotCombineWith", [ "endleft1a-chest", "endleft1a-chest-clue2", "endright1a-chest", "endright1a-chest-clue2" ] ], 2742a2875,2885 > "chance" : 0.001 > }, > > { > "name" : "endright1a-chest-clue2", > "rules" : [ > [ "ignorePartMaximumRule" ], > [ "doNotCombineWith", [ "endleft1a-chest", "endright1a-chest", "4a-clue3", "4b-clue1", "5a-clue4", "5c-clue5", "endleft1a-chest-clue2", "endleft1b-chest-clue2", "endright1a-chest-clue2", "endright1b-chest-clue2" ] ], > [ "doNotConnectToPart", [ "entrance1" ] ] > ], > "def" : [ "image", [ "endright1.png", "endright1a-chestobjects-clue2.png" ] ], 2750,2751c2893 < // [ "doNotCombineWith", [ "endleft1a-chest", "endleft1b-chest", "endright1a-chest", "endright1b-chest" ] ], < [ "doNotCombineWith", [ "endleft1b-chest", "endright1b-chest" ] ], --- > [ "doNotCombineWith", [ "endleft1b-chest", "endleft1b-chest-clue2", "endright1b-chest", "endright1b-chest-clue2" ] ], 2754a2897,2907 > "chance" : 0.001 > }, > > { > "name" : "endright1b-chest-clue2", > "rules" : [ > [ "ignorePartMaximumRule" ], > [ "doNotCombineWith", [ "endleft1b-chest", "endright1b-chest", "4a-clue3", "4b-clue1", "5a-clue4", "5c-clue5", "endleft1a-chest-clue2", "endleft1b-chest-clue2", "endright1a-chest-clue2", "endright1b-chest-clue2" ] ], > [ "doNotConnectToPart", [ "entrance1" ] ] > ], > "def" : [ "image", [ "endright1.png", "endright1b-chestobjects-clue2.png" ] ], 2758,2780c2911,2933 < // { < // "name" : "endright1c", < // "rules" : [ < // [ "ignorePartMaximumRule" ], < // [ "doNotCombineWith", [ "endleft1c", "endright1c", "endleft1d-chest", "endright1d-chest" ] ], < // [ "doNotConnectToPart", [ "entrance1" ] ] < // ], < // "def" : [ "image", [ "endleft1.png", "endright1c-objects.png" ] ], < // "chance" : 0.01 < // }, < < // PROBLEMATIC ENDCAPS - TALK TO BARTWE < < // { < // "name" : "endright1d-chest", < // "rules" : [ < // [ "ignorePartMaximumRule" ], < // [ "doNotCombineWith", [ "endleft1c", "endright1c", "endleft1d-chest", "endright1d-chest" ] ], < // [ "doNotConnectToPart", [ "entrance1" ] ] < // ], < // "def" : [ "image", [ "endleft1.png", "endright1d-chestobjects.png" ] ], < // "chance" : 0.01 < // }, --- > /* > { > "name" : "endright1c", > "rules" : [ > [ "ignorePartMaximumRule" ], > [ "doNotCombineWith", [ "endleft1c", "endright1c" ] ], > [ "doNotConnectToPart", [ "entrance1" ] ] > ], > "def" : [ "image", [ "endright1.png", "endright1c-objects.png" ] ], > "chance" : 0 > }, > > { > "name" : "endright1d-chest", > "rules" : [ > [ "ignorePartMaximumRule" ], > [ "doNotCombineWith", [ "endleft1d-chest", "endright1d-chest" ] ], > [ "doNotConnectToPart", [ "entrance1" ] ] > ], > "def" : [ "image", [ "endright1.png", "endright1d-chestobjects.png" ] ], > "chance" : 0.001 > }, > */ dungeons\floran\floranvillagetower\floranvillagetower.dungeon 10c10 < "maxParts" : 30 --- > "maxParts" : 100 2351a2352,2407 > // CLUE OBJECTS > > { > "value" : [10, 10, 0, 255], > "comment" : "championspeardisplay", > "brush" : [ [ "clear" ], [ "object", "championspeardisplay", { "direction" : "left" } ] ] > }, > > { > "value" : [15, 15, 0, 255], > "comment" : "championspeardisplay", > "brush" : [ [ "clear" ], [ "object", "championspeardisplay", { "direction" : "right" } ] ] > }, > > { > "value" : [0, 10, 10, 255], > "comment" : "floranhunterpainting", > "brush" : [ [ "clear" ], [ "object", "floranhunterpainting" ] ] > }, > > { > "value" : [10, 0, 10, 255], > "comment" : "floranspinneret", > "brush" : [ [ "clear" ], [ "object", "floranspinneret", { "direction" : "left" } ] ] > }, > > { > "value" : [15, 0, 15, 255], > "comment" : "floranspinneret", > "brush" : [ [ "clear" ], [ "object", "floranspinneret", { "direction" : "right" } ] ] > }, > > { > "value" : [20, 20, 0, 255], > "comment" : "floranwebbing facing left", > "brush" : [ [ "clear" ], [ "object", "floranwebbing", { "direction" : "left" } ] ] > }, > > { > "value" : [25, 25, 0, 255], > "comment" : "floranwebbing facing right", > "brush" : [ [ "clear" ], [ "object", "floranwebbing", { "direction" : "right" } ] ] > }, > > { > "value" : [0, 20, 20, 255], > "comment" : "ixolingpike facing left", > "brush" : [ [ "clear" ], [ "object", "ixolingpike", { "direction" : "left" } ] ] > }, > > { > "value" : [0, 25, 25, 255], > "comment" : "ixolingpike facing right", > "brush" : [ [ "clear" ], [ "object", "ixolingpike", { "direction" : "right" } ] ] > }, > 2535c2591,2592 < "def" : [ "image", [ "treebase1.png", "treebase1-objects.png" ] ] --- > "def" : [ "image", [ "treebase1.png", "treebase1-objects.png" ] ], > "chance" : 1 2544c2601,2602 < "def" : [ "image", [ "treebase2.png", "treebase2-objects.png" ] ] --- > "def" : [ "image", [ "treebase2.png", "treebase2-objects.png" ] ], > "chance" : 1 2553c2611,2612 < "def" : [ "image", [ "treebase3.png", "treebase3-objects.png" ] ] --- > "def" : [ "image", [ "treebase3.png", "treebase3-objects.png" ] ], > "chance" : 1 2563c2622,2623 < "def" : [ "image", [ "1.png", "1a-objects.png" ] ] --- > "def" : [ "image", [ "1.png", "1a-objects.png" ] ], > "chance" : 1 2573c2633,2634 < "def" : [ "image", [ "1.png", "1b-objects.png" ] ] --- > "def" : [ "image", [ "1.png", "1b-objects.png" ] ], > "chance" : 1 2583c2644,2645 < "def" : [ "image", [ "2.png", "2a-objects.png" ] ] --- > "def" : [ "image", [ "2.png", "2a-objects.png" ] ], > "chance" : 1 2593c2655,2656 < "def" : [ "image", [ "2.png", "2b-objects.png" ] ] --- > "def" : [ "image", [ "2.png", "2b-objects.png" ] ], > "chance" : 1 2602c2665,2666 < "def" : [ "image", [ "3.png", "3a-objects.png" ] ] --- > "def" : [ "image", [ "3.png", "3a-objects.png" ] ], > "chance" : 1 2611c2675,2676 < "def" : [ "image", [ "3.png", "3b-objects.png" ] ] --- > "def" : [ "image", [ "3.png", "3b-objects.png" ] ], > "chance" : 1 2620c2685,2686 < "def" : [ "image", [ "4.png", "4a-objects.png" ] ] --- > "def" : [ "image", [ "4.png", "4a-objects.png" ] ], > "chance" : 1 2629c2695,2696 < "def" : [ "image", [ "4.png", "4b-objects.png" ] ] --- > "def" : [ "image", [ "4.png", "4b-objects.png" ] ], > "chance" : 1 2640c2707,2708 < "def" : [ "image", [ "groundhut1.png", "groundhut1a-objects.png" ] ] --- > "def" : [ "image", [ "groundhut1.png", "groundhut1a-objects.png" ] ], > "chance" : 1 2651c2719,2720 < "def" : [ "image", [ "groundhut1.png", "groundhut1b-objects.png" ] ] --- > "def" : [ "image", [ "groundhut1.png", "groundhut1b-objects.png" ] ], > "chance" : 1 2662c2731,2732 < "def" : [ "image", [ "groundhut2.png", "groundhut2a-objects.png" ] ] --- > "def" : [ "image", [ "groundhut2.png", "groundhut2a-objects.png" ] ], > "chance" : 1 2673c2743,2744 < "def" : [ "image", [ "groundhut2.png", "groundhut2b-objects.png" ] ] --- > "def" : [ "image", [ "groundhut2.png", "groundhut2b-objects.png" ] ], > "chance" : 1 2684c2755,2756 < "def" : [ "image", [ "groundhut3.png", "groundhut3a-objects.png" ] ] --- > "def" : [ "image", [ "groundhut3.png", "groundhut3a-objects.png" ] ], > "chance" : 1 2695c2767,2768 < "def" : [ "image", [ "groundhut3.png", "groundhut3b-objects.png" ] ] --- > "def" : [ "image", [ "groundhut3.png", "groundhut3b-objects.png" ] ], > "chance" : 1 2706c2779,2780 < "def" : [ "image", [ "groundhut4.png", "groundhut4a-objects.png" ] ] --- > "def" : [ "image", [ "groundhut4.png", "groundhut4a-objects.png" ] ], > "chance" : 1 2717c2791,2792 < "def" : [ "image", [ "groundhut4.png", "groundhut4b-objects.png" ] ] --- > "def" : [ "image", [ "groundhut4.png", "groundhut4b-objects.png" ] ], > "chance" : 1 2728c2803,2804 < "def" : [ "image", [ "groundhut5.png", "groundhut5a-objects.png" ] ] --- > "def" : [ "image", [ "groundhut5.png", "groundhut5a-objects.png" ] ], > "chance" : 1 2739c2815,2816 < "def" : [ "image", [ "groundhut5.png", "groundhut5b-objects.png" ] ] --- > "def" : [ "image", [ "groundhut5.png", "groundhut5b-objects.png" ] ], > "chance" : 1 2750c2827,2828 < "def" : [ "image", [ "groundhut6.png", "groundhut6a-objects.png" ] ] --- > "def" : [ "image", [ "groundhut6.png", "groundhut6a-objects.png" ] ], > "chance" : 1 2761c2839,2840 < "def" : [ "image", [ "groundhut6.png", "groundhut6b-objects.png" ] ] --- > "def" : [ "image", [ "groundhut6.png", "groundhut6b-objects.png" ] ], > "chance" : 1 2768,2769c2847 < [ "doNotConnectToPart", [ "treebase1", "treebase2", "treebase3" ] ], < [ "doNotCombineWith", [ "roof1a" ] ] --- > [ "doNotCombineWith", [ "roof1a", "roof1a-clue5" ] ] 2771c2849,2850 < "def" : [ "image", [ "roof1.png", "roof1a-objects.png" ] ] --- > "def" : [ "image", [ "roof1.png", "roof1a-objects.png" ] ], > "chance" : 0.1 2775c2854 < "name" : "roof2a", --- > "name" : "roof1a-clue5", 2778,2779c2857 < [ "doNotConnectToPart", [ "treebase1", "treebase2", "treebase3" ] ], < [ "doNotCombineWith", [ "roof2a", "roof2b" ] ] --- > [ "doNotCombineWith", [ "roof1a", "roof1a-clue5", "roof2a-clue2", "roof2b-clue3", "roof3a-clue2", "roof3b-clue1", "roof4a-clue1", "roof4b-clue4" ] ] 2781c2859,2860 < "def" : [ "image", [ "roof2.png", "roof2a-objects.png" ] ] --- > "def" : [ "image", [ "roof1.png", "roof1a-objects-clue5.png" ] ], > "chance" : 1 2785c2864 < "name" : "roof2b", --- > "name" : "roof2a", 2788,2789c2867 < [ "doNotConnectToPart", [ "treebase1", "treebase2", "treebase3" ] ], < [ "doNotCombineWith", [ "roof2a", "roof2b" ] ] --- > [ "doNotCombineWith", [ "roof2a", "roof2b", "roof2a-clue2", "roof2b-clue3" ] ] 2791c2869,2870 < "def" : [ "image", [ "roof2.png", "roof2b-objects.png" ] ] --- > "def" : [ "image", [ "roof2.png", "roof2a-objects.png" ] ], > "chance" : 0.05 2795c2874 < "name" : "roof3a", --- > "name" : "roof2a-clue2", 2798,2799c2877 < [ "doNotConnectToPart", [ "treebase1", "treebase2", "treebase3" ] ], < [ "doNotCombineWith", [ "roof3a", "roof3b" ] ] --- > [ "doNotCombineWith", [ "roof2a", "roof2b", "roof1a-clue5", "roof2a-clue2", "roof2b-clue3", "roof3a-clue2", "roof3b-clue1", "roof4a-clue1", "roof4b-clue4" ] ] 2801c2879,2880 < "def" : [ "image", [ "roof3.png", "roof3a-objects.png" ] ] --- > "def" : [ "image", [ "roof2.png", "roof2a-objects-clue2.png" ] ], > "chance" : 1 2805c2884 < "name" : "roof3b", --- > "name" : "roof2b", 2808,2809c2887 < [ "doNotConnectToPart", [ "treebase1", "treebase2", "treebase3" ] ], < [ "doNotCombineWith", [ "roof3a", "roof3b" ] ] --- > [ "doNotCombineWith", [ "roof2a", "roof2b", "roof2a-clue2", "roof2b-clue3" ] ] 2811c2889,2890 < "def" : [ "image", [ "roof3.png", "roof3b-objects.png" ] ] --- > "def" : [ "image", [ "roof2.png", "roof2b-objects.png" ] ], > "chance" : 0.05 2815c2894 < "name" : "roof4a", --- > "name" : "roof2b-clue3", 2818,2819c2897 < [ "doNotConnectToPart", [ "treebase1", "treebase2", "treebase3" ] ], < [ "doNotCombineWith", [ "roof4a", "roof4b" ] ] --- > [ "doNotCombineWith", [ "roof2a", "roof2b", "roof1a-clue5", "roof2a-clue2", "roof2b-clue3", "roof3a-clue2", "roof3b-clue1", "roof4a-clue1", "roof4b-clue4" ] ] 2821c2899,2900 < "def" : [ "image", [ "roof4.png", "roof4a-objects.png" ] ] --- > "def" : [ "image", [ "roof2.png", "roof2b-objects-clue3.png" ] ], > "chance" : 1 2825c2904 < "name" : "roof4b", --- > "name" : "roof3a", 2828,2829c2907 < [ "doNotConnectToPart", [ "treebase1", "treebase2", "treebase3" ] ], < [ "doNotCombineWith", [ "roof4a", "roof4b" ] ] --- > [ "doNotCombineWith", [ "roof3a", "roof3b", "roof3a-clue2", "roof3b-clue1" ] ] 2831c2909,2910 < "def" : [ "image", [ "roof4.png", "roof4b-objects.png" ] ] --- > "def" : [ "image", [ "roof3.png", "roof3a-objects.png" ] ], > "chance" : 0.05 2835c2914 < "name" : "endcapleft", --- > "name" : "roof3a-clue2", 2838c2917 < [ "doNotConnectToPart", [ "treebase1", "treebase2", "treebase3" ] ] --- > [ "doNotCombineWith", [ "roof3a", "roof3b", "roof1a-clue5", "roof2a-clue2", "roof2b-clue3", "roof3a-clue2", "roof3b-clue1", "roof4a-clue1", "roof4b-clue4" ] ] 2840,2841c2919,2920 < "def" : [ "image", [ "endcapleft.png", "endcapleft-objects.png" ] ], < "chance" : 0 --- > "def" : [ "image", [ "roof3.png", "roof3a-objects-clue2.png" ] ], > "chance" : 1 2845c2924 < "name" : "endcapright", --- > "name" : "roof3b", 2848c2927 < [ "doNotConnectToPart", [ "treebase1", "treebase2", "treebase3" ] ] --- > [ "doNotCombineWith", [ "roof3a", "roof3b", "roof3a-clue2", "roof3b-clue1" ] ] 2850,2851c2929,2930 < "def" : [ "image", [ "endcapright.png", "endcapright-objects.png" ] ], < "chance" : 0 --- > "def" : [ "image", [ "roof3.png", "roof3b-objects.png" ] ], > "chance" : 0.05 2855c2934 < "name" : "endtoproof1a", --- > "name" : "roof3b-clue1", 2858c2937 < [ "doNotCombineWith", [ "roof1a" ] ] --- > [ "doNotCombineWith", [ "roof3a", "roof3b", "roof1a-clue5", "roof2a-clue2", "roof2b-clue3", "roof3a-clue2", "roof3b-clue1", "roof4a-clue1", "roof4b-clue4" ] ] 2860,2861c2939,2940 < "def" : [ "image", [ "roof1.png", "roof1a-objects.png" ] ], < "chance" : 0 --- > "def" : [ "image", [ "roof3.png", "roof3b-objects-clue1.png" ] ], > "chance" : 1 2865c2944 < "name" : "endtoproof2a", --- > "name" : "roof4a", 2868c2947 < [ "doNotCombineWith", [ "roof2a", "roof2b" ] ] --- > [ "doNotCombineWith", [ "roof4a", "roof4b", "roof4a-clue1", "roof4b-clue4" ] ] 2870,2871c2949,2950 < "def" : [ "image", [ "roof2.png", "roof2a-objects.png" ] ], < "chance" : 0 --- > "def" : [ "image", [ "roof4.png", "roof4a-objects.png" ] ], > "chance" : 0.05 2875c2954 < "name" : "endtoproof2b", --- > "name" : "roof4a-clue1", 2878c2957 < [ "doNotCombineWith", [ "roof2a", "roof2b" ] ] --- > [ "doNotCombineWith", [ "roof4a", "roof4b", "roof1a-clue5", "roof2a-clue2", "roof2b-clue3", "roof3a-clue2", "roof3b-clue1", "roof4a-clue1", "roof4b-clue4" ] ] 2880,2881c2959,2960 < "def" : [ "image", [ "roof2.png", "roof2b-objects.png" ] ], < "chance" : 0 --- > "def" : [ "image", [ "roof4.png", "roof4a-objects-clue1.png" ] ], > "chance" : 1 2885c2964 < "name" : "endtoproof3a", --- > "name" : "roof4b", 2888c2967 < [ "doNotCombineWith", [ "roof3a", "roof3b" ] ] --- > [ "doNotCombineWith", [ "roof4a", "roof4b", "roof4a-clue1", "roof4b-clue4" ] ] 2890,2891c2969,2970 < "def" : [ "image", [ "roof3.png", "roof3a-objects.png" ] ], < "chance" : 0 --- > "def" : [ "image", [ "roof4.png", "roof4b-objects.png" ] ], > "chance" : 0.05 2895c2974 < "name" : "endtoproof3b", --- > "name" : "roof4b-clue4", 2898c2977 < [ "doNotCombineWith", [ "roof3a", "roof3b" ] ] --- > [ "doNotCombineWith", [ "roof4a", "roof4b", "roof1a-clue5", "roof2a-clue2", "roof2b-clue3", "roof3a-clue2", "roof3b-clue1", "roof4a-clue1", "roof4b-clue4" ] ] 2900,2901c2979,2980 < "def" : [ "image", [ "roof3.png", "roof3b-objects.png" ] ], < "chance" : 0 --- > "def" : [ "image", [ "roof4.png", "roof4b-objects-clue4.png" ] ], > "chance" : 1 2905c2984 < "name" : "endtoproof4a", --- > "name" : "endcapleft", 2907,2908c2986 < [ "ignorePartMaximumRule" ], < [ "doNotCombineWith", [ "roof4a", "roof4b" ] ] --- > [ "ignorePartMaximumRule" ] 2910c2988 < "def" : [ "image", [ "roof4.png", "roof4a-objects.png" ] ], --- > "def" : [ "image", [ "endcapleft.png", "endcapleft-objects.png" ] ], 2915c2993 < "name" : "endtoproof4b", --- > "name" : "endcapright", 2917,2918c2995 < [ "ignorePartMaximumRule" ], < [ "doNotCombineWith", [ "roof4a", "roof4b" ] ] --- > [ "ignorePartMaximumRule" ] 2920c2997 < "def" : [ "image", [ "roof4.png", "roof4b-objects.png" ] ], --- > "def" : [ "image", [ "endcapright.png", "endcapright-objects.png" ] ], dungeons\missions\hylotlmissions\hylotlmission1.json [TMX file differences are left out for huge size.] dungeons\other\ancientgateway\ancientgateway.json [TMX file differences are left out for huge size.] dungeons\other\arena\arena1.json [TMX file differences are left out for huge size.] dungeons\other\arena\arena2.json [TMX file differences are left out for huge size.] dungeons\other\arena\arena3.json [TMX file differences are left out for huge size.] dungeons\other\outpost\outpost.json [TMX file differences are left out for huge size.] effects\stargazer.effectsource 4c4 < "duration" : 0.05, --- > "duration" : 0.3, interface\objectcrafting\fossilstation.config 100c100 < "position" : [26, 59] --- > "position" : [40, 59] interface\windowconfig\crafting.config 105c105 < "position" : [26, 59] --- > "position" : [40, 59] 109c109 < "position" : [51, 59], --- > "position" : [51, 58], interface\windowconfig\craftinganvil.config 108c108 < "position" : [26, 59] --- > "position" : [40, 59] interface\windowconfig\craftingcampfire.config 105c105 < "position" : [26, 59] --- > "position" : [40, 59] interface\windowconfig\craftingfarming.config 108c108 < "position" : [26, 59] --- > "position" : [40, 59] interface\windowconfig\craftingfood.config 103c103 < "position" : [26, 59] --- > "position" : [40, 59] interface\windowconfig\craftingfurnace.config 107c107 < "position" : [26, 59] --- > "position" : [40, 59] interface\windowconfig\craftingfurniture.config 108c108 < "position" : [26, 59] --- > "position" : [40, 59] interface\windowconfig\craftingfurniturestore.config 78c78 < "position" : [26, 74] --- > "position" : [40, 74] interface\windowconfig\craftingmedical.config 108c108 < "position" : [26, 59] --- > "position" : [40, 59] interface\windowconfig\craftingmerchant.config 94c94 < "position" : [26, 40] --- > "position" : [40, 40] interface\windowconfig\inventorstable.config 108c108 < "position" : [26, 59] --- > "position" : [40, 59] interface\windowconfig\merchant.config 17c17 < "position" : [161, 249] --- > "position" : [161, 242] 35c35 < "zlevel" : -5 --- > "zlevel" : 1 47c47 < "rect" : [1, 0, 177, 241], --- > "rect" : [3, 0, 173, 234], 51c51 < "tabTitle" : "BUY", --- > "tabTitle" : "Buy", 73,78d72 < "imgTotalCostBg" : { < "type" : "image", < "file" : "/interface/merchant/totalcostbg.png", < "position" : [63, 48], < "zlevel" : -3 < }, 104c98 < "caption" : "BUY" --- > "caption" : "Buy" 108c102 < "rect" : [4, 63, 173, 216], --- > "rect" : [5, 63, 171, 217], 164c158 < "tabTitle" : "SELL", --- > "tabTitle" : "Sell", 169c163 < "position" : [12, 69], --- > "position" : [10, 73], 173c167 < "zlevel" : -3 --- > "zlevel" : 2 200c194 < "caption" : "SELL" --- > "caption" : "Sell" interface\windowconfig\questlog.config 251,259d250 < }, < { < "position" : [107, 253], < "baseImage" : "/interface/quests/questlog/failed.png", < "hoverImage" : "/interface/quests/questlog/failedOver.png", < "baseImageChecked" : "/interface/quests/questlog/failedSelected.png", < "data" : "failed", < "text" : "Failed", < "pressedOffset" : [0, 0] interface\windowconfig\spinningwheel.config 108c108 < "position" : [26, 59] --- > "position" : [40, 59] interface\windowconfig\wiringstation.config 23,24c23,24 < "title" : " WIRING STATION", < "subtitle" : " For everything to do with wiring!", --- > "title" : "Wiring Station", > "subtitle" : "For everything to do with wiring", 101c101 < "position" : [26, 59] --- > "position" : [40, 59] items\active\weapons\arena\flamethrowerblade\flamethrowerblade.activeitem 4c4 < "inventoryIcon" : "flamethrowerblade.png", --- > "inventoryIcon" : "flamethrowerblade.png:idle.1", 13c13 < "twoHanded" : false, --- > "twoHanded" : true, 15c15 < "animation" : "/items/active/weapons/ranged/gun.animation", --- > "animation" : "flamethrowerblade.animation", 18a19 > "middlefullbright" : "flamethrowerbladefullbright.png", 20c21 < "muzzleFlash" : "/items/active/weapons/ranged/muzzleflash.png" --- > "muzzleFlash" : "" 22a24,33 > "lights" : { "glow" : { > "active" : true, > "position" : [0.75, 0.5], > "color" : [117, 44, 22], > "flickerPeriod" : 0.3, > "flickerMinIntensity" : 0.95, > "flickerMaxIntensity" : 1, > "flickerPeriodVariance" : 0.075, > "flickerIntensityVariance" : 0.025 > }}, 31,32c42,43 < "baseOffset" : [3.1, -2.2], < "muzzleOffset" : [4.0, 0.0], --- > "baseOffset" : [0.0, 0.0], > "muzzleOffset" : [3.5, 0.0], items\active\weapons\melee\broadsword\astrosabredeluxe.activeitem 7,8c7,8 < "description" : "This blade seems to cut through time and space.", < "shortdescription" : "AstroSabre Deluxe", --- > "description" : "An inscription on the blade reads,\"High-five for expressing yourself!\"", > "shortdescription" : "Asuterosaberu DX", items\active\weapons\melee\broadsword\timepierce.activeitem 94c94 < "knockback" : 40, --- > "knockback" : 25, items\active\weapons\other\adaptablecrossbow\adaptableammo.altability 11c11 < "particleEmittersOff" : [ "fireAmmo", "iceAmmo", "electricAmmo", "poisonAmmo" ] --- > "particleEmittersOff" : [ "fireAmmo", "iceAmmo", "electricAmmo", "poisonAmmo", "hGravityAmmo", "nGravityAmmo" ] 17c17 < "particleEmittersOff" : [ "iceAmmo", "electricAmmo", "poisonAmmo" ], --- > "particleEmittersOff" : [ "iceAmmo", "electricAmmo", "poisonAmmo", "hGravityAmmo", "nGravityAmmo" ], 24c24 < "particleEmittersOff" : [ "fireAmmo", "electricAmmo", "poisonAmmo" ], --- > "particleEmittersOff" : [ "fireAmmo", "electricAmmo", "poisonAmmo", "hGravityAmmo", "nGravityAmmo" ], 31c31 < "particleEmittersOff" : [ "fireAmmo", "iceAmmo", "poisonAmmo" ], --- > "particleEmittersOff" : [ "fireAmmo", "iceAmmo", "poisonAmmo", "hGravityAmmo", "nGravityAmmo" ], 38c38 < "particleEmittersOff" : [ "fireAmmo", "iceAmmo", "electricAmmo" ], --- > "particleEmittersOff" : [ "fireAmmo", "iceAmmo", "electricAmmo", "hGravityAmmo", "nGravityAmmo" ], 40a41,54 > }, > "6" : { > "frames" : 1, > "properties" : { > "particleEmittersOff" : [ "fireAmmo", "iceAmmo", "electricAmmo", "poisonAmmo", "nGravityAmmo" ], > "particleEmittersOn" : [ "hGravityAmmo" ] > } > }, > "7" : { > "frames" : 1, > "properties" : { > "particleEmittersOff" : [ "fireAmmo", "iceAmmo", "electricAmmo", "poisonAmmo", "hGravityAmmo" ], > "particleEmittersOn" : [ "nGravityAmmo" ] > } 77a92,101 > }, > "6" : { > "properties" : { > "image" : ":hgravity." > } > }, > "7" : { > "properties" : { > "image" : ":ngravity." > } 124a149,164 > }, > "hGravityAmmo" : { > "transformationGroups" : ["weapon"], > "offsetRegion" : [0, 0, 1.5, 0], > "emissionRate" : 3.0, > "particles" : [ > { "particle" : "shadowsmoke" } > ] > }, > "nGravityAmmo" : { > "transformationGroups" : ["weapon"], > "offsetRegion" : [0, 0, 1.5, 0], > "emissionRate" : 3.0, > "particles" : [ > { "particle" : "shadowsmoke" } > ] 125a166 > 160a202,209 > }, > { > "projectileType" : "hgravitybolt", > "energyUsage" : 40 > }, > { > "projectileType" : "ngravitybolt", > "energyUsage" : 40 items\active\weapons\other\adaptablecrossbow\adaptablecrossbow.frames 4c4 < "dimensions" : [5, 1], --- > "dimensions" : [7, 1], 6c6 < ["wooden.1", "explosive.1", "ice.1", "electric.1", "poison.1" ] --- > ["wooden.1", "explosive.1", "ice.1", "electric.1", "poison.1", "hgravity.1", "ngravity.1" ] items\active\weapons\other\flamingdemonsword\flamingdemonsword.activeitem 28c28 < "flickerPeriod" : 0.1, --- > "flickerPeriod" : 0.3, 30c30 < "flickerMaxIntensity" : 1.0, --- > "flickerMaxIntensity" : 1, 96c96 < --- > items\active\weapons\other\flamingdemonsword\flamingdemonsword.animation 38,39c38,42 < "cycle" : 0.7, < "mode" : "loop" --- > "cycle" : 0.6, > "mode" : "loop", > "properties" : { > "persistentSound" : "/sfx/melee/flamingdemonsword_loop.ogg" > } 111d113 < "persistentSound" : "/sfx/melee/elemental_aura_fire.ogg", items\active\weapons\other\gristlegun\gristlegun.activeitem 3c3 < "price" : 95, --- > "price" : 500, 5c5 < "rarity" : "Rare", --- > "rarity" : "Legendary", 7c7 < "shortdescription" : "Gristle Gun", --- > "shortdescription" : "Cartilage Gun", items\active\weapons\other\soulseeker\soulseeker.activeitem 7c7 < "description" : "A blade forged in another dimension.", --- > "description" : "A sword of extraordinary dark power, once used by a powerful soul.", items\armors\backerhats\soulguise\soulguise.head 7c7 < "description" : "this futuristic helm comes with a very impressive plume", --- > "description" : "A helm of extraordinary dark power, it calls out to it's true master", items\liquids\healingwater.liqitem 11,12c11 < "bottledhealingwater", < "dyeremover" --- > "bottledhealingwater" items\liquids\slime.liqitem 8,13c8 < "liquid" : "slimeliquid", < < "learnBlueprintsOnPickup" : [ < "mininglantern", < "lanternstickback" < ] --- > "liquid" : "slimeliquid" monsters\boss\apeboss\apeboss.monstertype 55c55,56 < } --- > }, > "physicsEffectCategories" : ["boss"] monsters\boss\apebossprojector\apebossprojector.monstertype 64c64,65 < "airForce" : 200.0 --- > "airForce" : 200.0, > "physicsEffectCategories" : ["boss"] monsters\boss\crystalboss\crystalboss.monstertype 77c77,78 < } --- > }, > "physicsEffectCategories" : ["boss"] monsters\boss\cultistboss\cultistboss.monstertype 111c111,112 < "mass" : 1.0 --- > "mass" : 1.0, > "physicsEffectCategories" : ["boss"] monsters\boss\dragonboss\dragonboss.monstertype 35c35,36 < "airForce" : 40.0 --- > "airForce" : 40.0, > "physicsEffectCategories" : ["boss"] monsters\boss\kluexboss\kluexboss.monstertype 102c102,103 < } --- > }, > "physicsEffectCategories" : ["boss"] monsters\boss\kluexbossstatue\kluexbossstatue.monstertype 61c61,62 < } --- > }, > "physicsEffectCategories" : ["boss"] monsters\boss\missile\missile.monstertype 35c35,36 < "airForce" : 50.0 --- > "airForce" : 50.0, > "physicsEffectCategories" : ["boss"] monsters\boss\penguinminiufo\penguinminiufo.monstertype 30c30,31 < "airForce" : 50.0 --- > "airForce" : 50.0, > "physicsEffectCategories" : ["boss"] monsters\boss\penguintank\penguintank.monstertype 28c28,29 < "runSpeed" : 2 --- > "runSpeed" : 2, > "physicsEffectCategories" : ["boss"] monsters\boss\penguinufo\penguinufo.monstertype 60c60,61 < "airForce" : 200.0 --- > "airForce" : 200.0, > "physicsEffectCategories" : ["boss"] monsters\boss\robotboss\robotboss.monstertype 73c73,74 < "runSpeed" : 13 --- > "runSpeed" : 13, > "physicsEffectCategories" : ["boss"] monsters\boss\spiderboss\spiderboss.monstertype 58c58,59 < } --- > }, > "physicsEffectCategories" : ["boss"] npcs\apexslave.npctype 6,9d5 < "questGenerator" : { < "pools" : ["normal"] < }, < npcs\base.npctype 128c128 < "pools" : ["normal"], --- > "pools" : [], npcs\chefmerchant.npctype 5a6,9 > "questGenerator" : { > "pools" : ["common"] > }, > npcs\doctormerchant.npctype 6,9d5 < "questGenerator" : { < "pools" : ["normal"] < }, < npcs\merchant.npctype 15a16,25 > "questGenerator" : { > "pools" : ["common", "merchant"], > "enableParticipation" : true, > > "timeLimit" : 30, > "nearbyQuestLimit" : 2, > "nearbyQuestRange" : 50, > "chance" : 0.1 > }, > npcs\merchantpools.config 253,254c253,254 < { "item" : { "name" : "tungstenbar" }, "prerequisiteQuest" : "outpostMission1" }, < { "item" : { "name" : "plutoniumrod" }, "prerequisiteQuest" : "outpostMission1" }, --- > { "item" : { "name" : "tungstenbar" }, "prerequisiteQuest" : "human_mission1" }, > { "item" : { "name" : "plutoniumrod" }, "prerequisiteQuest" : "human_mission1" }, 256,257c256,257 < { "item" : { "name" : "titaniumbar" }, "prerequisiteQuest" : "penguinmission2" }, < { "item" : { "name" : "diamond" }, "prerequisiteQuest" : "penguinmission2" }, --- > { "item" : { "name" : "titaniumbar" }, "prerequisiteQuest" : "floran_mission2" }, > { "item" : { "name" : "diamond" }, "prerequisiteQuest" : "floran_mission2" }, 259c259 < { "item" : { "name" : "durasteelbar" }, "prerequisiteQuest" : "coldskin2" }, --- > { "item" : { "name" : "durasteelbar" }, "prerequisiteQuest" : "hylotl_mission2" }, 261,263c261,267 < { "item" : { "name" : "refinedaegisalt" }, "prerequisiteQuest" : "heatskin2" }, < { "item" : { "name" : "refinedrubium" }, "prerequisiteQuest" : "heatskin2" }, < { "item" : { "name" : "refinedviolium" }, "prerequisiteQuest" : "heatskin2" } --- > { "item" : { "name" : "refinedaegisalt" }, "prerequisiteQuest" : "avian_mission2" }, > { "item" : { "name" : "refinedrubium" }, "prerequisiteQuest" : "avian_mission2" }, > { "item" : { "name" : "refinedviolium" }, "prerequisiteQuest" : "avian_mission2" }, > > { "item" : { "name" : "feroziumcompound" }, "prerequisiteQuest" : "apex_mission2" }, > { "item" : { "name" : "ceruliumcompound" }, "prerequisiteQuest" : "apex_mission2" }, > { "item" : { "name" : "imperviumcompound" }, "prerequisiteQuest" : "apex_mission2" } 277,291c281,295 < { "item" : { "name" : "damageaugment2" } }, < { "item" : { "name" : "energyaugment2" } }, < { "item" : { "name" : "healingaugment2" } }, < { "item" : { "name" : "healthaugment2" } }, < { "item" : { "name" : "lightaugment2" } }, < < { "item" : { "name" : "fireblockaugment" } }, < { "item" : { "name" : "iceblockaugment" } }, < { "item" : { "name" : "electricblockaugment" } }, < { "item" : { "name" : "poisonblockaugment" } }, < < { "item" : { "name" : "gravityaugment" } }, < { "item" : { "name" : "jumpaugment" } }, < { "item" : { "name" : "speedaugment" } }, < { "item" : { "name" : "swimaugment" } }, --- > { "item" : { "name" : "fireblockaugment" }, "prerequisiteQuest" : "human_mission1" }, > { "item" : { "name" : "iceblockaugment" }, "prerequisiteQuest" : "human_mission1" }, > { "item" : { "name" : "electricblockaugment" }, "prerequisiteQuest" : "human_mission1" }, > { "item" : { "name" : "poisonblockaugment" }, "prerequisiteQuest" : "human_mission1" }, > > { "item" : { "name" : "damageaugment2" }, "prerequisiteQuest" : "floran_mission2" }, > { "item" : { "name" : "energyaugment2" }, "prerequisiteQuest" : "floran_mission2" }, > { "item" : { "name" : "healingaugment2" }, "prerequisiteQuest" : "floran_mission2" }, > { "item" : { "name" : "healthaugment2" }, "prerequisiteQuest" : "floran_mission2" }, > { "item" : { "name" : "lightaugment2" }, "prerequisiteQuest" : "floran_mission2" }, > > { "item" : { "name" : "gravityaugment" }, "prerequisiteQuest" : "hylotl_mission2" }, > { "item" : { "name" : "jumpaugment" }, "prerequisiteQuest" : "hylotl_mission2" }, > { "item" : { "name" : "speedaugment" }, "prerequisiteQuest" : "hylotl_mission2" }, > { "item" : { "name" : "swimaugment" }, "prerequisiteQuest" : "hylotl_mission2" }, 294,298c298,302 < { "item" : { "name" : "damageaugment3" } }, < { "item" : { "name" : "energyaugment3" } }, < { "item" : { "name" : "healingaugment3" } }, < { "item" : { "name" : "healthaugment3" } }, < { "item" : { "name" : "lightaugment3" } }, --- > { "item" : { "name" : "damageaugment3" }, "prerequisiteQuest" : "avian_mission2" }, > { "item" : { "name" : "energyaugment3" }, "prerequisiteQuest" : "avian_mission2" }, > { "item" : { "name" : "healingaugment3" }, "prerequisiteQuest" : "avian_mission2" }, > { "item" : { "name" : "healthaugment3" }, "prerequisiteQuest" : "avian_mission2" }, > { "item" : { "name" : "lightaugment3" }, "prerequisiteQuest" : "avian_mission2" }, 300,301c304,305 < { "item" : { "name" : "thornsaugment" } }, < { "item" : { "name" : "mobilityaugment" } } --- > { "item" : { "name" : "thornsaugment" }, "prerequisiteQuest" : "apex_mission2" }, > { "item" : { "name" : "mobilityaugment" }, "prerequisiteQuest" : "apex_mission2" } npcs\nakedvillager.npctype 6,9d5 < "questGenerator" : { < "pools" : ["normal"] < }, < npcs\oremerchant.npctype 6,9d5 < "questGenerator" : { < "pools" : ["normal"] < }, < npcs\servant.npctype 6,9d5 < "questGenerator" : { < "pools" : ["normal"] < }, < npcs\stimmerchant.npctype 7c7 < "pools" : ["normal"] --- > "pools" : ["common"] npcs\toolmerchant.npctype 7c7 < "pools" : ["normal"] --- > "pools" : ["common", "tenant"] npcs\tutorialtenant.npctype 7c7 < "pools" : ["normal", "villager"], --- > "pools" : ["common", "tenant"], npcs\villageguard.npctype 13c13 < "pools" : ["normal", "guard"], --- > "pools" : ["common", "guard"], npcs\villager.npctype 12c12 < "pools" : ["villager"], --- > "pools" : ["common"], npcs\wizardmerchant.npctype 9c9 < "pools" : ["normal"] --- > "pools" : ["common"] npcs\biome\colourfulvillager.npctype 6,9d5 < "questGenerator" : { < "pools" : ["normal"] < }, < npcs\biome\forestvillager.npctype 8,11d7 < "questGenerator" : { < "pools" : ["normal"] < }, < npcs\biome\foundryworker.npctype 7,10d6 < "questGenerator" : { < "pools" : ["normal"] < }, < npcs\biome\hazmatscientist.npctype 7,10d6 < "questGenerator" : { < "pools" : ["normal"] < }, < npcs\biome\savannahvillager.npctype 11a12 > "pools" : ["common"], npcs\biome\shadowvillager.npctype 12c12 < "pools" : ["normal", "shady"], --- > "pools" : ["common", "shady"], npcs\biome\snowscientist.npctype 7,10d6 < "questGenerator" : { < "pools" : ["normal"] < }, < npcs\biome\snowvillager.npctype 7,10d6 < "questGenerator" : { < "pools" : ["normal"] < }, < npcs\biome\undergroundvillager.npctype 7,10d6 < "questGenerator" : { < "pools" : ["normal"] < }, < npcs\dungeon\avianairship\airshipquartermaster.npctype 12,15d11 < "questGenerator" : { < "pools" : ["normal"] < }, < npcs\dungeon\aviantower\towerascendant.npctype 6,9d5 < "questGenerator" : { < "pools" : ["normal"] < }, < npcs\dungeon\floranhuntinggrounds\wildhunter.npctype 23c23 < "npcassaultrifle" --- > "npcfloranassaultrifle" npcs\dungeon\floranhuntinggrounds\wildhunterveteran.npctype 20c20 < "npcassaultrifle" --- > "npcfloranassaultrifle" npcs\furniture\astronaut.npctype 8c8 < "pools" : ["normal"] --- > "pools" : ["tenant", "common"] npcs\furniture\cabin.npctype 8c8 < "pools" : ["normal"] --- > "pools" : ["tenant", "common"] npcs\furniture\farm.npctype 7c7 < "pools" : ["normal"] --- > "pools" : ["tenant", "common"] npcs\furniture\gothic.npctype 8c8 < "pools" : ["normal"] --- > "pools" : ["tenant", "common"] npcs\furniture\island.npctype 8c8 < "pools" : ["normal"] --- > "pools" : ["tenant", "common"] npcs\furniture\retroscifi.npctype 8c8 < "pools" : ["normal"] --- > "pools" : ["tenant", "common"] npcs\furniture\saloon.npctype 8c8 < "pools" : ["normal"] --- > "pools" : ["tenant", "common"] npcs\furniture\sea.npctype 8c8 < "pools" : ["normal"] --- > "pools" : ["tenant", "common"] npcs\furniture\spooky.npctype 8c8 < "pools" : ["normal"] --- > "pools" : ["tenant", "common"] npcs\furniture\steampunk.npctype 8c8 < "pools" : ["normal"] --- > "pools" : ["tenant", "common"] npcs\mission\floranchieftain.npctype 9,12d8 < "questGenerator" : { < "pools" : ["normal"] < }, < npcs\outpost\baronoutpost.npctype 33c33 < "chatPortrait" : "/interface/chatbubbles/baron.png", --- > "chatPortrait" : "/interface/chatbubbles/baron.png:", npcs\outpost\lanaoutpost.npctype 49c49 < { "name" : "npcsniperrifle" } --- > "" npcs\story\baron.npctype 26c26 < "chatPortrait" : "/interface/chatbubbles/baron.png", --- > "chatPortrait" : "/interface/chatbubbles/baron.png:", 62c62 < "Speachless. ..." --- > "Speechless. ..." npcs\story\estheroid.config 98c98,99 < "maxMovementPerStep" : 0.4 --- > "maxMovementPerStep" : 0.4, > "physicsEffectCategories" : ["storyNpc"] npcs\story\koichioid.config 98c98,99 < "maxMovementPerStep" : 0.4 --- > "maxMovementPerStep" : 0.4, > "physicsEffectCategories" : ["storyNpc"] npcs\story\lanaoid.config 31c31 < "frontArmRotationCenter" : [-2.5, -1.5], --- > "frontArmRotationCenter" : [0, -1.5], 98c98,99 < "maxMovementPerStep" : 0.4 --- > "maxMovementPerStep" : 0.4, > "physicsEffectCategories" : ["storyNpc"] npcs\story\noxoid.config 98c98,99 < "maxMovementPerStep" : 0.4 --- > "maxMovementPerStep" : 0.4, > "physicsEffectCategories" : ["storyNpc"] npcs\story\nuruoid.config 1c1 < { --- > { 98c98,99 < "maxMovementPerStep" : 0.4 --- > "maxMovementPerStep" : 0.4, > "physicsEffectCategories" : ["storyNpc"] npcs\story\tonauac.npctype 61c61 < "This is our sacraficial altar. It's a very fine example. These grooves channel the blood all along its full length.", --- > "This is our sacrificial altar. It's a very fine example. These grooves channel the blood all along its full length.", npcs\story\tonauacoid.config 98c98,99 < "maxMovementPerStep" : 0.4 --- > "maxMovementPerStep" : 0.4, > "physicsEffectCategories" : ["storyNpc"] npcs\subbiometenants\bones.npctype 34c34 < "pools" : ["normal", "shady"] --- > "pools" : ["common", "tenant", "shady"] npcs\subbiometenants\flesh.npctype 8c8 < "pools" : ["normal"] --- > "pools" : ["common", "tenant"] npcs\subbiometenants\foundry.npctype 16c16 < "pools" : ["normal"] --- > "pools" : ["common", "tenant"] npcs\subbiometenants\geode.npctype 16c16 < "pools" : ["normal"] --- > "pools" : ["common", "tenant"] npcs\subbiometenants\giantflower.npctype 16c16 < "pools" : ["normal"] --- > "pools" : ["common", "tenant"] npcs\subbiometenants\glow.npctype 16c16 < "pools" : ["normal"] --- > "pools" : ["common", "tenant"] npcs\subbiometenants\oasis.npctype 16c16 < "pools" : ["normal"] --- > "pools" : ["common", "tenant"] npcs\subbiometenants\prism.npctype 16c16 < "pools" : ["normal"] --- > "pools" : ["common", "tenant"] npcs\subbiometenants\scorched.npctype 16c16 < "pools" : ["shady"] --- > "pools" : ["common", "tenant", "shady"] npcs\subbiometenants\spring.npctype 16c16 < "pools" : ["normal"] --- > "pools" : ["common", "tenant"] npcs\subbiometenants\steamspring.npctype 16c16 < "pools" : ["normal"] --- > "pools" : ["common", "tenant"] npcs\subbiometenants\tar.npctype 7c7 < "pools" : ["normal"] --- > "pools" : ["common", "tenant"] npcs\tenants\apexresearchlab.npctype 28c28 < "pools" : ["normal", "shady"] --- > "pools" : ["common", "tenant", "shady"] npcs\tenants\avianairship.npctype 7c7 < "pools" : ["normal"] --- > "pools" : ["common", "tenant"] npcs\tenants\aviantomb.npctype 8c8 < "pools" : ["normal"] --- > "pools" : ["common", "tenant"] npcs\tenants\chefmerchanttenant.npctype 7c7 < "pools" : ["normal"], --- > "pools" : ["common", "tenant"], npcs\tenants\creepling.npctype 19c19 < "pools" : ["normal", "shady"] --- > "pools" : ["common", "tenant", "shady"] npcs\tenants\electrician.npctype 8c8 < "pools" : ["normal"] --- > "pools" : ["common", "tenant"] npcs\tenants\friendlycultist.npctype 54c54 < "pools" : ["normal", "shady"] --- > "pools" : ["common", "tenant", "shady"] npcs\tenants\friendlyguardtenant.npctype 7c7 < "pools" : ["normal", "guard"], --- > "pools" : ["common", "tenant", "guard"], npcs\tenants\generictenant.npctype 7c7 < "pools" : ["normal", "hats"], --- > "pools" : ["common", "tenant", "hats"], 16c16 < "chance" : 0.5 --- > "chance" : 0.3 npcs\tenants\glitchcastle.npctype 8c8 < "pools" : ["normal"] --- > "pools" : ["common", "tenant"] npcs\tenants\glitchsewer.npctype 8c8 < "pools" : ["normal"] --- > "pools" : ["common", "tenant"] npcs\tenants\hazmat.npctype 8c8 < "pools" : ["normal"] --- > "pools" : ["common", "tenant"] npcs\tenants\humanbunker.npctype 8c8 < "pools" : ["normal"] --- > "pools" : ["common", "tenant"] npcs\tenants\humanprison.npctype 28c28 < "pools" : ["normal", "shady"] --- > "pools" : ["common", "tenant", "shady"] npcs\tenants\merchanttenant.npctype 7,13c7 < "pools" : ["normal", "merchant"], < "enableParticipation" : true, < < "timeLimit" : 30, < "nearbyQuestLimit" : 2, < "nearbyQuestRange" : 50, < "chance" : 0.1 --- > "pools" : ["common", "tenant", "merchant"] npcs\tenants\neon.npctype 8c8 < "pools" : ["normal"] --- > "pools" : ["common", "tenant"] npcs\tenants\philanthropist.npctype 8c8 < "pools" : ["normal"] --- > "pools" : ["common", "tenant"] npcs\tenants\scientist.npctype 7c7 < "pools" : ["normal"] --- > "pools" : ["common", "tenant"] npcs\tenants\socialite.npctype 8c8 < "pools" : ["normal"] --- > "pools" : ["common", "tenant"] objects\ancient\ancientconsole\ancientconsole.lua 1a2,3 > object.setUniqueId(config.getParameter("uniqueId")) > objects\ancient\ancientconsole\ancientconsole.object 72c72,74 < "scriptDelta" : 20 --- > "scriptDelta" : 20, > > "uniqueId" : "ancientgate" objects\ancient\monolithgate\monolithgate.animation 68a69,80 > }, > "open" : { > "default" : "off", > "states" : { > "off" : {}, > "on" : { > "frames" : 1, > "properties" : { > "particleEmittersOn" : [ "starfield" ] > } > } > } 87a100,116 > "inner" : { > "properties" : { > "centered" : false, > "zLevel" : 2, > "offset" : [7.125, 0] > }, > > "partStates" : { > "open" : { > "on" : { > "properties" : { > "image" : "" > } > } > } > } > }, 189a219,245 > } > }, > > "particleEmitters" : { > "starfield" : { > "emissionRate" : 15, > "offsetRegion" : [7.125, 0, 30.875, 25], > "particles" : [ > { "particle" : { > "type" : "ember", > "color" : [255, 255, 255], > "size" : 1, > "angularVelocity" : 20, > "destructionTime" : 3.0, > "destructionAction" : "fade", > "position" : [0, 0], > "initialVelocity" : [0, 0], > "finalVelocity" : [0, 0], > "approach" : [15, 15], > "timeToLive" : 0.85, > "layer" : "middle", > "variance" : { > "size" : 0.5 > } > } > } > ] objects\ancient\monolithgate\monolithgate.lua 0a1,2 > require "/scripts/util.lua" > 2a5 > object.setInteractive(false) 12c15,19 < end --- > > if contains(world.universeFlags(), "ark_gate_open") then > object.setInteractive(true) > end > end \ No newline at end of file objects\ancient\monolithgate\monolithgate.object 38a39 > "inner" : "monolithgateinner.png", 56c57,73 < "final_gate_key" : "humankey" --- > "final_gate_key" : "humankey", > "ark_gate_open" : "open" > }, > > "interactAction" : "OpenTeleportDialog", > "interactData" : { > "canBookmark" : false, > "destinations" : [ > { > "name" : "The Ruin", > "planetName" : "The Ruin", > "mission" : true, > "warpAction" : "InstanceWorld:tentaclemission", > "icon" : "default" > } > ], > "includePlayerBookmarks" : false objects\clues\floran\floranwebbing\floranwebbing.object 30c30 < "anchors" : [ "background" ] --- > "anchors" : [ "bottom" ] objects\clues\hylotl\hylotlmusicbox\hylotlmusicbox.object 6c6 < "price" : 400, --- > "price" : 450, objects\floran\huntingpunjisticks1\huntingpunjisticks1.object 56c56 < "damage" : 15, --- > "damage" : 25, objects\floran\huntingpunjisticks2\huntingpunjisticks2.object 56c56 < "damage" : 15, --- > "damage" : 25, objects\floran\huntingtrophy3\huntingtrophy3.object 23,25c23 < "imagePosition" : [-8, -8], < "frames" : 1, < "animationCycle" : 0.5, --- > "imagePosition" : [-12, -8], objects\generic\backerstatue\cameronstatue.object 5c5 < "description" : "A statue dedicated to Cameron York.", --- > "description" : "A statue of Cameron \"KyeTheShy\" York. Loved to adventure, but wandered a little too far...into space.", objects\outpost\infinityexpress\infinityexpress.object 40,42c40 < { "item" : "liquidfuel", "prerequisiteQuest" : "outpostMission1" }, < { "item" : "supermatter", "prerequisiteQuest" : "outpostMission1" }, < { "item" : "processor", "prerequisiteQuest" : "penguinmission3" } --- > { "item" : "liquidfuel", "prerequisiteQuest" : "human_mission1" } objects\ship\aviantechstation\aviantechstation.object 38a39,40 > "offeredQuests" : [ "gateway1" ], > 40c42 < "/objects/spawner/shipPetSpawner.lua" --- > "/objects/spawner/techstation.lua" 44c46,48 < "spawnOffset" : [12, -1] --- > "spawnOffset" : [12, -1], > > "uniqueId" : "techstation" objects\ship\brokenapexfuelhatch\brokenapexfuelhatchtier0.object 33c33,40 < "soundEffectRadius" : 15 --- > "soundEffectRadius" : 15, > > "animation" : "/objects/noisy/noisy.animation", > "scripts" : [ > "/objects/noisy/noisy.lua", > "/objects/ship/brokenfuelhatch.lua" > ], > "sounds" : [ "/sfx/interface/ship_error1.ogg" ], 34a42 > "uniqueId" : "fuelhatch" objects\ship\brokenavianfuelhatch\brokenavianfuelhatchtier0.object 33c33,40 < "soundEffectRadius" : 15 --- > "soundEffectRadius" : 15, > > "animation" : "/objects/noisy/noisy.animation", > "scripts" : [ > "/objects/noisy/noisy.lua", > "/objects/ship/brokenfuelhatch.lua" > ], > "sounds" : [ "/sfx/interface/ship_error1.ogg" ], 34a42 > "uniqueId" : "fuelhatch" objects\ship\brokenfloranfuelhatch\brokenfloranfuelhatchtier0.object 33c33,40 < "soundEffectRadius" : 15 --- > "soundEffectRadius" : 15, > > "animation" : "/objects/noisy/noisy.animation", > "scripts" : [ > "/objects/noisy/noisy.lua", > "/objects/ship/brokenfuelhatch.lua" > ], > "sounds" : [ "/sfx/interface/ship_error1.ogg" ], 34a42 > "uniqueId" : "fuelhatch" objects\ship\brokenglitchfuelhatch\brokenglitchfuelhatchtier0.object 33c33,40 < "soundEffectRadius" : 15 --- > "soundEffectRadius" : 15, > > "animation" : "/objects/noisy/noisy.animation", > "scripts" : [ > "/objects/noisy/noisy.lua", > "/objects/ship/brokenfuelhatch.lua" > ], > "sounds" : [ "/sfx/interface/ship_error1.ogg" ], 34a42 > "uniqueId" : "fuelhatch" objects\ship\brokenhumanfuelhatch\brokenhumanfuelhatchtier0.object 33c33,40 < "soundEffectRadius" : 15 --- > "soundEffectRadius" : 15, > > "animation" : "/objects/noisy/noisy.animation", > "scripts" : [ > "/objects/noisy/noisy.lua", > "/objects/ship/brokenfuelhatch.lua" > ], > "sounds" : [ "/sfx/interface/ship_error1.ogg" ], 34a42 > "uniqueId" : "fuelhatch" objects\ship\brokenhylotlfuelhatch\brokenhylotlfuelhatchtier0.object 33c33,42 < "soundEffectRadius" : 15 --- > "soundEffectRadius" : 15, > > "animation" : "/objects/noisy/noisy.animation", > "scripts" : [ > "/objects/noisy/noisy.lua", > "/objects/ship/brokenfuelhatch.lua" > ], > "sounds" : [ "/sfx/interface/ship_error1.ogg" ], > > "uniqueId" : "fuelhatch" objects\ship\brokennovakidfuelhatch\brokennovakidfuelhatchtier0.object 33c33,42 < "soundEffectRadius" : 15 --- > "soundEffectRadius" : 15, > > "animation" : "/objects/noisy/noisy.animation", > "scripts" : [ > "/objects/noisy/noisy.lua", > "/objects/ship/brokenfuelhatch.lua" > ], > "sounds" : [ "/sfx/interface/ship_error1.ogg" ], > > "uniqueId" : "fuelhatch" objects\ship\florantechstation\florantechstation.object 38a39,40 > "offeredQuests" : [ "gateway1" ], > 40c42 < "/objects/spawner/shipPetSpawner.lua" --- > "/objects/spawner/techstation.lua" 44c46,48 < "spawnOffset" : [12, -1] --- > "spawnOffset" : [12, -1], > > "uniqueId" : "techstation" objects\ship\glitchtechstation\glitchtechstation.object 38a39,40 > "offeredQuests" : [ "gateway1" ], > 40c42 < "/objects/spawner/shipPetSpawner.lua" --- > "/objects/spawner/techstation.lua" 44c46,48 < "spawnOffset" : [12, -1] --- > "spawnOffset" : [12, -1], > > "uniqueId" : "techstation" objects\ship\humantechstation\humantechstation.object 38a39,40 > "offeredQuests" : [ "gateway1" ], > 40c42 < "/objects/spawner/shipPetSpawner.lua" --- > "/objects/spawner/techstation.lua" 44c46,48 < "spawnOffset" : [12, -1] --- > "spawnOffset" : [12, -1], > > "uniqueId" : "techstation" objects\ship\hylotltechstation\hylotltechstation.object 37a38,39 > "offeredQuests" : [ "gateway1" ], > 39c41 < "/objects/spawner/shipPetSpawner.lua" --- > "/objects/spawner/techstation.lua" 43c45,47 < "spawnOffset" : [12, -1] --- > "spawnOffset" : [12, -1], > > "uniqueId" : "techstation" objects\ship\novakidtechstation\novakidtechstation.object 38a39,40 > "offeredQuests" : [ "gateway1" ], > 40c42 < "/objects/spawner/shipPetSpawner.lua" --- > "/objects/spawner/techstation.lua" 44c46,48 < "spawnOffset" : [12, -1] --- > "spawnOffset" : [12, -1], > > "uniqueId" : "techstation" objects\ship\techstation\techstation.object 39a40,41 > "offeredQuests" : [ "gateway1" ], > 41c43 < "/objects/spawner/shipPetSpawner.lua" --- > "/objects/spawner/techstation.lua" 45c47,49 < "spawnOffset" : [12, -1] --- > "spawnOffset" : [12, -1], > > "uniqueId" : "techstation" objects\themed\saloon\saloontable\saloontable.object 37c37 < --- > particles\stargazer.particle 5c5 < "size" : 0.6, --- > "size" : 0.9, 9,12c9,12 < "destructionTime" : 1, < "position" : [0.25, 0.15], < "initialVelocity" : [1, 0], < "finalVelocity" : [-1, -0.0], --- > "destructionTime" : 0.25, > "position" : [-0.1, 0.25], > "initialVelocity" : [0, 0], > "finalVelocity" : [0, -0.0], 14c14 < "timeToLive" : 0.8, --- > "timeToLive" : 0.1, 18,21c18,22 < "initialVelocity" : [0.5, 0.5], < "finalVelocity" : [-1, 1], < "position" : [0, 0], < "size" : 0.6 --- > "initialVelocity" : [0.0, 0.0], > "finalVelocity" : [0, 0], > "position" : [0.6, 0.6], > "size" : 0.1, > "destructionTime" : 0.1 projectiles\physics.config 6d5 < "maximumCorrection" : 10, 20d18 < "maximumCorrection" : 10, projectiles\explosions\hivebombexplosion\hivebombexplosion1.projectile 7a8 > "bounces" : -1, projectiles\explosions\hivebombexplosion\hivebombexplosion2.projectile 7a8 > "bounces" : -1, projectiles\explosions\hivebombexplosion\hivebombexplosion3.projectile 7a8 > "bounces" : -1, projectiles\explosions\hivebombexplosion\hivebombexplosion4.projectile 7a8 > "bounces" : -1, quests\generated\templates\add_object_to_house.questtemplate 92c92,102 < "indicators" : ["deed"] --- > "indicators" : ["deed"], > > "objectives" : [ > { > "text" : "add to 's house" > } > ], > "initialCompassTarget" : { > "targetType" : "parameter", > "target" : "deed" > } quests\generated\templates\borrow.questtemplate 98c98,109 < "giftReceivedEventName" : "loanProvided" --- > "giftReceivedEventName" : "loanProvided", > > "objectives" : [ > { > "id" : "collect", > "text" : "acquire from " > } > ], > "initialCompassTarget" : { > "targetType" : "parameter", > "target" : "target" > } quests\generated\templates\bribe.questtemplate 136c136,151 < "objectAddedNotification" : "bribeObjectAdded" --- > "objectAddedNotification" : "bribeObjectAdded", > > "objectives" : [ > { > "id" : "give", > "text" : "give to " > } > ], > "addToHouseObjective" : { > "id" : "place", > "text" : "place in 's home" > }, > "initialCompassTarget" : { > "targetType" : "parameter", > "target" : "target" > } quests\generated\templates\build_home.questtemplate 91c91,103 < "portraitParameter" : "questGiver" --- > "portraitParameter" : "questGiver", > > "objectives" : [ > { > "text" : "build a home with:" > }, > { > "text" : "1 Colony Deed" > } > ], > "objectListText" : " ", > "lightSourceText" : "any light source", > "doorText" : "any door" quests\generated\templates\collect_fine.questtemplate 197a198,207 > }, > "objectives" : [ > { > "id" : "collect", > "text" : "acquire from " > } > ], > "initialCompassTarget" : { > "targetType" : "parameter", > "target" : "target" quests\generated\templates\collect_gift.questtemplate 98c98,109 < "giftReceivedEventName" : "giftProvided" --- > "giftReceivedEventName" : "giftProvided", > > "objectives" : [ > { > "id" : "collect", > "text" : "acquire from " > } > ], > "initialCompassTarget" : { > "targetType" : "parameter", > "target" : "target" > } quests\generated\templates\extort.questtemplate 98c98,109 < "giftReceivedEventName" : "extortionSuccess" --- > "giftReceivedEventName" : "extortionSuccess", > > "objectives" : [ > { > "id" : "collect", > "text" : "acquire from " > } > ], > "initialCompassTarget" : { > "targetType" : "parameter", > "target" : "target" > } quests\generated\templates\gift.questtemplate 135c135,150 < "objectAddedNotification" : "giftObjectAdded" --- > "objectAddedNotification" : "giftObjectAdded", > > "objectives" : [ > { > "id" : "give", > "text" : "give to " > } > ], > "addToHouseObjective" : { > "id" : "place", > "text" : "place in 's home" > }, > "initialCompassTarget" : { > "targetType" : "parameter", > "target" : "target" > } quests\generated\templates\hat.questtemplate 128c128,144 < } --- > }, > > "objectives" : [ > { > "id" : "give", > "text" : "give to " > }, > { > "id" : "return", > "text" : "return parcel to " > } > ], > "initialCompassTarget" : { > "targetType" : "parameter", > "target" : "friend" > }, > "turnInHidesIndicators" : false quests\generated\templates\helmet.questtemplate 127c127,143 < } --- > }, > > "objectives" : [ > { > "id" : "give", > "text" : "give to " > }, > { > "id" : "return", > "text" : "return parcel to " > } > ], > "initialCompassTarget" : { > "targetType" : "parameter", > "target" : "friend" > }, > "turnInHidesIndicators" : false quests\generated\templates\intimidate.questtemplate 177c177,192 < "indicators" : ["target"] --- > "indicators" : ["target"], > > "objectives" : [ > { > "id" : "equip", > "text" : "equip " > }, > { > "id" : "intimidate", > "text" : "intimidate " > } > ], > "initialCompassTarget" : { > "targetType" : "parameter", > "target" : "target" > } quests\generated\templates\kidnapping.questtemplate 132c132,153 < "enemiesDeadNotification" : "kidnappersDead" --- > "enemiesDeadNotification" : "kidnappersDead", > > "objectives" : [ > { > "id" : "findPlace", > "text" : "locate the " > }, > { > "id" : "kill", > "text" : "kill the " > }, > { > "id" : "escort", > "text" : "return safely" > } > ], > "spawnPointObjectiveRange" : 35, > > "initialCompassTarget" : { > "targetType" : "parameter", > "target" : "spawnPoint" > } quests\generated\templates\kill_monster.questtemplate 105c105,116 < "requireTurnIn" : true --- > "requireTurnIn" : true, > > "objectives" : [ > { > "id" : "hunt", > "text" : "hunt the " > }, > { > "id" : "return", > "text" : "return the to " > } > ] quests\generated\templates\kill_monster_group.questtemplate 65c65,86 < "requireTurnIn" : true --- > "requireTurnIn" : true, > > "objectives" : [ > { > "id" : "findPlace", > "text" : "locate the " > }, > { > "id" : "kill", > "text" : "kill the " > }, > { > "id" : "return", > "text" : "return to " > } > ], > "spawnPointObjectiveRange" : 35, > > "initialCompassTarget" : { > "targetType" : "parameter", > "target" : "spawnPoint" > } quests\generated\templates\kill_npcs.questtemplate 62c62,83 < "requireTurnIn" : true --- > "requireTurnIn" : true, > > "objectives" : [ > { > "id" : "findPlace", > "text" : "locate the " > }, > { > "id" : "kill", > "text" : "kill the " > }, > { > "id" : "return", > "text" : "return to " > } > ], > "spawnPointObjectiveRange" : 35, > > "initialCompassTarget" : { > "targetType" : "parameter", > "target" : "spawnPoint" > } quests\generated\templates\new_stock1.questtemplate 127c127,143 < } --- > }, > > "objectives" : [ > { > "id" : "give", > "text" : "give to " > }, > { > "id" : "return", > "text" : "return parcel to " > } > ], > "initialCompassTarget" : { > "targetType" : "parameter", > "target" : "target" > }, > "turnInHidesIndicators" : false quests\generated\templates\new_stock2.questtemplate 77c77 < "Jealous. The merchant known as ^orange;target^white; is a popular fellow. Please ^green;deliver ^orange;^green; to at the ^orange;^white; in exchange for the supplies I need. ", --- > "Jealous. The merchant known as ^orange;^white; is a popular fellow. Please ^green;deliver ^orange;^green; to at the ^orange;^white; in exchange for the supplies I need. ", 127c127,143 < } --- > }, > > "objectives" : [ > { > "id" : "give", > "text" : "give to " > }, > { > "id" : "return", > "text" : "return parcel to " > } > ], > "initialCompassTarget" : { > "targetType" : "parameter", > "target" : "target" > }, > "turnInHidesIndicators" : false quests\generated\templates\protect.questtemplate 156c156,177 < "indicators" : ["target"] --- > "indicators" : ["target"], > > "objectives" : [ > { > "id" : "findPlace", > "text" : "locate the " > }, > { > "id" : "kill", > "text" : "kill the " > }, > { > "id" : "protect", > "text" : "keep safe" > } > ], > "spawnPointObjectiveRange" : 35, > > "initialCompassTarget" : { > "targetType" : "parameter", > "target" : "spawnPoint" > } quests\generated\templates\recruit_guard.questtemplate 88c88,109 < "amountOfFurnitureNeeded" : 3 --- > "amountOfFurnitureNeeded" : 3, > > "objectives" : [ > { > "text" : "build a home for a guard with:" > }, > { > "text" : "1 Colony Deed" > }, > { > "text" : "3 objects" > }, > { > "text" : "1 " > }, > { > "text" : "any light source" > }, > { > "text" : "any door" > } > ] quests\generated\templates\request_craft.questtemplate 98c98,109 < "giftReceivedEventName" : "craftedGiftProvided" --- > "giftReceivedEventName" : "craftedGiftProvided", > > "objectives" : [ > { > "id" : "collect", > "text" : "acquire from " > } > ], > "initialCompassTarget" : { > "targetType" : "parameter", > "target" : "target" > } quests\generated\templates\return_stolen.questtemplate 130c130 < "The ^orange;^white; I've been looking for was stolen by ^orange;.^white; Right now it’s sitting in home. ^green;Go steal it back,^white; then ^green;place it back in ^orange;'s^green; house^white; where it belongs. I’ll be watching for trouble." --- > "The ^orange;^white; I've been looking for was stolen by ^orange;.^white; Right now it's sitting in home. ^green;Go steal it back,^white; then ^green;place it back in ^orange;'s^green; house^white; where it belongs. I'll be watching for trouble." 198c198,213 < "indicators" : ["object"] --- > "indicators" : ["object"], > > "objectives" : [ > { > "id" : "take", > "text" : "take 's from 's house" > }, > { > "id" : "place", > "text" : "return the to 's house" > } > ], > "initialCompassTarget" : { > "targetType" : "parameter", > "target" : "object" > } quests\generated\templates\share_secret.questtemplate 257a258,272 > }, > > "objectives" : [ > { > "id" : "give", > "text" : "deliver message to " > }, > { > "id" : "return", > "text" : "bring reply to " > } > ], > "initialCompassTarget" : { > "targetType" : "parameter", > "target" : "target" quests\generated\templates\spread_rumors.questtemplate 242a243,257 > }, > > "objectives" : [ > { > "id" : "give", > "text" : "deliver message to " > }, > { > "id" : "return", > "text" : "bring reply to " > } > ], > "initialCompassTarget" : { > "targetType" : "parameter", > "target" : "target" quests\generated\templates\steal.questtemplate 111c111,122 < "indicators" : ["object"] --- > "indicators" : ["object"], > > "objectives" : [ > { > "id" : "steal", > "text" : "steal 's " > } > ], > "initialCompassTarget" : { > "targetType" : "parameter", > "target" : "object" > } quests\generated\templates\themed_build.questtemplate 80c80 < ] --- > ] 82c82,100 < "amountOfFurnitureNeeded" : 3 --- > "amountOfFurnitureNeeded" : 3, > > "objectives" : [ > { > "text" : "build a home with:" > }, > { > "text" : "1 Colony Deed" > }, > { > "text" : "3 ^reset;" > }, > { > "text" : "any light source" > }, > { > "text" : "any door" > } > ] quests\outpost\floranarena1.questtemplate 3c3 < "prerequisites" : [], --- > "prerequisites" : [ "apex_mission2" ], quests\scripts\generated\build_home.lua 2a3,7 > function colonyTags(item) > local config = root.itemConfig(item).config > return config.colonyTags or {} > end > 4a10,46 > > local textGenerator = currentQuestTextGenerator() > local objectText = config.getParameter("objectListText") > local furnitureNeeded = quest.parameters().furnitureSet.items > > local haveDoor = false > local haveLight = false > > for _,item in ipairs(furnitureNeeded) do > local tags = colonyTags(item) > if contains(tags, "door") then > haveDoor = true > end > if contains(tags, "light") then > haveLight = true > end > addObjective(Objective:new(textGenerator, { > id = "object-"..item.name, > text = sb.replaceTags(objectText, { > count = item.count, > itemName = itemShortDescription(item) > }) > })) > end > > if not haveLight then > addObjective(Objective:new(textGenerator, { > id = "lightsource", > text = config.getParameter("lightSourceText") > })) > end > if not haveDoor then > addObjective(Objective:new(textGenerator, { > id = "door", > text = config.getParameter("doorText") > })) > end 9,10c51,52 < for _,itemDescriptor in ipairs(furnitureNeeded) do < if (furniture[itemDescriptor.name] or 0) < itemDescriptor.count then --- > for _,item in ipairs(furnitureNeeded) do > if (furniture[item.name] or 0) < item.count then quests\scripts\generated\clothing.lua 14c14 < if storage.receivedParcel then return end --- > if objective("give"):isComplete() then return end 21c21 < --- > 23d22 < storage.receivedParcel = true 38a38 > objective("give"):complete() 76a77,80 > end > > function conditionsMet() > return objective("give"):isComplete() and hasClothingParcel() quests\scripts\generated\collect_fine.lua 23a24 > objective("collect"):complete() quests\scripts\generated\collect_gift.lua 11c11 < if not storage.giftReceived then --- > if not objective("collect"):isComplete() then 18c18 < if storage.giftReceived then return end --- > if objective("collect"):isComplete() then return end 22d21 < storage.giftReceived = true 23a23 > objective("collect"):complete() 27,28d26 < if not storage.giftReceived then return false end < 34c32 < return storage.giftReceived and hasItem() --- > return objective("collect"):isComplete() and hasItem() quests\scripts\generated\common.lua 0a1 > require("/scripts/messageutil.lua") 4a6,130 > Objective = {} > Objective.__index = Objective > > function Objective:new(...) > local instance = setmetatable({}, self) > instance:init(...) > return instance > end > > function Objective:init(textGenerator, config) > self.id = config.id > self._text = textGenerator:substituteTags(config.text or "") > storage.objectives[self.id] = storage.objectives[self.id] or false > self.completeFn = nil > end > > function Objective:setComplete(complete) > storage.objectives[self.id] = complete > assert(not self.completeFn) > end > > function Objective:complete() > self.completeFn = nil > self:setComplete(true) > end > > function Objective:setCompleteFn(completeFn) > self.completeFn = completeFn > end > > function Objective:isComplete() > if self.completeFn then > return self.completeFn() and true or false -- convert to bool > end > return storage.objectives[self.id] > end > > function Objective:text() > return self._text > end > > Compass = {} > Compass.__index = Compass > > function Compass:new(...) > local instance = setmetatable({}, Compass) > instance:init(...) > return instance > end > > function Compass:init(storedData) > self.storedData = storedData > self:_setTarget(self.storedData.targetType, self.storedData.target) > end > > function Compass:onQuestWorld() > return player.worldId() == quest.worldId() and player.serverUuid() == quest.serverUuid() > end > > function Compass:angleTo(position) > return vec2.angle(world.distance(position, entity.position())) > end > > function Compass:getDirection() > if not self:onQuestWorld() then > return nil > end > > local target = self.storedData.target > local targetType = self.storedData.targetType > > if not target or not targetType or not self.targetPosition then > return nil > end > > return self:angleTo(self.targetPosition) > end > > function Compass:setTarget(targetType, target) > if self.storedData.targetType ~= targetType or self.storedData.target ~= target then > self:_setTarget(targetType, target) > end > end > > function Compass:_setTarget(targetType, target) > self.targetPosition = nil > self.targetUniqueId = nil > self.targetTracker = nil > > if targetType == "parameter" then > local parameter = quest.parameters()[target] > > if parameter.region then > self.targetPosition = rect.center(parameter.region) > > elseif parameter.uniqueId then > self.targetUniqueId = parameter.uniqueId > end > > elseif targetType == "uniqueEntity" then > self.targetUniqueId = target > > elseif targetType == "position" then > self.targetPosition = target > end > > self.storedData.targetType = targetType > self.storedData.target = target > end > > function Compass:update() > if self.targetUniqueId then > if not self.targetTracker then > self.targetTracker = util.uniqueEntityTracker(self.targetUniqueId, config.getParameter("uniqueEntityTrackerInterval", 5)) > end > > local positionUpdate = self.targetTracker() > if positionUpdate then > self.targetPosition = positionUpdate > end > end > > quest.setCompassDirection(self:getDirection()) > end > 26a153,164 > local textGenerator = currentQuestTextGenerator() > storage.objectives = storage.objectives or {} > self.objectives = {} > self.objectivesByKey = {} > for i,objectiveConfig in ipairs(config.getParameter("objectives", {})) do > objectiveConfig.id = objectiveConfig.id or string.format("objective%s", i) > addObjective(Objective:new(textGenerator, objectiveConfig)) > end > > storage.compass = storage.compass or config.getParameter("initialCompassTarget", {}) > self.compass = Compass:new(storage.compass) > 27a166,191 > > updateObjectiveList() > end > > function updateObjectiveList() > quest.setObjectiveList(util.map(self.objectives, function (objective) > return {objective:text(), objective:isComplete()} > end)) > end > > function objective(id) > return self.objectivesByKey[id] > end > > function addObjective(objective) > table.insert(self.objectives, objective) > self.objectivesByKey[objective.id] = objective > end > > function allObjectivesComplete() > for _,objective in pairs(self.objectives) do > if not objective:isComplete() then > return false > end > end > return true 69a234 > promises:update() 72c237 < if not conditionsMet then --- > if not conditionsMet or conditionsMet() then 74,77c239,245 < quest.setIndicators(storage.indicators) < elseif conditionsMet() then < quest.setCanTurnIn(true) < quest.setIndicators({}) --- > quest.setIndicators(config.getParameter("turnInHidesIndicators", true) and {} or storage.indicators) > > local compassTarget = config.getParameter("turnInCompassTarget", { > targetType = "parameter", > target = "questGiver" > }) > self.compass:setTarget(compassTarget.targetType, compassTarget.target) 88a257,259 > > updateObjectiveList() > self.compass:update() quests\scripts\generated\fetch.lua 28,36c28,39 < function onInit() < local objectiveText = config.getParameter("description") or root.assetJson("/quests/quests.config:objectiveDescriptions.fetch") < self.objectives = {} < for _,item in ipairs(fetchList()) do < local objective = objectiveText < objective = objective:gsub("", root.itemConfig(item.name).config.shortdescription or item.name) < objective = objective:gsub("", item.count or 1) < self.objectives[item.name] = objective < end --- > FetchObjective = {} > FetchObjective.__index = FetchObjective > setmetatable(FetchObjective, Objective) > > function FetchObjective:init(textGenerator, item) > Objective.init(self, textGenerator, { id = "fetch-"..item.name }) > self.item = item > self._text = root.assetJson("/quests/quests.config:objectiveDescriptions.fetch") > end > > function FetchObjective:currentCount() > return player.hasCountOfItem(self.item.name) 39,41c42,52 < function onUpdate() < local objectives = {} < self.conditionsMet = true --- > function FetchObjective:text() > return sb.replaceTags(self._text, { > itemName = itemShortDescription(self.item), > required = self.item.count, > current = self:currentCount() > }) > end > > function FetchObjective:isComplete() > return player.hasItem(self.item) > end 42a54,55 > function onInit() > local textGenerator = currentQuestTextGenerator() 44,50c57 < local text = self.objectives[item.name]:gsub("", player.hasCountOfItem(item.name)) < local completed = player.hasItem(item) < table.insert(objectives, {text, completed}) < < if not completed then < self.conditionsMet = false < end --- > addObjective(FetchObjective:new(textGenerator, item)) 52,53d58 < < quest.setObjectiveList(objectives) 63c68 < return self.conditionsMet --- > return allObjectivesComplete() quests\scripts\generated\gift.lua 24a25 > objective("give"):complete() 32a34,37 > > objective("give"):complete() > addObjective(Objective:new(currentQuestTextGenerator(), config.getParameter("addToHouseObjective"))) > self.compass:setTarget("parameter", "recipientDeed") 38a44 > objective("place"):complete() quests\scripts\generated\intimidate.lua 6a7,8 > > objective("equip"):setCompleteFn(holdingRequiredItem) 11c13 < if storage.intimidated then return end --- > if objective("intimidate"):isComplete() then return end 22c24,25 < storage.intimidated = true --- > objective("equip"):complete() > objective("intimidate"):complete() 34c37 < return storage.intimidated --- > return allObjectivesComplete() quests\scripts\generated\kill.lua 1a2 > require("/scripts/rect.lua") 15c16 < storage.enemiesDead = true --- > objective("kill"):complete() 40,42c41,45 < function conditionsMet() < if not storage.enemiesDead then < return false --- > function onUpdate(dt) > local range = config.getParameter("spawnPointObjectiveRange") > local spawnPoint = rect.center(quest.parameters().spawnPoint.region) > if world.magnitude(entity.position(), spawnPoint) < range then > objective("findPlace"):complete() 44c47,50 < return true --- > end > > function conditionsMet() > return objective("kill"):isComplete() quests\scripts\generated\kill_monster.lua 10d9 < storage.monsterDead = true 11a11 > objective("hunt"):complete() 16a17 > self.compass:setTarget("parameter", monsterNames[1]) 20c21 < if not storage.monsterDead then --- > if not objective("hunt"):isComplete() then quests\scripts\generated\new_stock.lua 14c14 < if storage.receivedParcel then return end --- > if objective("give"):isComplete() then return end 23d22 < storage.receivedParcel = true 38a38 > objective("give"):complete() 76a77,80 > end > > function conditionsMet() > return objective("give"):isComplete() and hasParcel() quests\scripts\generated\protect.lua 17a18,25 > > function onUpdate(dt) > local range = config.getParameter("spawnPointObjectiveRange") > local spawnPoint = rect.center(quest.parameters().spawnPoint.region) > if world.magnitude(entity.position(), spawnPoint) < range then > objective("findPlace"):complete() > end > end quests\scripts\generated\recruit_guard.lua 25c25,27 < if root.npcConfig(tenant.type).scriptConfig.questGenerator.flags.guard then --- > local questGenConfig = root.npcConfig(tenant.type).scriptConfig.questGenerator or {} > local flags = questGenConfig.flags or {} > if flags.guard then quests\scripts\generated\return_stolen.lua 8c8 < if storage.objectRemoved then return end --- > if objective("take"):isComplete() then return end 10d9 < storage.objectRemoved = true 13a13,15 > > objective("take"):complete() > self.compass:setTarget("parameter", "victimDeed") quests\scripts\generated\secret_note.lua 22a23 > objective("give"):complete() quests\scripts\generated\steal.lua 9c9 < storage.wasStolen = true --- > objective("steal"):complete() 18c18 < if not storage.wasStolen then return false end --- > if not objective("steal"):isComplete() then return false end quests\scripts\generated\text_generation.lua 141a142,145 > return self:substituteTags(text) > end > > function QuestTextGenerator:substituteTags(text) 152a157,160 > function currentQuestTextGenerator() > return QuestTextGenerator.new(quest.templateId(), quest.parameters(), quest.seed(), quest.questArcPosition()) > end > 157c165 < local currentGenerator = QuestTextGenerator.new(quest.templateId(), quest.parameters(), quest.seed(), quest.questArcPosition()) --- > local currentGenerator = currentQuestTextGenerator() quests\scripts\story\gateway1.lua 1a2 > require "/scripts/vec2.lua" 5c6,14 < self.description = config.getParameter("description") --- > self.descriptions = config.getParameter("descriptions") > self.compassUpdate = config.getParameter("compassUpdate", 0.5) > > self.gateUid = config.getParameter("gateUid") > self.gateRadioRange = config.getParameter("gateRadioRange") > > self.commandDisabled = config.getParameter("commandDisabled") > self.techstationUid = config.getParameter("techstationUid") > 7c16 < self.uniqueEntity = config.getParameter("uniqueEntity") --- > self.estherUid = config.getParameter("estherUid") 10,17c19 < self.findEntity = util.interval(0.5, function() < local entities = world.entityQuery(mcontroller.position(), self.findRange, { includedTypes = { "object", "monster", "npc" } } ) < local goalEntity = util.find(entities, function(entityId) return world.entityUniqueId(entityId) == self.uniqueEntity end) < if goalEntity ~= nil then < storage.complete = true < player.playCinematic(config.getParameter("findEntityCinematic")) < end < end) --- > self.state = FSM:new() 19,20c21,27 < setPortraits() < end --- > storage.stage = storage.stage or 1 > self.stages = { > talkToSail, > findGate, > findEsther > } > self.state:set(self.stages[storage.stage]) 22,24c29 < function questStart() < quest.setParameter("target", {type = "entity", uniqueId = self.uniqueEntity}) < quest.setIndicators({"target"}) --- > setPortraits() 28,31c33 < local objective = self.description < if objective then < quest.setObjectiveList({{objective, storage.complete}}) < end --- > self.state:update(dt) 35,36d36 < else < self.findEntity(script.updateDt()) 41a42,120 > end > > function pointCompassAt(position) > if position then > local direction = world.distance(position, mcontroller.position()) > quest.setCompassDirection(vec2.angle(direction)) > elseif position == nil then > quest.setCompassDirection(nil) > end > end > > function talkToSail() > quest.setObjectiveList({{self.descriptions.talkToSail, false}}) > player.enableAiCommand(self.commandDisabled) > > local findTechStation = util.uniqueEntityTracker(self.techstationUid, self.compassUpdate) > local trackGate = util.uniqueEntityTracker(self.gateUid, self.compassUpdate) > while storage.stage == 1 do > pointCompassAt(findTechStation()) > > -- shipstatus1 command is enabled on using the enginestatus command > if not contains(player.enabledAiCommands(), self.commandDisabled) then > storage.stage = 2 > end > > -- skip ahead if the player visits the gate before talking to sail > local result = trackGate() > if result and world.magnitude(result, mcontroller.position()) < self.gateRadioRange then > player.disableAiCommand(self.commandDisabled) > storage.stage = 3 > end > coroutine.yield() > end > > util.wait(3.0) > > self.state:set(self.stages[storage.stage]) > end > > function findGate() > quest.setCompassDirection(nil) > quest.setObjectiveList({{self.descriptions.findGate, false}}) > > local trackGate = util.uniqueEntityTracker(self.gateUid, self.compassUpdate) > while storage.stage == 2 do > local result = trackGate() > if result and world.magnitude(result, mcontroller.position()) < self.gateRadioRange then > storage.stage = 3 > end > coroutine.yield() > end > > self.state:set(self.stages[storage.stage]) > end > > function findEsther(dt) > player.radioMessage(config.getParameter("gateRadioMessage")) > > util.wait(3.0) > > quest.setCompassDirection(nil) > quest.setParameter("esther", {type = "entity", uniqueId = self.estherUid}) > quest.setIndicators({"esther"}) > quest.setObjectiveList({{self.descriptions.findEsther, false}}) > > local trackEsther = util.uniqueEntityTracker(self.estherUid, self.compassUpdate) > while not storage.complete do > local result = trackEsther() > pointCompassAt(result) > if result and world.magnitude(result, mcontroller.position()) < self.findRange then > storage.complete = true > player.playCinematic(config.getParameter("findEstherCinema")) > end > coroutine.yield() > end > > util.wait(2.0) > > quest.complete() quests\scripts\story\human_mission1.lua 5a6,7 > setPortraits() > 7a10,11 > self.compassUpdate = config.getParameter("compassUpdate", 0.5) > 12,21d15 < message.setHandler("drillInteract", function() < if not storage.complete then < storage.complete = true < quest.setIndicators({}) < player.playCinematic(config.getParameter("interactCinema")) < end < end) < < setPortraits() < 59c53 < else --- > elseif position == nil then 82c76 < local mechanicPosition --- > local findMechanic = util.uniqueEntityTracker(self.mechanicUid, self.compassUpdate) 84,90c78 < if mechanicPosition == nil then < mechanicPosition = world.findUniqueEntity(self.mechanicUid) < end < if mechanicPosition and mechanicPosition:finished() then < pointCompassAt(mechanicPosition:result()) < mechanicPosition = nil < end --- > pointCompassAt(findMechanic()) 117c105 < local drillPosition --- > local findDrill = util.uniqueEntityTracker(self.drillUid, self.compassUpdate) 119,125c107 < if drillPosition == nil then < drillPosition = world.findUniqueEntity(self.drillUid) < end < if drillPosition and drillPosition:finished() then < pointCompassAt(drillPosition:result()) < drillPosition = nil < end --- > pointCompassAt(findDrill()) 144a127,129 > for _,disabledCommand in pairs(config.getParameter("disabledAiCommands", {})) do > player.disableAiCommand(disabledCommand) > end 151c136 < local mechanicPosition --- > local findMechanic = util.uniqueEntityTracker(self.mechanicUid, self.compassUpdate) 153,159c138 < if mechanicPosition == nil then < mechanicPosition = world.findUniqueEntity(self.mechanicUid) < end < if mechanicPosition and mechanicPosition:finished() then < pointCompassAt(mechanicPosition:result()) < mechanicPosition = nil < end --- > pointCompassAt(findMechanic()) 175c154 < local estherPosition --- > local trackEsther = util.uniqueEntityTracker(self.estherUid, self.compassUpdate) 177,183c156 < if estherPosition == nil then < estherPosition = world.findUniqueEntity(self.estherUid) < end < if estherPosition and estherPosition:finished() then < pointCompassAt(estherPosition:result()) < estherPosition = nil < end --- > pointCompassAt(trackEsther()) quests\scripts\tutorial\protectorate.lua 45a46,47 > > player.startQuest(config.getParameter("followUp")) 103a106 > quest.setObjectiveList({{config.getParameter("descriptions.graduate"), false}}) 121a125 > quest.setObjectiveList({{config.getParameter("descriptions.escape"), false}}) 169a174 > quest.setObjectiveList({{config.getParameter("descriptions.matterManipulator"), false}}) quests\story\gateway1.questtemplate 2a3 > "prerequisites" : [ "shiprepair" ], 4,5c5,7 < "title" : "^green;A Mysterious Message", < "text" : "I recieved a strange message from someone, saying to ^green;use the ^orange;Ancient Gateways^green; of the universe to meet them^white;. What could it mean?", --- > "logOnly" : true, > "title" : "Finding Purpose", > "text" : "Good job fixing up the ship. Now we can traverse this entire star system. I wonder if there are other survivors around?", 14c16 < "questStarted" : "player", --- > "questStarted" : "questGiver", 19,20c21,36 < "description" : "Find the source of the message", < "uniqueEntity" : "estheroutpost", --- > "descriptions" : { > "talkToSail" : "talk to ^orange;S.A.I.L^reset;", > "findGate" : "investigate the mysterious space object", > "findEsther" : "find the source of the ^orange;mysterious message^reset;" > }, > "compassUpdate" : 0.2, > > "techstationUid" : "techstation", > // progress quest when this command is no longer available > "commandDisabled" : "unknownobject", > > "gateUid" : "ancientgate", > "gateRadioRange" : 40, > "gateRadioMessage" : "gateway1", > > "estherUid" : "estheroutpost", 22c38 < "findEntityCinematic" : "/cinematics/story/esther/esther.cinematic" --- > "findEstherCinema" : "/cinematics/story/esther/esther.cinematic" quests\story\glitch_mission2.questtemplate 10c10 < "completionCinema" : "/cinematics/artifacts/avianartifact.cinematic", --- > "completionCinema" : "/cinematics/artifacts/glitchartifact.cinematic", quests\story\human_mission1.questtemplate 25a26,27 > "compassUpdate" : 0.2, > 32a35 > "disabledAiCommands" : [ "shipstatus2" ], quests\tutorial\protectorate.questtemplate 2a3 > "mainQuest" : true, 4c5 < "text" : "Today's the day that your years of training at the Protectorate Academy will finally pay off. It's time to graduate!", --- > "text" : "The years of training has finally paid off. Survive graduation day! ", 8c9,10 < "invisible" : true, --- > "invisible" : false, > "logOnly" : true, 36c38,46 < ] --- > ], > > "descriptions" : { > "graduate" : "Attend your graduation ceremony", > "matterManipulator" : "Take the matter manipulator", > "escape" : "Escape" > }, > > "followUp" : "shiprepair" scripts\spawnpoint.lua 19a20,21 > world.loadRegion(region) > scripts\tenant.lua 80a81,82 > npc.resetLounging() > scripts\util.lua 248a249,261 > function util.uniqueEntityTracker(uniqueId, interval) > return coroutine.wrap(function() > while true do > local promise = world.findUniqueEntity(uniqueId) > while not promise:finished() do > coroutine.yield(false) > end > coroutine.yield(promise:result()) > util.wait(interval or 0) > end > end) > end > scripts\questgen\generator.lua 88c88 < local pool = root.assetJson("/quests/generated/"..poolName..".config") --- > local pool = root.assetJson("/quests/generated/questpools/"..poolName..".config") scripts\questgen\predicands.lua 144c144 < world.callScriptedEntity(entityId, "mcontroller.setPosition", findSpaceInRect(self.spawnRegion, boundBox)) --- > world.callScriptedEntity(entityId, "mcontroller.setPosition", findSpaceInRect(self.spawnRegion, boundBox) or rect.center(self.spawnRegion)) species\humanfemalenamegen.config 6c6 < [ { "mode" : "alts" }, "Addison", "Alex", "Alexis", "Angel", "Annie", "Ariel", "Ashley", "Astra", "Bailey", "Blair", "Carina", "Carmen", "Carmine", "Cassie", "Celeste", "Chiara", "Dakota", "Dallas", "Dawn", "Devon", "Elara", "Emma", "Elsa", "Freya", "Frankie", "Gem", "Georgi", "Hayley", "Harley", "Ira", "Lenna", "Luna", "Lyra", "Jessie", "June", "Eva", "Jude", "Kelsey", "Layla", "Leah", "Lindsay", "Lonnie", "Luna", "Mallory", "Montana", "Morgan", "Mira", "Nell", "Nevada", "Paris", "Payton", "Quinn", "Reed", "Remi", "Rene", "Robin", "Rosa", "Saige", "Sara", "Scout", "Shay", "Shelby", "Skylar", "Sunny", "Sydney", "Stormy", "Taylor", "Wanda" ] --- > [ { "mode" : "alts" }, "Abi", "Addison", "Agnes", "Alex", "Alexis", "Alice", "Alysia", "Amity", "Anka", "Anne", "Annice", "Angel", "Annie", "Ariel", "Ashley", "Astra", "Bailey", "Bianka", "Beatriz", "Bee", "Betty", "Blair", "Bobbie", "Carina", "Carla", "Carmen", "Carmine", "Cassie", "Celeste", "Chelle", "Chiara", "Chrisjen", "Cindy", "Daisy", "Dakota", "Dallas", "Daphne", "Darija", "Dawn", "Delia", "Demi", "Devon", "Donna", "Doris", "Ecrin", "Elaine", "Elara", "Ellen", "Emilia", "Emma", "Elsa", "Erin", "Estelle", "Ethna", "Eva", "Evren", "Freya", "Frankie", "Gala", "Gem", "Georgi", "Gerry", "Gina", "Goldie", "Greta", "Gul", "Hadley", "Harriet", "Harley", "Hayley", "Hiba", "Hilda", "Ibbie", "Ida", "Idril", "Inga", "Ira", "Iris", "Irma", "Isolde", "Jeong", "Jaki", "Jantine", "Jazmin", "Jessie", "Jodi", "June", "Jude", "Karin", "Kata", "Kelly", "Kelsey", "Kiki", "Kleio", "Laurie", "Layla", "Leah", "Lenna", "Lili", "Linda", "Lindsay", "Linn", "Lonnie", "Lorene", "Lorette", "Lorna", "Lucy", "Luna", "Lyra", "Malina", "Mallory", "Mara", "Margo", "Mariel", "Marisa", "Maya", "Maytal", "Mette", "Mila", "Milka", "Mimi", "Mina", "Mira", "Misty", "Moira", "Molly", "Montana", "Morgan", "Nalani", "Nasim", "Nell", "Neske", "Neva", "Nevada", "Nona", "Norah", "Olga", "Paris", "Payton", "Peony", "Pia", "Quinn", "Rakel", "Reed", "Remi", "Rene", "Rima", "Rita", "Robin", "Rosa", "Rosie", "Rue", "Saga", "Saige", "Samara", "Sara", "Scout", "Selma", "Shana", "Shay", "Sigrun", "Sita", "Shelby", "Sitara", "Skylar", "Sunny", "Suri", "Suzette", "Sydney", "Star", "Stormy", "Tania", "Taylor", "Tegan", "Telma", "Thyra", "Ursa", "Vera", "Vivi", "Vardah", "Wanda", "Wendy", "Yulia", "Zaray", "Ziv", "Zlata", "Zoe", "Zora" ] species\humanmalenamegen.config 6c6 < [ { "mode" : "alts" }, "Alex", "Andre", "Anton", "Ash", "Ashton", "Billy", "Byron", "Cameron", "Carlos", "Carson", "Casper", "Cassidy", "Charlie", "Clancy", "Clarke", "Cody", "Coltrane", "Conan", "Corey", "Cosmo", "Cyrus", "Enzo", "Fabian", "Finn", "Floyd", "Francis", "Guy", "Hayden", "Hill", "Inigo", "Isaac", "Jaden", "Jamie", "James", "Jan", "Javier", "Jay", "Jim", "Joe", "José", "Joel", "Jesse", "Jin", "Juan", "Jude", "Julian", "Kirk", "Kit", "Lane", "Lee", "Leo", "Liu", "Lucian", "Lukas", "Mac", "Magnus", "Marc", "Matt", "Max", "Melville", "Micah", "Morgan", "Marley", "Monty", "Nevada", "Niall", "Nick", "Noel", "Orion", "Parker", "Payton", "Perry", "Pete", "Quinn", "Ray", "Reed", "Ren", "Rigel", "Robin", "Sarge", "Scout", "Sherman", "Skip", "Skipper", "Sonny", "Stephen", "Sterling", "Theo", "Toby", "Tom", "Tyler", "Vaughn", "Wes", "Wesley", "Yang" ] --- > [ { "mode" : "alts" }, "Adam", "Alex", "Alexis", "Andre", "Amal", "Amos", "Anton", "Arjun", "Ash", "Ashton", "Asier", "Benny", "Billy", "Boyan", "Bran", "Bruno", "Byron", "Cameron", "Carl", "Carlos", "Carson", "Casper", "Cassidy", "Chao", "Charlie", "Clancy", "Clarke", "Claude", "Clay", "Cody", "Coltrane", "Conan", "Corey", "Cosmo", "Cyrus", "Dave", "Dean", "Declan", "Derek", "Desmond", "Devin", "Djuro", "Dom", "Draven", "Edwin", "Einar", "Elvis", "Emil", "Enzo", "Eoin", "Fabian", "Faris", "Felix", "Fife", "Finn", "Floyd", "Francis", "Fred", "George", "Gilroy", "Gus", "Guy", "Hasim", "Hayden", "Hector", "Heike", "Hill", "Huey", "Iker", "Inigo", "Irving", "Isaac", "Issy", "Ivo", "Izem", "Jabir", "Jaden", "Jamie", "James", "Jan", "Javier", "Jay", "Jim", "Joe", "José", "Joel", "Jemmy", "Jesper", "Jesse", "Jin", "Juan", "Jude", "Julian", "Keane", "Kim", "Kirk", "Kit", "Lane", "Lee", "Leon", "Leo", "Liu", "Livio", "Lucian", "Ludvig", "Luigi", "Luis", "Lukas", "Mac", "Magnus", "Manolo", "Marc", "Marcel", "Mario", "Martin", "Matt", "Max", "Melville", "Micah", "Mick", "Ming", "Miron", "Morgan", "Marley", "Monty", "Nevada", "Niall", "Nick", "Ninos", "Noel", "Nolan", "Norris", "Oran", "Orion", "Oswin", "Owen", "Paco", "Parker", "Pau", "Payton", "Perry", "Pete", "Prince", "Quinn", "Ralph", "Ray", "Reed", "Ren", "Rigel", "Robin", "Roc", "Ronald", "Rory", "Samir", "Sarge", "Sarkis", "Scout", "Seb", "Sherman", "Shui", "Skip", "Skipper", "Sonny", "Stelian","Sten", "Stephen", "Sterling", "Steve", "Sweeney", "Theo", "Toby", "Tom", "Tyler", "Vaughn", "Vincent", "Wes", "Wesley", "William", "Wulf", "Xuan", "Yam", "Yanko", "Yannick", "Yang", "Yrian", "Zac", "Zhi", "Zoran" ] species\novakidnamegen.config 6c6 < [ { "mode" : "alts" }, "Ace", "Acro", "Acryl", "Ammo", "Amyl", "Aqu", "Badde", "Benze", "Benzy", "Butane", "Butyl", "Carbo", "Clint", "Clem", "Country", "Cetus", "Chloro", "Corvus", "Cylo", "Decane", "Diace", "Dich", "Dieth", "Diethyl", "Dioxi", "Dioxol", "Dodeca", "Dowan", "Dyme", "Epich", "Ethane", "Ethoxy", "Ethyl", "Freon", "Fuel", "Furan", "Furf", "Goode", "Green", "Gun", "Gutter", "Heptan", "Hexan", "Hexen", "Hydro", "Isobu", "Jet", "Kero", "Lacto", "Leo", "Libra", "Lynx", "Lyra", "Magie", "Merca", "Metha", "Methan", "Methox", "Methyl", "Milli", "Minera", "Naptha", "Nitric", "Nitro", "Nonane", "Octane", "Octyl", "Orio", "Oxy", "Pentan", "Perch", "Pers", "Pheno", "Phenyl", "Pinen", "Propane", "Propyl", "Propyl", "Saddle", "Styre", "Slang", "Tert", "Tetra", "Ursa", "Uggly", "Varni", "Vela", "Vinyl", "Virgo", "Xylene", "Xenon" ] --- > [ { "mode" : "alts" }, "Ace", "Acro", "Acryl", "Ammo", "Amyl", "Aqu", "Argon", "Axus", "Azen", "Azure", "Badde", "Bail", "Benze", "Benzy", "Beryl", "Billy", "Blaz", "Blue", "Boston", "Bronco", "Buck", "Bullet", "Butane", "Butch", "Butyl", "Byrd", "Carbo", "Cerise", "Clint", "Clem", "Cobalt", "Country", "Cetus", "Chloro", "Chrome", "Corvus", "Crimson", "Curie", "Cyan", "Cylo", "Dace", "Dandy", "Dash", "Decane", "Desert", "Dex", "Dice", "Ditch", "Diethyl", "Dioxie", "Dioxol", "Dodeca", "Domino", "Dowan", "Droe", "Dusty", "Dyme", "Epich", "Eryx", "Ethane", "Ethoxy", "Ethyl", "Farady", "Flint", "Freon", "Fuel", "Furan", "Furf", "Gibbs", "Goode", "Green", "Gun", "Gutter", "Helium", "Heptan", "Hexan", "Hexen", "Hydro", "Ion", "Indigo", "Isobu", "Jane", "Jesse", "Jet", "Kadi", "Kero", "Kid", "Lacto", "Lane", "Lasso", "Lead", "Leather", "Lefty", "Leo", "Lex", "Libra", "Luca", "Lucky", "Lumen", "Lynx", "Lyra", "Magie", "Marshall", "Merca", "Metha", "Methan", "Methox", "Methyl", "Milli", "Minera", "Montana", "Naptha", "Neon", "Nitric", "Nitro", "Nonane", "Octane", "Octyl", "Orio", "Oxy", "Pentan", "Perch", "Pers", "Pete", "Pheno", "Phenyl", "Pinen", "Pistol", "Propane", "Propyl", "Quark", "Quarren", "Randy", "Raider", "Raven", "Razor", "Red", "Ringo", "Ruby", "Rush", "Ryder", "Saddle", "Sawyer", "Scarlet", "Scout", "Seth", "Shade", "Silver", "Smokey", "Sonny", "Spike", "Styre", "Slang", "Target", "Teal", "Tert", "Tesla", "Tetra", "Topper", "Trigger", "Trix", "Ursa", "Varni", "Vela", "Vinyl", "Virgo", "Ward", "Warren", "Wayne", "Whip", "Wild", "Xylene", "Xenon", "Zane", "Zeke", "Zinc", "Zolan" ] stagehands\mission\glitchmissionmanager.stagehand 25,28c25,28 < "firstBallista" : [ "Outraged.The brigands have rolled in a war machine! I won't have my keep obliterated, you must destroy that ballista!", "/interface/chatbubbles/baron.png", "Baron" ], < "wallAttacked" : [ "Panicked. The ballista! My beautiful walls! Protect my beautiful walls!", "/interface/chatbubbles/baron.png", "Baron" ], < "additionalBallista" : [ "Desperate. Not another ballista! Save my keep!", "/interface/chatbubbles/baron.png", "Baron" ], < "firstAirforce" : [ "Agitated. We are besieged by another wave! They've sent more infantry, and more archers, and... No! They're in the skies! Those purple curs have taken to the air!", "/interface/chatbubbles/baron.png", "Baron" ], --- > "firstBallista" : [ "Outraged.The brigands have rolled in a war machine! I won't have my keep obliterated, you must destroy that ballista!", "/interface/chatbubbles/baron.png:0", "Baron" ], > "wallAttacked" : [ "Panicked. The ballista! My beautiful walls! Protect my beautiful walls!", "/interface/chatbubbles/baron.png:0", "Baron" ], > "additionalBallista" : [ "Desperate. Not another ballista! Save my keep!", "/interface/chatbubbles/baron.png:0", "Baron" ], > "firstAirforce" : [ "Agitated. We are besieged by another wave! They've sent more infantry, and more archers, and... No! They're in the skies! Those purple curs have taken to the air!", "/interface/chatbubbles/baron.png:0", "Baron" ], 30,31c30,31 < "finalWaveComplete" : [ "Jubilant. Ha ha! That's done for them! We got every last one of those wretched maggots! I could sing! Come here, I want to speak to you...", "/interface/chatbubbles/baron.png", "Baron" ], < "noxGreeting" : [ "Oh good, it's you... So mother's sent you on another errand? Let's get this over with.", "/interface/chatbubbles/nox.png", "Nox" ], --- > "finalWaveComplete" : [ "Jubilant. Ha ha! That's done for them! We got every last one of those wretched maggots! I could sing! Come here, I want to speak to you...", "/interface/chatbubbles/baron.png:0", "Baron" ], > "noxGreeting" : [ "Oh good, it's you... So \"mummy\" sent you on another errand. Let's get this over with.", "/interface/chatbubbles/nox.png", "Nox" ], 33c33 < "bossDefeated" : [ "Cautious. Is it gone? Are you intact? If it's gone I need to talk to you.", "/interface/chatbubbles/baron.png", "Baron" ] --- > "bossDefeated" : [ "Cautious. Is it gone? Are you intact? If it's gone I need to talk to you.", "/interface/chatbubbles/baron.png:0", "Baron" ] tilesets\packed\objects-by-category\decorative.json 7c7 < "tilecount" : 1261, --- > "tilecount" : 1262, 2157c2157 < "//description" : "A statue dedicated to Cameron York.", --- > "//description" : "A statue of Cameron \"KyeTheShy\" York. Loved to adventure, but wandered a little too far...into space.", 2320c2320 < "imagePositionX" : "-16", --- > "imagePositionX" : "-8", 2456d2455 < "//description" : "This trophy rack is covered in a foul web.", 2458,2462c2457 < "//shortdescription" : "Web Rack", < "imagePositionX" : "-8", < "imagePositionY" : "0", < "object" : "floranwebbing", < "tilesetDirection" : "right" --- > "invalid" : "true" 2465d2459 < "//description" : "This trophy rack is covered in a foul web.", 2467,2471c2461 < "//shortdescription" : "Web Rack", < "imagePositionX" : "-8", < "imagePositionY" : "0", < "object" : "floranwebbing", < "tilesetDirection" : "right" --- > "invalid" : "true" 2497a2488,2496 > "1261" : { > "//description" : "Thin hanging drapes. Quite classy.", > "//name" : "classiccurtain3", > "//shortdescription" : "Classic Thin Drape", > "imagePositionX" : "-8", > "imagePositionY" : "-16", > "object" : "classiccurtain3", > "tilesetDirection" : "right" > }, 3324c3323 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 3901c3900 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 4743c4742 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 5111c5110 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 5377c5376 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 8326c8325 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 8392c8391 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 11343c11342 < "image" : "../../../../../tiled/packed/objects/floranwebbing_orientation2.png" --- > "image" : "../../../../../tiled/packed/../packed/invalid.png" 11346c11345 < "image" : "../../../../../tiled/packed/objects/floranwebbing_orientation3.png" --- > "image" : "../../../../../tiled/packed/../packed/invalid.png" 11355a11355,11357 > }, > "1261" : { > "image" : "../../../../../tiled/packed/objects/classiccurtain3.png" tilesets\packed\objects-by-category\furniture.json 7c7 < "tilecount" : 318, --- > "tilecount" : 321, 2150a2151,2168 > "318" : { > "//description" : "Ye olde dining room table.", > "//name" : "penguinbartop", > "//shortdescription" : "Penguin Bar Top", > "imagePositionX" : "-24", > "imagePositionY" : "0", > "object" : "penguinbartop", > "tilesetDirection" : "right" > }, > "319" : { > "//description" : "Ye olde dining room table.", > "//name" : "penguinbarbottom", > "//shortdescription" : "Penguin Bar", > "imagePositionX" : "-24", > "imagePositionY" : "0", > "object" : "penguinbarbottom", > "tilesetDirection" : "right" > }, 2154a2173,2181 > "320" : { > "//description" : "A wobbly bar stool.", > "//name" : "outpostbarstool", > "//shortdescription" : "Outpost Bar Stool", > "imagePositionX" : "-8", > "imagePositionY" : "0", > "object" : "outpostbarstool", > "tilesetDirection" : "right" > }, 3495a3523,3528 > "318" : { > "image" : "../../../../../tiled/packed/objects/penguinbartop.png" > }, > "319" : { > "image" : "../../../../../tiled/packed/objects/penguinbarbottom.png" > }, 3497a3531,3533 > }, > "320" : { > "image" : "../../../../../tiled/packed/objects/outpostbarstool.png" tilesets\packed\objects-by-category\light.json 7c7 < "tilecount" : 399, --- > "tilecount" : 401, 319c319 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 524c524 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 826c826 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 834c834 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 1416c1416 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 1517c1517 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 2930a2931,2939 > "399" : { > "//description" : "It's entrancing. I can't look away.", > "//name" : "penguinbarsign", > "//shortdescription" : "Penguin Bar Sign", > "imagePositionX" : "-32", > "imagePositionY" : "-8", > "object" : "penguinbarsign", > "tilesetDirection" : "right" > }, 2943a2953,2960 > "400" : { > "//description" : "A metallic ceiling lamp.", > "//name" : "penguinbarlamp", > "//shortdescription" : "Penguin Bar Lamp", > "imagePositionX" : "0", > "imagePositionY" : "-8", > "object" : "penguinbarlamp" > }, 3138c3155 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 4500a4518,4520 > "399" : { > "image" : "../../../../../tiled/packed/objects/penguinbarsign.png" > }, 4505a4526,4528 > }, > "400" : { > "image" : "../../../../../tiled/packed/objects/penguinbarlamp.png" tilesets\packed\objects-by-colonytag\apex.json 7c7 < "tilecount" : 179, --- > "tilecount" : 180, 23c23 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 65c65 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 783a784,792 > "179" : { > "//description" : "Thin hanging drapes. Quite classy.", > "//name" : "classiccurtain3", > "//shortdescription" : "Classic Thin Drape", > "imagePositionX" : "-8", > "imagePositionY" : "-16", > "object" : "classiccurtain3", > "tilesetDirection" : "right" > }, 1840a1850,1852 > }, > "179" : { > "image" : "../../../../../tiled/packed/objects/classiccurtain3.png" tilesets\packed\objects-by-colonytag\apexmansion.json 7c7 < "tilecount" : 56, --- > "tilecount" : 57, 474a475,483 > "56" : { > "//description" : "Thin hanging drapes. Quite classy.", > "//name" : "classiccurtain3", > "//shortdescription" : "Classic Thin Drape", > "imagePositionX" : "-8", > "imagePositionY" : "-16", > "object" : "classiccurtain3", > "tilesetDirection" : "right" > }, 667a677,679 > }, > "56" : { > "image" : "../../../../../tiled/packed/objects/classiccurtain3.png" tilesets\packed\objects-by-colonytag\avian.json 14c14 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 1254c1254 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", tilesets\packed\objects-by-colonytag\commerce.json 7c7 < "tilecount" : 121, --- > "tilecount" : 123, 242a243,260 > "121" : { > "//description" : "Ye olde dining room table.", > "//name" : "penguinbartop", > "//shortdescription" : "Penguin Bar Top", > "imagePositionX" : "-24", > "imagePositionY" : "0", > "object" : "penguinbartop", > "tilesetDirection" : "right" > }, > "122" : { > "//description" : "Ye olde dining room table.", > "//name" : "penguinbarbottom", > "//shortdescription" : "Penguin Bar", > "imagePositionX" : "-24", > "imagePositionY" : "0", > "object" : "penguinbarbottom", > "tilesetDirection" : "right" > }, 1161a1180,1185 > }, > "121" : { > "image" : "../../../../../tiled/packed/objects/penguinbartop.png" > }, > "122" : { > "image" : "../../../../../tiled/packed/objects/penguinbarbottom.png" tilesets\packed\objects-by-colonytag\floran.json 647c647 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 771d770 < "//description" : "This trophy rack is covered in a foul web.", 773,777c772 < "//shortdescription" : "Web Rack", < "imagePositionX" : "-8", < "imagePositionY" : "0", < "object" : "floranwebbing", < "tilesetDirection" : "right" --- > "invalid" : "true" 780d774 < "//description" : "This trophy rack is covered in a foul web.", 782,786c776 < "//shortdescription" : "Web Rack", < "imagePositionX" : "-8", < "imagePositionY" : "0", < "object" : "floranwebbing", < "tilesetDirection" : "right" --- > "invalid" : "true" 1531c1521 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 1840c1830 < "image" : "../../../../../tiled/packed/objects/floranwebbing_orientation2.png" --- > "image" : "../../../../../tiled/packed/../packed/invalid.png" 1843c1833 < "image" : "../../../../../tiled/packed/objects/floranwebbing_orientation3.png" --- > "image" : "../../../../../tiled/packed/../packed/invalid.png" tilesets\packed\objects-by-colonytag\floranhuntinggrounds.json 380d379 < "//description" : "This trophy rack is covered in a foul web.", 382,386c381 < "//shortdescription" : "Web Rack", < "imagePositionX" : "-8", < "imagePositionY" : "0", < "object" : "floranwebbing", < "tilesetDirection" : "right" --- > "invalid" : "true" 389d383 < "//description" : "This trophy rack is covered in a foul web.", 391,395c385 < "//shortdescription" : "Web Rack", < "imagePositionX" : "-8", < "imagePositionY" : "0", < "object" : "floranwebbing", < "tilesetDirection" : "right" --- > "invalid" : "true" 570c560 < "image" : "../../../../../tiled/packed/objects/floranwebbing_orientation2.png" --- > "image" : "../../../../../tiled/packed/../packed/invalid.png" 573c563 < "image" : "../../../../../tiled/packed/objects/floranwebbing_orientation3.png" --- > "image" : "../../../../../tiled/packed/../packed/invalid.png" tilesets\packed\objects-by-colonytag\geode.json 7c7 < "tilecount" : 12, --- > "tilecount" : 13, 45a46,54 > "12" : { > "//description" : "A note carved from a pink musical geode.", > "//name" : "geodegnote", > "//shortdescription" : "Geode G", > "imagePositionX" : "-8", > "imagePositionY" : "0", > "object" : "geodegnote", > "tilesetDirection" : "right" > }, 130a140,142 > }, > "12" : { > "image" : "../../../../../tiled/packed/objects/geodegnote.png" tilesets\packed\objects-by-colonytag\glitch.json 248c248 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 836c836 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", tilesets\packed\objects-by-colonytag\human.json 886c886 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 947c947 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", tilesets\packed\objects-by-colonytag\hylotl.json 23c23 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 991c991 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 1078c1078 < "imagePositionX" : "-16", --- > "imagePositionX" : "-8", tilesets\packed\objects-by-colonytag\hylotlvillage.json 455c455 < "imagePositionX" : "-16", --- > "imagePositionX" : "-8", tilesets\packed\objects-by-colonytag\light.json 7c7 < "tilecount" : 318, --- > "tilecount" : 320, 2169a2170,2186 > "318" : { > "//description" : "It's entrancing. I can't look away.", > "//name" : "penguinbarsign", > "//shortdescription" : "Penguin Bar Sign", > "imagePositionX" : "-32", > "imagePositionY" : "-8", > "object" : "penguinbarsign", > "tilesetDirection" : "right" > }, > "319" : { > "//description" : "A metallic ceiling lamp.", > "//name" : "penguinbarlamp", > "//shortdescription" : "Penguin Bar Lamp", > "imagePositionX" : "0", > "imagePositionY" : "-8", > "object" : "penguinbarlamp" > }, 3551a3569,3574 > }, > "318" : { > "image" : "../../../../../tiled/packed/objects/penguinbarsign.png" > }, > "319" : { > "image" : "../../../../../tiled/packed/objects/penguinbarlamp.png" tilesets\packed\objects-by-colonytag\novakid.json 47c47 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 72c72 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", tilesets\packed\objects-by-colonytag\outpost.json 7c7 < "tilecount" : 76, --- > "tilecount" : 77, 663a664,672 > "76" : { > "//description" : "A wobbly bar stool.", > "//name" : "outpostbarstool", > "//shortdescription" : "Outpost Bar Stool", > "imagePositionX" : "-8", > "imagePositionY" : "0", > "object" : "outpostbarstool", > "tilesetDirection" : "right" > }, 904a914,916 > }, > "76" : { > "image" : "../../../../../tiled/packed/objects/outpostbarstool.png" tilesets\packed\objects-by-colonytag\pretty.json 7c7 < "tilecount" : 424, --- > "tilecount" : 426, 3007c3007 < "//description" : "A statue dedicated to Cameron York.", --- > "//description" : "A statue of Cameron \"KyeTheShy\" York. Loved to adventure, but wandered a little too far...into space.", 3067c3067 < "imagePositionX" : "-16", --- > "imagePositionX" : "-8", 3157a3158,3175 > "424" : { > "//description" : "Thin hanging drapes. Quite classy.", > "//name" : "classiccurtain3", > "//shortdescription" : "Classic Thin Drape", > "imagePositionX" : "-8", > "imagePositionY" : "-16", > "object" : "classiccurtain3", > "tilesetDirection" : "right" > }, > "425" : { > "//description" : "It's entrancing. I can't look away.", > "//name" : "penguinbarsign", > "//shortdescription" : "Penguin Bar Sign", > "imagePositionX" : "-32", > "imagePositionY" : "-8", > "object" : "penguinbarsign", > "tilesetDirection" : "right" > }, 4786a4805,4810 > }, > "424" : { > "image" : "../../../../../tiled/packed/objects/classiccurtain3.png" > }, > "425" : { > "image" : "../../../../../tiled/packed/objects/penguinbarsign.png" tilesets\packed\objects-by-colonytag\valuable.json 841c841 < "//description" : "A statue dedicated to Cameron York.", --- > "//description" : "A statue of Cameron \"KyeTheShy\" York. Loved to adventure, but wandered a little too far...into space.", tilesets\packed\objects-by-race\apex.json 7c7 < "tilecount" : 365, --- > "tilecount" : 366, 2154c2154 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 2162c2162 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 2529a2530,2538 > "365" : { > "//description" : "Thin hanging drapes. Quite classy.", > "//name" : "classiccurtain3", > "//shortdescription" : "Classic Thin Drape", > "imagePositionX" : "-8", > "imagePositionY" : "-16", > "object" : "classiccurtain3", > "tilesetDirection" : "right" > }, 4022a4032,4034 > }, > "365" : { > "image" : "../../../../../tiled/packed/objects/classiccurtain3.png" tilesets\packed\objects-by-race\avian.json 498c498 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 1983c1983 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", tilesets\packed\objects-by-race\floran.json 315c315 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 881d880 < "//description" : "This trophy rack is covered in a foul web.", 883,887c882 < "//shortdescription" : "Web Rack", < "imagePositionX" : "-8", < "imagePositionY" : "0", < "object" : "floranwebbing", < "tilesetDirection" : "right" --- > "invalid" : "true" 890d884 < "//description" : "This trophy rack is covered in a foul web.", 892,896c886 < "//shortdescription" : "Web Rack", < "imagePositionX" : "-8", < "imagePositionY" : "0", < "object" : "floranwebbing", < "tilesetDirection" : "right" --- > "invalid" : "true" 1469c1459 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 1985c1975 < "image" : "../../../../../tiled/packed/objects/floranwebbing_orientation2.png" --- > "image" : "../../../../../tiled/packed/../packed/invalid.png" 1988c1978 < "image" : "../../../../../tiled/packed/objects/floranwebbing_orientation3.png" --- > "image" : "../../../../../tiled/packed/../packed/invalid.png" tilesets\packed\objects-by-race\generic.json 7c7 < "tilecount" : 1681, --- > "tilecount" : 1686, 6138c6138 < "//description" : "A statue dedicated to Cameron York.", --- > "//description" : "A statue of Cameron \"KyeTheShy\" York. Loved to adventure, but wandered a little too far...into space.", 6457a6458,6501 > "1681" : { > "//description" : "Ye olde dining room table.", > "//name" : "penguinbartop", > "//shortdescription" : "Penguin Bar Top", > "imagePositionX" : "-24", > "imagePositionY" : "0", > "object" : "penguinbartop", > "tilesetDirection" : "right" > }, > "1682" : { > "//description" : "Ye olde dining room table.", > "//name" : "penguinbarbottom", > "//shortdescription" : "Penguin Bar", > "imagePositionX" : "-24", > "imagePositionY" : "0", > "object" : "penguinbarbottom", > "tilesetDirection" : "right" > }, > "1683" : { > "//description" : "A wobbly bar stool.", > "//name" : "outpostbarstool", > "//shortdescription" : "Outpost Bar Stool", > "imagePositionX" : "-8", > "imagePositionY" : "0", > "object" : "outpostbarstool", > "tilesetDirection" : "right" > }, > "1684" : { > "//description" : "It's entrancing. I can't look away.", > "//name" : "penguinbarsign", > "//shortdescription" : "Penguin Bar Sign", > "imagePositionX" : "-32", > "imagePositionY" : "-8", > "object" : "penguinbarsign", > "tilesetDirection" : "right" > }, > "1685" : { > "//description" : "A metallic ceiling lamp.", > "//name" : "penguinbarlamp", > "//shortdescription" : "Penguin Bar Lamp", > "imagePositionX" : "0", > "imagePositionY" : "-8", > "object" : "penguinbarlamp" > }, 9650c9694 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 9684c9728 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 16576a16621,16635 > }, > "1681" : { > "image" : "../../../../../tiled/packed/objects/penguinbartop.png" > }, > "1682" : { > "image" : "../../../../../tiled/packed/objects/penguinbarbottom.png" > }, > "1683" : { > "image" : "../../../../../tiled/packed/objects/outpostbarstool.png" > }, > "1684" : { > "image" : "../../../../../tiled/packed/objects/penguinbarsign.png" > }, > "1685" : { > "image" : "../../../../../tiled/packed/objects/penguinbarlamp.png" tilesets\packed\objects-by-race\glitch.json 325c325 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 1510c1510 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", tilesets\packed\objects-by-race\human.json 1286c1286 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 1373c1373 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 1950c1950 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", tilesets\packed\objects-by-race\hylotl.json 1147c1147 < "imagePositionX" : "-16", --- > "imagePositionX" : "-8", 1354c1354 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 1713c1713 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", tilesets\packed\objects-by-race\novakid.json 32c32 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", 66c66 < "imagePositionX" : "-16", --- > "imagePositionX" : "-32", tilesets\packed\objects-by-type\loungeable.json 7c7 < "tilecount" : 243, --- > "tilecount" : 245, 1431a1432,1449 > "243" : { > "//description" : "Ye olde dining room table.", > "//name" : "penguinbarbottom", > "//shortdescription" : "Penguin Bar", > "imagePositionX" : "-24", > "imagePositionY" : "0", > "object" : "penguinbarbottom", > "tilesetDirection" : "right" > }, > "244" : { > "//description" : "A wobbly bar stool.", > "//name" : "outpostbarstool", > "//shortdescription" : "Outpost Bar Stool", > "imagePositionX" : "-8", > "imagePositionY" : "0", > "object" : "outpostbarstool", > "tilesetDirection" : "right" > }, 2608a2627,2632 > }, > "243" : { > "image" : "../../../../../tiled/packed/objects/penguinbarbottom.png" > }, > "244" : { > "image" : "../../../../../tiled/packed/objects/outpostbarstool.png" treasure\common.treasurepools 185c185 < [2.9, { --- > [1.9, { 193a194,213 > {"weight" : 0.5, "item" : "fireblockaugment"}, > {"weight" : 0.5, "item" : "iceblockaugment"}, > {"weight" : 0.5, "item" : "electricblockaugment"}, > {"weight" : 0.5, "item" : "poisonblockaugment"} > ] > }], > [2.9, { > "pool" : [ > // UNCOMMON > {"weight" : 0.3, "item" : "damageaugment1"}, > {"weight" : 0.3, "item" : "energyaugment1"}, > {"weight" : 0.3, "item" : "healingaugment1"}, > {"weight" : 0.3, "item" : "healthaugment1"}, > {"weight" : 0.3, "item" : "lightaugment1"}, > > {"weight" : 0.3, "item" : "fireblockaugment"}, > {"weight" : 0.3, "item" : "iceblockaugment"}, > {"weight" : 0.3, "item" : "electricblockaugment"}, > {"weight" : 0.3, "item" : "poisonblockaugment"}, > 199,209c219 < {"weight" : 0.5, "item" : "lightaugment2"}, < < {"weight" : 0.5, "item" : "fireblockaugment"}, < {"weight" : 0.5, "item" : "iceblockaugment"}, < {"weight" : 0.5, "item" : "electricblockaugment"}, < {"weight" : 0.5, "item" : "poisonblockaugment"}, < < {"weight" : 0.5, "item" : "gravityaugment"}, < {"weight" : 0.5, "item" : "jumpaugment"}, < {"weight" : 0.5, "item" : "speedaugment"}, < {"weight" : 0.5, "item" : "swimaugment"} --- > {"weight" : 0.5, "item" : "lightaugment2"} 212c222 < [4.9, { --- > [3.9, { 215,219c225,234 < {"weight" : 0.25, "item" : "damageaugment1"}, < {"weight" : 0.25, "item" : "energyaugment1"}, < {"weight" : 0.25, "item" : "healingaugment1"}, < {"weight" : 0.25, "item" : "healthaugment1"}, < {"weight" : 0.25, "item" : "lightaugment1"}, --- > {"weight" : 0.3, "item" : "damageaugment1"}, > {"weight" : 0.3, "item" : "energyaugment1"}, > {"weight" : 0.3, "item" : "healingaugment1"}, > {"weight" : 0.3, "item" : "healthaugment1"}, > {"weight" : 0.3, "item" : "lightaugment1"}, > > {"weight" : 0.3, "item" : "fireblockaugment"}, > {"weight" : 0.3, "item" : "iceblockaugment"}, > {"weight" : 0.3, "item" : "electricblockaugment"}, > {"weight" : 0.3, "item" : "poisonblockaugment"}, 228,232d242 < {"weight" : 0.5, "item" : "fireblockaugment"}, < {"weight" : 0.5, "item" : "iceblockaugment"}, < {"weight" : 0.5, "item" : "electricblockaugment"}, < {"weight" : 0.5, "item" : "poisonblockaugment"}, < 236c246,307 < {"weight" : 0.5, "item" : "swimaugment"}, --- > {"weight" : 0.5, "item" : "swimaugment"} > ] > }], > [4.9, { > "pool" : [ > // UNCOMMON > {"weight" : 0.1, "item" : "damageaugment1"}, > {"weight" : 0.1, "item" : "energyaugment1"}, > {"weight" : 0.1, "item" : "healingaugment1"}, > {"weight" : 0.1, "item" : "healthaugment1"}, > {"weight" : 0.1, "item" : "lightaugment1"}, > > {"weight" : 0.1, "item" : "fireblockaugment"}, > {"weight" : 0.1, "item" : "iceblockaugment"}, > {"weight" : 0.1, "item" : "electricblockaugment"}, > {"weight" : 0.1, "item" : "poisonblockaugment"}, > > // RARE > {"weight" : 0.3, "item" : "damageaugment2"}, > {"weight" : 0.3, "item" : "energyaugment2"}, > {"weight" : 0.3, "item" : "healingaugment2"}, > {"weight" : 0.3, "item" : "healthaugment2"}, > {"weight" : 0.3, "item" : "lightaugment2"}, > > {"weight" : 0.3, "item" : "gravityaugment"}, > {"weight" : 0.3, "item" : "jumpaugment"}, > {"weight" : 0.3, "item" : "speedaugment"}, > {"weight" : 0.3, "item" : "swimaugment"}, > > // LEGENDARY > {"weight" : 0.5, "item" : "damageaugment3"}, > {"weight" : 0.5, "item" : "energyaugment3"}, > {"weight" : 0.5, "item" : "healingaugment3"}, > {"weight" : 0.5, "item" : "healthaugment3"}, > {"weight" : 0.5, "item" : "lightaugment3"} > ] > }], > [5.9, { > "pool" : [ > // UNCOMMON > {"weight" : 0.1, "item" : "damageaugment1"}, > {"weight" : 0.1, "item" : "energyaugment1"}, > {"weight" : 0.1, "item" : "healingaugment1"}, > {"weight" : 0.1, "item" : "healthaugment1"}, > {"weight" : 0.1, "item" : "lightaugment1"}, > > {"weight" : 0.1, "item" : "fireblockaugment"}, > {"weight" : 0.1, "item" : "iceblockaugment"}, > {"weight" : 0.1, "item" : "electricblockaugment"}, > {"weight" : 0.1, "item" : "poisonblockaugment"}, > > // RARE > {"weight" : 0.3, "item" : "damageaugment2"}, > {"weight" : 0.3, "item" : "energyaugment2"}, > {"weight" : 0.3, "item" : "healingaugment2"}, > {"weight" : 0.3, "item" : "healthaugment2"}, > {"weight" : 0.3, "item" : "lightaugment2"}, > > {"weight" : 0.3, "item" : "gravityaugment"}, > {"weight" : 0.3, "item" : "jumpaugment"}, > {"weight" : 0.3, "item" : "speedaugment"}, > {"weight" : 0.3, "item" : "swimaugment"},