Llevar múltiples cuentas de Steam a la vez, mantenerlas activas en CS2 y gestionar drops automáticamente es el tipo de problema que me encanta resolver con Python.

El problema

Necesitaba ejecutar varias instancias de Steam en paralelo, cada una aislada de las demás, sin compartir sesión ni perfil de Windows. La clave: sandboxing a nivel de proceso.

Arquitectura

Lanzar una instancia

import subprocess, os

def launch_instance(account_id: str, sandbox_path: str):
    env = os.environ.copy()
    env["STEAM_USER"] = account_id
    proc = subprocess.Popen(
        ["steam.exe", "-login", account_id],
        cwd=sandbox_path,
        env=env,
        creationflags=subprocess.CREATE_NEW_PROCESS_GROUP,
    )
    return proc

Conclusión

El mayor reto fue el aislamiento de perfiles. Con directorios separados por cuenta y variables de entorno controladas, conseguí que nunca interfirieran entre sí.