Создание меняющегося статуса в Discord

Отметим, что позиция Discord по поводу установки расширений и дополнительных плагинов пока до конца не ясна. Некоторые юзеры попадают под автоматический бан со стороны ИИ, если выбирают неправильные настройки расширений, которые воспринимаются как попытка нарушить работоспособность софта, поэтому используйте приведенную далее инструкцию только на свой страх и риск.

Все дальнейшие действия подразумевают взаимодействие с компьютерной программой Discord, поскольку понадобится установить для нее плагин и выполнить настройку, что возможно реализовать только на ПК (браузерная версия для этого не подойдет). При этом уже меняющийся статус будет виден везде. Если вы еще не инсталлировали Дискорд на свой компьютер, сделайте это, воспользовавшись инструкцией по ссылке ниже.

Подробнее: Как установить Discord

Шаг 1: Скачивание и установка BetterDiscord

За возможность установки меняющегося статуса в Дискорде отвечает программа BetterDiscord. Она расширяет общую функциональность мессенджера, добавляя новые функции, часть из которых мы и будем использовать в дальнейшем.

Перейти к скачиванию BetterDiscord с официального сайта

  1. Воспользуйтесь ссылкой выше, чтобы перейти на официальный сайт и начать скачивание программы.
  2. Переход к загрузке программы BetterDiscord для установки меняющегося статуса в Дискорде

  3. Произойдет открытие страницы на GitHub, где рекомендуем сразу выбрать файл формата EXE для загрузки установщика.
  4. Выбор версии программы BetterDiscord для ее загрузки при установке меняющегося статуса в Дискорде

  5. По завершении скачивания откройте его из папки с загрузками или прямо через браузер.
  6. Успешная загрузка программы BetterDiscord для установки меняющегося статуса в Дискорде

  7. Подтвердите правила лицензионного соглашения для продолжения установки.
  8. Подтверждение лицензионного соглашения для установки BetterDiscord при настройке меняющегося статуса в Дискорде

  9. В следующем окне выберите первый вариант — «Install BandagedBD».
  10. Выбор кнопки для установки программы BetterDiscord при настройке меняющегося статуса в Дискорде

  11. Отметьте галочкой «Install To Stable», если установлена обычная стабильная версия Дискорда. Путь к файлам определяется автоматически, но если этого не произошло, придется вручную указать расположение, где находится исполняемый файл для запуска софта.
  12. Выбор расположения файла для установки программы BetterDiscord при настройке меняющегося статуса в Дискорде

  13. Ожидайте окончания инсталляции, после чего закройте данное окно и перезагрузите Дискорд.
  14. Успешная установка программы BetterDiscord для настройки меняющегося статуса в Дискорде

На этом добавление расширенной функциональности в программу завершено. В этой статье мы поговорим только о доступных плагинах, а если вы желаете узнать, что еще предоставляет BetterDiscord, ознакомьтесь с описанием на официальном сайте или самостоятельно проверьте каждый пункт в самом Дискорде.

Шаг 2: Создание плагина для меняющегося статуса

Создадим плагин, который далее будет загружен в BetterDiscord и позволит настроить меняющийся статус. Он уже написан при помощи языка JavaScript — код находится в открытом доступе. Останется только сформировать из него файл и загрузить для использования в программе.

  1. Для этого откройте Discord и нажмите по значку с шестеренкой, перейдя тем самым в общие настройки.
  2. Переход в Настройки Дискорда для проверки установленного расширения BetterDiscord

  3. Вы увидите наличие нового раздела — «Bandaged BD», где щелкните по строке «Plugins».
  4. Открытие раздела с плагинами для настройки меняющегося статуса в Discord

  5. Нажмите кнопку «Open Plugin Folder», чтобы перейти в ту папку, где хранятся все связанные плагины.
  6. Переход к папке с расположением плагинов для настройки меняющегося ника в Discord

  7. Пока что она пустая, поскольку ни одно расширение еще не установлено, что мы сейчас и исправим.
  8. Пустая папка с плагинами при настройке меняющегося ника в Discord

  9. Нажмите по пустому месту в директории правой кнопкой мыши, наведите курсор на «Создать» и выберите вариант «Текстовый документ».
  10. Создание текстового документа для меняющегося ника в Discord

  11. Можно не менять ему название и дважды кликнуть для редактирования через «Блокнот».
  12. Переход к редактированию текстового файла для настройки меняющегося ника в Discord

  13. Вставьте туда следующий код:

    //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;
    }
    };

  14. Вставка скрипта в текстовый файл для настройки меняющегося статуса в Discord

  15. После этого нажмите по меню «Файл» и из появившегося списка выберите «Сохранить как».
  16. Переход к сохранению скрипта для настройки меняющегося статуса в Discord

  17. В окне «Сохранение» откроется правильное расположение, поэтому менять его не нужно. В поле «Тип файла» укажите «Все файлы *.*».
  18. Выбор типа файла для сохранения плагина меняющегося статуса в Discord

  19. В качестве названия файла впишите «animated-status.plugin.js» и подтвердите сохранение.
  20. Ввод названия для плагина при его сохранении для меняющегося статуса в Discord

  21. Вернитесь к прошлой директории, убедитесь в наличии там файла JavaScript, а текстовый документ можно удалить, поскольку он так и остался пустым.
  22. Успешное сохранение плагина для меняющегося статуса в Discord

  23. Откройте меню «Plugins» и проверьте наличие созданного только что плагина. Передвиньте ползунок для его активации.
  24. Переход к плагину для меняющегося статуса в Discord

  25. Все остальные действия выполняются через «Settings», о чем речь пойдет в следующем шаге.
  26. Открытие настроек для меняющегося статуса в Discord

Шаг 3: Настройка меняющегося статуса

Последний этап — настройка меняющегося статуса при помощи добавленного плагина. Сейчас нужно настроить сам плагин, указав всего один параметр. Его получение производится в несколько действий, поэтому разберем его отдельно.

Получение авторизационного токена

Авторизационный токен необходим плагину, чтобы совершать автоматические действия смены статуса. Для его получения понадобится консоль разработчика и уже заданный обычный статус.

  1. Нажмите по своей аватарке для открытия меню действий со статусами.
  2. Открытие профиля для установки стандартного статуса в Discord перед настройкой меняющегося

  3. Выберите последний вариант — «Задать пользовательский статус».
  4. Открытие меню для установки стандартного статуса в Discord перед настройкой меняющегося

  5. Впишите любую надпись и сохраните изменения.
  6. Добавление стандартного статуса в Discord перед настройкой меняющегося

  7. Снова вызовите меню со статусами и нажмите Ctrl + Shift + I для отображения консоли разработчика.
  8. Открытие кода элемента для настройки меняющегося статуса Discord

  9. В ней перейдите на вкладку «Network».
  10. Переход на вкладку в консоли разработчика для настройки меняющегося ника в Discord

  11. Из списка имен выделите «science» и откройте вкладку «Headers».
  12. Выбор раздела в консоли разработчика для настройки меняющегося ника в Discord

  13. Опуститесь почти к концу перечня параметров, где найдите строку «authorization» и скопируйте его значение.
  14. Копирование токена для настройки меняющегося ника в Discord

  15. Перейдите в «Plugins», откройте настройки необходимого плагина и вставьте токен в отведенное для этого поле.
  16. Ввод токена для настройки меняющегося ника в Discord

Добавление статусов для изменения

Остается только выбрать время, через которое будут меняться статусы, и вписать их необходимое количество, что происходит следующим образом:

  1. В меню настройки плагина установите задержку в миллисекундах. Впишите задержку не менее 3000, чтобы избежать возможного получения блокировки аккаунта.
  2. Ввод задержки для меняющегося ника при его настройке в Discord

  3. Если хотите добавить в статус смайлики, предварительно найдите любой сайт, где показаны их изображения, и скопируйте.
  4. Копирование эмодзи для меняющегося статуса в Discord

  5. Используйте двойные кавычки — "", внутри которых и вставьте статусы в отдельных строках. Поддерживается как кириллица, так и латиница, о эмодзи вы уже знаете. Нажмите на «Save» для сохранения меняющегося статуса.
  6. Ввод меняющихся статусов в настройках плагина Discord

  7. Вернитесь к своей странице и проверьте изменения.
  8. Проверка первого меняющегося статуса после его настройки в Discord

  9. Необходимо подождать указанное количество секунд, чтобы статус автоматически поменялся на другой.
  10. Проверка второго меняющегося статуса после его настройки в Discord

Закрыть Мы рады, что смогли помочь Вам в решении проблемы.
Закрыть Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.

Помогла ли вам эта статья?

ДА НЕТ

Поделиться статьей в социальных сетях:



Еще статьи по данной теме:


34 комментария

Здравствуйте, Тема. Опишите, пожалуйста, проблему более детально. На каком именно этапе возникает подобная проблема? Проверьте правильность выполняемых действий и убедитесь в том, что не вносите никаких изменений в код, который вставляется при установке плагина. Статья была написана недавно и все действия описываются последовательно, я их выполнял самостоятельно, поэтому само дополнение точно рабочее и код плагина актуальный. Скорее всего, во время выполнения инструкций вами были допущены ошибки.

Здравствуйте, Анастасия, в самом плагине отсутствует или добавлена лишняя кавычка. Удалите его файл и создайте заново, скопируйте код из этой статьи, только на этот раз убедитесь в том, что абсолютно все знаки были скопированы. Соответственно, перед созданием нового плагина нужно удалить старый и проверить, чтобы он не отображался в программе.

Сделала все, как сказали, и все равно пишет про лишнюю кавычку. Код скопировала строго на странице, не копируя другие символы

Здравствуйте еще раз. Только что все перепроверили и поменяли. Оказалось, что сам сайт не отображает некоторые символы по причине их кодировки. Сейчас все настроили и вы можете скопировать текст заново и создать новый плагин. Не забудьте указать для него соответствующее название.

Первый день статус работал, на следующий день перестал меняться. Настройки не сброшены. Надо обновлять какие-то параметры каждый день?

Вот такая ошибка вылезает в консоли каждый раз, когда статус пытается обновиться

Здравствуйте, еще раз. В начале статьи мы говорили о том, что это средство не самое эффективное и иногда даже приводит к блокировкам аккаунта. Попробуйте немного увеличить скорость анимации, возможно, в этом случае все исправится. Еще один вариант — проверьте свой токен, возможно, по каким-то причинам он был изменен.

Теперь когда я запускаю дискорд мне пишет
CHEKING FOR UPDATE а потом UPDATE FAILED — RETYING IN ** SEC
Теперь не могу запустить дискорд помогите пожалуйста

когда я нажимаю Save, вроде сохраняется, но когда переходишь, то все, что я делал, исчезает. что я сделал не так?

Здравствуйте, Аноним. Уточните, пожалуйста, на каком этапе появляется данная ошибка? Похоже на то, что вы пытаетесь запустить скрипт из-под Windows, хотя делать этого не стоит. Просто переместите его в папку так, как это показано в статье.

Здравствуйте, аноним. Назовите плагин точно так же, как это показано в статье. Специально для вас же отмечено, что файл нужно назвать именно так и никак иначе. На вашем скриншоте он имеет не то название, поэтому и не отображается.

Здравствуйте, Дмитрий. Вы используете ноутбук? Скорее всего, на F12 у вас назначена функциональная клавиша, которая как раз и делает скриншот экрана. Попробуйте зажать Fn + F12 и посмотреть, откроется ли консоль на этот раз. Кстати, если вы используете на своем компьютере стороннюю программу для создания скриншотов, нужно ее закрыть, поскольку она может забиндить клавишу F12 на создание скриншота и тогда консоль не откроется. Это единственные причины, по которым может не открываться консоль, только если вы не жмете на клавишу рядом, которая называется PRTSC.

Не получается установить пишет «Download error: Невозможно соединиться с удаленным сервером». Что делать?

Здравствуйте, Дима. Возможно, это временная проблема, связанная с BetterDiscord. Если через время неполадка не решится, запустите инсталлятор от имени администратора и повторите попытку установки. Как вариант, загрузите публичную бету, после чего выберите вариант BetterDiscord для нее и посмотрите, как пройдет установка на этот раз. Если ничего не поможет, обращайтесь к технической поддержке на официальном сайте, поскольку это какая-то внутренняя ошибка, с которой смогут разобраться только разработчики.

Здравствуйте. Данный код был проверен ни один раз и мы уверены в том, что там нет лишней кавычки. Если при копировании у вас появились какие-то проблемы, посмотрите, в какой именно строчке показывается лишняя кавычка. Возможно, вы поставили ее самостоятельно или неправильно скопировали код. Достаточно убрать лишнюю кавычку после ее нахождения, сохранить изменения и запустить плагин, после чего все будет работать корректно.

Здравствуйте, на шаге 3.4 не открывается консоль разработчика, с чем это может быть связано?

Здравствуйте, Аноним. К сожалению, нет информации о том, с чем это может быть связано, поскольку ни у кого не возникает проблем. Мы рекомендуем учитывать, что все действия выполняются в программе под управлением Windows, а не в браузере. Если это не так, скачайте ее и снова повторите выполнение действий. Убедитесь в том, что вы действительно зажимаете комбинацию клавиш Ctrl + Shift + I (русская Ш). Если ничего не поможет, напишите комментарий еще раз, а мы подумаем, что с этим можно сделать.

Здравствуйте, Тимофей. Кто-то говорит о вкладке «name»? Пожалуйста, внимательно ознакомьтесь с инструкцией по получению токена. Вам необходимо открыть список с доступными статусами, после чего вызвать консоль и перейдите на вкладку «NETWORK». Там вы увидите «Science» и сможете скопировать токен.

Задайте вопрос или оставьте свое мнение

Примечание: если отправленный комментарий не появился на странице, значит он ушел на проверку и скоро будет опубликован. Пожалуйста, не дублируйте вопрос. Мы ответим Вам в ближайшее время.