QStringList OneSixInstance::processMinecraftArgs( QString user, QString session ) { I_D(OneSixInstance); auto version = d->version; QString args_pattern = version->minecraftArguments; QMap<QString, QString> token_mapping; token_mapping["auth_username"] = user; token_mapping["auth_session"] = session; //FIXME: user and player name are DIFFERENT! token_mapping["auth_player_name"] = user; //FIXME: WTF is this. I just plugged in a random UUID here. token_mapping["auth_uuid"] = "7d4bacf0-fd62-11e2-b778-0800200c9a66"; // obviously fake. // this is for offline: /* map["auth_player_name"] = "Player"; map["auth_player_name"] = "00000000-0000-0000-0000-000000000000"; */ token_mapping["profile_name"] = name(); token_mapping["version_name"] = version->id; QString absRootDir = QDir(minecraftRoot()).absolutePath(); token_mapping["game_directory"] = absRootDir; QString absAssetsDir = QDir("assets/").absolutePath(); token_mapping["game_assets"] = absAssetsDir; QStringList parts = args_pattern.split(' ',QString::SkipEmptyParts); for (int i = 0; i < parts.length(); i++) { parts[i] = replaceTokensIn(parts[i], token_mapping); } return parts; }
QStringList OneSixInstance::processMinecraftArgs(LoginResponse response) { I_D(OneSixInstance); auto version = d->version; QString args_pattern = version->minecraftArguments; QMap<QString, QString> token_mapping; // yggdrasil! token_mapping["auth_username"] = response.username; token_mapping["auth_session"] = response.session_id; token_mapping["auth_access_token"] = response.access_token; token_mapping["auth_player_name"] = response.player_name; token_mapping["auth_uuid"] = response.player_id; // this is for offline?: /* map["auth_player_name"] = "Player"; map["auth_player_name"] = "00000000-0000-0000-0000-000000000000"; */ // these do nothing and are stupid. token_mapping["profile_name"] = name(); token_mapping["version_name"] = version->id; QString absRootDir = QDir(minecraftRoot()).absolutePath(); token_mapping["game_directory"] = absRootDir; QString absAssetsDir = QDir("assets/").absolutePath(); token_mapping["game_assets"] = absAssetsDir; QStringList parts = args_pattern.split(' ', QString::SkipEmptyParts); for (int i = 0; i < parts.length(); i++) { parts[i] = replaceTokensIn(parts[i], token_mapping); } return parts; }