Barotrauma - Component Based Reactor Controller (2024)

Barotrauma - Component Based Reactor Controller (1)

  • Title: Barotrauma
  • Release Date: March 13, 2023
  • Developer: FakeFish, Undertow Games
  • Publisher: Daedalic Entertainment

Since two-component “Bang-Bang” style reactor controllers were removed from the game with the release of the “Hoist the Sails” update, this guide aims to provide a suitable alternative. This design in my limited testing has proven robust and universal enough for me to feel comfortable sharing. The guide assumes basic knowledge of component wiring.

Overview

Full Component List

  • 5 Memory Components
  • 4 Divide Components
  • 2 Subtract Components
  • 1 Adder Component
  • 1 Multiply Component
  • 18 Wires

This guide was made to supplement a YouTube video on this very subject, and this section will be edited to include the video at the time of release.

Turbine Output

Components For This Section

  • 1 Divide Component
  • 1 Memory Component
  • 3 Wires

The Turbine Output is the easiest section of the circuit to wire, as well as the simplest part to understand. The formula used to calculate the optimal turbine output is L * 100 / M, where L is the current load of the circuit and M is the maximum power output of the reactor. However, we are able to restructure the equation to reduce how many components we need to use.

We will instead frame the equation as L / (M / 100). Since M is not a variable that we can wire into our circuit directly, we will have to manually input the maximum power output of the reactor. As we are manually inputting M into the circuit, it makes sense to do the relatively simple division by 100 manually as well, thus reducing the component count by one.

The maximum power of the vanilla ships (as of version 0.19.14.0) can be found via the following table:

Submarine

Max Output

Submarine

Max Output

Submarine

Max Output

Azimuth

3500

Humpback

3100

Remora

5000

Barsuk

4200

Kastrull

5000

Typhon

5000

Dugong

3000

Orca 2

4000

Winterhalter

8500

Herja

4800

R-29

5200

Camel

5200

Let’s start by placing our components.

We’ll need to configure both of our components. Staring with the divide component, set “Clamp max” to 100 and “Clamp min” to 0.

You remember the formula from above? This memory component represents our reactors maximum power output (M). Find the maximum power output of your reactor, either by referring to the above chart or by checking the reactor of your submarine in the submarine editor. In the case of the Dugong, the maximum power output is 3000. By dividing this value by 100, we get 30.

We’re now ready to start wiring. In the reactor, connect a wire to the LOAD_VALUE_OUT pin.

Take that wire and connect it to the SIGNAL_IN_1 pin of the divide component.

Connect a wire to the SIGNAL_OUT pin of the memory component.

That wire connects to SIGNAL_IN_2 of the divide component.

The SIGNAL_OUT pin of the divide component…

… connects to the SET_TURBINEOUTPUT pin in the reactor.

Fusion Reaction

Components For This Section

  • 2 Divide Components
  • 1 Memory Component
  • 1 Adder Component
  • 6 Wires

This section of the circuit is design to calculate the correct value the fusion reaction must be set to satisfy a given power load. The circuit takes in the Turbine Output calculated from the previous section, as well as the fuel heat potential (labelled as FUEL_OUT) as variables. It then uses these variables to calculate the ideal Fusion Reaction value.

First, we’ll lay down the components. I lay them out in this configuration since the Turbine Output at the bottom will feed into the Adder above it, and the left most Divide component will be the eventual endpoint for this section.

Only one component to configure for this section, which is the memory component. Set the value to 50.

Onto the wiring, grab the SIGNAL_OUT signal from the previous section…

…and plug that into SIGNAL_IN_1 of the adder component.

The SIGNAL_OUT of the memory component…

… feeds into the adder components SIGNAL_IN_2 pin.

The SIGNAL_OUT pin from the adder…

… connects to the SIGNAL_IN_1 pin of the left-most divide component.

Switching gears, let’s grab the FUEL_OUT value from the reactor…

… and plug it into the SIGNAL_IN_1 pin of the right most divide component.

We’ll take the SIGNAL_OUT signal from the memory component again…

… and plug it into SIGNAL_IN_2 of the right most divide component.

Finally, we’ll take SIGNAL_OUT from the right most divide component…

… and connect it to the SIGNAL_IN_2 pin of the left most divide component.

Temperature Regulator

Components For This Section

  • 3 Memory Components
  • 2 Subtract Components
  • 1 Divide Component
  • 1 Multiply Component
  • 9 Wires

We’re about half way done, and this next section is a bit of a doozy. This circuit is designed to prevent overheat conditions when the turbine output and fusion reaction aren’t quite in sync with the circuit. For instance, when ramping up from a cold start, it’s possible for the reactor to overheat and melt down. This circuit regulates the temperature; If it detects the temperature of the reactor is getting too hot, it will ramp the fusion reaction down proportionally. This ramping effect ensures that the reactor powers up quickly and efficiently, while preventing any power oscillations that could occur from circuit feedback.

Let’s place the last of our components.

We have a bit to configure this time, so let’s start with the right most subtract component. Set “Clamp max” to 1.1, and “Clamp min” to 0.

Now we can set the memory component values. From left to right, set the Value of the memory components to 5000…

… 1000…

… and 1, respectively.

For wiring, let’s take the TEMPERATURE_OUT value from the reactor…

… and put it in the SIGNAL_IN_1 pin of the left most subtract component.

The SIGNAL_OUT value of the above memory component…

… goes into SIGNAL_IN_2.

SIGNAL_OUT of the left most subtract component…

… goes into SIGNAL_IN_1 of the divide component.

The SIGNAL_OUT value of the above memory component…

… goes into SIGNAL_IN_2.

SIGNAL_OUT then plugs into…

SIGNAL_IN_2 of the right most subtract component.

The SIGNAL_OUT value of the above memory component…

… plugs into SIGNAL_IN_1.

SIGNAL_OUT then plugs into…

… the SIGNAL_IN_1 pin of the multiply component.

You remember the divide component we left on in the last section? Finally we can connect SIGNAL_OUT from there…

… with the SIGNAL_IN_2 pin of the multiply component.

Finally, the SIGNAL_OUT of the multiply component…

… can be connected to the SET_FISSIONRATE pin on the reactor.

Conclusion

I hope this helped, perhaps cleared a few things up. If you have any questions or comments, feel free to post them. I can’t promise a speedy response or even a satisfying answer, but I’ll try my best.

That's everything we are sharing today for this Barotrauma guide. This guide was originally created and written by DrFreenote. In case we fail to update this guide, you can find the latest update by following this link.

If you believe that any of the content on this site violates your rights, including your intellectual property rights, please contact us immediately using our contact form.
Barotrauma - Component Based Reactor Controller (2024)
Top Articles
Latest Posts
Article information

Author: Prof. Nancy Dach

Last Updated:

Views: 6193

Rating: 4.7 / 5 (77 voted)

Reviews: 84% of readers found this page helpful

Author information

Name: Prof. Nancy Dach

Birthday: 1993-08-23

Address: 569 Waelchi Ports, South Blainebury, LA 11589

Phone: +9958996486049

Job: Sales Manager

Hobby: Web surfing, Scuba diving, Mountaineering, Writing, Sailing, Dance, Blacksmithing

Introduction: My name is Prof. Nancy Dach, I am a lively, joyous, courageous, lovely, tender, charming, open person who loves writing and wants to share my knowledge and understanding with you.