enable variable segment length for OppositeMovement, also updated simulator