Не так давно в дискорде появился новый эксперимент под названием Channel Emojis И результат его работы выглядит так: Без эксперимента Вся суть этого нововведения заключается в том, что эмодзи для канала выбирается не случайно, а с помощью ИИ, который выбирает эмодзи, исходя из названия канала Для начала вам понадобится клиент Canary, поскольку в обычном клиенте вырезали инструменты разработчика Скачать с discordapp.com (прошлый домен Discord'а) Как только вы его скачали и зашли в свой аккаунт, прожмите CTRL+SHIFT+i для открытия инструментов разработчика Перейдите во вкладку Console и вставьте туда этот код // Получение массива модулей из вебпака webpackChunkdiscord_app.push([['ebola'],{},_=>req=_]); delete req.m['ebola']; delete req.c['ebola']; modules = Object.values(req.c); // Общая функция для удобного поиска модулей getModule = filter => { const name = typeof filter === 'string' ? filter : null; for (const mdl of modules) { const m = mdl.exports; if (m && m.__esModule && m.default && (name ? m.default[name] : filter(m.default))) return m.default; if (m && (name ? m[name] : filter(m))) return m; } } // Попытка доставить обработчикам модуля экспериментов инфу о том, что мы стафф const usersModule = getModule('getUsers'); const actions = Object.values(usersModule._dispatcher._actionHandlers._dependencyGraph.nodes); const user = usersModule.getCurrentUser(); user.flags |= 1; actions.find(n => n.name === 'ExperimentStore').actionHandler['CONNECTION_OPEN']({ type: 'CONNECTION_OPEN', user: { flags: 1 }, experiments: [] }); actions.find(n => n.name === 'DeveloperExperimentStore').actionHandler['CONNECTION_OPEN'](); user.flags &= ~1; JS // Получение массива модулей из вебпака webpackChunkdiscord_app.push([['ebola'],{},_=>req=_]); delete req.m['ebola']; delete req.c['ebola']; modules = Object.values(req.c); // Общая функция для удобного поиска модулей getModule = filter => { const name = typeof filter === 'string' ? filter : null; for (const mdl of modules) { const m = mdl.exports; if (m && m.__esModule && m.default && (name ? m.default[name] : filter(m.default))) return m.default; if (m && (name ? m[name] : filter(m))) return m; } } // Попытка доставить обработчикам модуля экспериментов инфу о том, что мы стафф const usersModule = getModule('getUsers'); const actions = Object.values(usersModule._dispatcher._actionHandlers._dependencyGraph.nodes); const user = usersModule.getCurrentUser(); user.flags |= 1; actions.find(n => n.name === 'ExperimentStore').actionHandler['CONNECTION_OPEN']({ type: 'CONNECTION_OPEN', user: { flags: 1 }, experiments: [] }); actions.find(n => n.name === 'DeveloperExperimentStore').actionHandler['CONNECTION_OPEN'](); user.flags &= ~1; После этого закрываем консоль и открываем Настройки пользователя Внизу находим раздел Experiments И в ней же в поиске находим Channel Emojis Выставляем Treatment 1 и идём на любой сервер, ждём некоторое время и около каналов начнут появляться эмодзи