My first thought, after letting my subconscious mull on it, was to add a small delay in the 'Goto' code: pause a short while between 'moves'.
Pondering further, the 'invisible barbarians' thing might be the same problem: when a unit completes a move, there needs to be a pause so the user can see and adjust to any results. I don't recall off-hand how many "movement done" handlers there are, but that seems like an appropriate location to experiment with.
Action on the screen is definitely too fast: transition away from the current unit is large and jarring sometimes.
A well-designed game loop should take system speed into account and provide a consistent and smooth update behavior. I've been focused on bug fixes and features to-date and have not dug into the foundations yet.
Pondering further, the 'invisible barbarians' thing might be the same problem: when a unit completes a move, there needs to be a pause so the user can see and adjust to any results. I don't recall off-hand how many "movement done" handlers there are, but that seems like an appropriate location to experiment with.
Action on the screen is definitely too fast: transition away from the current unit is large and jarring sometimes.
A well-designed game loop should take system speed into account and provide a consistent and smooth update behavior. I've been focused on bug fixes and features to-date and have not dug into the foundations yet.