FILES ----- dungeons\space\playerstation\parts.config interface\cockpit\cockpit.config interface\cockpit\cockpit.lua [NEW] interface\cockpit\systemtooltip.png items\active\weapons\bow\harpoongun\harpoongun.activeitem items\buildscripts\buildsapling.lua [NEW] objects\protectorate\objects\protectoratebooks2\protectoratebooks2icon.png [NEW] objects\protectorate\objects\protectoratetentacle\icon.png objects\protectorate\objects\protectoratetentacle\protectoratetentacle.object [NEW] objects\protectorate\objects\protectoratetentacle2\icon.png objects\protectorate\objects\protectoratetentacle2\protectoratetentacle2.object [NEW] plants\trees\seatrees\foliage\flowy\saplingicon.png recipes\furniture2\lights\industriallight.recipe scripts\actions\movement.lua scripts\actions\overrides.lua scripts\actions\reaction.lua scripts\deployment\playermechdeployment.lua vehicles\modularmech\modularmech.vehicle DIFFS ----- dungeons\space\playerstation\parts.config 38,41c38,41 < ["titaniumbar", 50], < ["goldbar", 70], < ["silverbar", 120], < ["wire", 200] --- > ["titaniumbar", 25], > ["goldbar", 35], > ["silverbar", 60], > ["wire", 100] 65,68c65,68 < ["titaniumbar", 450], < ["goldbar", 600], < ["silverbar", 160], < ["wire", 600] --- > ["titaniumbar", 225], > ["goldbar", 300], > ["silverbar", 80], > ["wire", 300] 90,94c90,94 < ["titaniumbar", 50], < ["goldbar", 70], < ["silverbar", 120], < ["glass", 40], < ["wire", 200] --- > ["titaniumbar", 25], > ["goldbar", 35], > ["silverbar", 60], > ["glass", 20], > ["wire", 100] 116,119c116,119 < ["titaniumbar", 50], < ["goldbar", 70], < ["silverbar", 120], < ["wire", 200] --- > ["titaniumbar", 25], > ["goldbar", 35], > ["silverbar", 60], > ["wire", 100] 141,144c141,144 < ["titaniumbar", 50], < ["goldbar", 70], < ["silverbar", 120], < ["wire", 200] --- > ["titaniumbar", 25], > ["goldbar", 35], > ["silverbar", 60], > ["wire", 100] 164,167c164,167 < ["titaniumbar", 40], < ["goldbar", 50], < ["silverbar", 60], < ["wire", 100] --- > ["titaniumbar", 20], > ["goldbar", 25], > ["silverbar", 30], > ["wire", 50] 187,191c187,191 < ["titaniumbar", 120], < ["goldbar", 150], < ["silverbar", 60], < ["glass", 120], < ["wire", 100] --- > ["titaniumbar", 60], > ["goldbar", 75], > ["silverbar", 30], > ["glass", 60], > ["wire", 50] 211,214c211,214 < ["titaniumbar", 40], < ["goldbar", 50], < ["silverbar", 60], < ["wire", 100] --- > ["titaniumbar", 20], > ["goldbar", 25], > ["silverbar", 30], > ["wire", 50] 236,240c236,240 < ["titaniumbar", 120], < ["goldbar", 150], < ["silverbar", 60], < ["glass", 120], < ["wire", 100] --- > ["titaniumbar", 60], > ["goldbar", 75], > ["silverbar", 30], > ["glass", 60], > ["wire", 50] 260,264c260,264 < ["titaniumbar", 40], < ["goldbar", 50], < ["silverbar", 60], < ["glass", 40], < ["wire", 100] --- > ["titaniumbar", 20], > ["goldbar", 25], > ["silverbar", 30], > ["glass", 20], > ["wire", 50] 284,288c284,288 < ["titaniumbar", 40], < ["goldbar", 50], < ["silverbar", 60], < ["glass", 40], < ["wire", 100] --- > ["titaniumbar", 20], > ["goldbar", 25], > ["silverbar", 30], > ["glass", 20], > ["wire", 50] 308,312c308,312 < ["titaniumbar", 40], < ["goldbar", 50], < ["silverbar", 60], < ["glass", 40], < ["wire", 100] --- > ["titaniumbar", 20], > ["goldbar", 25], > ["silverbar", 30], > ["glass", 20], > ["wire", 50] 332,336c332,336 < ["titaniumbar", 40], < ["goldbar", 50], < ["silverbar", 60], < ["glass", 40], < ["wire", 100] --- > ["titaniumbar", 20], > ["goldbar", 25], > ["silverbar", 30], > ["glass", 20], > ["wire", 50] 357,361c357,361 < ["titaniumbar", 50], < ["goldbar", 60], < ["silverbar", 90], < ["glass", 40], < ["wire", 150] --- > ["titaniumbar", 25], > ["goldbar", 30], > ["silverbar", 45], > ["glass", 20], > ["wire", 75] 382,386c382,386 < ["titaniumbar", 50], < ["goldbar", 60], < ["silverbar", 90], < ["glass", 40], < ["wire", 150] --- > ["titaniumbar", 25], > ["goldbar", 30], > ["silverbar", 45], > ["glass", 20], > ["wire", 75] 407,411c407,411 < ["titaniumbar", 50], < ["goldbar", 60], < ["silverbar", 90], < ["glass", 40], < ["wire", 150] --- > ["titaniumbar", 25], > ["goldbar", 30], > ["silverbar", 45], > ["glass", 20], > ["wire", 75] 432,436c432,436 < ["titaniumbar", 50], < ["goldbar", 60], < ["silverbar", 90], < ["glass", 40], < ["wire", 150] --- > ["titaniumbar", 25], > ["goldbar", 30], > ["silverbar", 45], > ["glass", 20], > ["wire", 75] 456,460c456,460 < ["titaniumbar", 50], < ["goldbar", 70], < ["silverbar", 60], < ["wire", 100], < ["salvagetier5", 40] --- > ["titaniumbar", 25], > ["goldbar", 35], > ["silverbar", 30], > ["wire", 50], > ["salvagetier5", 20] 479,482c479,482 < ["titaniumbar", 50], < ["goldbar", 80], < ["silverbar", 40], < ["salvagetier4", 20] --- > ["titaniumbar", 25], > ["goldbar", 40], > ["silverbar", 20], > ["salvagetier4", 10] 501,504c501,504 < ["titaniumbar", 50], < ["goldbar", 80], < ["silverbar", 40], < ["salvagetier4", 20] --- > ["titaniumbar", 25], > ["goldbar", 40], > ["silverbar", 20], > ["salvagetier4", 10] interface\cockpit\cockpit.config 791c791,792 < "mouseTransparent" : true --- > "mouseTransparent" : true, > "zlevel" : 10 803c804,819 < "mouseTransparent" : true --- > "mouseTransparent" : true, > "zlevel" : 10 > }, > > "systemName" : { > "type" : "label", > "visible" : false, > "position" : [198, 315], > "hAnchor" : "mid", > "vAnchor" : "top", > "width" : 120, > "value" : "SYSTEM NAME", > "color" : "green", > "fontSize" : 12, > "mouseTransparent" : true, > "zlevel" : 10 1414a1431,1479 > }, > > "systemTooltip" : { > "exploredLabel" : { > "explored" : "VISITED", > "unexplored" : "UNEXPLORED" > }, > "exploredLabelColor" : { > "explored" : [255, 255, 255], > "unexplored" : [150, 150, 150] > } > }, > "systemTooltipConfig" : { > "background" : { > "zlevel" : 0, > "type" : "background", > "fileBody" : "/interface/cockpit/systemtooltip.png" > }, > "name" : { > "type" : "label", > "position" : [64, 3], > "hAnchor" : "mid", > "vAnchor" : "bottom", > "width" : 126, > "fontSize" : 8, > "value" : "Anwar al Farkadain Precipice", > "color" : "green", > "mouseTransparent" : true > }, > "type" : { > "type" : "label", > "position" : [4, 21], > "hAnchor" : "left", > "vAnchor" : "top", > "width" : 126, > "value" : "Gentle Star", > "color" : "white", > "mouseTransparent" : true > }, > "explored" : { > "type" : "label", > "position" : [124, 21], > "hAnchor" : "right", > "vAnchor" : "top", > "width" : 126, > "value" : "UNEXPLORED", > "color" : "gray", > "mouseTransparent" : true > } interface\cockpit\cockpit.lua 27a28 > self.tooltipOverride = nil 87a89,91 > if self.tooltipOverride then > return self.tooltipOverride > end 99a104 > self.tooltipOverride = nil 427a433 > widget.setVisible("systemName", false) 492,494c498,523 < local hover = closestSystemInRange(View:toUniverse(View:mousePosition()), systems, 2.5) < if hover and not compare(hover, hover) and not compare(hover, selection) then < pane.playSound(self.sounds.hover) --- > local newHover = closestSystemInRange(View:toUniverse(View:mousePosition()), systems, 2.5) > if newHover and not compare(newHover, selection) then > local tooltip = config.getParameter("systemTooltip") > local tooltipGui = config.getParameter("systemTooltipConfig") > > local name = celestial.planetName(newHover) > if name then > tooltipGui.name.value = name > > local starType = celestial.planetParameters(newHover).typeName or "default" > tooltipGui.type.value = config.getParameter(string.format("starTypeNames.%s", starType)) > tooltipGui.type.color = config.getParameter(string.format("starTypeColors.%s", starType)) > > local explored = player.isMapped(newHover) > if explored then > tooltipGui.explored.value, tooltipGui.explored.color = tooltip.exploredLabel.explored, tooltip.exploredLabelColor.explored > else > tooltipGui.explored.value, tooltipGui.explored.color = tooltip.exploredLabel.unexplored, tooltip.exploredLabelColor.unexplored > end > > self.tooltipOverride = tooltipGui; > end > > if not compare(newHover, hover) then > pane.playSound(self.sounds.hover) > end 496c525 < hover = hover --- > hover = newHover 778a808,810 > widget.setVisible("systemName", true) > widget.setText("systemName", celestial.planetName(system)) > 983a1016 > widget.setVisible("systemName", false) items\active\weapons\bow\harpoongun\harpoongun.activeitem 35c35,37 < "walkWhileFiring" : true, --- > "primaryAbilityType" : "bowshot", > "primaryAbility" : { > "walkWhileFiring" : true, 37c39 < "fireOffset" : [1.75, 0], --- > "fireOffset" : [1.75, 0], 39c41 < "energyPerShot" : 40, --- > "energyPerShot" : 40, 41,42c43,44 < "cooldownTime" : 0.25, < "inaccuracy" : 0.01, --- > "cooldownTime" : 0.25, > "inaccuracy" : 0.01, 44,46c46 < "drawFrameSelector" : "bowImageSelector", < "drawPowerMultiplier" : "drawTimeMultiplier", < "drawSpeedMultiplier" : "drawTimeMultiplier", --- > "drawFrameSelector" : "bowImageSelector", 48,53c48,65 < "projectileType" : "harpoon", < "powerProjectileType" : "chargedharpoon", < "powerProjectileTime" : [0.9, 1.1], < "projectileParameters" : { < "speed" : 80, < "power" : 6.5 --- > "drawPowerMultiplier" : "drawTimeMultiplier", > "drawSpeedMultiplier" : "drawTimeMultiplier", > > "drawArmFrames" : ["rotation", "rotation", "rotation", "rotation", "rotation"], > > "projectileType" : "harpoon", > "powerProjectileType" : "chargedharpoon", > "powerProjectileTime" : [0.9, 1.1], > "projectileParameters" : { > "speed" : 80, > "power" : 6.5 > }, > > "stances" : { > "fire" : { > "frontArmFrame" : "rotation" > } > } items\buildscripts\buildsapling.lua 3a4,9 > if not parameters.stemName then > -- a pine tree isn't PERFECTLY generic but it's close enough > parameters.stemName = "pineytree" > parameters.foliageName = parameters.foliageName or "pinefoliage" > end > objects\protectorate\objects\protectoratetentacle\protectoratetentacle.object 12c12 < "inventoryIcon" : "protectoratetentacleicon.png", --- > "inventoryIcon" : "icon.png", objects\protectorate\objects\protectoratetentacle2\protectoratetentacle2.object 12c12 < "inventoryIcon" : "protectoratetentacle2icon.png", --- > "inventoryIcon" : "icon.png", recipes\furniture2\lights\industriallight.recipe 3c3 < { "item" : "industriallight", "count" : 1 }, --- > { "item" : "durasteelbar", "count" : 1 }, scripts\actions\movement.lua 59a60 > local direction = util.toDirection(args.direction) 73c74 < if not world.rectTileCollision(rect.translate(bounds, vec2.add(position, {args.direction * 0.2, yDir}))) then --- > if not world.rectTileCollision(rect.translate(bounds, vec2.add(position, {direction * 0.2, yDir}))) then 84,86c85,87 < local boundsEnd = args.direction > 0 and bounds[3] or bounds[1] < local wallPoint = {position[1] + boundsEnd + args.direction * 0.5, position[2] + bounds[2] + 0.5} < local groundPoint = {position[1] + boundsEnd - args.direction * 0.5, position[2] + bounds[2] - 0.5} --- > local boundsEnd = direction > 0 and bounds[3] or bounds[1] > local wallPoint = {position[1] + boundsEnd + direction * 0.5, position[2] + bounds[2] + 0.5} > local groundPoint = {position[1] + boundsEnd - direction * 0.5, position[2] + bounds[2] - 0.5} 101c102 < if world.rectTileCollision(rect.translate(groundRect, {args.direction * x, y + yDir}), {"Null", "Block", "Dynamic", "Platform"}) then --- > if world.rectTileCollision(rect.translate(groundRect, {direction * x, y + yDir}), {"Null", "Block", "Dynamic", "Platform"}) then 113,114c114,115 < mcontroller.controlMove(args.direction, run) < if not self.setFacingDirection then controlFace(args.direction) end --- > mcontroller.controlMove(direction, run) > if not self.setFacingDirection then controlFace(direction) end 257c258,264 < if not self.setFacingDirection then controlFace(mcontroller.movingDirection()) end --- > if not self.setFacingDirection then > if not mcontroller.groundMovement() then > controlFace(mcontroller.velocity()[1]) > elseif mcontroller.running() or mcontroller.walking() then > controlFace(mcontroller.movingDirection()) > end > end scripts\actions\overrides.lua 92c92 < tree = behavior.behavior(args.behavior.name, {}, _ENV, board) --- > tree = behavior.behavior(args.behavior.name, config.getParameter("behaviorConfig", {}), _ENV, board) scripts\actions\reaction.lua 61a62 > if args.target and not world.entityExists(args.target) then return false end 276c277,278 < tree = behavior.behavior(reaction.behavior, reaction.parameters or {}, _ENV, board) --- > local parameters = sb.jsonMerge(config.getParameter("behaviorConfig", {}), reaction.parameters or {}) > tree = behavior.behavior(reaction.behavior, parameters, _ENV, board) scripts\deployment\playermechdeployment.lua 222a223,226 > function teleportOut() > despawnMech() > end > vehicles\modularmech\modularmech.vehicle 180a181 > "dontstarve",