A method for optimizing transfers of downloadable interactive game content which executes in accordance with user inputs from a remote content provider to a local processor of a user device, the method comprising, at the user device: receiving a first local request for a first portion of a plurality of portions of the downloadable interactive game content that are to be executed by the processor; translating the first local request into a first remote request for the first portion of the downloadable interactive game content; transmitting the first remote request; receiving the first portion of the downloadable interactive game content; storing the first portion of the downloadable interactive game content; using the processor to execute the first portion of the downloadable interactive game content before all portions of the downloadable interactive game content have been downloaded for execution by the processor; predicting a second local request for the second or subsequent portion of the plurality of portions of the downloadable interactive game content, if the predicted second or subsequent portion is not stored locally, obtaining the predicted second or subsequent portion from the remote content provider; receiving a second local request for a portion of the downloadable interactive game content; and determining whether the second local request matches the predicted second or subsequent request, and if so, using the processor to execute the obtained second or subsequent portion; and if not, determining whether the locally requested portion is stored locally and if so, using the processor to execute the locally stored portion; and if not, obtaining the locally requested portion from the remote content provider and using the processor to execute the locally requested portion; limiting the number of predicted requests or the downloaded predicted portions of the interactive game content beyond the currently executing portion of interactive game content to a certain number of predicted requests or downloaded predicted portions beyond the currently executing portion. receiving a first local request for a first portion of a plurality of portions of the downloadable interactive game content that are to be executed by the processor; translating the first local request into a first remote request for the first portion of the downloadable interactive game content; transmitting the first remote request; receiving the first portion of the downloadable interactive game content; storing the first portion of the downloadable interactive game content; using the processor to execute the first portion of the downloadable interactive game content before all portions of the downloadable interactive game content have been downloaded for execution by the processor; predicting a second local request for the second or subsequent portion of the plurality of portions of the downloadable interactive game content, if the predicted second or subsequent portion is not stored locally, obtaining the predicted second or subsequent portion from the remote content provider; receiving a second local request for a portion of the downloadable interactive game content; and determining whether the second local request matches the predicted second or subsequent request, and if so, using the processor to execute the obtained second or subsequent portion; and if not, determining whether the locally requested portion is stored locally and if so, using the processor to execute the locally stored portion; and if not, obtaining the locally requested portion from the remote content provider and using the processor to execute the locally requested portion; limiting the number of predicted requests or the downloaded predicted portions of the interactive game content beyond the currently executing portion of interactive game content to a certain number of predicted requests or downloaded predicted portions beyond the currently executing portion.