How to start a custom activity on Discord? I wanna do this!
Inject Cumcord if you don't have it installed:
(paste in console)
var oReq = new XMLHttpRequest ( ) ;
oReq . addEventListener ( "load" , ( ) => eval ( oReq . responseText ) ) ;
oReq . open ( "GET" , "https://raw.githubusercontent.com/Cumcord/Cumcord/stable/dist/build.js" ) ;
oReq . send ( ) ;
Create 2 apps on the Dev Portal (https://discord.com/developers/applications ) a junk app and the actual app.
Paste this into the console, replacing APP_ID
with the ID of the junk app:
application = "APP_ID" ;
Dispatcher = ( webpackChunkdiscord_app . push ( [ [ '' ] , { } , e => { m = [ ] ; for ( let c in e . c ) m . push ( e . c [ c ] ) } ] ) , m ) . find ( m => m ?. exports ?. default ?. isDispatching )
Dispatcher . exports . default . dirtyDispatch ( {
type : "DEVELOPER_TEST_MODE_AUTHORIZATION_SUCCESS" ,
applicationId : application ,
originURL : `https://cumcord.com`
} )
Paste this into the console:
let discatch = cumcord . patcher . instead ( "dispatch" , window . cumcord . modules . webpack . findByProps ( "isDispatching" ) , ( arguments , originalFunction ) => { try { originalFunction ( arguments ) } catch ( error ) { console . warn ( "%cDispatch error caught!\n%c" , "color: orange; font-weight: bold;" , "" , error ) } } ) ;
Paste this into the console:
cumcord . modules . webpackModules . findByProps ( 'inTestModeForEmbeddedApplication' ) . inTestModeForEmbeddedApplication = true
Join any voice channel
Start the junk activity
Paste this into the console, replacing APP_ID
with the ID of the actual app:
application = "APP_ID" ;
Dispatcher = ( webpackChunkdiscord_app . push ( [ [ '' ] , { } , e => { m = [ ] ; for ( let c in e . c ) m . push ( e . c [ c ] ) } ] ) , m ) . find ( m => m ?. exports ?. default ?. isDispatching )
Dispatcher . exports . default . dirtyDispatch ( {
type : "DEVELOPER_TEST_MODE_AUTHORIZATION_SUCCESS" ,
applicationId : application ,
originURL : `https://cumcord.com`
} )
Start the actual activity
Leave the VC
Reload Discord to get rid of all the stuff
Close the banner that pops up at the top
Enjoy!
@phorcys420 is right, use fetch instead