diff --git a/y2018/control_loops/superstructure/superstructure_goal.fbs b/y2018/control_loops/superstructure/superstructure_goal.fbs
index b618c1b..dbef25a 100644
--- a/y2018/control_loops/superstructure/superstructure_goal.fbs
+++ b/y2018/control_loops/superstructure/superstructure_goal.fbs
@@ -3,37 +3,37 @@
 namespace y2018.control_loops.superstructure;
 
 table IntakeGoal {
-  roller_voltage:double;
+  roller_voltage:double (id: 0);
 
   // Goal angle in radians of the intake.
   // Zero radians is where the intake is pointing straight out, with positive
   // radians inward towards the cube.
-  left_intake_angle:double;
-  right_intake_angle:double;
+  left_intake_angle:double (id: 1);
+  right_intake_angle:double (id: 2);
 }
 
 table Goal {
-  intake:IntakeGoal;
+  intake:IntakeGoal (id: 0);
 
   // Used to identiy a position in the planned set of positions on the arm.
-  arm_goal_position:uint;
+  arm_goal_position:uint32 (id: 1);
   // If true, start the grab box sequence.
-  grab_box:bool;
+  grab_box:bool (id: 2);
 
-  open_claw:bool;
-  close_claw:bool;
+  open_claw:bool (id: 3);
+  close_claw:bool (id: 4);
 
-  deploy_fork:bool;
+  deploy_fork:bool (id: 5);
 
-  hook_release:bool;
+  hook_release:bool (id: 6);
 
-  voltage_winch:double;
+  voltage_winch:double (id: 7);
 
-  open_threshold:double;
+  open_threshold:double (id: 8);
 
-  disable_box_correct:bool;
+  disable_box_correct:bool (id: 9);
 
-  trajectory_override:bool;
+  trajectory_override:bool (id: 10);
 }
 
 root_type Goal;
diff --git a/y2018/control_loops/superstructure/superstructure_output.fbs b/y2018/control_loops/superstructure/superstructure_output.fbs
index f4d62da..1055222 100644
--- a/y2018/control_loops/superstructure/superstructure_output.fbs
+++ b/y2018/control_loops/superstructure/superstructure_output.fbs
@@ -3,38 +3,38 @@
 table IntakeVoltage {
   // Voltage of the motors on the series elastic on one side (left or right) of
   // the intake.
-  voltage_elastic:double;
+  voltage_elastic:double (id: 0);
 
   // Voltage of the rollers on one side (left or right) of the intake.
-  voltage_rollers:double;
+  voltage_rollers:double (id: 1);
 }
 
 table Output {
   // Voltage sent to the parts on the left side of the intake.
-  left_intake:IntakeVoltage;
+  left_intake:IntakeVoltage (id: 0);
 
   // Voltage sent to the parts on the right side of the intake.
-  right_intake:IntakeVoltage;
+  right_intake:IntakeVoltage (id: 1);
 
   // Voltage sent to the motors on the proximal joint of the arm.
-  voltage_proximal:double;
+  voltage_proximal:double (id: 2);
 
   // Voltage sent to the motors on the distal joint of the arm.
-  voltage_distal:double;
+  voltage_distal:double (id: 3);
 
   // Voltage sent to the hanger.  Positive pulls the robot up.
-  voltage_winch:double;
+  voltage_winch:double (id: 4);
 
   // Clamped (when true) or unclamped (when false) status sent to the
   // pneumatic claw on the arm.
-  claw_grabbed:bool;
+  claw_grabbed:bool (id: 5);
 
   // If true, release the arm brakes.
-  release_arm_brake:bool;
+  release_arm_brake:bool (id: 6);
   // If true, release the hook
-  hook_release:bool;
+  hook_release:bool (id: 7);
   // If true, release the forks
-  forks_release:bool;
+  forks_release:bool (id: 8);
 }
 
 root_type Output;
diff --git a/y2018/control_loops/superstructure/superstructure_position.fbs b/y2018/control_loops/superstructure/superstructure_position.fbs
index 0323b78..87c4b0e 100644
--- a/y2018/control_loops/superstructure/superstructure_position.fbs
+++ b/y2018/control_loops/superstructure/superstructure_position.fbs
@@ -4,47 +4,47 @@
 
 table IntakeElasticSensors {
   // Position of the motor end of the series elastic in radians.
-  motor_position:frc971.PotAndAbsolutePosition;
+  motor_position:frc971.PotAndAbsolutePosition (id: 0);
 
   // Displacement of the spring in radians.
-  spring_angle:double;
+  spring_angle:double (id: 1);
 
   // False if the beam break sensor isn't triggered, true if the beam breaker is
   // triggered.
-  beam_break:bool;
+  beam_break:bool (id: 2);
 }
 
 table ArmPosition {
   // Values of the encoder and potentiometer at the base of the proximal
   // (connected to drivebase) arm in radians.
-  proximal:frc971.PotAndAbsolutePosition;
+  proximal:frc971.PotAndAbsolutePosition (id: 0);
 
   // Values of the encoder and potentiometer at the base of the distal
   // (connected to proximal) arm in radians.
-  distal:frc971.PotAndAbsolutePosition;
+  distal:frc971.PotAndAbsolutePosition (id: 1);
 }
 
 
 table Position {
   // Values of the series elastic encoders on the left side of the robot from
   // the rear perspective in radians.
-  left_intake:IntakeElasticSensors;
+  left_intake:IntakeElasticSensors (id: 0);
 
   // Values of the series elastic encoders on the right side of the robot from
   // the rear perspective in radians.
-  right_intake:IntakeElasticSensors;
+  right_intake:IntakeElasticSensors (id: 1);
 
-  arm:ArmPosition;
+  arm:ArmPosition (id: 2);
 
   // Value of the beam breaker sensor. This value is true if the beam is
   // broken, false if the beam isn't broken.
-  claw_beambreak_triggered:bool;
+  claw_beambreak_triggered:bool (id: 3);
   // Value of the beambreak sensor detecting when the box has hit the frame
   // cutout.
-  box_back_beambreak_triggered:bool;
+  box_back_beambreak_triggered:bool (id: 4);
 
   // Distance to the box in meters.
-  box_distance:double;
+  box_distance:double (id: 5);
 }
 
 root_type Position;
diff --git a/y2018/control_loops/superstructure/superstructure_status.fbs b/y2018/control_loops/superstructure/superstructure_status.fbs
index 8baf40e..9f53a82 100644
--- a/y2018/control_loops/superstructure/superstructure_status.fbs
+++ b/y2018/control_loops/superstructure/superstructure_status.fbs
@@ -4,97 +4,97 @@
 
 table IntakeSideStatus {
   // Is the subsystem zeroed?
-  zeroed:bool;
+  zeroed:bool (id: 0);
 
   // The state of the subsystem, if applicable.
-  state:int;
+  state:int32 (id: 1);
 
   // If true, we have aborted.
-  estopped:bool;
+  estopped:bool (id: 2);
 
   // Estimated position of the spring.
-  spring_position:float;
+  spring_position:float (id: 3);
   // Estimated velocity of the spring in units/second.
-  spring_velocity:float;
+  spring_velocity:float (id: 4);
   // Reported wrapping of the spring
-  spring_wrapped:int;
+  spring_wrapped:int (id: 5);
 
   // Estimated position of the joint.
-  motor_position:float;
+  motor_position:float (id: 6);
   // Estimated velocity of the joint in units/second.
-  motor_velocity:float;
+  motor_velocity:float (id: 7);
 
   // Goal position of the joint.
-  goal_position:float;
+  goal_position:float (id: 8);
   // Goal velocity of the joint in units/second.
-  goal_velocity:float;
+  goal_velocity:float (id: 9);
 
   // The calculated velocity with delta x/delta t
-  calculated_velocity:float;
+  calculated_velocity:float (id: 10);
 
   // The voltage given last cycle;
-  delayed_voltage:float;
+  delayed_voltage:float (id: 11);
 
   // State of the estimator.
-  estimator_state:frc971.PotAndAbsoluteEncoderEstimatorState;
+  estimator_state:frc971.PotAndAbsoluteEncoderEstimatorState (id: 12);
 }
 
 table ArmStatus {
   // State of the estimators.
-  proximal_estimator_state:frc971.PotAndAbsoluteEncoderEstimatorState;
-  distal_estimator_state:frc971.PotAndAbsoluteEncoderEstimatorState;
+  proximal_estimator_state:frc971.PotAndAbsoluteEncoderEstimatorState (id: 0);
+  distal_estimator_state:frc971.PotAndAbsoluteEncoderEstimatorState (id: 1);
 
   // The node we are currently going to.
-  current_node:uint;
+  current_node:uint32 (id: 2);
   // Distance (in radians) to the end of the path.
-  path_distance_to_go:float;
+  path_distance_to_go:float (id: 3);
   // Goal position and velocity (radians)
-  goal_theta0:float;
-  goal_theta1:float;
-  goal_omega0:float;
-  goal_omega1:float;
+  goal_theta0:float (id: 4);
+  goal_theta1:float (id: 5);
+  goal_omega0:float (id: 6);
+  goal_omega1:float (id: 7);
 
   // Current position and velocity (radians)
-  theta0:float;
-  theta1:float;
+  theta0:float (id: 8);
+  theta1:float (id: 9);
 
-  omega0:float;
-  omega1:float;
+  omega0:float (id: 10);
+  omega1:float (id: 11);
 
   // Estimated voltage error for the two joints.
-  voltage_error0:float;
-  voltage_error1:float;
+  voltage_error0:float (id: 12);
+  voltage_error1:float (id: 13);
 
   // True if we are zeroed.
-  zeroed:bool;
+  zeroed:bool (id: 14);
 
   // True if the arm is zeroed.
-  estopped:bool;
+  estopped:bool (id: 15);
 
   // The current state machine state.
-  state:uint;
+  state:uint32 (id: 16);
 
-  grab_state:uint;
+  grab_state:uint32 (id: 17);
 
   // The number of times the LQR solver failed.
-  failed_solutions:uint;
+  failed_solutions:uint32 (id: 18);
 }
 
 table Status {
   // Are all the subsystems zeroed?
-  zeroed:bool;
+  zeroed:bool (id: 0);
 
   // If true, any of the subsystems have aborted.
-  estopped:bool;
+  estopped:bool (id: 1);
 
   // Status of both intake sides.
-  left_intake:IntakeSideStatus;
-  right_intake:IntakeSideStatus;
+  left_intake:IntakeSideStatus (id: 2);
+  right_intake:IntakeSideStatus (id: 3);
 
-  arm:ArmStatus;
+  arm:ArmStatus (id: 4);
 
-  filtered_box_velocity:double;
-  rotation_state:uint;
+  filtered_box_velocity:double (id: 5);
+  rotation_state:uint (id: 6);
 }
 
 root_type Status;
