Example: Flashlight
I will cover, with images, how to construct a very simple flashlight with Integrated Electronics, in this section of the guide. Sadly, the inclusion of this guide overcame the character limit of the Integrated Electronics: The Guide itself.
The Circuit Code for this Device
{“assembly”:{“type”:“type-a electronic assembly”},“components”:[{“type”:“tiny photovoltaic cell”},{“type”:“button”},{“type”:“advanced light”,“inputs”:[[2,0,4]]}],“wires”:[[[2,“A”,1],[3,“A”,1]]]}
Step 1
First, one ascertains one’s goal. In this case, to create an easily toggled light. Simple enough.
Step 2
One acquires the needed tools, and selects an assembly appropriate to the task. In this case, a tiny assembly might have done the job - but perhaps one would want to leave room to give additional functionality to the flashlight in the future - so a small assembly does the trick. There isn’t one in particular that looks like a flashlight, so we’ll just go with “Type-A”.
Pictured, from left to right: Circuit Analyzer, Circuit Debugger, Circuit Wirer, Type-A Assembly
Step 3
Now that we have an assembly, we need to fill it with components. One should carefully review what components might be needed, and all of them before editing values, or wiring. This helps give a more complete picture of the finished device in one’s mind. In my case, at first I selected a simple Light component, and then replaced it with an Advanced Light - to demonstrate value editing. One might also have done this, to expand the device in the future by allowing the ability to select the light’s color. I also initially fudged things a little by adding a toggle switch, instead of a button initially - thinking that the light being on or off would rely on a Boolean value - which it does not.
Be sure to check power consumption on your device, by roughly totaling components. In this case, power consumption is far less than 1 Watt a second, so a Photovoltaic Cell component will provide more than enough power.
Pictured: The Assembly with the described components inserted.
Step 4
Now that we have our components in our assembly, we should look to see if any default values require editing. One does - in the Advanced Light component. We should edit the “brightness” variable to its maximum - 4.
To do this, one takes a Circuit Debugger in hand, and uses it. This will bring up a menu, with one of the options listed as “Number”. Selecting this will pop up an input box. Just type “4” - without the quotes, then submit.
With one’s tool still in hand, select the assembly to open the assembly interface - if it isn’t already open.
Then, one selects the “Advanced Light” component, remembering to keep one’s Circuit Debugger still in one’s active hand.
Then, one clicks the variable in the Data Input Pin, which is highlighed in green below.
Why 4, and why isn't the maximum listed in the component?
I have no idea. The code is here, between Lines 96 and 120, with particular interest falling on Line 116.
I’ve highlighted two things of note. Around the red box, we see that the “brightness” variable is the “NUM” type - a number. Around the green box, we see that the current value for the “brightness” variable is “null”.
Pictured: The Advanced Light Component, with highlighted boxes.
Step 5
With all the values we need shifted from their defaults, we can begin wiring.
There’s only one thing that needs to be connected - the Button component’s “PULSE OUT”
Pulse Pin, to the Advanced Light component’s “PULSE IN” Pulse Pin.
To do this, one takes a Circuit Wirer in hand, then clicks the “PULSE OUT” option in the Button component.
With the Circuit Wirer still in one’s active hand, simply click the “PULSE IN” option in the Advanced Light component.
Please see the bug here. The Button component should have a “PULSE OUT” Pulse Pin, but it is mislabeled as “PULSE IN”. The device will still function as intended.
Pictured: The Button component, with click-target for one’s Circuit Wirer highlighted in red.
Pictured: The Advanced Light component, with click-target for one’s Circuit Wirer highlighted in red.
Pictured: How the Button and Advanced Light components should look after the Advanced Light component’s “brightness” variable has been edited, and the two components have been wired together.
Step 6
Insert a Power Cell. I inserted a High Capacity Power Cell, which is unnecessarily large.
Pictured: The change to the assembly menu interface after a Power Cell has been inserted.
Step 7
Use a screwdriver to close the assembly, and test. In this case, I brought the device to a darkly lit area of maint - and used it in-hand. If one has only inserted a single input component that requires player interaction, when the device is used in-hand, it will automatically activate that component. Otherwise, a selection menu will be given to the player.
Pictured: Success! The device’s Advanced Light component has been activated by the button.
Step 8
Save your device’s code, for later production or further work on it. Use a Circuit Analyzer on the assembly to do this. Copy the given code, and paste it to an external text document, save it onto your computer.
Pictured: The output of a Circuit Analyzer