implement offline game