Program: 22814
Project: 22814
Buggy source:
@Override public void updateEntity(){
  worldObj.theProfiler.startSection("String_Node_Str");
  if (worldObj.isRemote) {
    return;
  }
  if (Active) {
    if (ticksExisted > 0 && ticksExisted < CarriageMotion.MotionDuration && ticksExisted % 20 == 0) {
      if (Anchored()) {
        ModRiM.plHelper.playSound(worldObj,xCoord,yCoord,zCoord,CarriageMotion.SoundFile,CarriageMotion.volume,1f);
      }
    }
    ticksExisted++;
    if (ticksExisted >= CarriageMotion.MotionDuration)     ticksExisted=0;
  }
 else {
    if (ticksExisted != 0)     ticksExisted=0;
  }
  if (Stale) {
    HandleNeighbourBlockChange();
  }
  if (CooldownRemaining > 0) {
    CooldownRemaining--;
    MarkServerRecordDirty();
    return;
  }
  if (Active) {
    return;
  }
  if (SignalDirection == null) {
    if (Signalled) {
      Signalled=false;
      MarkServerRecordDirty();
    }
    return;
  }
  if (CarriageDirection == null) {
    return;
  }
  if (Signalled) {
    if (!Continuous) {
      return;
    }
  }
 else {
    Signalled=true;
    MarkServerRecordDirty();
  }
  worldObj.theProfiler.startSection("String_Node_Str");
  try {
    InitiateMotion(PreparePackage(getSignalDirection().opposite()));
    ModRiM.plHelper.playSound(worldObj,xCoord,yCoord,zCoord,CarriageMotion.SoundFile,CarriageMotion.volume,1f);
  }
 catch (  CarriageMotionException Exception) {
    String Message="String_Node_Str" + xCoord + "String_Node_Str"+ yCoord+ "String_Node_Str"+ zCoord+ "String_Node_Str"+ worldObj.provider.dimensionId+ "String_Node_Str"+ Exception.getMessage();
    if (Exception instanceof CarriageObstructionException) {
      CarriageObstructionException ObstructionException=(CarriageObstructionException)Exception;
      Message+="String_Node_Str" + ObstructionException.X + "String_Node_Str"+ ObstructionException.Y+ "String_Node_Str"+ ObstructionException.Z+ "String_Node_Str";
    }
    if (RiMConfiguration.Debug.LogMotionExceptions) {
      Debug.dbg(Message);
    }
    if (lastUsingPlayer != null) {
      lastUsingPlayer.addChatComponentMessage(new ChatComponentText(Message));
    }
  }
  worldObj.theProfiler.endSection();
  worldObj.theProfiler.endSection();
}

Fixed version (ground truth):
@Override public void updateEntity(){
  worldObj.theProfiler.startSection("String_Node_Str");
  if (worldObj.isRemote) {
    worldObj.theProfiler.endSection();
    return;
  }
  if (Active) {
    if (ticksExisted > 0 && ticksExisted < CarriageMotion.MotionDuration && ticksExisted % 20 == 0) {
      if (Anchored()) {
        ModRiM.plHelper.playSound(worldObj,xCoord,yCoord,zCoord,CarriageMotion.SoundFile,CarriageMotion.volume,1f);
      }
    }
    ticksExisted++;
    if (ticksExisted >= CarriageMotion.MotionDuration)     ticksExisted=0;
  }
 else {
    if (ticksExisted != 0)     ticksExisted=0;
  }
  if (Stale) {
    HandleNeighbourBlockChange();
  }
  if (CooldownRemaining > 0) {
    CooldownRemaining--;
    MarkServerRecordDirty();
    worldObj.theProfiler.endSection();
    return;
  }
  if (Active) {
    worldObj.theProfiler.endSection();
    return;
  }
  if (SignalDirection == null) {
    if (Signalled) {
      Signalled=false;
      MarkServerRecordDirty();
    }
    worldObj.theProfiler.endSection();
    return;
  }
  if (CarriageDirection == null) {
    worldObj.theProfiler.endSection();
    return;
  }
  if (Signalled) {
    if (!Continuous) {
      worldObj.theProfiler.endSection();
      return;
    }
  }
 else {
    Signalled=true;
    MarkServerRecordDirty();
  }
  worldObj.theProfiler.startSection("String_Node_Str");
  try {
    InitiateMotion(PreparePackage(getSignalDirection().opposite()));
    ModRiM.plHelper.playSound(worldObj,xCoord,yCoord,zCoord,CarriageMotion.SoundFile,CarriageMotion.volume,1f);
  }
 catch (  CarriageMotionException Exception) {
    String Message="String_Node_Str" + xCoord + "String_Node_Str"+ yCoord+ "String_Node_Str"+ zCoord+ "String_Node_Str"+ worldObj.provider.dimensionId+ "String_Node_Str"+ Exception.getMessage();
    if (Exception instanceof CarriageObstructionException) {
      CarriageObstructionException ObstructionException=(CarriageObstructionException)Exception;
      Message+="String_Node_Str" + ObstructionException.X + "String_Node_Str"+ ObstructionException.Y+ "String_Node_Str"+ ObstructionException.Z+ "String_Node_Str";
    }
    if (RiMConfiguration.Debug.LogMotionExceptions) {
      Debug.dbg(Message);
    }
    if (lastUsingPlayer != null) {
      lastUsingPlayer.addChatComponentMessage(new ChatComponentText(Message));
    }
  }
  worldObj.theProfiler.endSection();
  worldObj.theProfiler.endSection();
}