If you have read through http://poorlycoded.blogspot.com.au/2013/03/precaching-task-sequence-on-client.html and decided you want to know more, well let me try and assist :)
The below script will read from a list of packages and override the content variables for those packages:
sPackageIDs = "ABC12345,ABC98765,ABC00000,ABC111111" Set objEnv = CreateObject("Microsoft.SMS.TSEnvironment") Set objFSO=CreateObject("Scripting.FileSystemObject") Set objShell=CreateObject("Wscript.Shell") Set objDrives=objFSO.Drives cacheFolder = "\PathToCache" path = objFSO.GetParentFolderName(WScript.ScriptFullName) For Each objDrive In objDrives If objDrive.DriveType=2 And objDrive.DriveLetter<>"X" Then If objFSO.FolderExists(objDrive.DriveLetter & ":\Windows") Then Drive=objDrive.DriveLetter & ":" End If End If Next strCache = Drive & cacheFolder tsEnv2Path = objFSO.Buildpath(path,"tsenv2.exe") pkgSplit = Split(sPackageIDS,",") for each pkg in pkgSplit strPKGVar = "_SMSTS" & pkg For Each variable In objEnv.GetVariables if variable = strPKGVar then if objFSO.FolderExists(objFSO.BuildPath(strCache,pkg)) then objShell.Run(tsEnv2Path & " set " & variable & "=s" & strCache & "\" & pkg & "\",1,true) end if next Next You can then put this into your task sequence and have those packages overriden by the local, cached package.Obviously be careful you don't have a format step, otherwise this will all be in vain, and if you cache folder is in a non standard location, perhaps ensure its added to the Safe Folder variable by adding this line, or setting the OSDStateStore variable in your TS.
Hope this helps! PS i've knocked together the above script without testing in my lab - so obviously test this first :)