Руководство по интегральным схемам: различия между версиями
imported>Waltermeldron (Guide to Integrated Circuits) |
RosSample (обсуждение | вклад) Нет описания правки |
||
(не показано 45 промежуточных версий 7 участников) | |||
Строка 1: | Строка 1: | ||
{{Speech | |||
|name=Учёный | |||
|text=Ура, я наконец закончил проектировать мой переводчик/детонатор! Всмысле шаттл уже улетел?! | |||
|image=[[File:Scientist_generic.png|64px|right]] | |||
}} | |||
'''Интегральные схемы''' это способ автоматизировать различные действия удобно и легко! Можно создать схему, которая будет открывать шлюз только по секретной фразе, или схему, которая будет следовать за экипажем и кричать им всякие гадости, ну или... Что угодно!<br> | |||
Прежде чем начать программировать ваши схемы потребуется: | |||
= Необходимые предметы = | |||
==[[File:Integrated_circuit.png]] Интегральная Плата (Integrated Circuit) == | |||
Интегральная плата - основа всех схем. Вся ваша конструкция будет основываться на этом плате, однако сама по себе она сработать не сможет. | |||
Прежде всего, плата требует энергию, которую ей можно обеспечить с помощью[[File:Powercell.png]]'''Батарейки'''. Просто используйте {{Leftclick}} батарейку на плате. В случае если вам потребуется поменять батарейку или вытащить её для подзарядки, используйте [[File:Screwdriver tool.png]] '''Отвёртку''' на плате. Некоторые оболочки можно прикрутить к полу. Такие оболочки будут питаться от ЛКП в комнате, вместо батарейки внутри. | |||
Батарейки будут расходовать энергию при активации компонентов. При нажатии на иконку '''i''' у компонента, можно увидеть расход его энергии. | |||
Вы можете взаимодействовать с платой, активируя её в руке, однако с ней мало что можно сделать в такой форме. | |||
Когда вы вставите батарейку, станет возможно вставить плату в [[File:Shell_bot.png]][[Guide_to_Circuits#Оболочка (Shell)|Оболочку]]. | |||
== | ==[[File:Shell_bot.png]] Оболочка (Shell) == | ||
Оболочка дает возможность добавлять компоненты в вашу интегральную схему, взаимодействовать с платой и добавлять способы взаимодействия с ней. | |||
В зависимости от оболочки, вам может потребоваться применить [[File:Screwdriver tool.png]] '''Отвёртку''' для её сбора, прежде чем вы сможете '''засунуть''' {{Leftclick}} в неё [[File:Integrated_circuit.png]][[Guide_to_Circuits#Интегральная Плата (Integrated Circuit)|плату]]. | |||
Если вам понадобится вытащить плату из оболочки, просто используйте на ней [[File:Screwdriver tool.png]] '''Отвёртку'''. | |||
= | Разные оболочки имеют свой размер. Размер показывает, сколько компонентов вы можете разместить внутри оболочки. Есть четыре размера: | ||
- Compact Remote - A | * '''Маленький''': До 25 компонентов | ||
- | * '''Средний''': До 50 компонентов | ||
- | * '''Большой''': До 100 компонентов | ||
- | * '''Очень большой''': До 500 компонентов | ||
- | |||
Существует множество видов оболочек, каждая из которых имеет свои особенности:<br> | |||
(Если вы не уверены что такое "выводы" или "сущности", прочтите раздел [[Guide_to_Circuits#Типы сигналов (Signal types)|типы сигналов]]) | |||
{| class="wikitable" | |||
|- | |||
! Название || Описание || Размер || Требуемое исследование || Требуется сборка? | |||
|- | |||
| Compact Remote || Простейшая переносная оболочка. Имеет один вывод, который активируется при {{Leftclick}} '''использовании''' в руке. || Маленький || Нет || Нет | |||
|- | |||
|Assembly | |||
|Оболочка, которую можно прикреплять к таким компонентам, как сигналеры, датчики приближения, таймеры, вентили, игнайтеры, провода и т.д. Для перевода в режим прикрепления {{Rightclick}} отвёрткой. | |||
|Маленький | |||
|Advanced Shell Research | |||
|Да и Нет | |||
|- | |||
| Bot || Простейшая стационарная оболочка. Имеет один вывод, который активируется при {{Leftclick}} '''использовании'''. || Большой || Advanced Shell Research || Да | |||
|- | |||
| Controller || Портативная оболочка, похожая на "Compact Remote", но в отличие от "Compact Remote" у неё имеется несколько кнопок: {{Leftclick}} для основного сигнала (подписан "Signal" в плате), Alt-{{Leftclick}} для альтернативного сигнала, и {{Rightclick}} для дополнительного. || Средний || Advanced Shell Research || Нет | |||
|- | |||
|Dispenser | |||
|Стационарная оболочка, способная принимать и выдавать предметы. Её вывод возвращает списком предметы, находящиеся в ней, последний добавленный предмет, и два триггера при добавлении и изъятия предмета. Чтобы выдать предмет нажмите на кнопку '''+''' в правом верхнем углу экрана, вам откроется окно "Vend", где вы сможете выбрать предметы для выдачи, которые будут выдаваться при триггере "Vend Item". Чтобы засунуть предметы внутрь используйте {{Leftclick}} с предметом в руке. | |||
|Большой | |||
|Advanced Shell Research | |||
|Да | |||
|- | |||
| Airlock || Контролируеммый платой шлюз. Чтобы вставить плату используйте {{Leftclick}}, чтобы вытащить используйте [[File:Screwdriver tool.png]] '''Отвёртку'''. Имеет множество входных сигналов, позволяющих открыть, закрыть, заболтировать и разболтировать шлюз. Также имеет выводы, уведомляющие вас о том, когда данные действия будут выполянться, плюс два числа возвращающие 1 или 0, в зависимости от того если шлюз закрыт/заболтирован. Также возвращает последнего пользователя шлюза в виде сущности. || Большой || Advanced Shell Research || Да | |||
|- | |||
| Gun || Портативная оболочка, которая на самом деле ПИСТОЛЕТ. Имеет бесконечный запас патронов и возвращает как сущность стреляющего, во что попала пуля, а так же триггер, который срабатывает при выстреле. || Средний || Advanced Shell Research || Нет | |||
|- | |||
| Money Bot || Стационарная оболочка, позволяющая принимать и выдавать кредиты! Имеет выводы, которые сообщают о принятии денег, о количестве принятых денег и о количестве денег в оболочке. || Большой || Advanced Shell Research || Да | |||
|- | |||
| Scanner Gate || Простая оболочка, возвращающая любую сущность, что через неё проходит. || Большой || Advanced Shell Research || Да | |||
|- | |||
| Scanner || Портативная оболочка. {{Leftclick}} используйте её на чём угодно, чтобы вывести это "что угодно" в качестве сущности. || Большой || Advanced Shell Research || Нет | |||
|- | |||
| Brain-Computer Interface || Интегральные схемы, но в вашей голове! Для подробной информации обратитесь к разделу [[Guide_to_Circuits#Brain-Computer Interfaces|Нейрокомпьютерные Интерфейсы]]. || Маленький || Brain-Computer Interfaces || Да | |||
|- | |||
| Drone || Да этот парень может двигаться не хуже вас! Имеет множество вводов, каждый из которых отвечает за сторону в которую он может двигаться. || Большой || Movable Shell Research || Да | |||
|- | |||
| Server || То же что "Bot" оболочка, но больше и лучше. || Очень большой || Server Technology Research || Да | |||
|} | |||
You can also add circuits to a few items and use them as shells. These are: | |||
{| class="wikitable" | |||
|- | |||
! Name || Description || Size | |||
|- | |||
| Camera || Will let you take a picture by setting the target of the picture, the coordinates of where the picture will be taken, and the size of the picture.|| Маленький | |||
|- | |||
|MOD Circuit Adapter module | |||
|A MOD suit module that lets you add circuits. To do so, you have to add the circuit when the separated module is in your hand as if it were a normal shell. To take it out use a screwdriver. Once its inside the MOD suit, you cannot put components into the circuit, you can only put components when you're holding the module on your hand. You can, however, interface with the circuit by using the module from either the MOD Interface Panel or the button in the top left. | |||
When inserted into an active modsuit, it gives you a few options to interact with it, like toggling the suit off and on, letting you change the active module, tell you the active module, and return the wearer as an entity output. | |||
|Большой | |||
|- | |||
|Synthesizer, Headphones and Spacepods | |||
|Let you choose an instrument, choose the sustain mode, insert a song via a string (each item of the string being a new line), play the song, stop the song, set how many times it should repeat, set the BPM, the volume, the volume dropoff threshold, the note shift, the note sustain value and the held note decay. | |||
It also lets you know if its currently playing, when it starts playing and when it stops playing. | |||
You could use this to make a synchronized band of sorts. | |||
| | |||
|} | |||
Once you have a shell with an integrated circuit in it, you may access the circuit in it by using a [[File:Multitool.png]] '''Multitool''' on it, and you may also begin to add [[File:Circuit_component.png]][[Guide_to_Circuits#Components|Components]] to your circuit. | |||
=[[File:Circuit_component.png]] Components = | |||
== Signal types == | |||
Every single thing in circuits revolves around these signal types. They send either information or triggers, which is the bases of circuits. There are 7 types of signals: | |||
* '''Signal''': Think of these as a pulse of electricity or a shockwave. They are NOT binary, when you activate one a chain reaction begins throughout the rest. Can easily be turned into numbers but you should only do so for checking whether its 0 or not, since the value itself makes no sense. | |||
* '''Number''': Any number your heart desires. Can also be used as a signal component, with any number above 0 activating a signal. You can also connect them to a string input. | |||
* '''String''': Any ascii character. If you try to write numbers in this, they will not be classified as numbers, so you can't do arithmetic equations with them. | |||
* '''Entity''': If you know DM, this is the equivalent to an atom. If you don't, then basically it can be any single item or living thing. | |||
* '''List''': Any of the above data types, joined into a single element. There different kinds of lists, each corresponding to each of the datatypes mentioned above. You access said data types by indexing the list. You cannot make a list of lists, that's what tables are for. | |||
** '''Associative lists:''' In a normal list, the index can only be represented by a number, so Index 1 would be the first item. In an associative list, you can set a string of text as the index. So you could make a list with two items: one who's index is "Name" and it value is "Matt", and another who's index is "Last name" and who's value is "Damon". So if you use the Index Associative List component with the index set as "Name", it'll return "Matt". | |||
* '''Table''': A list of lists, usually used in databases such as the security arrests one. If a component provides a Table, you'll usually be able to see what each entry in said table is by clicking the information icon in the component. | |||
* '''Any''': Usually used in inputs, signifies that it can take any of the signal types above. | |||
* '''Options''': Changes what the component does, or what inputs it takes in. Can be changed with a string signal type. | |||
== Variables == | |||
You might have noticed the cog icon on the top left of the Integrated Circuit window, this button will show a window on the bottom left of your screen that will let you change the variables from the circuit. | |||
Variables are used to store data to use later in the circuit's programming. To add a variable simply choose an item from the list next to the plus icon, name it in the "Name" input field, then click the plus button. Clicking the button to the right of the plus button will simply add a list of the signal type selected. | |||
Dragging from the pencil icon to the grid will create a variable setter wherever you let go of the mouse button, which will let you input data into the variable. You can't use setters on lists, there are special components for that (See List Add, List Clear, and List Remove below). | |||
Dragging from the book icon to the grid will create a getter. You use this to retrieve the information stored in the variable. | |||
== Available Components == | |||
You might need to research specific things to unlock some of these components. | |||
{| class="wikitable" | |||
|- | |||
! Name || Description | |||
|- | |||
|Access Checker | |||
|Takes as an input the numerical list gotten from the Read ID Access component. You can compare it with another numerical list via the "Required Access" input, or by a more legible access chooser menu via the card icon on the top right of the component. If you set the Check Any input to 1, or if in the access chooser UI you change "Access Required" to "One", it'll see if it has any of the accesses listed, instead of making sure that it has all of them. | |||
|- | |||
| Arithmetic || When triggered performs basic mathematical operations: Adding, substracting, multiplying, getting the minimum and getting the maximum. | |||
|- | |||
|Binary Conversion | |||
|Turns any number into a sequence of binary digits (which is a way of represent numbers with only two digits- 1 and 0). For example, the input "2" will output the following bits in the following order, from top to bottom: "01000000". Good for obfuscating information or for usage with AND, OR and XOR components. | |||
|- | |||
| Clock || When the input is any number above 0, it'll begin sending the output signal every 0.9 seconds. | |||
|- | |||
| Comparison || When triggered checks two of the inputs to see if they're equal, not equal, lesser than or bigger than the other. The Result output returns either 0 or 1 depending on if the comparison is true or not. | |||
|- | |||
| Concatenation || Combines up to four strings into one string. | |||
|- | |||
| Concatenate List || Turns a list into a string by adding a specified separator between the items. For example, we have a list that has two items, "Item1" and "Item2". If we set the separator as "," then we get "Item1,Item2". If we set the separator as " " (a space), we get "Item1 Item2". | |||
|- | |||
|Decimal Conversion | |||
|Converts a binary sequence into a decimal number. For example: The sequence of numbers "01000000" will return 2. Useful for translating stuff made with the Binary Conversion component back into a normal number. | |||
|- | |||
| Delay || When triggered, waits the specified amount of time in seconds, then triggers the output | |||
|- | |||
| Direction || When triggered, will output the direction towards the target entity from the point of view of the shell as either a string or a signal. | |||
|- | |||
|Element Find | |||
|When triggered, checks whether the inputted value is on the inputted list, and if so returns either true or false. | |||
|- | |||
|Filter List | |||
|Loops through each item on the list, and if the "Next Index" output signal connects to the "Accept Entry" input signal, then the value of that element of the list will be saved to the "Filtered List" output. The "Element" output string outputs the current element, "Index" outputs the index of said element, "Next Index" is triggered when it's time to check the next item in the list, "Filtered list" outputs the list with the filtered items, "On Finished" triggers when the component has gone through all the elements of the list and "On Failed" triggers when the component fails. | |||
Example: I have a list that has the following values: "Item","Item","Clown","Item". I want to remove the "Clown" value from the list while keeping the list format, so I use the Filter List component. I set my string as the "List Input" value, and I connect the "Element" output into a comparison component and I change the comparison option to "=", and I type "Item" into the second input. I connect the "Next Index" output into the "Compare" input, and the "True" output into the "Accept Entry" input, then I trigger the "Trigger" input in the Filter component. The component will then grab the first element in the list, it being the word "Item", then send the "Next Index" component, basically saying "I wanna go to the next item". Before it can move to the next item, however, whatever's connected to "Next Index" must finish, so the comparison input must do the comparison. We check whether if the element is "Item", and yes, it is. So we send a "True" signal, which connects to the "Accept Entry" signal input, which adds the Element into the final Filtered List, then goes to the next element, it being "Item" again, so the same thing will happen. When it gets to "Clown", the Comparison component will return False, and because there's nothing connected to the "False" output, the component ends there, which means that "Accept Entry" is never triggered, so "Clown" is not added to our final list. After all that we can check our output list, and we'll see that it's "Item", "Item", "Item". | |||
|- | |||
|For Each | |||
|Same as Filter List, but it does not output a list. Useful for checking if a value is in a list if you do not know at what index that value will be in. | |||
|- | |||
|Format List | |||
|Takes in a list and a string, then takes said string and replaces the set of characters "%n" with the respective number on the inputted list (n being the position of the list item). | |||
For example, let's say I have a string list that reads "Bob","27","Unemployed". I set that as the list input, and in the string input I write "Hello! My name is %1, I am %2 years old. I am currently %3". When triggered, it'll output a string that will read "Hello! My name is Bob, I am 27 years old. I am currently unemployed." | |||
|- | |||
|Format Associative List | |||
|The same as the item above, but instead you have to use the names linked with the different items in the list. For example: I have an associative list that goes "[Name, Bob], [Age, 27], [Job, Unemployed]". I can in the string input type "%Name" and it'll return "Bob", or type "%Age" and it'll return "27" and so on. | |||
|- | |||
| Get Column || Gets the column of a table and returns it as a list. | |||
|- | |||
| GPS || When triggered, outputs the current position of the shell the Integrated Circuit is in | |||
|- | |||
| Health || When triggered, gets the health and damage amounts of the entity input. | |||
|- | |||
| Voice Activator || Triggers itself whenever it can hear a message, may this message be oral or through a radio. Returns information about said message and the speaker. If the message comes from a radio, you wont be able to get who said the original message. | |||
|- | |||
|ID Access reader | |||
|If the entity input is an ID Card, returns all accesses on that ID card as a list of numbers. To make sense of this list, use the Access Checker component. | |||
|- | |||
|ID Getter | |||
|Takes an entity input. If said entity input has an ID card, it'll output that ID card as the entity output.. The "Prioritize Hands" number input can either be a 0 or a 1 for false or true. If True, it'll check the ID the entity has in its hands first (if any) before checking anywhere else. | |||
|- | |||
|ID Info Reader | |||
|Takes an ID card as its entity input, and outputs all the info on said ID card. | |||
|- | |||
| Index || When triggered, indexes a list to get the value of an item in it. For example, let's say you have a list with the following items: Item1, Item2, Item3 and Item4. If you index the list by 1, you'll get "Item1" as the output. | |||
|- | |||
|Index Associative List | |||
|Indexes an associative list via the string index input. | |||
|- | |||
|Index Table | |||
|When triggered, indexes a table to get the list located in the index you set as the input. | |||
|- | |||
| Length || When triggered, gets the length of an input. If the input is a list or table, gets how many items it has. If it's a string, gets how many characters it has. If it's a number, retunrs 0. | |||
|- | |||
| Light || Emits light. The "On" input will make the light turn on if the number is anything above 0, and it'll turn off if it is 0. | |||
|- | |||
|List Add | |||
|Adds an item to a list variable that you define from the circuit itself. | |||
|- | |||
|Associative List Literal | |||
|Lets you create associative lists. Press the plus icon to add an item to the list, and the minus icon to remove the last one in the list. When triggered, joins the inputs into an associative list. | |||
|- | |||
|List Clear | |||
|Removes every item from a list variable that you define from the circuit itself. | |||
|- | |||
| List Literal || Lets you create lists. Press the plus icon to add an item to the list, and the minus icon to remove the last one in the list. When triggered, joins the inputs into a list. | |||
|- | |||
|List Remove | |||
|Removes an item to a list variable that you define from the circuit itself. | |||
|- | |||
| Logic || When triggered, checks whether if: its inputs are all true (AND), one of its inputs is true (OR), ONLY one of its inputs is true (XOR) | |||
|- | |||
|Material Scanner | |||
|Takes any entity as its input and returns an associative list of the amount of each material that the entity input is made out of. They are indexed by the names of the material, so if you use it with an Index Associative List component and you, for example, set the index as "iron", it'll return how much iron is in the entity. For a list of materials, check the [[Guide to construction#Materials|materials section of the Guide to Construction]]. Make sure the index is all lower case. And "Metal" is referred to as "Iron". | |||
|- | |||
| MMI || Let's you add an [[Research_items#MMI|MMI]] to the Integrated Circuit. The "Message" and "Send Message" inputs let you send the MMI inside the shell a message that only it can hear. The outputs correspond to the keys in the player controlling the MMI's brain's keyboard: North is Up/W, East is Right/D, South is Down/S, West is Left/A, Attack is Left click and Secondary Attack is Right click. | |||
|- | |||
| Module || If you know programming, this is basically the equivalent of a function. If you don't know programmming, think of it as an integrated circuit inside an integrated circuit. Useful for making circuits look way less messy. You can duplicate these using the Module Duplicator. | |||
|- | |||
| Multiplexer || When triggered, checks to see if the number input is a number from 1 to 4, and if so, chooses the respective input of that number. For example, If I type "Test1" in the "Input 1" Input, and "Test2" in the "Input 2" Input, then change the value in the Input selector to 2, it'll return "Test2". It's as confusing as it sounds. | |||
|- | |||
| Not || If it receives anything other than 0, outputs 0. If it receives exactly 0, outputs 1. | |||
|- | |||
| NTNet Receiver || Recieves data sent through the NTNet network, if Tcomms is destroyed then tough luck. | |||
|- | |||
| NTNet Transmitter || Transmits any kind of data through the NTNet network, if Tcomms is destroyed then tough luck. Data can only be recieved by the NTNet Receiver. | |||
|- | |||
|Proximity Pinpointer | |||
|Returns the X, Y and Z co-ordinates of the entity input, but only if it's in view of the shell. | |||
|- | |||
| Pressure Sensor || When triggered, outputs the atmospheric pressure of the exact tile in which the shell is at that time. | |||
|- | |||
|Printer | |||
|Prints a given string into a paper. It doesn't dispense the paper, and it triggers once the input string is received. Once it has been received you can get your paper by triggering the "Eject" input signal.waw | |||
|- | |||
| Radio || Sends and receives frequencies from radios or other radio components. | |||
|- | |||
| Random || When triggered, outputs a random number between the minimum and maximum numbers you set as inputs. | |||
|- | |||
|Reagents Scanner | |||
|Same thing as the Material Scanner, but for scanning the raegants inside beakers or other liquid containers. | |||
|- | |||
| Router || Copies the Input in the index you set in the Input Selector to the output you set in the Output Selector. For example, If you put the Input Selector to three, and the Output Selector to one, then you input a string into "Input 3" that reads "Arse", then only "Output 1" will output the string "Arse". | |||
|- | |||
| Select Query || For use with USB cables. Gets you the table that matches the column name and comparison input you provide it. For example: You connect it to the security arrests console, and from the arrests database you want to get the info of your friend, Mops-The-Floors. On the Input value, you connect the database output. On the Column Name you type "Name", and on the comparison input you type "Mops-The-Floors". It'll get you the table who's "Name" value matches "Mops-The-Floors". From there you can index it and get its arrest status, its crimes, etc. | |||
|- | |||
| Self || Returns the current shell as an entity. | |||
|- | |||
|Set Variable Trigger | |||
|The same thing as the variable setter you get from the variable options tab, but it comes with input and output triggers. | |||
|- | |||
| Sound emitter || Emits a sound. You can choose what sound to emit from the options menu, and you can change both frequency and volume | |||
|- | |||
| Get species || When triggered, returns the species of the entity input as a string. | |||
|- | |||
| Speech || When triggered, says what you inputted in the string input out loud. | |||
|- | |||
| Split || Splits a string by its separator, turning it into a list. For example, you have a string that "Looks like this". By setting the string input to that string, and its separator to a space (" "), you'll get a list that "Looks", "like", "this" | |||
|- | |||
| String Contains | |||
| When triggered, checks whether the string you set in the "needle" input is in the string you set in the "haystack" input. For example, if you put "in" as the needle, and "You are in my room" as the haystack, it'll return true, since "in" is in the sentence "You are in my room". | |||
|- | |||
| Temperature Sensor || When triggered, returns the current temperature in the tile the shell currently is in. | |||
|- | |||
| Textcase || When triggered, makes it so that its string input is either all in lowercase or all in UPPERCASE. | |||
|- | |||
|Timepiece | |||
|Outputs the current station time. "Time Format" will output the time as XX:XX:XX, "Unit of Time" outputs time as specified in the "Unit of time" input. For example, if the station time is 00:10:08, and you set the unit of time input as "Minutes", then "Unit of Time"'s output will be "10". | |||
|- | |||
| To Number || When triggered, converts a string that's only numbers into a number signal. | |||
|- | |||
| To String || When triggered, converts its output into a string component. If it's output is an entity, it'll return the name of the entity. If the output is a list or table, it'll return "/list". For actually turning a list into a string, look at Concatenate List. | |||
|- | |||
|Trigonometry | |||
|A component that has many trigonometric functions. That's as in-depth as I'll go since I hate math with a passion. | |||
|- | |||
| Typecast || If the input value is the Signal type you set in the options, returns the input value. If not, returns nothing. | |||
|- | |||
| Typecheck || When triggered, returns what Signal type the inputted signal is. | |||
|- | |||
|View Sensor | |||
|When triggered, returns every single entity the shell can see as a list. Has a 1 second cooldown. | |||
|- | |||
|MOD Action | |||
|Only compatible with the MOD Module Shell. When you use the mod circuit adapter component with this component installed (whether via the Mod Interface Panel or the icon on the top-left of your screen), you'll see a radial menu with the icon you selected as the icon input as a clickable button. Clicking this button triggers the output trigger. | |||
|- | |||
| Pathfinder || When triggered, will calculate a path towards the X and Y coordinates you set as inputs. Once calculated, will return a "step" (aka where it has to go next to continue said path). If triggered again when the shell arrived at the step, will output the next step, and so on and so forth. If used with the Direction component, can be used to make a Drone that moves by itself. | |||
|- | |||
| Pull || When triggered, will start pulling the entity input if its right besides it. Only works on Drone shells. | |||
|} | |||
=Machines and Items= | |||
==[[File:Circuit_fab.png]]Machines== | |||
===[[File:Circuit_fab.png]] Circuit Fabricator === | |||
Found on the Circuit Lab. Used for printing out Components, Integrated Circuits, Shells, USB-Cables, Circuit multitools and BCI Manipulation Chambers. If you {{Leftclick}}<div class="tooltiptext">Ordinary left-click. It doesn't matter if <span class="tooltip">[[Combat Mode]] [[File:Combat_32.png|link=Combat_Mode]]<div class="tooltiptext">Toggle with '''4''' or '''F''' by default. Left-clicking people with an empty hand will [[Combat Mode#Harm|Harm]] [[File:Harm_32.png]] them if on, or [[Combat Mode#Help|Help]] [[File:Help_32.png]] them if off. Prevents you from switching places or being pushed when colliding with people. </div></span> is on or not.</div>'''Attack''' the component printer with an integrated circuit, then you'll be able to directly add components to that integrated circuit by just pressing the "+" button on the top-left of your screen. Just drag and drop the components into your circuit. | |||
===[[File:Module_fab.png]] Module duplicator === | |||
Duplicates both Module components and Integrated Circuits. Just name them (open the circuit/module, and on the top left you should see a "Name" input field), then {{Leftclick}}<div class="tooltiptext">Ordinary left-click. It doesn't matter if <span class="tooltip">[[Combat Mode]] [[File:Combat_32.png|link=Combat_Mode]]<div class="tooltiptext">Toggle with '''4''' or '''F''' by default. Left-clicking people with an empty hand will [[Combat Mode#Harm|Harm]] [[File:Harm_32.png]] them if on, or [[Combat Mode#Help|Help]] [[File:Help_32.png]] them if off. Prevents you from switching places or being pushed when colliding with people. </div></span> is on or not.</div>'''Attack''' the duplicator with either of those in your hand. After that click on the printer with an empty hand, and you'll be able to print the circuit/module. | |||
===[[File:Bci_implanter.png]] Brain-Computer Interface Manipulation Chamber=== | |||
Check [[Guide_to_Circuits#Brain-Computer Interfaces|here]]. | |||
==Items== | |||
=== Circuit Multitool === | |||
Let's you mark entities, which can later be uploaded to entity inputs by clicking the arrow pointing up when you have a circuit multitool in your hand. Can also be used to see circuits by double clicking them with it, but a normal [[File:Multitool.png]] '''Multitool''' should do fine. | |||
=== USB Cables === | |||
Let's you connect a shell to a technological device. To do this, while you're grabbing the usb cable, click on the shell, then on the device you want to connect with. When you do this, you should get a new component on your shell. To disconnect, click the little "x" on the top right of the new component. | |||
You can only interface with a few select devices: | |||
{| class="wikitable" | |||
|- | |||
! Name || Description || Inputs || Outputs | |||
|- | |||
|Lightswitch | |||
|Lets you turn the lights of the area on and off. That's it. Very simple. 0 is off, and any number above 0 is on. | |||
| | |||
* On (Number) | |||
| | |||
* Is On (Number) | |||
|- | |||
|Status Display | |||
|Lets you set what to show on the many status display screens that are around the station. By changing the options at the top you can either show nothing, show the shuttle arrival time, show a message that you can input using the two string inputs (Message 1 is top row, Message 2 is bottom), and show an image that you can choose in the "Picture" option as an Alert. | |||
| | |||
* Command (Option) | |||
** Blank | |||
** Shuttle | |||
** Message | |||
** Alert | |||
* Picture (Option) | |||
** Lots of pictures | |||
* Message 1 (String) | |||
* Message 2 (String) | |||
* Trigger (Signal) | |||
| | |||
* Triggered (Signal) | |||
|- | |||
| Quantum Pad || Lets you set the target pad and notifies you when the teleportation failed. || | |||
* Target Pad (Entity) | |||
* Trigger (Signal) | |||
|| | |||
* On Fail (Signal) | |||
|- | |||
| Bluespace Launchpad Console || Lets you set a Bluespace Launchpad's offset, and lets you trigger its sending and retrieving capabilities. || | |||
* Launchpad ID (Number) | |||
* X offset (Number) | |||
* Y offset (Number) | |||
* Send (Signal) | |||
* Retrieve (Signal) | |||
|| | |||
* Sent (Signal) | |||
* Retrieved (Signal) | |||
* Fail reason (String) | |||
* Failed (Signal) | |||
|- | |||
| Crew Monitoring Console || Lets you see the current health status of every crewmember that has turned on their suit sensors. | |||
Click on the little "i" button on the top right to see what values the table has. Use in conjunction with the "Select Query" component. | |||
|| | |||
* Trigger (Signal) | |||
|| | |||
* Crew Monitoring Data (Table) | |||
* Triggered (Signal) | |||
|- | |||
| Security Records Console || Lets you see the current legal status of every crewmember, and even let's you change them. Notable for having two components within it: Security Records Data (Which will return the entire security database) and Security Records Set Status, which let you set the status of the individual who's table you set as the input. | |||
If you want to, for example, set a person named John Doe to arrest, grab a Select Query component, set the input as the security records, the Column Name as "name" and the Comparison Input as "John Doe", it'll return John Doe's table, which you can then input into the Security Records Set Status component, set the option to "Arrest", then trigger it. Each Person has their on table, by setting the "Column Name" value to "name" and the "Comparison Input" value to "John Doe", you're basically saying "Get me the table of the person who's value in the name field is John Doe." To see what Column Names are available, click the little "i" icon on the top right of the Security Records Data component. | |||
|| | |||
'''Security Records Data''' | |||
* Trigger (Signal) | |||
'''Security Records Set Status''' | |||
* Arrest options (Option) | |||
** Arrest | |||
** Incarcerated | |||
** Paroled | |||
** Discharged | |||
** None | |||
* Targets (Table) | |||
* Trigger (Signal) | |||
|| | |||
'''Security Records Data''' | |||
* Security Records (Table) | |||
* Failed (Signal) | |||
* Triggered (Signal) | |||
'''Security Records Set Status''' | |||
* Set Status (String) | |||
* Failed (Signal) | |||
* Triggered (Signal) | |||
|- | |||
| Teleporter Control Console || Lets you set, update and see the currently available teleporter targets. || | |||
* New Target (String) | |||
* Set Target (Signal) | |||
* Update Targets (Signal) | |||
|| | |||
* Current Target (String) | |||
* Possible Targets (List) | |||
* Failed (Signal) | |||
* Triggered (Signal) | |||
|- | |||
| Tram Controls || Let's you set the Tram's destination, and let's you send the tram to said destination. Also returns 1 or 0 if its travelling or not.|| | |||
* Destination (String) | |||
* Send Tram (Signal) | |||
|| | |||
* Location (String) | |||
* Travelling (Number) | |||
|- | |||
|Fire Alarms | |||
|Lets you turn it on or reset it to off, as well as tell you when its on and if it was just turned off. | |||
| | |||
* Set (Signal) | |||
* Reset (Signal) | |||
| | |||
* Is On (Number) | |||
* Triggered (Signal) | |||
* Reset (Signal) | |||
|- | |||
| Air Alarms || Lets you change the air alarm's min and max gas, pressure and temperature values. Also lets you check the current pressure, temperature, and amount of a certain gas in the area the alarm is in. || | |||
* Air alarm options (Option) | |||
** Pressure | |||
** Temperature | |||
** Every single gas type. Нет way in hell I'm writing them all. | |||
* Min 2 (Number) | |||
* Min 1 (Number) | |||
* Max 1 (Number) | |||
* Max 2 (Number) | |||
|| | |||
* Pressure (Number) | |||
* Temperature (Number) | |||
* Chosen Gas Amount (Number) | |||
|- | |||
|Beam Reflectors | |||
|Lets you set the angle. That's it. | |||
| | |||
* Angle (Number) | |||
* Trigger (Signal) | |||
|None | |||
|- | |||
|Binary Atmospheric Pump | |||
|Lets you set and get the pressure, lets you get the temperature, and lets you check whether if the pump is turned on or off and if it's active. | |||
| | |||
* New Pressure (Number) | |||
* Turn On (Signal) | |||
* Turn Off (Signal) | |||
* Request Port Data (Signal) | |||
| | |||
* Input Pressure (Number) | |||
* Output Pressure (Number) | |||
* Input Temperature (Number) | |||
* Output Temperature (Number) | |||
* Active (Number) | |||
* Turned On (Signal) | |||
* Turned Off (SIgnal) | |||
|- | |||
|Atmospheric Volume Pump | |||
|Lets you set the transfer rate, turn the pump on and off, and lets you request the Input and Output pressure and temperature. | |||
| | |||
* New Transfer Rate (Number) | |||
* Turn On (Signal) | |||
* Turn Off (Signal) | |||
* Request Port Data (Signal) | |||
| | |||
* Input Pressure (Number) | |||
* Output Pressure (Number) | |||
* Input Temperature (Number) | |||
* Output Temperature (Number) | |||
* Active (Number) | |||
* Turned On (Signal) | |||
* Turned Off (Signal) | |||
|- | |||
| Digital Valves || Let's you know whether its open or not, and let's you open and close it yourself. || | |||
* Open (Signal) | |||
* Close (Signal) | |||
|| | |||
* Is Open (Number) | |||
* Opened (Signal) | |||
* Closed (Signal) | |||
|- | |||
|Atmospheric Meter | |||
|Lets you see the pressure and temperature shown by a meter. | |||
| | |||
* Request Meter Data (Signal) | |||
| | |||
* Pressure (Number) | |||
* Temperature (Number) | |||
|- | |||
|Hydroponics Tray | |||
|Let's you turn auto-grow on and off, and tells you the status of the plant, of auto grow, whether the plant was harvested and how much, whether the plant died, whether seeds have been planted, the water level, the toxins level, the pests level, the weeds level, the plant's health and the Reagents level. | |||
| | |||
* Auto-Grow Setting (Number) | |||
* Trigger (Signal) | |||
| | |||
* Plant Status (Number) | |||
* Auto-Grow Status (Number) | |||
* Plant Harvested (Signal) | |||
* Last Harvest Amount (Number) | |||
* Plant Died (Signal) | |||
* Seeds Planted (Signal) | |||
* Water Level (Number) | |||
* Toxins Level (Number) | |||
* Pests Level (Number) | |||
* Weeds Level (Number) | |||
* Plant Health (Number) | |||
* Reagents Level (Number | |||
|- | |||
| Conveyor Switch || Let's you turn the conveyor on or off, and let's you see what direction it's going. || | |||
* Trigger (Signal) | |||
|| | |||
* Conveyor Direction (Number) | |||
|} | |||
=[[File:bci.png]]Brain-Computer Interfaces= | |||
Ever wanted to have a computer in your head? Sure hope the answer is yes, because Brain-Computer Interfaces (Henceforth referred to as "BCI's") are here for that! | |||
To get working with BCI's you need two things: A Brain-Computer Interface Shell (Info about which you can see above, in the Shells section) and a Brain-Computer Interface Manipulation Chamber, which is a machine. | |||
Both the shell and the machine circuit can be printed from the Component Printer. | |||
==How To Build== | |||
You build the Brain-Computer Interface Manipulation Chamber like any other [[Machines|machine]], and you build the BCI shell by using a screwdriver on it, It already has an Integrated Circuit in it. | |||
It is recommended that you start coding when the BCI isn't on your brain yet, aka this exact moment. When the BCI is on your brain, '''you can no longer add components to it''', you can still change connections and remove them though. | |||
==Components== | |||
BCI's are compatible with every single component, but it also has a bunch of '''exclusive components that only work with it'''. You can see these components on the "BCI Components" section of the Component Printer. These components are: | |||
{| class="wikitable" | |||
|- | |||
! Name || Description || Inputs || Outputs | |||
|- | |||
| Bar Overlay || Shows a progress bar ontop of the entity object you set as its input. || | |||
* Bar overlay options (Option) | |||
** Vertical | |||
** Horizontal | |||
* Number (Number) | |||
|| | |||
None | |||
|- | |||
| BCI Action || When the BCI shell is in your brain, shows a button in the top left of your screen. When you click on it, it triggers the Signal output. The icon input lets you change the icon. || | |||
* Icon (Option) | |||
** I am not listing them all, there are a lot | |||
* Name (String) | |||
|| | |||
* Signal (Signal) | |||
|- | |||
| Counter Overlay || Shows a three digit number on top of you. You can change the position of it by using the axis shift inputs, but it'll always follow you. You might even need to shift it since it doesn't show correctly when its on top of you for some reason. || | |||
* Displayed Number (Number) | |||
* Update Overlay (Signal) | |||
* X-Axis Shift (Number) | |||
* Y-Axis Shift (Number) | |||
|| | |||
None | |||
|- | |||
| Object Overlay || Creates or deletes a sprite on top of the target entity. You can change what sprite it uses, and you can even shift its location by changing the axis shift options. || | |||
* Object (Option) | |||
** Corners (Blue/Red) | |||
** Circle (Blue/Red) | |||
** Small Corners (Blue/Red) | |||
** Triangle (Blue/Red) | |||
** Hud Mark (Blue/Red) | |||
* Target (Entity) | |||
* Create Overlay (Signal) | |||
* Remove Overlay (Signal) | |||
* X-Axis Shift (Number) | |||
* Y-Axis Shift (Number) | |||
|| | |||
None | |||
|- | |||
| BCI Target Interceptor || When activated, the next time you click an entity, the output signal will be triggered and that entity will be set as the output. || | |||
* Activate (Signal) | |||
|| | |||
* Triggered (Signal) | |||
* Targeted Object (Entity) | |||
|- | |||
|Thought Listener | |||
|When triggered, will show a text input window with the name and description you inputted. After you press enter or click submit, it'll trigger and output what you wrote | |||
| | |||
* Input Name (String) | |||
* Input Description (String) | |||
* Trigger (Signal) | |||
| | |||
* Recieved Thought (String) | |||
* Triggered (Signal) | |||
* On Failure (Signal) | |||
|- | |||
|VOX Announcement | |||
|This will make the AI's beautiful god-like voice reverb throughout your head, saying what you set as the input string or input string list. It only plays for you, no one else can hear it. | |||
| | |||
* Vox type (Option) | |||
** string list | |||
** string | |||
* String (String/String list) | |||
* Trigger (Signal) | |||
|None | |||
|} | |||
==How to put it in your head== | |||
Grab your BCI shell and just {{Leftclick}}<div class="tooltiptext">Ordinary left-click. It doesn't matter if <span class="tooltip">[[Combat Mode]] [[File:Combat_32.png|link=Combat_Mode]]<div class="tooltiptext">Toggle with '''4'<nowiki/>'' or '''''<nowiki/>''F''' by default. Left-clicking people with an empty hand will [[Combat Mode#Harm|Harm]] [[File:Harm_32.png]] them if on, or [[Combat Mode#Help|Help]] [[File:Help_32.png]] them if off. Prevents you from switching places or being pushed when colliding with people. '''''</div></span>''''' is on or not.'''''</div> <nowiki>''use''</nowiki> it on the BCI Manipulation Chamber. After that just open it up by, again, {{Leftclick}}''using'' it and close the door once you're inside. Wait for a bit, and you should see an animation play out, once that animation is done, congrats! You're ready to do freaky brain stuff. | |||
If you ever wanna remove a BCI Shell from your head, just walk back into a Manipulation Chamber and wait for a bit again. You'll see the animation play, and after its done you can just Right Click the manipulation chamber to get your shell back. | |||
However, if all you want to do is recharge the power cell inside your BCI shell, you can just '''walk into a cyborg recharger'''. | |||
{{Guides}} | |||
[[Category: Guides]] |
Текущая версия от 07:00, 16 ноября 2024
Учёный говорит: "Ура, я наконец закончил проектировать мой переводчик/детонатор! Всмысле шаттл уже улетел?!" |
Интегральные схемы это способ автоматизировать различные действия удобно и легко! Можно создать схему, которая будет открывать шлюз только по секретной фразе, или схему, которая будет следовать за экипажем и кричать им всякие гадости, ну или... Что угодно!
Прежде чем начать программировать ваши схемы потребуется:
Необходимые предметы
Интегральная Плата (Integrated Circuit)
Интегральная плата - основа всех схем. Вся ваша конструкция будет основываться на этом плате, однако сама по себе она сработать не сможет. Прежде всего, плата требует энергию, которую ей можно обеспечить с помощьюБатарейки. Просто используйте Простой левый клик. Неважно включен или выключен Боевой режим Включается при помощи клавиши 4, выключается при помощи клавиши 1 или может быть переключен при помощи клавиши F при стандартной раскладке. Нажатие левой кнопки на людей пустой рукой с включённым боевым режимом приведёт к удару или приведёт к помощи если он отключен. Также позволяет вам не меняться местами с человеком или толкнуть вас если вы столкнулись.. батарейку на плате. В случае если вам потребуется поменять батарейку или вытащить её для подзарядки, используйте Отвёртку на плате. Некоторые оболочки можно прикрутить к полу. Такие оболочки будут питаться от ЛКП в комнате, вместо батарейки внутри. Батарейки будут расходовать энергию при активации компонентов. При нажатии на иконку i у компонента, можно увидеть расход его энергии.
Вы можете взаимодействовать с платой, активируя её в руке, однако с ней мало что можно сделать в такой форме. Когда вы вставите батарейку, станет возможно вставить плату в Оболочку.
Оболочка (Shell)
Оболочка дает возможность добавлять компоненты в вашу интегральную схему, взаимодействовать с платой и добавлять способы взаимодействия с ней. В зависимости от оболочки, вам может потребоваться применить Отвёртку для её сбора, прежде чем вы сможете засунуть Простой левый клик. Неважно включен или выключен Боевой режим Включается при помощи клавиши 4, выключается при помощи клавиши 1 или может быть переключен при помощи клавиши F при стандартной раскладке. Нажатие левой кнопки на людей пустой рукой с включённым боевым режимом приведёт к удару или приведёт к помощи если он отключен. Также позволяет вам не меняться местами с человеком или толкнуть вас если вы столкнулись.. в неё плату. Если вам понадобится вытащить плату из оболочки, просто используйте на ней Отвёртку.
Разные оболочки имеют свой размер. Размер показывает, сколько компонентов вы можете разместить внутри оболочки. Есть четыре размера:
- Маленький: До 25 компонентов
- Средний: До 50 компонентов
- Большой: До 100 компонентов
- Очень большой: До 500 компонентов
Существует множество видов оболочек, каждая из которых имеет свои особенности:
(Если вы не уверены что такое "выводы" или "сущности", прочтите раздел типы сигналов)
Название | Описание | Размер | Требуемое исследование | Требуется сборка? |
---|---|---|---|---|
Compact Remote | Простейшая переносная оболочка. Имеет один вывод, который активируется при Простой левый клик. Неважно включен или выключен Боевой режим Включается при помощи клавиши 4, выключается при помощи клавиши 1 или может быть переключен при помощи клавиши F при стандартной раскладке. Нажатие левой кнопки на людей пустой рукой с включённым боевым режимом приведёт к удару или приведёт к помощи если он отключен. Также позволяет вам не меняться местами с человеком или толкнуть вас если вы столкнулись.. использовании в руке. | Маленький | Нет | Нет |
Assembly | Оболочка, которую можно прикреплять к таким компонентам, как сигналеры, датчики приближения, таймеры, вентили, игнайтеры, провода и т.д. Для перевода в режим прикрепления Простой правый клик. Не имеет значения включен или выключен Боевой режим Включается при помощи клавиши 4, выключается при помощи клавиши 1 или может быть переключен при помощи клавиши F при стандартной раскладке. Нажатие левой кнопки на людей пустой рукой с включённым боевым режимом приведёт к удару или приведёт к помощи если он отключен. Также позволяет вам не меняться местами с человеком или толкнуть вас если вы столкнулись.. отвёрткой. | Маленький | Advanced Shell Research | Да и Нет |
Bot | Простейшая стационарная оболочка. Имеет один вывод, который активируется при Простой левый клик. Неважно включен или выключен Боевой режим Включается при помощи клавиши 4, выключается при помощи клавиши 1 или может быть переключен при помощи клавиши F при стандартной раскладке. Нажатие левой кнопки на людей пустой рукой с включённым боевым режимом приведёт к удару или приведёт к помощи если он отключен. Также позволяет вам не меняться местами с человеком или толкнуть вас если вы столкнулись.. использовании. | Большой | Advanced Shell Research | Да |
Controller | Портативная оболочка, похожая на "Compact Remote", но в отличие от "Compact Remote" у неё имеется несколько кнопок: Простой левый клик. Неважно включен или выключен Боевой режим Включается при помощи клавиши 4, выключается при помощи клавиши 1 или может быть переключен при помощи клавиши F при стандартной раскладке. Нажатие левой кнопки на людей пустой рукой с включённым боевым режимом приведёт к удару или приведёт к помощи если он отключен. Также позволяет вам не меняться местами с человеком или толкнуть вас если вы столкнулись.. для основного сигнала (подписан "Signal" в плате), Alt-Простой левый клик. Неважно включен или выключен Боевой режим Включается при помощи клавиши 4, выключается при помощи клавиши 1 или может быть переключен при помощи клавиши F при стандартной раскладке. Нажатие левой кнопки на людей пустой рукой с включённым боевым режимом приведёт к удару или приведёт к помощи если он отключен. Также позволяет вам не меняться местами с человеком или толкнуть вас если вы столкнулись.. для альтернативного сигнала, и Простой правый клик. Не имеет значения включен или выключен Боевой режим Включается при помощи клавиши 4, выключается при помощи клавиши 1 или может быть переключен при помощи клавиши F при стандартной раскладке. Нажатие левой кнопки на людей пустой рукой с включённым боевым режимом приведёт к удару или приведёт к помощи если он отключен. Также позволяет вам не меняться местами с человеком или толкнуть вас если вы столкнулись.. для дополнительного. | Средний | Advanced Shell Research | Нет |
Dispenser | Стационарная оболочка, способная принимать и выдавать предметы. Её вывод возвращает списком предметы, находящиеся в ней, последний добавленный предмет, и два триггера при добавлении и изъятия предмета. Чтобы выдать предмет нажмите на кнопку + в правом верхнем углу экрана, вам откроется окно "Vend", где вы сможете выбрать предметы для выдачи, которые будут выдаваться при триггере "Vend Item". Чтобы засунуть предметы внутрь используйте Простой левый клик. Неважно включен или выключен Боевой режим Включается при помощи клавиши 4, выключается при помощи клавиши 1 или может быть переключен при помощи клавиши F при стандартной раскладке. Нажатие левой кнопки на людей пустой рукой с включённым боевым режимом приведёт к удару или приведёт к помощи если он отключен. Также позволяет вам не меняться местами с человеком или толкнуть вас если вы столкнулись.. с предметом в руке. | Большой | Advanced Shell Research | Да |
Airlock | Контролируеммый платой шлюз. Чтобы вставить плату используйте Простой левый клик. Неважно включен или выключен Боевой режим Включается при помощи клавиши 4, выключается при помощи клавиши 1 или может быть переключен при помощи клавиши F при стандартной раскладке. Нажатие левой кнопки на людей пустой рукой с включённым боевым режимом приведёт к удару или приведёт к помощи если он отключен. Также позволяет вам не меняться местами с человеком или толкнуть вас если вы столкнулись.., чтобы вытащить используйте Отвёртку. Имеет множество входных сигналов, позволяющих открыть, закрыть, заболтировать и разболтировать шлюз. Также имеет выводы, уведомляющие вас о том, когда данные действия будут выполянться, плюс два числа возвращающие 1 или 0, в зависимости от того если шлюз закрыт/заболтирован. Также возвращает последнего пользователя шлюза в виде сущности. | Большой | Advanced Shell Research | Да |
Gun | Портативная оболочка, которая на самом деле ПИСТОЛЕТ. Имеет бесконечный запас патронов и возвращает как сущность стреляющего, во что попала пуля, а так же триггер, который срабатывает при выстреле. | Средний | Advanced Shell Research | Нет |
Money Bot | Стационарная оболочка, позволяющая принимать и выдавать кредиты! Имеет выводы, которые сообщают о принятии денег, о количестве принятых денег и о количестве денег в оболочке. | Большой | Advanced Shell Research | Да |
Scanner Gate | Простая оболочка, возвращающая любую сущность, что через неё проходит. | Большой | Advanced Shell Research | Да |
Scanner | Портативная оболочка. Простой левый клик. Неважно включен или выключен Боевой режим Включается при помощи клавиши 4, выключается при помощи клавиши 1 или может быть переключен при помощи клавиши F при стандартной раскладке. Нажатие левой кнопки на людей пустой рукой с включённым боевым режимом приведёт к удару или приведёт к помощи если он отключен. Также позволяет вам не меняться местами с человеком или толкнуть вас если вы столкнулись.. используйте её на чём угодно, чтобы вывести это "что угодно" в качестве сущности. | Большой | Advanced Shell Research | Нет |
Brain-Computer Interface | Интегральные схемы, но в вашей голове! Для подробной информации обратитесь к разделу Нейрокомпьютерные Интерфейсы. | Маленький | Brain-Computer Interfaces | Да |
Drone | Да этот парень может двигаться не хуже вас! Имеет множество вводов, каждый из которых отвечает за сторону в которую он может двигаться. | Большой | Movable Shell Research | Да |
Server | То же что "Bot" оболочка, но больше и лучше. | Очень большой | Server Technology Research | Да |
You can also add circuits to a few items and use them as shells. These are:
Name | Description | Size |
---|---|---|
Camera | Will let you take a picture by setting the target of the picture, the coordinates of where the picture will be taken, and the size of the picture. | Маленький |
MOD Circuit Adapter module | A MOD suit module that lets you add circuits. To do so, you have to add the circuit when the separated module is in your hand as if it were a normal shell. To take it out use a screwdriver. Once its inside the MOD suit, you cannot put components into the circuit, you can only put components when you're holding the module on your hand. You can, however, interface with the circuit by using the module from either the MOD Interface Panel or the button in the top left.
When inserted into an active modsuit, it gives you a few options to interact with it, like toggling the suit off and on, letting you change the active module, tell you the active module, and return the wearer as an entity output. |
Большой |
Synthesizer, Headphones and Spacepods | Let you choose an instrument, choose the sustain mode, insert a song via a string (each item of the string being a new line), play the song, stop the song, set how many times it should repeat, set the BPM, the volume, the volume dropoff threshold, the note shift, the note sustain value and the held note decay.
It also lets you know if its currently playing, when it starts playing and when it stops playing. You could use this to make a synchronized band of sorts. |
Once you have a shell with an integrated circuit in it, you may access the circuit in it by using a Multitool on it, and you may also begin to add Components to your circuit.
Components
Signal types
Every single thing in circuits revolves around these signal types. They send either information or triggers, which is the bases of circuits. There are 7 types of signals:
- Signal: Think of these as a pulse of electricity or a shockwave. They are NOT binary, when you activate one a chain reaction begins throughout the rest. Can easily be turned into numbers but you should only do so for checking whether its 0 or not, since the value itself makes no sense.
- Number: Any number your heart desires. Can also be used as a signal component, with any number above 0 activating a signal. You can also connect them to a string input.
- String: Any ascii character. If you try to write numbers in this, they will not be classified as numbers, so you can't do arithmetic equations with them.
- Entity: If you know DM, this is the equivalent to an atom. If you don't, then basically it can be any single item or living thing.
- List: Any of the above data types, joined into a single element. There different kinds of lists, each corresponding to each of the datatypes mentioned above. You access said data types by indexing the list. You cannot make a list of lists, that's what tables are for.
- Associative lists: In a normal list, the index can only be represented by a number, so Index 1 would be the first item. In an associative list, you can set a string of text as the index. So you could make a list with two items: one who's index is "Name" and it value is "Matt", and another who's index is "Last name" and who's value is "Damon". So if you use the Index Associative List component with the index set as "Name", it'll return "Matt".
- Table: A list of lists, usually used in databases such as the security arrests one. If a component provides a Table, you'll usually be able to see what each entry in said table is by clicking the information icon in the component.
- Any: Usually used in inputs, signifies that it can take any of the signal types above.
- Options: Changes what the component does, or what inputs it takes in. Can be changed with a string signal type.
Variables
You might have noticed the cog icon on the top left of the Integrated Circuit window, this button will show a window on the bottom left of your screen that will let you change the variables from the circuit.
Variables are used to store data to use later in the circuit's programming. To add a variable simply choose an item from the list next to the plus icon, name it in the "Name" input field, then click the plus button. Clicking the button to the right of the plus button will simply add a list of the signal type selected.
Dragging from the pencil icon to the grid will create a variable setter wherever you let go of the mouse button, which will let you input data into the variable. You can't use setters on lists, there are special components for that (See List Add, List Clear, and List Remove below).
Dragging from the book icon to the grid will create a getter. You use this to retrieve the information stored in the variable.
Available Components
You might need to research specific things to unlock some of these components.
Name | Description |
---|---|
Access Checker | Takes as an input the numerical list gotten from the Read ID Access component. You can compare it with another numerical list via the "Required Access" input, or by a more legible access chooser menu via the card icon on the top right of the component. If you set the Check Any input to 1, or if in the access chooser UI you change "Access Required" to "One", it'll see if it has any of the accesses listed, instead of making sure that it has all of them. |
Arithmetic | When triggered performs basic mathematical operations: Adding, substracting, multiplying, getting the minimum and getting the maximum. |
Binary Conversion | Turns any number into a sequence of binary digits (which is a way of represent numbers with only two digits- 1 and 0). For example, the input "2" will output the following bits in the following order, from top to bottom: "01000000". Good for obfuscating information or for usage with AND, OR and XOR components. |
Clock | When the input is any number above 0, it'll begin sending the output signal every 0.9 seconds. |
Comparison | When triggered checks two of the inputs to see if they're equal, not equal, lesser than or bigger than the other. The Result output returns either 0 or 1 depending on if the comparison is true or not. |
Concatenation | Combines up to four strings into one string. |
Concatenate List | Turns a list into a string by adding a specified separator between the items. For example, we have a list that has two items, "Item1" and "Item2". If we set the separator as "," then we get "Item1,Item2". If we set the separator as " " (a space), we get "Item1 Item2". |
Decimal Conversion | Converts a binary sequence into a decimal number. For example: The sequence of numbers "01000000" will return 2. Useful for translating stuff made with the Binary Conversion component back into a normal number. |
Delay | When triggered, waits the specified amount of time in seconds, then triggers the output |
Direction | When triggered, will output the direction towards the target entity from the point of view of the shell as either a string or a signal. |
Element Find | When triggered, checks whether the inputted value is on the inputted list, and if so returns either true or false. |
Filter List | Loops through each item on the list, and if the "Next Index" output signal connects to the "Accept Entry" input signal, then the value of that element of the list will be saved to the "Filtered List" output. The "Element" output string outputs the current element, "Index" outputs the index of said element, "Next Index" is triggered when it's time to check the next item in the list, "Filtered list" outputs the list with the filtered items, "On Finished" triggers when the component has gone through all the elements of the list and "On Failed" triggers when the component fails.
Example: I have a list that has the following values: "Item","Item","Clown","Item". I want to remove the "Clown" value from the list while keeping the list format, so I use the Filter List component. I set my string as the "List Input" value, and I connect the "Element" output into a comparison component and I change the comparison option to "=", and I type "Item" into the second input. I connect the "Next Index" output into the "Compare" input, and the "True" output into the "Accept Entry" input, then I trigger the "Trigger" input in the Filter component. The component will then grab the first element in the list, it being the word "Item", then send the "Next Index" component, basically saying "I wanna go to the next item". Before it can move to the next item, however, whatever's connected to "Next Index" must finish, so the comparison input must do the comparison. We check whether if the element is "Item", and yes, it is. So we send a "True" signal, which connects to the "Accept Entry" signal input, which adds the Element into the final Filtered List, then goes to the next element, it being "Item" again, so the same thing will happen. When it gets to "Clown", the Comparison component will return False, and because there's nothing connected to the "False" output, the component ends there, which means that "Accept Entry" is never triggered, so "Clown" is not added to our final list. After all that we can check our output list, and we'll see that it's "Item", "Item", "Item". |
For Each | Same as Filter List, but it does not output a list. Useful for checking if a value is in a list if you do not know at what index that value will be in. |
Format List | Takes in a list and a string, then takes said string and replaces the set of characters "%n" with the respective number on the inputted list (n being the position of the list item).
For example, let's say I have a string list that reads "Bob","27","Unemployed". I set that as the list input, and in the string input I write "Hello! My name is %1, I am %2 years old. I am currently %3". When triggered, it'll output a string that will read "Hello! My name is Bob, I am 27 years old. I am currently unemployed." |
Format Associative List | The same as the item above, but instead you have to use the names linked with the different items in the list. For example: I have an associative list that goes "[Name, Bob], [Age, 27], [Job, Unemployed]". I can in the string input type "%Name" and it'll return "Bob", or type "%Age" and it'll return "27" and so on. |
Get Column | Gets the column of a table and returns it as a list. |
GPS | When triggered, outputs the current position of the shell the Integrated Circuit is in |
Health | When triggered, gets the health and damage amounts of the entity input. |
Voice Activator | Triggers itself whenever it can hear a message, may this message be oral or through a radio. Returns information about said message and the speaker. If the message comes from a radio, you wont be able to get who said the original message. |
ID Access reader | If the entity input is an ID Card, returns all accesses on that ID card as a list of numbers. To make sense of this list, use the Access Checker component. |
ID Getter | Takes an entity input. If said entity input has an ID card, it'll output that ID card as the entity output.. The "Prioritize Hands" number input can either be a 0 or a 1 for false or true. If True, it'll check the ID the entity has in its hands first (if any) before checking anywhere else. |
ID Info Reader | Takes an ID card as its entity input, and outputs all the info on said ID card. |
Index | When triggered, indexes a list to get the value of an item in it. For example, let's say you have a list with the following items: Item1, Item2, Item3 and Item4. If you index the list by 1, you'll get "Item1" as the output. |
Index Associative List | Indexes an associative list via the string index input. |
Index Table | When triggered, indexes a table to get the list located in the index you set as the input. |
Length | When triggered, gets the length of an input. If the input is a list or table, gets how many items it has. If it's a string, gets how many characters it has. If it's a number, retunrs 0. |
Light | Emits light. The "On" input will make the light turn on if the number is anything above 0, and it'll turn off if it is 0. |
List Add | Adds an item to a list variable that you define from the circuit itself. |
Associative List Literal | Lets you create associative lists. Press the plus icon to add an item to the list, and the minus icon to remove the last one in the list. When triggered, joins the inputs into an associative list. |
List Clear | Removes every item from a list variable that you define from the circuit itself. |
List Literal | Lets you create lists. Press the plus icon to add an item to the list, and the minus icon to remove the last one in the list. When triggered, joins the inputs into a list. |
List Remove | Removes an item to a list variable that you define from the circuit itself. |
Logic | When triggered, checks whether if: its inputs are all true (AND), one of its inputs is true (OR), ONLY one of its inputs is true (XOR) |
Material Scanner | Takes any entity as its input and returns an associative list of the amount of each material that the entity input is made out of. They are indexed by the names of the material, so if you use it with an Index Associative List component and you, for example, set the index as "iron", it'll return how much iron is in the entity. For a list of materials, check the materials section of the Guide to Construction. Make sure the index is all lower case. And "Metal" is referred to as "Iron". |
MMI | Let's you add an MMI to the Integrated Circuit. The "Message" and "Send Message" inputs let you send the MMI inside the shell a message that only it can hear. The outputs correspond to the keys in the player controlling the MMI's brain's keyboard: North is Up/W, East is Right/D, South is Down/S, West is Left/A, Attack is Left click and Secondary Attack is Right click. |
Module | If you know programming, this is basically the equivalent of a function. If you don't know programmming, think of it as an integrated circuit inside an integrated circuit. Useful for making circuits look way less messy. You can duplicate these using the Module Duplicator. |
Multiplexer | When triggered, checks to see if the number input is a number from 1 to 4, and if so, chooses the respective input of that number. For example, If I type "Test1" in the "Input 1" Input, and "Test2" in the "Input 2" Input, then change the value in the Input selector to 2, it'll return "Test2". It's as confusing as it sounds. |
Not | If it receives anything other than 0, outputs 0. If it receives exactly 0, outputs 1. |
NTNet Receiver | Recieves data sent through the NTNet network, if Tcomms is destroyed then tough luck. |
NTNet Transmitter | Transmits any kind of data through the NTNet network, if Tcomms is destroyed then tough luck. Data can only be recieved by the NTNet Receiver. |
Proximity Pinpointer | Returns the X, Y and Z co-ordinates of the entity input, but only if it's in view of the shell. |
Pressure Sensor | When triggered, outputs the atmospheric pressure of the exact tile in which the shell is at that time. |
Printer | Prints a given string into a paper. It doesn't dispense the paper, and it triggers once the input string is received. Once it has been received you can get your paper by triggering the "Eject" input signal.waw |
Radio | Sends and receives frequencies from radios or other radio components. |
Random | When triggered, outputs a random number between the minimum and maximum numbers you set as inputs. |
Reagents Scanner | Same thing as the Material Scanner, but for scanning the raegants inside beakers or other liquid containers. |
Router | Copies the Input in the index you set in the Input Selector to the output you set in the Output Selector. For example, If you put the Input Selector to three, and the Output Selector to one, then you input a string into "Input 3" that reads "Arse", then only "Output 1" will output the string "Arse". |
Select Query | For use with USB cables. Gets you the table that matches the column name and comparison input you provide it. For example: You connect it to the security arrests console, and from the arrests database you want to get the info of your friend, Mops-The-Floors. On the Input value, you connect the database output. On the Column Name you type "Name", and on the comparison input you type "Mops-The-Floors". It'll get you the table who's "Name" value matches "Mops-The-Floors". From there you can index it and get its arrest status, its crimes, etc. |
Self | Returns the current shell as an entity. |
Set Variable Trigger | The same thing as the variable setter you get from the variable options tab, but it comes with input and output triggers. |
Sound emitter | Emits a sound. You can choose what sound to emit from the options menu, and you can change both frequency and volume |
Get species | When triggered, returns the species of the entity input as a string. |
Speech | When triggered, says what you inputted in the string input out loud. |
Split | Splits a string by its separator, turning it into a list. For example, you have a string that "Looks like this". By setting the string input to that string, and its separator to a space (" "), you'll get a list that "Looks", "like", "this" |
String Contains | When triggered, checks whether the string you set in the "needle" input is in the string you set in the "haystack" input. For example, if you put "in" as the needle, and "You are in my room" as the haystack, it'll return true, since "in" is in the sentence "You are in my room". |
Temperature Sensor | When triggered, returns the current temperature in the tile the shell currently is in. |
Textcase | When triggered, makes it so that its string input is either all in lowercase or all in UPPERCASE. |
Timepiece | Outputs the current station time. "Time Format" will output the time as XX:XX:XX, "Unit of Time" outputs time as specified in the "Unit of time" input. For example, if the station time is 00:10:08, and you set the unit of time input as "Minutes", then "Unit of Time"'s output will be "10". |
To Number | When triggered, converts a string that's only numbers into a number signal. |
To String | When triggered, converts its output into a string component. If it's output is an entity, it'll return the name of the entity. If the output is a list or table, it'll return "/list". For actually turning a list into a string, look at Concatenate List. |
Trigonometry | A component that has many trigonometric functions. That's as in-depth as I'll go since I hate math with a passion. |
Typecast | If the input value is the Signal type you set in the options, returns the input value. If not, returns nothing. |
Typecheck | When triggered, returns what Signal type the inputted signal is. |
View Sensor | When triggered, returns every single entity the shell can see as a list. Has a 1 second cooldown. |
MOD Action | Only compatible with the MOD Module Shell. When you use the mod circuit adapter component with this component installed (whether via the Mod Interface Panel or the icon on the top-left of your screen), you'll see a radial menu with the icon you selected as the icon input as a clickable button. Clicking this button triggers the output trigger. |
Pathfinder | When triggered, will calculate a path towards the X and Y coordinates you set as inputs. Once calculated, will return a "step" (aka where it has to go next to continue said path). If triggered again when the shell arrived at the step, will output the next step, and so on and so forth. If used with the Direction component, can be used to make a Drone that moves by itself. |
Pull | When triggered, will start pulling the entity input if its right besides it. Only works on Drone shells. |
Machines and Items
Machines
Circuit Fabricator
Found on the Circuit Lab. Used for printing out Components, Integrated Circuits, Shells, USB-Cables, Circuit multitools and BCI Manipulation Chambers. If you Простой левый клик. Неважно включен или выключен Боевой режим Включается при помощи клавиши 4, выключается при помощи клавиши 1 или может быть переключен при помощи клавиши F при стандартной раскладке. Нажатие левой кнопки на людей пустой рукой с включённым боевым режимом приведёт к удару или приведёт к помощи если он отключен. Также позволяет вам не меняться местами с человеком или толкнуть вас если вы столкнулись..
Attack the component printer with an integrated circuit, then you'll be able to directly add components to that integrated circuit by just pressing the "+" button on the top-left of your screen. Just drag and drop the components into your circuit.
Module duplicator
Duplicates both Module components and Integrated Circuits. Just name them (open the circuit/module, and on the top left you should see a "Name" input field), then Простой левый клик. Неважно включен или выключен Боевой режим Включается при помощи клавиши 4, выключается при помощи клавиши 1 или может быть переключен при помощи клавиши F при стандартной раскладке. Нажатие левой кнопки на людей пустой рукой с включённым боевым режимом приведёт к удару или приведёт к помощи если он отключен. Также позволяет вам не меняться местами с человеком или толкнуть вас если вы столкнулись..
Attack the duplicator with either of those in your hand. After that click on the printer with an empty hand, and you'll be able to print the circuit/module.
Brain-Computer Interface Manipulation Chamber
Check here.
Items
Circuit Multitool
Let's you mark entities, which can later be uploaded to entity inputs by clicking the arrow pointing up when you have a circuit multitool in your hand. Can also be used to see circuits by double clicking them with it, but a normal Multitool should do fine.
USB Cables
Let's you connect a shell to a technological device. To do this, while you're grabbing the usb cable, click on the shell, then on the device you want to connect with. When you do this, you should get a new component on your shell. To disconnect, click the little "x" on the top right of the new component. You can only interface with a few select devices:
Name | Description | Inputs | Outputs |
---|---|---|---|
Lightswitch | Lets you turn the lights of the area on and off. That's it. Very simple. 0 is off, and any number above 0 is on. |
|
|
Status Display | Lets you set what to show on the many status display screens that are around the station. By changing the options at the top you can either show nothing, show the shuttle arrival time, show a message that you can input using the two string inputs (Message 1 is top row, Message 2 is bottom), and show an image that you can choose in the "Picture" option as an Alert. |
|
|
Quantum Pad | Lets you set the target pad and notifies you when the teleportation failed. |
|
|
Bluespace Launchpad Console | Lets you set a Bluespace Launchpad's offset, and lets you trigger its sending and retrieving capabilities. |
|
|
Crew Monitoring Console | Lets you see the current health status of every crewmember that has turned on their suit sensors.
Click on the little "i" button on the top right to see what values the table has. Use in conjunction with the "Select Query" component. |
|
|
Security Records Console | Lets you see the current legal status of every crewmember, and even let's you change them. Notable for having two components within it: Security Records Data (Which will return the entire security database) and Security Records Set Status, which let you set the status of the individual who's table you set as the input.
If you want to, for example, set a person named John Doe to arrest, grab a Select Query component, set the input as the security records, the Column Name as "name" and the Comparison Input as "John Doe", it'll return John Doe's table, which you can then input into the Security Records Set Status component, set the option to "Arrest", then trigger it. Each Person has their on table, by setting the "Column Name" value to "name" and the "Comparison Input" value to "John Doe", you're basically saying "Get me the table of the person who's value in the name field is John Doe." To see what Column Names are available, click the little "i" icon on the top right of the Security Records Data component. |
Security Records Data
Security Records Set Status
|
Security Records Data
Security Records Set Status
|
Teleporter Control Console | Lets you set, update and see the currently available teleporter targets. |
|
|
Tram Controls | Let's you set the Tram's destination, and let's you send the tram to said destination. Also returns 1 or 0 if its travelling or not. |
|
|
Fire Alarms | Lets you turn it on or reset it to off, as well as tell you when its on and if it was just turned off. |
|
|
Air Alarms | Lets you change the air alarm's min and max gas, pressure and temperature values. Also lets you check the current pressure, temperature, and amount of a certain gas in the area the alarm is in. |
|
|
Beam Reflectors | Lets you set the angle. That's it. |
|
None |
Binary Atmospheric Pump | Lets you set and get the pressure, lets you get the temperature, and lets you check whether if the pump is turned on or off and if it's active. |
|
|
Atmospheric Volume Pump | Lets you set the transfer rate, turn the pump on and off, and lets you request the Input and Output pressure and temperature. |
|
|
Digital Valves | Let's you know whether its open or not, and let's you open and close it yourself. |
|
|
Atmospheric Meter | Lets you see the pressure and temperature shown by a meter. |
|
|
Hydroponics Tray | Let's you turn auto-grow on and off, and tells you the status of the plant, of auto grow, whether the plant was harvested and how much, whether the plant died, whether seeds have been planted, the water level, the toxins level, the pests level, the weeds level, the plant's health and the Reagents level. |
|
|
Conveyor Switch | Let's you turn the conveyor on or off, and let's you see what direction it's going. |
|
|
Brain-Computer Interfaces
Ever wanted to have a computer in your head? Sure hope the answer is yes, because Brain-Computer Interfaces (Henceforth referred to as "BCI's") are here for that! To get working with BCI's you need two things: A Brain-Computer Interface Shell (Info about which you can see above, in the Shells section) and a Brain-Computer Interface Manipulation Chamber, which is a machine. Both the shell and the machine circuit can be printed from the Component Printer.
How To Build
You build the Brain-Computer Interface Manipulation Chamber like any other machine, and you build the BCI shell by using a screwdriver on it, It already has an Integrated Circuit in it. It is recommended that you start coding when the BCI isn't on your brain yet, aka this exact moment. When the BCI is on your brain, you can no longer add components to it, you can still change connections and remove them though.
Components
BCI's are compatible with every single component, but it also has a bunch of exclusive components that only work with it. You can see these components on the "BCI Components" section of the Component Printer. These components are:
Name | Description | Inputs | Outputs |
---|---|---|---|
Bar Overlay | Shows a progress bar ontop of the entity object you set as its input. |
|
None |
BCI Action | When the BCI shell is in your brain, shows a button in the top left of your screen. When you click on it, it triggers the Signal output. The icon input lets you change the icon. |
|
|
Counter Overlay | Shows a three digit number on top of you. You can change the position of it by using the axis shift inputs, but it'll always follow you. You might even need to shift it since it doesn't show correctly when its on top of you for some reason. |
|
None |
Object Overlay | Creates or deletes a sprite on top of the target entity. You can change what sprite it uses, and you can even shift its location by changing the axis shift options. |
|
None |
BCI Target Interceptor | When activated, the next time you click an entity, the output signal will be triggered and that entity will be set as the output. |
|
|
Thought Listener | When triggered, will show a text input window with the name and description you inputted. After you press enter or click submit, it'll trigger and output what you wrote |
|
|
VOX Announcement | This will make the AI's beautiful god-like voice reverb throughout your head, saying what you set as the input string or input string list. It only plays for you, no one else can hear it. |
|
None |
How to put it in your head
Grab your BCI shell and just Простой левый клик. Неважно включен или выключен Боевой режим Включается при помощи клавиши 4, выключается при помощи клавиши 1 или может быть переключен при помощи клавиши F при стандартной раскладке. Нажатие левой кнопки на людей пустой рукой с включённым боевым режимом приведёт к удару или приведёт к помощи если он отключен. Также позволяет вам не меняться местами с человеком или толкнуть вас если вы столкнулись..
''use'' it on the BCI Manipulation Chamber. After that just open it up by, again, Простой левый клик. Неважно включен или выключен Боевой режим Включается при помощи клавиши 4, выключается при помощи клавиши 1 или может быть переключен при помощи клавиши F при стандартной раскладке. Нажатие левой кнопки на людей пустой рукой с включённым боевым режимом приведёт к удару или приведёт к помощи если он отключен. Также позволяет вам не меняться местами с человеком или толкнуть вас если вы столкнулись..using it and close the door once you're inside. Wait for a bit, and you should see an animation play out, once that animation is done, congrats! You're ready to do freaky brain stuff.
If you ever wanna remove a BCI Shell from your head, just walk back into a Manipulation Chamber and wait for a bit again. You'll see the animation play, and after its done you can just Right Click the manipulation chamber to get your shell back.
However, if all you want to do is recharge the power cell inside your BCI shell, you can just walk into a cyborg recharger.