Solución nueva y que funciona (2016-04-01 y sigue funcionando):
Asegúrate de que has configurado Steam para que recuerde tu contraseña. Ahora abre <Steam_installation_dir>/config/loginusers.vdf
y cambiar el valor de WantsOfflineMode
a 1
. Ubicación por defecto de este archivo:
- Windows (32 bits):
C:\Program Files\Steam\config\loginusers.vdf
- Windows (64 bits):
C:\Program Files (x86)\Steam\config\loginusers.vdf
- Linux:
~/.steam/steam/config/loginusers.vdf
- Mac:
~/Library/Application Support/Steam/config/loginusers.vdf
Si no quieres que te avise sobre el lanzamiento de Steam en modo offline simplemente haz lo mismo con SkipOfflineModeWarning
. Si no puedes ver esos valores, sólo tienes que añadirlos para que se vea así:
"users"
{
"<your profile number>"
{
"AccountName" "<your login>"
"PersonaName" "<your display name>"
"RememberPassword" "1"
"Timestamp" "<timestamp>"
"WantsOfflineMode" "1"
"SkipOfflineModeWarning" "1"
}
}
Por supuesto, puede haber más usuarios en la lista.
Puede volver a cambiar esos valores a 0
para iniciar Steam en modo online.
NOTA: Steam se reiniciará automáticamente SkipOfflineModeWarning
a 0
cuando se cierra. Para evitarlo, puedes poner el archivo como de sólo lectura, pero entonces no podrás volver fácilmente al modo online ni hacer que Steam recuerde a otro usuario. Alternativamente puedes usar algún script para cambiar esos valores por ti.
Para automatizar esto en máquinas Windows, guarde
Const ForReading = 1
Const ForWriting = 2
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile("config\loginusers.vdf", ForReading)
Do Until objFile.AtEndOfStream
strLine = objFile.ReadLine
If InStr(strLine, "WantsOfflineMode") = 0 And InStr(strLine, "SkipOfflineModeWarning") = 0 Then
strText = strText & strLine & vbCrLf
End If
Loop
objFile.Close
If WScript.Arguments.Count = 1 Then
strText = Replace(strText, "RememberPassword", "WantsOfflineMode"" ""1"" ""SkipOfflineModeWarning"" ""1"" ""RememberPassword")
mode = WScript.Arguments(0)
Else
strText = Replace(strText, "RememberPassword", "WantsOfflineMode"" ""0"" ""SkipOfflineModeWarning"" ""0"" ""RememberPassword")
mode = "online"
End If
Set objFile = objFSO.OpenTextFile("config\loginusers.vdf", ForWriting)
objFile.WriteLine strText
objFile.Close
Set objShell = CreateObject("WScript.Shell")
If (mode = "offline") Or (mode = "online") Then
objShell.Exec("Steam.exe")
Else
objShell.Run("steam://rungameid/" & mode)
End If
como steam.vbs
en tu directorio de Steam y haz dos accesos directos a él. Añade offline
como parámetro a uno de ellos y ya está. Ahora tengo dos accesos directos de Steam en mi escritorio. Steam Online
con el camino "C:\Program Files (x86)\Steam\steam.vbs"
y Steam Offline
con el camino "C:\Program Files (x86)\Steam\steam.vbs" offline
.
He añadido soporte para juegos, para que puedas lanzarlos en modo offline. Sólo tienes que iniciar steam.vbs
con el ID de la aplicación como parámetro. Ejemplo: "C:\Program Files (x86)\Steam\steam.vbs" 440
lanza Team Fortress 2 en modo offline.