world.update + private update methods