Отметим, что позиция Discord по поводу установки расширений и дополнительных плагинов пока до конца не ясна. Некоторые юзеры попадают под автоматический бан со стороны ИИ, если выбирают неправильные настройки расширений, которые воспринимаются как попытка нарушить работоспособность софта, поэтому используйте приведенную далее инструкцию только на свой страх и риск.
Все дальнейшие действия подразумевают взаимодействие с компьютерной программой Discord, поскольку понадобится установить для нее плагин и выполнить настройку, что возможно реализовать только на ПК (браузерная версия для этого не подойдет). При этом уже меняющийся статус будет виден везде. Если вы еще не инсталлировали Дискорд на свой компьютер, сделайте это, воспользовавшись инструкцией по ссылке ниже.
Подробнее: Как установить Discord
Шаг 1: Скачивание и установка BetterDiscord
За возможность установки меняющегося статуса в Дискорде отвечает программа BetterDiscord. Она расширяет общую функциональность мессенджера, добавляя новые функции, часть из которых мы и будем использовать в дальнейшем.
Перейти к скачиванию BetterDiscord с официального сайта
- Воспользуйтесь ссылкой выше, чтобы перейти на официальный сайт и начать скачивание программы.
- Произойдет открытие страницы на GitHub, где рекомендуем сразу выбрать файл формата EXE для загрузки установщика.
- По завершении скачивания откройте его из папки с загрузками или прямо через браузер.
- Подтвердите правила лицензионного соглашения для продолжения установки.
- В следующем окне выберите первый вариант — «Install BandagedBD».
- Отметьте галочкой «Install To Stable», если установлена обычная стабильная версия Дискорда. Путь к файлам определяется автоматически, но если этого не произошло, придется вручную указать расположение, где находится исполняемый файл для запуска софта.
- Ожидайте окончания инсталляции, после чего закройте данное окно и перезагрузите Дискорд.
На этом добавление расширенной функциональности в программу завершено. В этой статье мы поговорим только о доступных плагинах, а если вы желаете узнать, что еще предоставляет BetterDiscord, ознакомьтесь с описанием на официальном сайте или самостоятельно проверьте каждый пункт в самом Дискорде.
Шаг 2: Создание плагина для меняющегося статуса
Создадим плагин, который далее будет загружен в BetterDiscord и позволит настроить меняющийся статус. Он уже написан при помощи языка JavaScript — код находится в открытом доступе. Останется только сформировать из него файл и загрузить для использования в программе.
- Для этого откройте Discord и нажмите по значку с шестеренкой, перейдя тем самым в общие настройки.
- Вы увидите наличие нового раздела — «Bandaged BD», где щелкните по строке «Plugins».
- Нажмите кнопку «Open Plugin Folder», чтобы перейти в ту папку, где хранятся все связанные плагины.
- Пока что она пустая, поскольку ни одно расширение еще не установлено, что мы сейчас и исправим.
- Нажмите по пустому месту в директории правой кнопкой мыши, наведите курсор на «Создать» и выберите вариант «Текстовый документ».
- Можно не менять ему название и дважды кликнуть для редактирования через «Блокнот».
- Вставьте туда следующий код:
//META{"name":"AnimatedStatus"}*//
class AnimatedStatus {
/* BD functions */
getName () {
return "AnimatedStatus";
}getVersion () {
return "0.8.4";
}getAuthor () {
return "toluschr";
}getDescription () {
return "Animate your Discord status";
}setData (key, value) {
BdApi.setData(this.getName(), key, value);
}getData (key) {
return BdApi.getData(this.getName(), key);
}/* Code related to Animations */
load () {
this.animation = this.getData("animation");
this.timeout = this.getData("timeout");
Status.authToken = this.getData("token");
}start () {
if (this.animation == undefined || this.timeout == undefined || Status.authToken == undefined) return;
this.Status_Animate();
}stop () {
clearTimeout(this.loop);
Status.unset();
}Status_Animate (index = 0) {
if (index >= this.animation.length) index = 0;Status.set(this.animation[index]);
this.loop = setTimeout(() => { this.Status_Animate(index + 1); }, this.timeout);
}/* Settings related functions */
strToAnimation (str) {
let lines = str.split("\n");
let out = [];
for (let i = 0; i < lines.length; i++) {
if (lines[i].length == 0) continue;out.push(JSON.parse("[" + lines[i] + "]"));
}
return out;
}animationToStr (animation) {
if (animation == undefined) return ""let out = "";
for (let i = 0; i < animation.length; i++) {
out += JSON.stringify(animation[i]).substr(1).slice(0, -1) + "\n";
}
return out;
}getSettingsPanel () {
let settings = document.createElement("div");
settings.style.padding = "10px";// Auth token
settings.appendChild(GUI.newLabel("AuthToken (https://discordhelp.net/discord-token)"));
let token = GUI.newInput();
token.value = this.getData("token");
settings.appendChild(token);settings.appendChild(GUI.newDivider());
// timeout
settings.appendChild(GUI.newLabel("Time per Keyframe"));
let timeout = GUI.newInput();
timeout.value = this.getData("timeout");
settings.appendChild(timeout);settings.appendChild(GUI.newDivider());
// Animation
settings.appendChild(GUI.newLabel('Animation ("" for no Emoji)'));
let animation = GUI.newTextarea();
animation.style.fontFamily = "SourceCodePro,Consolas,Liberation Mono,Menlo,Courier,monospace";
animation.placeholder = '"Message 1", "Emoji 1"\n"Message 2", ""\n...';
animation.value = this.animationToStr(this.getData("animation"));
settings.appendChild(animation);// Save Button
settings.appendChild(GUI.newDivider());
let save = GUI.newButton("Save");
save.onclick = () => {
// Set Auth token
this.setData("token", token.value);// Set timeout
this.setData("timeout", timeout.value);// Set Animation
this.setData("animation", this.strToAnimation(animation.value));this.stop();
this.load();
this.start();
};
settings.appendChild(save);// End
return settings;
}
}/* Status API */
const Status = {
authToken: "",request: () => {
let req = new XMLHttpRequest();
req.open("PATCH", "/api/v6/users/@me/settings", true);
req.setRequestHeader("authorization", Status.authToken);
req.setRequestHeader("content-type", "application/json");
return req;
},set: (status) => {
Status.request().send('{"custom_status":{"text":"' + status[0] + '", "emoji_name": "' + status[1] + '"}}');
},unset: () => {
Status.request().send('{"custom_status":null}');
}
};/* GUI Wrapper */
const GUI = {
newInput: () => {
let input = document.createElement("input");
input.className = "inputDefault-_djjkz input-cIJ7To";
return input;
},newLabel: (text) => {
let label = document.createElement("h5");
label.className = "h5-18_1nd";
label.innerText = text;
return label;
},newDivider: () => {
let divider = document.createElement("div");
divider.style.paddingTop = "15px";
return divider;
},newTextarea: () => {
let textarea = document.createElement("textarea");
textarea.className = "input-cIJ7To scrollbarGhostHairline-1mSOM1";
textarea.style.resize = "vertical";
textarea.rows = 4;
return textarea;
},newButton: (text) => {
let button = document.createElement("button");
button.className = "button-38aScr lookFilled-1Gx00P colorBrand-3pXr91 sizeSmall-2cSMqn";
button.innerText = text;
return button;
}
};
- После этого нажмите по меню «Файл» и из появившегося списка выберите «Сохранить как».
- В окне «Сохранение» откроется правильное расположение, поэтому менять его не нужно. В поле «Тип файла» укажите «Все файлы *.*».
- В качестве названия файла впишите «animated-status.plugin.js» и подтвердите сохранение.
- Вернитесь к прошлой директории, убедитесь в наличии там файла JavaScript, а текстовый документ можно удалить, поскольку он так и остался пустым.
- Откройте меню «Plugins» и проверьте наличие созданного только что плагина. Передвиньте ползунок для его активации.
- Все остальные действия выполняются через «Settings», о чем речь пойдет в следующем шаге.
Шаг 3: Настройка меняющегося статуса
Последний этап — настройка меняющегося статуса при помощи добавленного плагина. Сейчас нужно настроить сам плагин, указав всего один параметр. Его получение производится в несколько действий, поэтому разберем его отдельно.
Получение авторизационного токена
Авторизационный токен необходим плагину, чтобы совершать автоматические действия смены статуса. Для его получения понадобится консоль разработчика и уже заданный обычный статус.
- Нажмите по своей аватарке для открытия меню действий со статусами.
- Выберите последний вариант — «Задать пользовательский статус».
- Впишите любую надпись и сохраните изменения.
- Снова вызовите меню со статусами и нажмите Ctrl + Shift + I для отображения консоли разработчика.
- В ней перейдите на вкладку «Network».
- Из списка имен выделите «science» и откройте вкладку «Headers».
- Опуститесь почти к концу перечня параметров, где найдите строку «authorization» и скопируйте его значение.
- Перейдите в «Plugins», откройте настройки необходимого плагина и вставьте токен в отведенное для этого поле.
Добавление статусов для изменения
Остается только выбрать время, через которое будут меняться статусы, и вписать их необходимое количество, что происходит следующим образом:
- В меню настройки плагина установите задержку в миллисекундах. Впишите задержку не менее 3000, чтобы избежать возможного получения блокировки аккаунта.
- Если хотите добавить в статус смайлики, предварительно найдите любой сайт, где показаны их изображения, и скопируйте.
- Используйте двойные кавычки —
""
, внутри которых и вставьте статусы в отдельных строках. Поддерживается как кириллица, так и латиница, о эмодзи вы уже знаете. Нажмите на «Save» для сохранения меняющегося статуса. - Вернитесь к своей странице и проверьте изменения.
- Необходимо подождать указанное количество секунд, чтобы статус автоматически поменялся на другой.

Отблагодарите автора, поделитесь статьей в социальных сетях.

Пишет content errors
Здравствуйте, Тема. Опишите, пожалуйста, проблему более детально. На каком именно этапе возникает подобная проблема? Проверьте правильность выполняемых действий и убедитесь в том, что не вносите никаких изменений в код, который вставляется при установке плагина. Статья была написана недавно и все действия описываются последовательно, я их выполнял самостоятельно, поэтому само дополнение точно рабочее и код плагина актуальный. Скорее всего, во время выполнения инструкций вами были допущены ошибки.
Проблема на скриншоте. Как исправить?
Здравствуйте, Анастасия, в самом плагине отсутствует или добавлена лишняя кавычка. Удалите его файл и создайте заново, скопируйте код из этой статьи, только на этот раз убедитесь в том, что абсолютно все знаки были скопированы. Соответственно, перед созданием нового плагина нужно удалить старый и проверить, чтобы он не отображался в программе.
Сделала все, как сказали, и все равно пишет про лишнюю кавычку. Код скопировала строго на странице, не копируя другие символы
Здравствуйте еще раз. Только что все перепроверили и поменяли. Оказалось, что сам сайт не отображает некоторые символы по причине их кодировки. Сейчас все настроили и вы можете скопировать текст заново и создать новый плагин. Не забудьте указать для него соответствующее название.
Большое спасибо, все помогло и статус работает)
Первый день статус работал, на следующий день перестал меняться. Настройки не сброшены. Надо обновлять какие-то параметры каждый день?
Вот такая ошибка вылезает в консоли каждый раз, когда статус пытается обновиться
Здравствуйте, еще раз. В начале статьи мы говорили о том, что это средство не самое эффективное и иногда даже приводит к блокировкам аккаунта. Попробуйте немного увеличить скорость анимации, возможно, в этом случае все исправится. Еще один вариант — проверьте свой токен, возможно, по каким-то причинам он был изменен.
Теперь когда я запускаю дискорд мне пишет
CHEKING FOR UPDATE а потом UPDATE FAILED — RETYING IN ** SEC
Теперь не могу запустить дискорд помогите пожалуйста
Переустанови его мб поможет
это не изза плагина
когда я нажимаю Save, вроде сохраняется, но когда переходишь, то все, что я делал, исчезает. что я сделал не так?
Здравствуйте, Когда я захожу в код элемента ,нажимаю на network не вылазит столбец name и haders
помоги пожалуйста если решил эту проблему
Help me)) пишет (Ошибка компиляции Microsoft Jscript)
Здравствуйте, Аноним. Уточните, пожалуйста, на каком этапе появляется данная ошибка? Похоже на то, что вы пытаетесь запустить скрипт из-под Windows, хотя делать этого не стоит. Просто переместите его в папку так, как это показано в статье.
Сохранил файл, в Plugins он не появился
Здравствуйте, аноним. Назовите плагин точно так же, как это показано в статье. Специально для вас же отмечено, что файл нужно назвать именно так и никак иначе. На вашем скриншоте он имеет не то название, поэтому и не отображается.
Спасибо большое помог)))
Что делать если вместо консоли делается скриншот
Здравствуйте, Дмитрий. Вы используете ноутбук? Скорее всего, на F12 у вас назначена функциональная клавиша, которая как раз и делает скриншот экрана. Попробуйте зажать Fn + F12 и посмотреть, откроется ли консоль на этот раз. Кстати, если вы используете на своем компьютере стороннюю программу для создания скриншотов, нужно ее закрыть, поскольку она может забиндить клавишу F12 на создание скриншота и тогда консоль не откроется. Это единственные причины, по которым может не открываться консоль, только если вы не жмете на клавишу рядом, которая называется PRTSC.
Спасибо огромное!!!
Не получается установить пишет «Download error: Невозможно соединиться с удаленным сервером». Что делать?
Здравствуйте, Дима. Возможно, это временная проблема, связанная с BetterDiscord. Если через время неполадка не решится, запустите инсталлятор от имени администратора и повторите попытку установки. Как вариант, загрузите публичную бету, после чего выберите вариант BetterDiscord для нее и посмотрите, как пройдет установка на этот раз. Если ничего не поможет, обращайтесь к технической поддержке на официальном сайте, поскольку это какая-то внутренняя ошибка, с которой смогут разобраться только разработчики.
здравствуйте, выдезает такая ошибка на шаге 3, номер 5, как с этим быть?
проблема с лишней кавычкой в коде
Здравствуйте. Данный код был проверен ни один раз и мы уверены в том, что там нет лишней кавычки. Если при копировании у вас появились какие-то проблемы, посмотрите, в какой именно строчке показывается лишняя кавычка. Возможно, вы поставили ее самостоятельно или неправильно скопировали код. Достаточно убрать лишнюю кавычку после ее нахождения, сохранить изменения и запустить плагин, после чего все будет работать корректно.
Здравствуйте, на шаге 3.4 не открывается консоль разработчика, с чем это может быть связано?
Здравствуйте, Аноним. К сожалению, нет информации о том, с чем это может быть связано, поскольку ни у кого не возникает проблем. Мы рекомендуем учитывать, что все действия выполняются в программе под управлением Windows, а не в браузере. Если это не так, скачайте ее и снова повторите выполнение действий. Убедитесь в том, что вы действительно зажимаете комбинацию клавиш Ctrl + Shift + I (русская Ш). Если ничего не поможет, напишите комментарий еще раз, а мы подумаем, что с этим можно сделать.
Здравствуйте в name нету science
Здравствуйте, Тимофей. Кто-то говорит о вкладке «name»? Пожалуйста, внимательно ознакомьтесь с инструкцией по получению токена. Вам необходимо открыть список с доступными статусами, после чего вызвать консоль и перейдите на вкладку «NETWORK». Там вы увидите «Science» и сможете скопировать токен.
Спасибо!Помогло!