{"componentChunkName":"component---src-components-mdx-custom-renderer-js","path":"/releases/2_08","result":{"data":{"mdx":{"id":"6351dc06-6f1c-51e9-ac0f-d18cd4ee6698","body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"h1\", {\n    \"id\": \"v28\"\n  }, \"V2.8\"), mdx(\"h2\", {\n    \"id\": \"general-changes\"\n  }, \"General Changes\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Circuits V2 has been added to palette search. We've also made an overhaul of the search feature to add filters. Be sure to check it out.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"We are migrating to a new style for variable chips:\", mdx(\"ul\", {\n    parentName: \"li\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"These include get \", mdx(\"em\", {\n    parentName: \"li\"\n  }, \"and\"), \" set functionality in one chip.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"There will be one chip for each type in the palette that can be configured local or synced.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Old style variable chips, along with \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Set Value\"), \" will eventually go away.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"New style variables do not yet have changed events but they are coming soon.\"))), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Player Definition Board\"), \" can now be used to create logic on players.\", mdx(\"ul\", {\n    parentName: \"li\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"One \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Player Definition Board\"), \" in each room can be set to Active from the Configuration menu.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"All nodes within that board will be copied into a \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Player Reference Board\"), \" on each player who joins the room.\"))), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Type names now appear above ports when hovering them with the wire tool.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Many math nodes now work with \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Vector3\"), \"s:\", mdx(\"ul\", {\n    parentName: \"li\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Add Node\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Divide Node\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Multiply Node\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Subtract Node\")))), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"We now support adding and removing from lists with up to 50 elements.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Base classes are now supported in CV2. This means that many existing types can be connected directly to \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Creation Object\"), \" ports, including:\", mdx(\"ul\", {\n    parentName: \"li\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"AI\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Button\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"CreationObject\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Die\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"DynamicLight\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Emitter\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"LogScreen\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"PatrolPoint\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Piston\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Rotator\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Sound Effect Gizmo\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Text Tool\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Toggle Button\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Trigger Volume\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Vector Gadget\"))), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"We've made a public \", mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://github.com/tyleo-rec/CircuitsV2Resources/blob/master/misc/chip_data.json\"\n  }, \"json file\"), \" describing our chips.\", mdx(\"ul\", {\n    parentName: \"li\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Feel free to use this file on projects of your own.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"If you update the data in this file we may pull it back into the game!\")))), mdx(\"h2\", {\n    \"id\": \"new-chips\"\n  }, \"New Chips\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Get Local Camera Forward\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Get Local Camera Up\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Get Forward Vector\"), mdx(\"ul\", {\n    parentName: \"li\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Works with \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"CreationObject\"), \" and \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Player\")))), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Get Up Vector\"), mdx(\"ul\", {\n    parentName: \"li\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Works with \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"CreationObject\"), \" and \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Player\")))), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Get Velocity\"), mdx(\"ul\", {\n    parentName: \"li\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Works with \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"CreationObject\"), \" and \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Player\")))), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Instance List<bool>\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Instance List<CreationObject>\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Instance List<float>\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Instance List<int>\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Instance List<Player>\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Instance List<Vector3>\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Lerp\"), mdx(\"ul\", {\n    parentName: \"li\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Works with \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Vector3\"), \" and \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"float\")))), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"List Add\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"List All True\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"List Any True\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"List Concat\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"List Contains\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"List Insert\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"List Remove At\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"List Remove Last\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"List Divide\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"List Max\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"List Min\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"List Multiply\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"List Subtract\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"List Sum\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Player Definition Board\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Player Left Hand Position\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Player Right Hand Position\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Player Left Hand Finger Direction\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Player Right Hand Finger Direction\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Player Left Hand Velocity\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Player Right Hand Velocity\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Time Get Precise Seconds\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Time Get Universal Seconds\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Time Get Universal Time\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Variable (AI)\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Variable (Combatant)\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Variable (CreationObject)\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Variable (bool)\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Variable (float)\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Variable (int)\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Variable (List<bool>)\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Variable (List<CreationObject>)\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Variable (List<float>)\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Variable (List<int>)\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Variable (List<Player>)\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Variable (List<Vector3>)\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Variable (Player)\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Variable (string)\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Variable (Vector3)\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Vector3 Cross\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Vector3 Dot\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Vector3 Normalize\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Vector3 Scale\"))), mdx(\"h2\", {\n    \"id\": \"bugs-fixed\"\n  }, \"Bugs Fixed\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"If you fail to spawn a \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Self Chip\"), \" or \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Circuit Board\"), \" (or any other chip) spawning additional chips is now possible again.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Hovering over ports will no longer clear their default values.\")), mdx(\"h2\", {\n    \"id\": \"links\"\n  }, \"Links\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, mdx(\"a\", {\n    parentName: \"strong\",\n    \"href\": \"/releases/\"\n  }, \"<- Back to Releases\"))));\n}\n;\nMDXContent.isMDXComponent = true;","frontmatter":{"demo":null,"difficulty":null,"summary":null,"tags":null,"title":"","type":null,"updated":null}}},"pageContext":{"id":"6351dc06-6f1c-51e9-ac0f-d18cd4ee6698","fields":{"slug":"/releases/2_08"},"frontmatter":{"title":"","type":null,"order":null,"hidden":null,"hideChildren":null,"breadcrumbs":null},"headings":[{"value":"V2.8","depth":1}],"tableOfContents":{"items":[{"url":"#v28","title":"V2.8","items":[{"url":"#general-changes","title":"General Changes"},{"url":"#new-chips","title":"New Chips"},{"url":"#bugs-fixed","title":"Bugs Fixed"},{"url":"#links","title":"Links"}]}]},"parent":{"modifiedTime":"2021-11-28","relativePath":"releases/2_08.md"}}},"staticQueryHashes":["2814688963","32046230","338033027","598566803","811020565"]}