Π‘ΠΎΠ·Π΄Π°Π½ Π΄Π»Ρ Π±ΡΡΡΡΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°Π΄Π°Π½ΠΈΠΉ Discord Π±Π΅Π· Π·Π°ΠΏΡΡΠΊΠ° ΠΈΠ³Ρ ΠΈΠ»ΠΈ ΡΡΡΠΈΠΌΠΎΠ².
Note
ΠΡΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅!
ΠΡΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΎΠ΄ΠΈΠ½ Π² Π³ΠΎΠ»ΠΎΡΠΎΠ²ΠΎΠΌ ΠΊΠ°Π½Π°Π»Π΅! ΠΡΠΎ-ΡΠΎ Π΅ΡΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡΡΡΡ ΠΊ Π²Π°ΠΌ!
Warning
Π’Π΅ΠΏΠ΅ΡΡ Π΅ΡΡΡ Π΄Π²Π° ΡΠΈΠΏΠ° ΠΊΠ²Π΅ΡΡΠΎΠ² ( "ΡΡΡΠΈΠΌ" ΠΈ "ΠΈΠ³ΡΠ°" )! ΠΠ±ΡΠ°ΡΠ°ΠΉΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ!
ΠΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎΡ ΡΠΊΡΠΈΠΏΡ:
- ΠΡΠΈΠΌΠΈΡΠ΅ ΠΊΠ²Π΅ΡΡ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ -> Π‘ΠΊΠ»Π°Π΄ ΠΏΠΎΠ΄Π°ΡΠΊΠΎΠ²
- ΠΠ°ΠΆΠΌΠΈΡΠ΅ Ctrl+Shift+I ΡΡΠΎΠ±Ρ ΠΎΡΠΊΡΡΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°
- ΠΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² Π²ΠΊΠ»Π°Π΄ΠΊΡ
Console
- ΠΡΡΠ°Π²ΡΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄ ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ»Π°Π²ΠΈΡΡ Enter:
ΠΠ°ΠΆΠΌΠΈΡΠ΅ Π΄Π»Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ°
let wpRequire;
window.webpackChunkdiscord_app.push([[ Math.random() ], {}, (req) => { wpRequire = req; }]);
let ApplicationStreamingStore, RunningGameStore, QuestsStore, ExperimentStore, FluxDispatcher, api
if(window.GLOBAL_ENV.SENTRY_TAGS.buildId === "366c746173a6ca0a801e9f4a4d7b6745e6de45d4") {
ApplicationStreamingStore = Object.values(wpRequire.c).find(x => x?.exports?.default?.getStreamerActiveStreamMetadata).exports.default;
RunningGameStore = Object.values(wpRequire.c).find(x => x?.exports?.default?.getRunningGames).exports.default;
QuestsStore = Object.values(wpRequire.c).find(x => x?.exports?.default?.getQuest).exports.default;
ExperimentStore = Object.values(wpRequire.c).find(x => x?.exports?.default?.getGuildExperiments).exports.default;
FluxDispatcher = Object.values(wpRequire.c).find(x => x?.exports?.default?.flushWaitQueue).exports.default;
api = Object.values(wpRequire.c).find(x => x?.exports?.getAPIBaseURL).exports.HTTP;
} else {
ApplicationStreamingStore = Object.values(wpRequire.c).find(x => x?.exports?.Z?.getStreamerActiveStreamMetadata).exports.Z;
RunningGameStore = Object.values(wpRequire.c).find(x => x?.exports?.ZP?.getRunningGames).exports.ZP;
QuestsStore = Object.values(wpRequire.c).find(x => x?.exports?.Z?.getQuest).exports.Z;
ExperimentStore = Object.values(wpRequire.c).find(x => x?.exports?.Z?.getGuildExperiments).exports.Z;
FluxDispatcher = Object.values(wpRequire.c).find(x => x?.exports?.Z?.flushWaitQueue).exports.Z;
api = Object.values(wpRequire.c).find(x => x?.exports?.tn?.get).exports.tn;
}
let quest = [...QuestsStore.quests.values()].find(x => x.id !== "1245082221874774016" && x.userStatus?.enrolledAt && !x.userStatus?.completedAt && new Date(x.config.expiresAt).getTime() > Date.now())
let isApp = navigator.userAgent.includes("Electron/")
if(!isApp) {
console.log("This no longer works in browser. Use the desktop app!")
} else if(!quest) {
console.log("You don't have any uncompleted quests!")
} else {
const pid = Math.floor(Math.random() * 30000) + 1000
let applicationId, applicationName, secondsNeeded, secondsDone, canPlay
if(quest.config.configVersion === 1) {
applicationId = quest.config.applicationId
applicationName = quest.config.applicationName
secondsNeeded = quest.config.streamDurationRequirementMinutes * 60
secondsDone = quest.userStatus?.streamProgressSeconds ?? 0
canPlay = quest.config.variants.includes(2)
} else if(quest.config.configVersion === 2) {
applicationId = quest.config.application.id
applicationName = quest.config.application.name
canPlay = ExperimentStore.getUserExperimentBucket("2024-04_quest_playtime_task") > 0 && quest.config.taskConfig.tasks["PLAY_ON_DESKTOP"]
const taskName = canPlay ? "PLAY_ON_DESKTOP" : "STREAM_ON_DESKTOP"
secondsNeeded = quest.config.taskConfig.tasks[taskName].target
secondsDone = quest.userStatus?.progress?.[taskName]?.value ?? 0
}
if(canPlay) {
api.get({url: `/applications/public?application_ids=${applicationId}`}).then(res => {
const appData = res.body[0]
const exeName = appData.executables.find(x => x.os === "win32").name.replace(">","")
const games = RunningGameStore.getRunningGames()
const fakeGame = {
cmdLine: `C:\\Program Files\\${appData.name}\\${exeName}`,
exeName,
exePath: `c:/program files/${appData.name.toLowerCase()}/${exeName}`,
hidden: false,
isLauncher: false,
id: applicationId,
name: appData.name,
pid: pid,
pidPath: [pid],
processName: appData.name,
start: Date.now(),
}
games.push(fakeGame)
FluxDispatcher.dispatch({type: "RUNNING_GAMES_CHANGE", removed: [], added: [fakeGame], games: games})
let fn = data => {
let progress = quest.config.configVersion === 1 ? data.userStatus.streamProgressSeconds : Math.floor(data.userStatus.progress.PLAY_ON_DESKTOP.value)
console.log(`Quest progress: ${progress}/${secondsNeeded}`)
if(progress >= secondsNeeded) {
console.log("Quest completed!")
const idx = games.indexOf(fakeGame)
if(idx > -1) {
games.splice(idx, 1)
FluxDispatcher.dispatch({type: "RUNNING_GAMES_CHANGE", removed: [fakeGame], added: [], games: []})
}
FluxDispatcher.unsubscribe("QUESTS_SEND_HEARTBEAT_SUCCESS", fn)
}
}
FluxDispatcher.subscribe("QUESTS_SEND_HEARTBEAT_SUCCESS", fn)
console.log(`Spoofed your game to ${applicationName}. Wait for ${Math.ceil((secondsNeeded - secondsDone) / 60)} more minutes.`)
})
} else {
let realFunc = ApplicationStreamingStore.getStreamerActiveStreamMetadata
ApplicationStreamingStore.getStreamerActiveStreamMetadata = () => ({
id: applicationId,
pid,
sourceName: null
})
let fn = data => {
let progress = quest.config.configVersion === 1 ? data.userStatus.streamProgressSeconds : Math.floor(data.userStatus.progress.STREAM_ON_DESKTOP.value)
console.log(`Quest progress: ${progress}/${secondsNeeded}`)
if(progress >= secondsNeeded) {
console.log("Quest completed!")
ApplicationStreamingStore.getStreamerActiveStreamMetadata = realFunc
FluxDispatcher.unsubscribe("QUESTS_SEND_HEARTBEAT_SUCCESS", fn)
}
}
FluxDispatcher.subscribe("QUESTS_SEND_HEARTBEAT_SUCCESS", fn)
console.log(`Spoofed your stream to ${applicationName}. Stream any window in vc for ${Math.ceil((secondsNeeded - secondsDone) / 60)} more minutes.`)
console.log("Remember that you need at least 1 other person to be in the vc!")
}
}
- Π‘Π»Π΅Π΄ΡΠΉΡΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΈΠΏΠ° ΠΊΠ²Π΅ΡΡΠ°.
- ΠΡΠ»ΠΈ Π² ΠΊΠ²Π΅ΡΡΠ΅ ΡΠΊΠ°Π·Π°Π½ΠΎ "ΠΈΠ³ΡΠ°ΡΡ", Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΡΠΎ ΠΆΠ΄Π°ΡΡ ΠΈ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ Π΄Π΅Π»Π°ΡΡ.
- ΠΡΠ»ΠΈ Π² Π·Π°Π΄Π°Π½ΠΈΠΈ ΡΠΊΠ°Π·Π°Π½ΠΎ "ΡΡΡΠΈΠΌΠΈΡΡ" ΠΈΠ³ΡΡ, ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡΠ΅ΡΡ ΠΊ vc Ρ Π΄ΡΡΠ³ΠΎΠΌ ΠΈΠ»ΠΈ Π²Π°ΡΠΈΠΌ ΡΠ²ΠΈΠ½ΠΊΠΎΠΌ ΠΈ ΡΡΡΠΈΠΌΠΈΡΠ΅ Π² Π»ΡΠ±ΠΎΠΌ ΠΎΠΊΠ½Π΅.
- ΠΠΎΠ΄ΠΎΠΆΠ΄ΠΈΡΠ΅ 15 ΠΌΠΈΠ½ΡΡ
- Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π½Π°Π³ΡΠ°Π΄Ρ Π² ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ -> ΠΠ½Π²Π΅Π½ΡΠ°ΡΡ ΠΏΠΎΠ΄Π°ΡΠΊΠΎΠ²!
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ΅ΡΡ, Π³Π»ΡΠ΄Ρ Π½Π° Quest progress:
ΠΎΡΠΏΠ΅ΡΠ°ΡΠΊΠΈ Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ "Console" ΠΈΠ»ΠΈ ΡΠ½ΠΎΠ²Π° ΠΎΡΠΊΡΡΠ² Π²ΠΊΠ»Π°Π΄ΠΊΡ "ΠΠ½Π²Π΅Π½ΡΠ°ΡΡ ΠΏΠΎΠ΄Π°ΡΠΊΠΎΠ²" Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ
.
Π₯ΠΎΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π½Π° Π½Π΅ΠΉ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠ²Π΅ΡΡ "Π‘ΡΠ³ΡΠ°ΠΉ Π² Π»ΡΠ±ΡΡ ΠΈΠ³ΡΡ Π½Π° ΡΠ²ΠΎΠ΅ΠΉ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ", Π½Π΅ ΠΈΠΌΠ΅Ρ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ Cloud Gaming ΠΎΡ Xbox:
- ΠΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΠ΅ ΡΠ²ΠΎΡ ΡΡΠ΅ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΡ Xbox (ΠΎΠ½Π° ΠΆΠ΅ Microsoft) ΠΊ Discord (ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ -> ΠΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ)
- ΠΠ΅ΡΠ΅ΠΉΡΠΈ Π½Π° https://xbox.com/play ΠΈ Π²ΠΎΠΉΠ΄ΠΈΡΠ΅ Π² ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ΅ΡΠ΅Π· ΡΡ ΠΆΠ΅ ΡΡΠ΅ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΡ Xbox
- ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΡ ΠΈΠ³ΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Fortnite)
- ΠΡΡΠ°Π²ΡΡΠ΅ Π΅Π³ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° 10 ΠΌΠΈΠ½ΡΡ
ΠΠΎΠΏΡΠΎΡ: Ctrl + Shift + Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ
ΠΡΠ²Π΅Ρ: ΠΠ°Π³ΡΡΠ·ΠΈΡΠ΅ ptb client, ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎ ΡΡΠΎΠ±Ρ Π²ΠΊΠ»ΡΡΠΈΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° Π² ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ
ΠΠΎΠΏΡΠΎΡ: Π― ΠΏΠΎΠ»ΡΡΠ°Ρ ΠΎΡΠΈΠ±ΠΊΡ "Unauthorized"
ΠΡΠ²Π΅Ρ: Discord ΠΈΡΠΏΡΠ°Π²ΠΈΠ» ΡΠΊΡΠΈΠΏΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ°Ρ
. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π½Π°ΡΡΠΎΠ»ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π½Π°ΠΉΠ΄ΠΈΡΠ΅ ΠΊΠ°ΠΊΠΎΠ΅-Π½ΠΈΠ±ΡΠ΄Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π²Π°ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ User-Agent ΠΈ Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΡΡΡΠΎΠΊΡ Electron/
Π² Π»ΡΠ±ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅.
Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΡΠ°ΠΊΠΆΠ΅ Π½Π°ΡΠ°Π»ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² Π³ΠΎΠ»ΠΎΡΠΎΠ²ΠΎΠΌ ΠΊΠ°Π½Π°Π»Π΅, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Π²Ρ ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΠ»ΠΈΡΡ ΠΊ Π½Π΅ΠΌΡ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ Π½Π° 1 Π΄ΡΡΠ³ΠΎΠΌ Π°ΠΊΠΊΠ°ΡΠ½ΡΠ΅.
ΠΠΎΠΏΡΠΎΡ: Π― ΠΏΠΎΠ»ΡΡΠ°Ρ Π΄ΡΡΠ³ΡΡ ΠΎΡΠΈΠ±ΠΊΡ
ΠΡΠ²Π΅Ρ: Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Π²Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π»ΠΈ/Π²ΡΡΠ°Π²ΠΈΠ»ΠΈ ΡΠΊΡΠΈΠΏΡ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ»ΠΈ Π²ΡΠ΅ ΡΠ°Π³ΠΈ.
Based on the guide aamiaa / CΠΎΠ·Π΄Π°Π½ΠΎ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π³Π°ΠΉΠ΄Π° aamiaa π§©