Bug? Maybe? with Creep.moveTo() and visualization

  • So this started with an attempt to figure out why, sometimes, but not all the time, my creeps would recalculate a path every tick instead of every reusePath ticks. 

    Turns out that there is a flaw in Creep.moveTo()





    if(result == C.OK) {
      return C.OK;



    means that the function will continue to execure if the moveByPath command returns a not OK. ERR_TOO_TIRED is not OK. But that's fine right, cause moveTo checks fatigue. Except it doesn't.



    if(data(this.id).fatigue > 0 && (!opts || !opts.visualizePathStyle)) {
      return C.ERR_TIRED;



    If you have options and that options contains visualizePathStyle then this check is ignored and you re-calc path on ANY not OK from line 266 including ERR_TOO_TIRED


    This does not seems like the expected behavior. It seems like a bug. But I suppose it could be an undocumented feature.

  • I hate this forum, it never does what I expect.

  • And I can't use the pos editor to fix it because black on black is bad.