local iface = peripheral.wrap "back" local x, y, z = gps.locate() local approx = y local function do_approx() local past_time = os.epoch "utc" while true do local time = os.epoch "utc" local diff = (time - past_time) / 1000 past_time = time local meta = iface.getMetaByName "gollark" approx = approx + (meta.motionY * diff) sleep() end end local function do_gps() while true do local x, y, z = gps.locate() print("real=", y, "\napprox=", approx, "\ndiff=", y - approx) sleep(0.5) end end parallel.waitForAll(do_approx, do_gps)