Skip to content

Instantly share code, notes, and snippets.

@w4rum
w4rum / barotrauma-reactor-guide.md
Last active January 31, 2024 14:46
In-depth Reactor Guide and Fission Controller (last updated for 0.13.3.11)

In-depth Reactor Guide and Fission Controller (last updated for 0.13.3.11)

This guide first explains some advanced features of the Barotrauma reactor system and then combines a PD controller with some reverse engineering of Barotrauma's source code to build a working fission controller. This guide does not build a turbine controller. Please see Rob Smith's video for a really great turbine controller that works well with this fission controller.

Quick Start

If you don't care about the details, just copy the following setup to your submarine. The wiring should be pretty self-explanatory from the layout, with the wires always going from the left to the right.

Component list (thanks to @FinetalPies):

  • 4 WiFi
  • 6 Memory
syntax = "proto3";
package example_service;
service ExampleService {
rpc ExampleUnaryUnary(ExampleRequest) returns (ExampleResponse);
rpc ExampleUnaryStream(ExampleRequest) returns (stream ExampleResponse);
rpc ExampleStreamUnary(stream ExampleRequest) returns (ExampleResponse);
rpc ExampleStreamStream(stream ExampleRequest) returns (stream ExampleResponse);
}
syntax = "proto3";
package example_service;
service ExampleService {
rpc ExampleUnaryUnary(ExampleRequest) returns (ExampleResponse);
rpc ExampleUnaryStream(ExampleRequest) returns (stream ExampleResponse);
rpc ExampleStreamUnary(stream ExampleRequest) returns (ExampleResponse);
rpc ExampleStreamStream(stream ExampleRequest) returns (stream ExampleResponse);
}