FILES ----- spawner.config terrestrial_worlds.config behaviors\npc\combatvillager.behavior behaviors\npc\follower.behavior behaviors\npc\friendlyidle.behavior behaviors\npc\guard.behavior behaviors\npc\guardidle.behavior behaviors\npc\hostileguard.behavior behaviors\npc\merchant.behavior behaviors\npc\play.behavior behaviors\npc\tutorial.behavior behaviors\npc\tutorialtenant.behavior behaviors\npc\villageguard.behavior behaviors\npc\villager.behavior [NEW] behaviors\npc\reactions\crouchwarm.behavior [NEW] behaviors\npc\reactions\touchfire.behavior biomes\distributions.config biomes\surface_detached\alpine.biome biomes\surface_detached\bioluminescence.biome dialog\merchant.config [NEW] dungeons\undergroundmaze\mazeaviantemple\chamberendleft.json [NEW] dungeons\undergroundmaze\mazeaviantemple\chamberendright.json [NEW] dungeons\undergroundmaze\mazeaviantemple\chamberendtop.json [NEW] dungeons\undergroundmaze\mazeaviantemple\corner1a.json [NEW] dungeons\undergroundmaze\mazeaviantemple\corner1b.json [NEW] dungeons\undergroundmaze\mazeaviantemple\corner1c.json [NEW] dungeons\undergroundmaze\mazeaviantemple\corner1d.json [NEW] dungeons\undergroundmaze\mazeaviantemple\corner1e.json [NEW] dungeons\undergroundmaze\mazeaviantemple\corner2a.json [NEW] dungeons\undergroundmaze\mazeaviantemple\corner2b.json [NEW] dungeons\undergroundmaze\mazeaviantemple\corner2c.json [NEW] dungeons\undergroundmaze\mazeaviantemple\corner2d.json [NEW] dungeons\undergroundmaze\mazeaviantemple\corner2e.json [NEW] dungeons\undergroundmaze\mazeaviantemple\corner2f.json [NEW] dungeons\undergroundmaze\mazeaviantemple\corner3a.json [NEW] dungeons\undergroundmaze\mazeaviantemple\corner3b.json [NEW] dungeons\undergroundmaze\mazeaviantemple\corner3c.json [NEW] dungeons\undergroundmaze\mazeaviantemple\corner3d.json [NEW] dungeons\undergroundmaze\mazeaviantemple\corner3e.json [NEW] dungeons\undergroundmaze\mazeaviantemple\corner4a.json [NEW] dungeons\undergroundmaze\mazeaviantemple\corner4b.json [NEW] dungeons\undergroundmaze\mazeaviantemple\corner4c.json [NEW] dungeons\undergroundmaze\mazeaviantemple\corner4d.json [NEW] dungeons\undergroundmaze\mazeaviantemple\corner4e.json [NEW] dungeons\undergroundmaze\mazeaviantemple\corner4f.json [NEW] dungeons\undergroundmaze\mazeaviantemple\drop1a.json [NEW] dungeons\undergroundmaze\mazeaviantemple\drop1b.json [NEW] dungeons\undergroundmaze\mazeaviantemple\drop1c.json [NEW] dungeons\undergroundmaze\mazeaviantemple\drop1d.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endleft1a.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endleft1achest.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endleft1b.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endleft1bchest.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endleft1c.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endleft1cchest.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endleft1d.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endleft1dchest.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endleft2a.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endleft2achest.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endleft2b.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endleft2bchest.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endleft2c.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endleft2cchest.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endleft2d.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endleft2dchest.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endleft2e.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endleft2echest.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endright1a.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endright1achest.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endright1b.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endright1bchest.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endright1c.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endright1cchest.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endright1d.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endright1dchest.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endright2a.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endright2achest.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endright2b.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endright2bchest.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endright2c.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endright2cchest.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endright2d.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endright2dchest.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endright2e.json [NEW] dungeons\undergroundmaze\mazeaviantemple\endright2echest.json [NEW] dungeons\undergroundmaze\mazeaviantemple\entryleft.json [NEW] dungeons\undergroundmaze\mazeaviantemple\entryright.json [NEW] dungeons\undergroundmaze\mazeaviantemple\entrytop.json [NEW] dungeons\undergroundmaze\mazeaviantemple\hall1a.json [NEW] dungeons\undergroundmaze\mazeaviantemple\hall1b.json [NEW] dungeons\undergroundmaze\mazeaviantemple\hall1c.json [NEW] dungeons\undergroundmaze\mazeaviantemple\hall1d.json [NEW] dungeons\undergroundmaze\mazeaviantemple\hall1e.json [NEW] dungeons\undergroundmaze\mazeaviantemple\hall1f.json [NEW] dungeons\undergroundmaze\mazeaviantemple\hall1g.json [NEW] dungeons\undergroundmaze\mazeaviantemple\hall1h.json [NEW] dungeons\undergroundmaze\mazeaviantemple\hall1i.json [NEW] dungeons\undergroundmaze\mazeaviantemple\hall2a.json [NEW] dungeons\undergroundmaze\mazeaviantemple\hall2b.json [NEW] dungeons\undergroundmaze\mazeaviantemple\hall2c.json [NEW] dungeons\undergroundmaze\mazeaviantemple\hall2d.json [NEW] dungeons\undergroundmaze\mazeaviantemple\hall2e.json [NEW] dungeons\undergroundmaze\mazeaviantemple\hall2f.json [NEW] dungeons\undergroundmaze\mazeaviantemple\hall2g.json [NEW] dungeons\undergroundmaze\mazeaviantemple\hall2h.json [NEW] dungeons\undergroundmaze\mazeaviantemple\hall2i.json [NEW] dungeons\undergroundmaze\mazeaviantemple\junction1a.json [NEW] dungeons\undergroundmaze\mazeaviantemple\junction1b.json [NEW] dungeons\undergroundmaze\mazeaviantemple\junction1c.json [NEW] dungeons\undergroundmaze\mazeaviantemple\junction1d.json [NEW] dungeons\undergroundmaze\mazeaviantemple\junction2a.json [NEW] dungeons\undergroundmaze\mazeaviantemple\junction2b.json [NEW] dungeons\undergroundmaze\mazeaviantemple\junction2c.json [NEW] dungeons\undergroundmaze\mazeaviantemple\junction2d.json [NEW] dungeons\undergroundmaze\mazeaviantemple\junction3a.json [NEW] dungeons\undergroundmaze\mazeaviantemple\junction3b.json [NEW] dungeons\undergroundmaze\mazeaviantemple\junction3c.json [NEW] dungeons\undergroundmaze\mazeaviantemple\junction3d.json [NEW] dungeons\undergroundmaze\mazeaviantemple\junction3e.json [NEW] dungeons\undergroundmaze\mazeaviantemple\junction3f.json [NEW] dungeons\undergroundmaze\mazeaviantemple\junction4a.json [NEW] dungeons\undergroundmaze\mazeaviantemple\junction4b.json [NEW] dungeons\undergroundmaze\mazeaviantemple\junction4c.json [NEW] dungeons\undergroundmaze\mazeaviantemple\junction4d.json [NEW] dungeons\undergroundmaze\mazeaviantemple\junction4e.json [NEW] dungeons\undergroundmaze\mazeaviantemple\junction4f.json [NEW] dungeons\undergroundmaze\mazeaviantemple\longhall1a.json [NEW] dungeons\undergroundmaze\mazeaviantemple\longhall1b.json [NEW] dungeons\undergroundmaze\mazeaviantemple\longhall1c.json [NEW] dungeons\undergroundmaze\mazeaviantemple\longhall1d.json [NEW] dungeons\undergroundmaze\mazeaviantemple\longhall1e.json [NEW] dungeons\undergroundmaze\mazeaviantemple\longhall1f.json [NEW] dungeons\undergroundmaze\mazeaviantemple\longhall1g.json [NEW] dungeons\undergroundmaze\mazeaviantemple\longhall2a.json [NEW] dungeons\undergroundmaze\mazeaviantemple\longhall2b.json [NEW] dungeons\undergroundmaze\mazeaviantemple\longhall2c.json [NEW] dungeons\undergroundmaze\mazeaviantemple\longhall2d.json [NEW] dungeons\undergroundmaze\mazeaviantemple\longhall2e.json [NEW] dungeons\undergroundmaze\mazeaviantemple\longhall2f.json [NEW] dungeons\undergroundmaze\mazeaviantemple\longhall2g.json dungeons\undergroundmaze\mazeglitch1\endright2d.json dungeons\undergroundmaze\mazeglitch1\endright2dchest.json dungeons\undergroundmaze\mazeglitch1\junction1c.json dungeons\undergroundmaze\mazeglitch1\junction2c.json [NEW] humanoid\dances\crouchwarm.dance [NEW] humanoid\dances\warmhands.dance [NEW] humanoid\dances\wave.dance items\armors\biome\bioluminescence\biolumin\biolumin.chest items\armors\biome\bioluminescence\biolumin\biolumin.head items\armors\biome\bioluminescence\biolumin\biolumin.legs items\armors\biome\bioluminescence\lighthelm\lighthelm.head [NEW] items\materials\frozendirt.matitem [NEW] items\materials\frozendirt.png items\throwables\throwingboulder.thrownitem [NEW] monsters\critter\glowingballcritter\body.frames [NEW] monsters\critter\glowingballcritter\body.monsterpart [NEW] monsters\critter\glowingballcritter\body.png [NEW] monsters\critter\glowingballcritter\glowingballcritter.animation [NEW] monsters\critter\glowingballcritter\glowingballcritter.monstertype [NEW] monsters\critter\glowingballcritter2\body.frames [NEW] monsters\critter\glowingballcritter2\body.monsterpart [NEW] monsters\critter\glowingballcritter2\body.png [NEW] monsters\critter\glowingballcritter2\glowingballcritter2.animation [NEW] monsters\critter\glowingballcritter2\glowingballcritter2.monstertype [NEW] monsters\critter\glowingfishcritter\body.frames [NEW] monsters\critter\glowingfishcritter\body.monsterpart [NEW] monsters\critter\glowingfishcritter\body.png [NEW] monsters\critter\glowingfishcritter\glowingfishcritter.animation [NEW] monsters\critter\glowingfishcritter\glowingfishcritter.monstertype npcs\bmain.lua npcs\default_reactions.config npcs\merchantpools.config [NEW] npcs\subbiometenants\glow.npctype objects\apex\apexconsole1\apexconsole1.object objects\crafting\alloyfurnace\alloyfurnace.object objects\crafting\scififurnace\scififurnace.object objects\crafting\stonefurnace\stonefurnace.object objects\floran\planttorch\planttorch.object objects\generic\campfire\campfire.object objects\generic\ironswitch\ironswitch.object objects\generic\poop\poop.object objects\generic\windchime\windchime.object objects\glitch\castleswitch\castleswitch.object objects\glitch\medievalswitchlever\medievalswitchlever.object objects\glitch\medievaltoilet\medievaltoilet.object objects\hylotl\hylotlbutton\hylotlbutton.object objects\hylotl\hylotlswitch\hylotlswitch.object [NEW] objects\minibiome\bioluminescence\glowbed\glowbed.frames [NEW] objects\minibiome\bioluminescence\glowbed\glowbed.object [NEW] objects\minibiome\bioluminescence\glowbed\glowbed.png [NEW] objects\minibiome\bioluminescence\glowbed\glowbedcover.png [NEW] objects\minibiome\bioluminescence\glowbed\glowbedicon.png [NEW] objects\minibiome\bioluminescence\glowbed\glowbedlit.frames [NEW] objects\minibiome\bioluminescence\glowbed\glowbedlit.png [NEW] objects\minibiome\bioluminescence\glowchair\glowchair.frames [NEW] objects\minibiome\bioluminescence\glowchair\glowchair.object [NEW] objects\minibiome\bioluminescence\glowchair\glowchair.png [NEW] objects\minibiome\bioluminescence\glowchair\glowchaircover.png [NEW] objects\minibiome\bioluminescence\glowchair\glowchairicon.png [NEW] objects\minibiome\bioluminescence\glowchair\glowchairlit.frames [NEW] objects\minibiome\bioluminescence\glowchair\glowchairlit.png objects\minibiome\bioluminescence\glowchest\glowchest.object objects\minibiome\bioluminescence\glowchest\glowchest.png objects\minibiome\bioluminescence\glowchest\glowchesticon.png objects\minibiome\bioluminescence\glowchest\glowchestlit.png [NEW] objects\minibiome\bioluminescence\glowroot1\glowroot1.frames [NEW] objects\minibiome\bioluminescence\glowroot1\glowroot1.object [NEW] objects\minibiome\bioluminescence\glowroot1\glowroot1.png [NEW] objects\minibiome\bioluminescence\glowroot1\glowroot1lit.png [NEW] objects\minibiome\bioluminescence\glowroot1\icon.png [NEW] objects\minibiome\bioluminescence\glowroot2\glowroot2.frames [NEW] objects\minibiome\bioluminescence\glowroot2\glowroot2.object [NEW] objects\minibiome\bioluminescence\glowroot2\glowroot2.png [NEW] objects\minibiome\bioluminescence\glowroot2\glowroot2lit.png [NEW] objects\minibiome\bioluminescence\glowroot2\icon.png [NEW] objects\minibiome\bioluminescence\glowroot3\glowroot3.frames [NEW] objects\minibiome\bioluminescence\glowroot3\glowroot3.object [NEW] objects\minibiome\bioluminescence\glowroot3\glowroot3.png [NEW] objects\minibiome\bioluminescence\glowroot3\glowroot3lit.png [NEW] objects\minibiome\bioluminescence\glowroot3\icon.png [NEW] objects\minibiome\bioluminescence\glowroot4\glowroot4.frames [NEW] objects\minibiome\bioluminescence\glowroot4\glowroot4.object [NEW] objects\minibiome\bioluminescence\glowroot4\glowroot4.png [NEW] objects\minibiome\bioluminescence\glowroot4\glowroot4lit.png [NEW] objects\minibiome\bioluminescence\glowroot4\icon.png [NEW] objects\minibiome\bioluminescence\glowroot5\glowroot5.frames [NEW] objects\minibiome\bioluminescence\glowroot5\glowroot5.object [NEW] objects\minibiome\bioluminescence\glowroot5\glowroot5.png [NEW] objects\minibiome\bioluminescence\glowroot5\glowroot5lit.png [NEW] objects\minibiome\bioluminescence\glowroot5\icon.png objects\minibiome\bioluminescence\glowtree\glowtree1.object objects\minibiome\bioluminescence\glowtree\glowtree2.object objects\minibiome\bioluminescence\glowtree\glowtree3.object objects\minibiome\bioluminescence\glowtree\glowtree4.object objects\minibiome\bioluminescence\glowtree\glowtree5.object objects\minibiome\bioluminescence\glowvine\glowvine1.png objects\minibiome\bioluminescence\glowvine\glowvine1lit.png objects\minibiome\bioluminescence\glowvine\glowvine2.png objects\minibiome\bioluminescence\glowvine\glowvine2lit.png objects\minibiome\bioluminescence\glowvine\glowvine3.png objects\minibiome\bioluminescence\glowvine\glowvine3lit.png objects\minibiome\bioluminescence\glowvine\glowvine4.png objects\minibiome\bioluminescence\glowvine\glowvine4lit.png objects\minibiome\bioluminescence\glowvine\glowvine5.png objects\minibiome\bioluminescence\glowvine\glowvine5lit.png objects\mission\lunarbaseconsole\lunarbaseconsole.object objects\outpost\bathroomurinal\bathroomurinal.object objects\outpost\outpostbutton\outpostbutton.object objects\outpost\outpostconsole\outpostconsole.object objects\outpost\outpostterminal\outpostterminal.object objects\tiered\tier10switch\tier10switch.object objects\tiered\tier1switch\tier1switch.object objects\tiered\tier2switch\tier2switch.object objects\tiered\tier3switch\tier3switch.object objects\tiered\tier4switch\tier4switch.object objects\tiered\tier5switch\tier5switch.object objects\tiered\tier6switch\tier6switch.object objects\tiered\tier7switch\tier7switch.object objects\tiered\tier8switch\tier8switch.object objects\tiered\tier9switch\tier9switch.object objects\wired\bigredbutton\bigredbutton.object objects\wired\proximitysensor\proximitysensor.object objects\wired\scanner\scanner.object objects\wired\smallfloorbutton\smallfloorbutton.object objects\wired\smallwallbutton\smallwallbutton.object objects\wired\smallwallswitch\smallwallswitchlighttoggle.object objects\wired\smallwallswitch\smallwallswitchlit.object objects\wired\standingturret\standingturret.object objects\wired\tinywallbutton\tinywallbutton.object objects\wired\tinywallswitch\tinywallswitch.object [NEW] plants\bushes\ground\bioroots\base1.png [NEW] plants\bushes\ground\bioroots\base2.png [NEW] plants\bushes\ground\bioroots\base3.png [NEW] plants\bushes\ground\bioroots\base4.png [NEW] plants\bushes\ground\bioroots\base5.png [NEW] plants\bushes\ground\bioroots\bioroots.bush projectiles\throwable\throwingboulder\throwingboulder.projectile [NEW] recipes\biomes\bioluminescence\glowbed.recipe [NEW] recipes\biomes\bioluminescence\glowchair.recipe scripts\behavior.lua scripts\npctoyobject.lua scripts\pathing.lua scripts\actions\merchant.lua scripts\actions\movement.lua scripts\actions\reaction.lua scripts\behavior\decorator.lua [NEW] tenants\sub-biome\glow_human.tenant terrain\cave\corecaves.terrain terrain\cave\densecaves.terrain terrain\cave\mooncaves.terrain terrain\cave\moonsurfacecaves.terrain terrain\cave\normalcaves.terrain terrain\cave\surfacecaves.terrain terrain\surface\flatssurface.terrain terrain\surface\remixedcanyonssurface.terrain terrain\surface\remixedmildcanyonssurface.terrain [NEW] tiles\materials\frozendirt.material [NEW] tiles\materials\frozendirt.png treasure\biome.treasurepools DIFFS ----- spawner.config 703a704,716 > "glowingfishcritter" : { > "spawnParameters" : { > "area" : "liquid", > "region" : "all", > "time" : "all" > }, > > "targetDensity" : 0.04, > "monsterType" : "glowingfishcritter", > "monsterParameters" : { > "aggressive" : false > } > }, 1038a1052,1079 > "monsterParameters" : { > "aggressive" : false > } > }, > > "glowingballcritter" : { > "spawnParameters" : { > "area" : "surface", > "region" : "exposed", > "time" : "day" > }, > > "targetDensity" : 0.15, > "monsterType" : "glowingballcritter", > "monsterParameters" : { > "aggressive" : false > } > }, > > "glowingballcritter2" : { > "spawnParameters" : { > "area" : "surface", > "region" : "exposed", > "time" : "day" > }, > > "targetDensity" : 0.15, > "monsterType" : "glowingballcritter2", terrestrial_worlds.config 32c32 < "blendSize" : 100, --- > "blendSize" : 70, 442c442 < "secondaryRegion" : [ "alpine", "bioluminescence" ], --- > "secondaryRegion" : [ "garden", "forest", "volcanic", "scorched", "moon", "alpine", "bioluminescence" ], behaviors\npc\combatvillager.behavior 4c4,6 < "parameters": {}, --- > "parameters": { > "sleep": true > }, 11a14 > "title": "Tenant Baseline Behavior", 14d16 < "title": "Tenant Baseline Behavior", 26a29 > "title": "NPC Tracking", 29d31 < "title": "NPC Tracking", 34a37 > "title": "NPC Combat", 37d39 < "title": "NPC Combat", 47a50 > "title": "Friendly NPC Idle Behavior", 50,51c53,55 < "title": "/behaviors/npc/friendlyidle.behavior", < "parameters": {} --- > "parameters": { > "sleep": "" > } behaviors\npc\follower.behavior 10c10,12 < "parameters": {}, --- > "parameters": { > "sleep": true > }, 32a35 > "title": "NPC Hostile Tracking", 35d37 < "title": "NPC Hostile Tracking", 40a43 > "title": "NPC Combat", 43d45 < "title": "NPC Combat", 173a176 > "title": "NPC Hostile Tracking", 176d178 < "title": "NPC Hostile Tracking", 226a229 > "title": "NPC Combat", 229d231 < "title": "NPC Combat", 657a660 > "title": "", 660,661c663,665 < "title": "NPC Guard Idle", < "parameters": {} --- > "parameters": { > "sleep": "" > } behaviors\npc\friendlyidle.behavior 3d2 < "description": "", 7c6,8 < "parameters": {}, --- > "parameters": { > "sleep": false > }, 20,22c21,31 < "type": "module", < "name": "sleep", < "parameters": {} --- > "title": "optional", > "type": "decorator", > "name": "optional", > "parameters": { > "shouldRun": "" > }, > "child": { > "type": "module", > "name": "sleep", > "parameters": {} > } behaviors\npc\guard.behavior 3d2 < "description": "", 10c9,11 < "parameters": {}, --- > "parameters": { > "sleep": true > }, 236c237 < "title": "NPC Guard Idle", --- > "title": "Guard NPC Idle Behavior", 239c240,242 < "parameters": {} --- > "parameters": { > "sleep": "" > } behaviors\npc\guardidle.behavior 8c8,10 < "parameters": {}, --- > "parameters": { > "sleep": true > }, 23a26 > "title": "NPC Chat", 26d28 < "title": "NPC Chat", 36,38c38,48 < "type": "module", < "name": "sleep", < "parameters": {} --- > "title": "optional", > "type": "decorator", > "name": "optional", > "parameters": { > "shouldRun": "" > }, > "child": { > "type": "module", > "name": "sleep", > "parameters": {} > } behaviors\npc\hostileguard.behavior 3d2 < "description": "", 10c9,11 < "parameters": {}, --- > "parameters": { > "sleep": true > }, 26a28 > "title": "NPC Hostile Tracking", 29d30 < "title": "NPC Hostile Tracking", 214a216 > "title": "NPC Combat", 217d218 < "title": "NPC Combat", 224a226 > "title": "Guard NPC Idle Behavior", 227,228c229,231 < "title": "NPC Guard Idle", < "parameters": {} --- > "parameters": { > "sleep": "" > } behaviors\npc\merchant.behavior 3d2 < "description": "", 14c13,15 < "parameters": {}, --- > "parameters": { > "sleep": true > }, 499c500 < "title": "", --- > "title": "Friendly NPC Idle Behavior", 502c503,505 < "parameters": {} --- > "parameters": { > "sleep": "" > } behaviors\npc\play.behavior 26a27,34 > "title": "unsetFlag", > "type": "action", > "name": "unsetFlag", > "parameters": { > "name": "hasPriorityPlayTarget" > } > }, > { 45c53 < "withoutEntity": "lastUsedPlayTarget" --- > "withoutEntity": "playTarget" 96,101c104 < "parameters": { < "type": "sliding", < "state": "off", < "fromEntity": "attackTarget", < "toEntity": "fleeTarget" < }, --- > "parameters": {}, 111a115,128 > "title": "inverter", > "type": "decorator", > "name": "inverter", > "parameters": {}, > "child": { > "title": "hasFlag", > "type": "action", > "name": "hasFlag", > "parameters": { > "name": "hasPriorityPlayTarget" > } > } > }, > { 127a145,174 > } > }, > { > "title": "succeeder", > "type": "decorator", > "name": "succeeder", > "parameters": {}, > "child": { > "title": "sequence", > "type": "composite", > "name": "sequence", > "parameters": {}, > "children": [ > { > "title": "npcToyIsPriority", > "type": "action", > "name": "npcToyIsPriority", > "parameters": { > "target": "playTarget" > } > }, > { > "title": "setFlag", > "type": "action", > "name": "setFlag", > "parameters": { > "name": "hasPriorityPlayTarget" > } > } > ] behaviors\npc\tutorial.behavior 4c4,6 < "parameters": {}, --- > "parameters": { > "sleep": true > }, 16a19 > "title": "/behaviors/npc/converseseq.behavior", 19d21 < "title": "/behaviors/npc/converseseq.behavior", 22a25 > "title": "/behaviors/npc/friendlyidle.behavior", 25,26c28,30 < "title": "/behaviors/npc/friendlyidle.behavior", < "parameters": {} --- > "parameters": { > "sleep": "" > } behaviors\npc\tutorialtenant.behavior 4c4,6 < "parameters": {}, --- > "parameters": { > "sleep": true > }, 11a14 > "title": "Tenant Baseline Behavior", 14d16 < "title": "Tenant Baseline Behavior", 22a25 > "title": "/behaviors/npc/converseseq.behavior", 25d27 < "title": "/behaviors/npc/converseseq.behavior", 28a31 > "title": "", 31,32c34,36 < "title": "/behaviors/npc/friendlyidle.behavior", < "parameters": {} --- > "parameters": { > "sleep": "" > } behaviors\npc\villageguard.behavior 3d2 < "description": "", 10c9,11 < "parameters": {}, --- > "parameters": { > "sleep": true > }, 17a19 > "title": "Tenant Baseline Behavior", 20d21 < "title": "Tenant Baseline Behavior", 32a34 > "title": "NPC Tracking", 35d36 < "title": "NPC Tracking", 220a222 > "title": "NPC Combat", 223d224 < "title": "NPC Combat", 230a232 > "title": "NPC Hound", 233d234 < "title": "NPC Hound", 241a243 > "title": "Guard NPC Idle Behavior", 244,245c246,248 < "title": "NPC Guard Idle", < "parameters": {} --- > "parameters": { > "sleep": "" > } behaviors\npc\villager.behavior 3d2 < "description": "", 5c4,6 < "parameters": {}, --- > "parameters": { > "sleep": true > }, 12a14 > "title": "Tenant Baseline Behavior", 15d16 < "title": "Tenant Baseline Behavior", 28a30 > "title": "", 31,32c33,35 < "title": "/behaviors/npc/friendlyidle.behavior", < "parameters": {} --- > "parameters": { > "sleep": "" > } biomes\distributions.config 401c401 < "blockProbability" : 0.005 --- > "blockProbability" : 0.0015 biomes\surface_detached\alpine.biome 75a76,87 > "distribution" : "/biomes/distributions.config:scatteredLarge", > > "type" : "tree", > "treeFoliageHueShiftMax" : 180, > "treeStemHueShiftMax" : 15, > "treeStemList" : [ "snowpinetree" ], > "treeFoliageList" : [ "snowpine" ] > }, > { > "mode" : "floor", > "priority" : 1.0, > "variants" : 1, biomes\surface_detached\bioluminescence.biome 8c8 < "extraSpawns" : [ ], --- > "extraSpawns" : [ "glowingballcritter", "glowingballcritter2", "glowingfishcritter" ], 15c15 < "extraSpawns" : [ ], --- > "extraSpawns" : [ "glowingballcritter", "glowingballcritter2", "glowingfishcritter" ], 22c22 < "hueShiftOptions" : [-45, 0, 45], --- > "hueShiftOptions" : [0, 0, 0], 24,25c24,25 < "mainBlock" : "snow", < "subBlocks" : [ "ice", "slush" ], --- > "mainBlock" : "frozendirt", > "subBlocks" : [ "snow", "slush", "ice" ], 60c60 < "distribution" : "/biomes/distributions.config:moderateClumps", --- > "distribution" : "/biomes/distributions.config:scatteredLarge", 79c79,93 < "pool" : [ [0.35, "glowbush1" ], [0.35, "glowbush2" ], [0.35, "glowbush3" ], [0.35, "glowbush4" ], [0.35, "glowbush5" ] ], --- > "pool" : [ [0.35, "glowbush1" ], [0.35, "glowbush1" ], [0.35, "glowbush2" ], [0.35, "glowbush3" ], [0.35, "glowbush4" ], [0.35, "glowbush5" ] ], > "parameters" : { } > } > ] > }, > { > "mode" : "ceiling", > "priority" : 0.5, > "variants" : 1, > "distribution" : "/biomes/distributions.config:scatteredLarge", > > "type" : "object", > "objectSets" : [ > { > "pool" : [ [0.35, "glowroot1" ], [0.35, "glowroot2" ], [0.35, "glowroot3" ], [0.35, "glowroot4" ], [0.35, "glowroot5" ] ], 88c102 < "distribution" : "/biomes/distributions.config:moderateClumps", --- > "distribution" : "/biomes/distributions.config:scatteredLarge", 110a125,139 > }, > { > "mode" : "floor", > "priority" : 2.0, > "variants" : 1, > "distribution" : "/biomes/distributions.config:scatteredLarge", > > "type" : "bush", > "bushes" : [ > { > "name" : "bioroots", > "baseHueShiftMax" : 0, > "modHueShiftMax" : 0 > } > ] dialog\merchant.config 588c588 < "Hi! Did you alert because you want to buy something?" --- > "Hi! Did you alert me because you want to buy something?" dungeons\undergroundmaze\mazeglitch1\endright2d.json [TMX file differences are left out for huge size.] dungeons\undergroundmaze\mazeglitch1\endright2dchest.json [TMX file differences are left out for huge size.] dungeons\undergroundmaze\mazeglitch1\junction1c.json [TMX file differences are left out for huge size.] dungeons\undergroundmaze\mazeglitch1\junction2c.json [TMX file differences are left out for huge size.] items\armors\biome\bioluminescence\biolumin\biolumin.chest 8,9c8,9 < "description" : "A bioluminescent shirt.", < "shortdescription" : "Bio Shirt", --- > "description" : "A bioluminescent suit - Shine like a star!", > "shortdescription" : "Glow Suit", items\armors\biome\bioluminescence\biolumin\biolumin.head 8,9c8,9 < "description" : "A bioluminescent mask.", < "shortdescription" : "Biolumin Mask", --- > "description" : "A bioluminescent mask - Light up the night!", > "shortdescription" : "Glow Mask", items\armors\biome\bioluminescence\biolumin\biolumin.legs 8,9c8,9 < "description" : "Some bioluminescent pants.", < "shortdescription" : "Biolumin Pants", --- > "description" : "Some bioluminescent pants - Tread carefully no longer!", > "shortdescription" : "Glow Pants", items\armors\biome\bioluminescence\lighthelm\lighthelm.head 9c9 < "shortdescription" : "Light Helm", --- > "shortdescription" : "Fluorescent Helmet", items\throwables\throwingboulder.thrownitem 17c17 < "speed" : 10, --- > "speed" : 15, npcs\bmain.lua 23c23 < self.behavior = BTree:new(entity.configParameter("behavior")) --- > self.behavior = BTree:new(entity.configParameter("behavior"), entity.configParameter("behaviorConfig", {})) npcs\default_reactions.config 216a217,224 > }, > "wave" : { > "dance" : "wave", > "duration" : 1.0 > }, > "warmhands" : { > "dance" : "warmhands", > "duration" : 4.0 286a295,300 > }, > "crouchwarm" : { > "behavior" : "reaction-crouchwarm" > }, > "pokefire" : { > "behavior" : "reaction-pokefire" npcs\merchantpools.config 50a51,70 > "glowmerchant" : [ > [0, [ > { "item" : { "name" : "torch" } }, > { "item" : { "name" : "oillantern1" } }, > { "item" : { "name" : "flare" } }, > { "item" : { "name" : "lavalamp1" }, "rarity" : 0.3 }, > { "item" : { "name" : "woodenlamp1" }, "rarity" : 0.3 }, > { "item" : { "name" : "studylamp" }, "rarity" : 0.3 }, > { "item" : { "name" : "huntinglight1" }, "rarity" : 0.3 }, > { "item" : { "name" : "huntinglight3" }, "rarity" : 0.3 }, > { "item" : { "name" : "glowflowerlamp" }, "rarity" : 0.3 }, > { "item" : { "name" : "glowbushlamp" }, "rarity" : 0.3 }, > { "item" : { "name" : "glowvinelamp" }, "rarity" : 0.3 }, > { "item" : { "name" : "crystaltorch" }, "rarity" : 0.3 }, > { "item" : { "name" : "yellowstim" }, "rarity" : 0.5 }, > { "item" : { "name" : "lighthelmhead" }, "rarity" : 0.2 }, > { "item" : { "name" : "lanternstickback" }, "rarity" : 0.2 } > ]] > ], > objects\apex\apexconsole1\apexconsole1.object 49a50 > "ownerOnly" : true, objects\crafting\alloyfurnace\alloyfurnace.object 77c77,98 < "npcToy" : {} --- > "scripts" : [ "/scripts/npcToyObject.lua"], > "npcToy" : { > "influence" : [ > "furnace", > "furnace", > "furnaceComplete" > ], > "defaultReactions" : { > "furnace" : [ > [1.0, "warmhands"], > [1.0, "crouchwarm"] > ], > "furnaceComplete" : [ > [1.0, "warmhands"], > [1.0, "crouchwarm"], > [1.0, "pokefire"] > ] > }, > "preciseStandPositionLeft" : [-1.5, 0.0], > "preciseStandPositionRight" : [2.5, 0.0], > "maxNpcs" : 1 > } objects\crafting\scififurnace\scififurnace.object 78c78,99 < "npcToy" : {} --- > "scripts" : [ "/scripts/npcToyObject.lua"], > "npcToy" : { > "influence" : [ > "furnace", > "furnace", > "furnaceComplete" > ], > "defaultReactions" : { > "furnace" : [ > [1.0, "warmhands"], > [1.0, "crouchwarm"] > ], > "furnaceComplete" : [ > [1.0, "warmhands"], > [1.0, "crouchwarm"], > [1.0, "pokefire"] > ] > }, > "preciseStandPositionLeft" : [-2.5, 0.0], > "preciseStandPositionRight" : [2.5, 0.0], > "maxNpcs" : 1 > } objects\crafting\stonefurnace\stonefurnace.object 77c77,98 < "npcToy" : {} --- > "scripts" : [ "/scripts/npcToyObject.lua"], > "npcToy" : { > "influence" : [ > "furnace", > "furnace", > "furnaceComplete" > ], > "defaultReactions" : { > "furnace" : [ > [1.0, "warmhands"], > [1.0, "crouchwarm"] > ], > "furnaceComplete" : [ > [1.0, "warmhands"], > [1.0, "crouchwarm"], > [1.0, "pokefire"] > ] > }, > "preciseStandPositionLeft" : [-1.5, 0.0], > "preciseStandPositionRight" : [2.5, 0.0], > "maxNpcs" : 1 > } objects\floran\planttorch\planttorch.object 12c12 < "race" : "generic", --- > "race" : "floran", objects\generic\campfire\campfire.object 91c91 < "autoCloseCooldown" : 3600 --- > "autoCloseCooldown" : 3600, 92a93,108 > "scripts" : [ "/scripts/npcToyObject.lua"], > "npcToy" : { > "influence" : [ > "campfire", > "campfire" > ], > "defaultReactions" : { > "campfire" : [ > [1.0, "warmhands"], > [1.0, "crouchwarm"] > ] > }, > "preciseStandPositionLeft" : [-2.5, 0.0], > "preciseStandPositionRight" : [2.5, 0.0], > "maxNpcs" : 1 > } objects\generic\ironswitch\ironswitch.object 44a45 > "ownerOnly" : true, objects\generic\poop\poop.object 35,37c35,48 < "npcToy" : {} < < // "soundEffect" : "/sfx/objects/torch.wav" --- > "scripts" : [ "/scripts/npcToyObject.lua" ], > "npcToy" : { > "influence" : [ > "poop" > ], > "defaultReactions" : { > "poop" : [ > [1.0, "annoyed"], > [1.0, "oooh"], > [1.0, "vomit"] > ] > }, > "maxNpcs" : 1 > } objects\generic\windchime\windchime.object 48c48,64 < "npcToy" : {} --- > "scripts" : [ "/scripts/npcToyObject.lua" ], > "npcToy" : { > "influence" : [ > "windchime", > "windchimeSound" > ], > "defaultReactions" : { > "windchime" : [ > [1.0, "wave"] > ], > "windchimeSound" : [ > [1.0, "smile"], > [1.0, "neutral"] > ] > }, > "maxNpcs" : 1 > } objects\glitch\castleswitch\castleswitch.object 50a51 > "ownerOnly" : true, objects\glitch\medievalswitchlever\medievalswitchlever.object 49a50 > "ownerOnly" : true, objects\glitch\medievaltoilet\medievaltoilet.object 39,41c39 < "sitPosition" : [5, 22], < < "npcToy" : {} --- > "sitPosition" : [5, 22] objects\hylotl\hylotlbutton\hylotlbutton.object 53a54 > "ownerOnly" : true, objects\hylotl\hylotlswitch\hylotlswitch.object 50a51 > "ownerOnly" : true, objects\minibiome\bioluminescence\glowchest\glowchest.object 25c25 < "image" : "glowchest.png:.", --- > "imageLayers" : [ { "image" : "glowchest.png:.", "fullbright" : true }, { "image" : "glowchestlit.png:." } ], 26a27 > 34c35 < "image" : "glowchest.png:.", --- > "imageLayers" : [ { "image" : "glowchest.png:.", "fullbright" : true }, { "image" : "glowchestlit.png:." } ], 35a37 > objects\minibiome\bioluminescence\glowtree\glowtree1.object 22c22 < "lightColor" : [255, 255, 167], --- > "lightColor" : [70, 70, 50], objects\minibiome\bioluminescence\glowtree\glowtree2.object 22c22 < "lightColor" : [255, 255, 167], --- > "lightColor" : [70, 70, 50], objects\minibiome\bioluminescence\glowtree\glowtree3.object 22c22 < "lightColor" : [255, 255, 167], --- > "lightColor" : [70, 70, 50], objects\minibiome\bioluminescence\glowtree\glowtree4.object 22c22 < "lightColor" : [60, 90, 100], --- > "lightColor" : [70, 70, 50], objects\minibiome\bioluminescence\glowtree\glowtree5.object 22c22 < "lightColor" : [40, 70, 80], --- > "lightColor" : [70, 70, 50], objects\mission\lunarbaseconsole\lunarbaseconsole.object 76a77 > "ownerOnly" : true, objects\outpost\bathroomurinal\bathroomurinal.object 31,33c31 < ], < < "npcToy" : {} --- > ] objects\outpost\outpostbutton\outpostbutton.object 53a54 > "ownerOnly" : true, objects\outpost\outpostconsole\outpostconsole.object 77a78 > "ownerOnly" : true, objects\outpost\outpostterminal\outpostterminal.object 52c52,61 < "npcToy" : {} --- > "scripts" : [ "/scripts/npcToyObject.lua" ], > "npcToy" : { > "influence" : [ > "console" > ], > "defaultReactions" : {}, > "preciseStandPositionLeft" : [-0.5, 0.0], > "preciseStandPositionRight" : [2.0, 0.0], > "maxNpcs" : 1 > } objects\tiered\tier10switch\tier10switch.object 55a56 > "ownerOnly" : true, objects\tiered\tier1switch\tier1switch.object 50a51 > "ownerOnly" : true, objects\tiered\tier2switch\tier2switch.object 63a64 > "ownerOnly" : true, objects\tiered\tier3switch\tier3switch.object 54a55 > "ownerOnly" : true, objects\tiered\tier4switch\tier4switch.object 53a54 > "ownerOnly" : true, objects\tiered\tier5switch\tier5switch.object 53a54 > "ownerOnly" : true, objects\tiered\tier6switch\tier6switch.object 53a54 > "ownerOnly" : true, objects\tiered\tier7switch\tier7switch.object 53a54 > "ownerOnly" : true, objects\tiered\tier8switch\tier8switch.object 54a55 > "ownerOnly" : true, objects\tiered\tier9switch\tier9switch.object 54a55 > "ownerOnly" : true, objects\wired\bigredbutton\bigredbutton.object 50a51 > "ownerOnly" : true, objects\wired\proximitysensor\proximitysensor.object 52a53 > "ownerOnly" : true, objects\wired\scanner\scanner.object 51a52 > "ownerOnly" : true, objects\wired\smallfloorbutton\smallfloorbutton.object 49a50 > "ownerOnly" : true, objects\wired\smallwallbutton\smallwallbutton.object 48a49 > "ownerOnly": true, objects\wired\smallwallswitch\smallwallswitchlighttoggle.object 52a53 > "ownerOnly" : true, objects\wired\smallwallswitch\smallwallswitchlit.object 52a53 > "ownerOnly" : true, objects\wired\standingturret\standingturret.object 134a135 > "/scripts/npcToyObject.lua", 168c169,183 < "npcToy" : {} --- > "npcToy" : { > "influence" : [ > "turret" > ], > "defaultReactions" : { > "turret" : [ > [1.0, "pressbutton"], > [1.0, "oh"], > [1.0, "laugh"] > ] > }, > "preciseStandPositionLeft" : [-1.0, 0.0], > "preciseStandPositionRight" : [1.0, 0.0], > "maxNpcs" : 1 > } objects\wired\tinywallbutton\tinywallbutton.object 48a49 > "ownerOnly" : true, objects\wired\tinywallswitch\tinywallswitch.object 47a48 > "ownerOnly" : true, projectiles\throwable\throwingboulder\throwingboulder.projectile 8c8 < "speed" : 40, --- > "speed" : 60, scripts\behavior.lua 21c21 < function BTree:new(path) --- > function BTree:new(path, parameters) 26a27,31 > parameters = parameters or {} > for k,v in pairs(parameters) do > behavior.parameters[k] = v > end > 333c338 < if parameters[tagString] then --- > if parameters[tagString] ~= nil then scripts\npctoyobject.lua 43a44,51 > function npcToy.isPriority() > return npcToy.npcCount > 0 and (npcToy.getMaxNpcs() == nil or npcToy.npcCount < npcToy.getMaxNpcs()) > end > > function npcToy.isOwnerOnly() > return entity.configParameter("npcToy.ownerOnly", false) > end > scripts\pathing.lua 505c505,508 < position[2] = math.ceil(position[2]) - (bounds[2] % 1) --- > > -- Align the vertical position of the bottom of our feet with the top > -- of the row of tiles below: > position = {position[1], math.ceil(position[2]) - (bounds[2] % 1)} scripts\actions\merchant.lua 87c87,88 < items = selectedItems --- > items = selectedItems, > paneLayoutOverride = entity.configParameter("merchant.paneLayoutOverride", nil) scripts\actions\movement.lua 417,418c417,418 < if x ~= nil then position[1] = x end < if y ~= nil then position[2] = y end --- > if x == nil then x = position[1] end > if y == nil then y = position[2] end 420c420 < position[2] = position[2] - mcontroller.boundBox()[2] --- > y = y - mcontroller.boundBox()[2] 422c422 < mcontroller.setPosition(position) --- > mcontroller.setPosition({x, y}) scripts\actions\reaction.lua 177a178,194 > if world.callScriptedEntity(target, "npcToy.isOwnerOnly") then > return storage.homeBoundary and world.polyContains(storage.homeBoundary, world.entityPosition(target)) > end > return true > end > return false > end > > -- param target > function npcToyIsPriority(args, output) > args = parseArgs(args, { > target = "" > }) > > local target = BData:getEntity(args.target) > if target == nil then return false end > if world.callScriptedEntity(target, "npcToy.isPriority") then scripts\behavior\decorator.lua 339a340,368 > end > > -- Optional > -- Returns result of child if runChild is set to true, otherwise return failure > BTOptional = BTDecorator.new() > decorators["optional"] = BTOptional > > function BTOptional.new(args) > local newNode = { > shouldRun = args.shouldRun > } > setmetatable(newNode, extend(BTOptional)) > return newNode > end > > function BTOptional.fromJson(node) > local args = node.parameters or {} > args = parseArgs(args, { > shouldRun = true > }) > return BTOptional.new(args) > end > > function BTOptional:run(dt) > if self.shouldRun then > return self:runChild(dt) > else > return false > end terrain\cave\corecaves.terrain 4c4 < "type" : "max", --- > "type" : "minmax", terrain\cave\densecaves.terrain 4c4 < "type" : "max", --- > "type" : "minmax", terrain\cave\mooncaves.terrain 6,86d5 < //stringy karst caves < // { < // "type" : "karstcave", < < // "layerResolution" : 15, < // "layerDensity" : 0.07, < < // "layerHeightVariation" : { < // "type" : "perlin", < // "octaves" : 2, < // "frequency" : 0.009, < // "amplitude" : 80 < // }, < // "bufferHeight" : 50, < < // "caveDecision" : { < // "type" : "perlin", < // "octaves" : 2, < // "frequency" : 0.01, < // "amplitude" : 1, < // "bias" : -0.05 < // }, < // "caveTaperPoint" : 0.08, < < // "caveHeightVariation" : { < // "type" : "perlin", < // "octaves" : 2, < // "frequency" : 0.032, < // "amplitude" : 24, < // "bias" : 16 < // }, < < // "caveFloorVariation" : { < // "type" : "perlin", < // "octaves" : 2, < // "frequency" : 0.1, < // "amplitude" : 10, < // "bias" : -6 < // } < // } < // , < // //larger karst chambers < // { < // "type" : "karstcave", < < // "layerResolution" : 27, < // "layerDensity" : 0.04, < < // "layerHeightVariation" : { < // "type" : "perlin", < // "octaves" : 2, < // "frequency" : 0.009, < // "amplitude" : 30 < // }, < // "bufferHeight" : 50, < < // "caveDecision" : { < // "type" : "perlin", < // "octaves" : 2, < // "frequency" : 0.012, < // "amplitude" : 2.4, < // "bias" : -0.9 < // }, < // "caveTaperPoint" : 0.5, < < // "caveHeightVariation" : { < // "type" : "perlin", < // "octaves" : 2, < // "frequency" : 0.05, < // "amplitude" : 24, < // "bias" : 38 < // }, < < // "caveFloorVariation" : { < // "type" : "perlin", < // "octaves" : 2, < // "frequency" : 0.08, < // "amplitude" : 8, < // "bias" : -14 < // } < // }, 92,93c11,12 < "amp" : 1, < "bias" : -0.2, --- > "amp" : 40, > "bias" : -8, 102,103c21,22 < "amp" : 1, < "bias" : -0.1, --- > "amp" : 40, > "bias" : -4, 117c36 < "bias" : 0.05 --- > "bias" : 0.12 137,167d55 < // , < // //worm caves < // { < // "type" : "displacement", < // "xType" : "perlin", < // "xOctaves" : 1, < // "xFreq" : 0.05, < // "xAmp" : 2, < // "xXInfluence" : 0.2, < // "yType" : "perlin", < // "yOctaves" : 1, < // "yFreq" : 0.05, < // "yAmp" : 2, < // "yYInfluence" : 0.5, < < // "source" : { < // "type" : "wormcave", < < // "sectorSize" : 64, < // "sectorRadius" : 2, < // "numberOfWormsPerSectorRange" : [0.2, 0.2], < // "wormSpeed" : 1.0, < < // "wormSizeRange" : [6, 10], < // "wormLengthRange" : [60, 120], < // "wormTaperDistance" : 15, < // "wormAngleRange" : [0, 6.283], < // "wormTurnChance" : 0.2, < // "wormTurnRate" : 0.08 < // } < // } terrain\cave\moonsurfacecaves.terrain 11,12c11,12 < "amp" : 1, < "bias" : -0.3, --- > "amp" : 40, > "bias" : -12, 21,22c21,22 < "amp" : 1, < "bias" : -0.2, --- > "amp" : 40, > "bias" : -8, terrain\cave\normalcaves.terrain 4c4 < "type" : "max", --- > "type" : "minmax", terrain\cave\surfacecaves.terrain 4c4 < "type" : "max", --- > "type" : "minmax", terrain\surface\flatssurface.terrain 8,10c8,11 < "xFreq" : 0.2, < "xAmp" : 1, < "xXInfluence" : 0, --- > "xFreq" : 0.07, > "xAmp" : 3, > "xXInfluence" : 0.3, > "xYInfluence" : 0.3, 12,14c13,15 < "yOctaves" : 3, < "yFreq" : 0.05, < "yAmp" : 5, --- > "yOctaves" : 1, > "yFreq" : 0.1, > "yAmp" : 1, 16,17d16 < "yBias" : 0.5, < "yClamp" : [0, 1], 20c19 < //very little variation --- > //low hills 24c23 < "xFreq" : 0.02, --- > "xFreq" : 0.01, 27,28c26,27 < "yOctaves" : 2, < "yFreq" : 0.005, --- > "yOctaves" : 1, > "yFreq" : 0.015, 30c29,31 < "yYInfluence" : 0, --- > "yClamp" : [-60, 10], > "yClampSmoothing" : 5, > "yYInfluence" : 0.2, 33c34,43 < "type" : "flatSurface", --- > //slower, lower hills > "type" : "displacement", > "xType" : "perlin", > "xOctaves" : 2, > "xFreq" : 0.01, > "xAmp" : 0, > "yType" : "perlin", > "yOctaves" : 1, > "yFreq" : 0.005, > "yAmp" : 10, 35c45,49 < "adjustment" : 0 --- > "source" : { > "type" : "flatSurface", > > "adjustment" : 0 > } terrain\surface\remixedcanyonssurface.terrain 25c25 < "freq" : 0.0095, --- > "freq" : 0.0105, 27c27 < "bias" : 2.5, --- > "bias" : 2.3, 42,43c42 < "yAmp" : 50, < "yBias" : 80, --- > "yAmp" : 40, 49c48 < "adjustment" : 40 --- > "adjustment" : -50 54,69c53 < // hills < "type" : "displacement", < "xType" : "perlin", < "xOctaves" : 2, < "xFreq" : 0.01, < "xAmp" : 0, < "yType" : "perlin", < "yOctaves" : 2, < "yFreq" : 0.015, < "yAmp" : 30, < "yClamp" : [-20, 10], < "yClampSmoothing" : 5, < "yYInfluence" : 0.2, < < "source" : { < "type" : "flatSurface", --- > "type" : "mix", 71c55,121 < "adjustment" : 50 --- > "mixSource" : { > "type" : "perlin", > "function" : "perlin", > "octaves" : 2, > "freq" : 0.0045, > "amp" : 7, > "bias" : 1.0, > "xInfluence" : 1, > "yInfluence" : 0.1 > }, > > "aSource" : { > //smallish mountains > "type" : "displacement", > "xType" : "perlin", > "xOctaves" : 1, > "xFreq" : 0.008, > "xAmp" : 0, > "yType" : "perlin", > "yOctaves" : 3, > "yFreq" : 0.0085, > "yAmp" : 50, > "yBias" : -10, > "yClamp" : [-60, 20], > "yClampSmoothing" : 10, > "yYInfluence" : 0.1, > > "source" : { > "type" : "flatSurface", > > "adjustment" : 40 > } > }, > > "bSource" : { > //low hills > "type" : "displacement", > "xType" : "perlin", > "xOctaves" : 2, > "xFreq" : 0.01, > "xAmp" : 0, > "yType" : "perlin", > "yOctaves" : 1, > "yFreq" : 0.012, > "yAmp" : 20, > "yClamp" : [-60, 15], > "yClampSmoothing" : 5, > "yYInfluence" : 0.2, > > "source" : { > //slower, lower hills > "type" : "displacement", > "xType" : "perlin", > "xOctaves" : 2, > "xFreq" : 0.01, > "xAmp" : 0, > "yType" : "perlin", > "yOctaves" : 1, > "yFreq" : 0.005, > "yAmp" : 20, > > "source" : { > "type" : "flatSurface", > > "adjustment" : 0 > } > } terrain\surface\remixedmildcanyonssurface.terrain 27c27 < "bias" : 3.4, --- > "bias" : 2.2, 33c33 < //big old canyons --- > //canyons 42c42 < "yAmp" : 30, --- > "yAmp" : 20, 61c61 < "bias" : 6.0, --- > "bias" : 4.0, 82c82 < "adjustment" : 40 --- > "adjustment" : 30 116c116 < "adjustment" : 20 --- > "adjustment" : 0 treasure\biome.treasurepools 693a694,695 > {"weight" : 0.3, "item" : "glowbed-recipe"}, > {"weight" : 0.3, "item" : "glowchair-recipe"},