public override void Write(BinaryWriter writer)
{
writer.Write(RadarRange);
writer.Write(RadarAngleX);
writer.Write(RadarAngleY);
writer.Write(TerritorySize);
writer.Write(ThreatBeforeAttackRate);
writer.Write((byte)(ForceThreatOnFirstLocked ? 1 : 0));
writer.Write(Reserve0);
writer.Write(Attack1_Distance);
writer.Write(Attack1_Margin);
writer.Write(Attack1_Rate);
writer.Write((Byte)Attack1_ActionID);
writer.Write(Attack1_DelayMin);
writer.Write(Attack1_DelayMax);
writer.Write(Attack1_ConeAngle);
writer.Write(Reserve10);
writer.Write(Attack2_Distance);
writer.Write(Attack2_Margin);
writer.Write(Attack2_Rate);
writer.Write((Byte)Attack2_ActionID);
writer.Write(Attack2_DelayMin);
writer.Write(Attack2_DelayMax);
writer.Write(Attack2_ConeAngle);
writer.Write(Reserve11);
writer.Write(Attack3_Distance);
writer.Write(Attack3_Margin);
writer.Write(Attack3_Rate);
writer.Write((Byte)Attack3_ActionID);
writer.Write(Attack3_DelayMin);
writer.Write(Attack3_DelayMax);
writer.Write(Attack3_ConeAngle);
writer.Write(Reserve12);
writer.Write(Attack4_Distance);
writer.Write(Attack4_Margin);
writer.Write(Attack4_Rate);
writer.Write((Byte)Attack4_ActionID);
writer.Write(Attack4_DelayMin);
writer.Write(Attack4_DelayMax);
writer.Write(Attack4_ConeAngle);
writer.Write(Reserve13);
writer.Write(Reserve_last);
}