Zawartość:
Zauważmy, że stanowisko Discord w sprawie instalacji rozszerzeń i dodatkowych wtyczek nie jest jeszcze do końca jasne. Niektórzy użytkownicy są automatycznie banowani przez AI, jeśli wybiorą niewłaściwe ustawienia rozszerzeń, które są postrzegane jako próba zakłócenia działania oprogramowania, dlatego korzystaj z poniższej instrukcji na własne ryzyko.
Wszystkie dalsze działania wymagają interakcji z programem komputerowym Discord, ponieważ konieczne będzie zainstalowanie dla niego wtyczki i wykonanie konfiguracji, co można zrealizować tylko na PC (wersja przeglądarkowa się do tego nie nadaje). Zmieniający się status będzie widoczny wszędzie. Jeśli jeszcze nie zainstalowałeś Discorda na swoim komputerze, zrób to, korzystając z instrukcji pod linkiem poniżej.
Szczegóły: Jak zainstalować Discord
Krok 1: Pobranie i instalacja BetterDiscord
Za możliwość instalacji zmieniającego się statusu w Discordzie odpowiada program BetterDiscord.Rozszerza ogólną funkcjonalność komunikatora, dodając nowe funkcje, z których część będziemy wykorzystywać w dalszej części.
Przejdź do pobrania BetterDiscord z oficjalnej strony
- Skorzystaj z powyższego linku, aby przejść na oficjalną stronę i rozpocząć pobieranie programu.
- Otworzy się strona na GitHubie, gdzie zalecamy od razu wybrać plik w formacie EXE do pobrania instalatora.
- Po zakończeniu pobierania otwórz go z folderu pobranych plików lub bezpośrednio przez przeglądarkę.
- Potwierdź zasady umowy licencyjnej, aby kontynuować instalację.
- W następnym oknie wybierz pierwszą opcję — „Install BandagedBD”.
- Zaznacz pole „Install To Stable”, jeśli zainstalowana jest zwykła stabilna wersja Discorda. Ścieżka do plików jest określana automatycznie, ale jeśli to nie nastąpi, będziesz musiał ręcznie wskazać lokalizację, w której znajduje się plik wykonywalny do uruchomienia oprogramowania.
- Czekaj na zakończenie instalacji, po czym zamknij to okno i zrestartuj Discorda.







Na tym dodanie rozszerzonej funkcjonalności do programu zostało zakończone. W tym artykule porozmawiamy tylko o dostępnych wtyczkach, a jeśli chcesz dowiedzieć się, co jeszcze oferuje BetterDiscord, zapoznaj się z opisem na oficjalnej stronie lub samodzielnie sprawdź każdy punkt w samym Discordzie.
Krok 2: Tworzenie wtyczki do zmieniającego się statusu
Stworzymy wtyczkę, która następnie zostanie załadowana do BetterDiscord i pozwoli na skonfigurowanie zmieniającego się statusu. Została już napisana przy użyciu języka JavaScript — kod jest dostępny publicznie.Pozostanie tylko utworzyć z niego plik i załadować go do użycia w programie.
- Aby to zrobić, otwórz Discord i kliknij ikonę zębatki, przechodząc tym samym do ogólnych ustawień.
- Zobaczysz nową sekcję — „Bandaged BD”, gdzie kliknij na linię „Plugins”.
- Kliknij przycisk „Open Plugin Folder”, aby przejść do folderu, w którym przechowywane są wszystkie powiązane wtyczki.
- Na razie jest on pusty, ponieważ żadna wtyczka nie została jeszcze zainstalowana, co teraz naprawimy.
- Kliknij prawym przyciskiem myszy w pustym miejscu w katalogu, najedź kursorem na „Utwórz” i wybierz opcję „Dokument tekstowy”.
- Możesz nie zmieniać jego nazwy i dwukrotnie kliknąć, aby edytować za pomocą „Notatnika”.
- Wklej tam następujący kod:
//META{"name":"AnimatedStatus"}*//
class AnimatedStatus {
/* Funkcje BD */
getName () {
return "AnimatedStatus";
}getVersion () {
return "0.8.4";
}getAuthor () {
return "toluschr";
}getDescription () {
return "Animuj swój status na Discordzie";
}setData (key, value) {
BdApi.setData(this.getName(), key, value);
}getData (key) {
return BdApi.getData(this.getName(), key);
}/* Kod związany z animacjami */
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);
}/* Funkcje związane z ustawieniami */
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";// Token autoryzacji
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());
// czas oczekiwania
settings.appendChild(GUI.newLabel("Czas na klatkę"));
let timeout = GUI.newInput();
timeout.value = this.getData("timeout");
settings.appendChild(timeout);settings.appendChild(GUI.newDivider());
// Animacja
settings.appendChild(GUI.newLabel('Animacja ("" dla braku emoji)'));
let animation = GUI.newTextarea();
animation.style.fontFamily = "SourceCodePro,Consolas,Liberation Mono,Menlo,Courier,monospace";
animation.placeholder = '"Wiadomość 1", "Emoji 1"n"Wiadomość 2", ""n...';
animation.value = this.animationToStr(this.getData("animation"));
settings.appendChild(animation);// Przycisk zapisz
settings.appendChild(GUI.newDivider());
let save = GUI.newButton("Zapisz");
save.onclick = () => {
// Ustaw token autoryzacji
this.setData("token", token.value);// Ustaw czas oczekiwania
this.setData("timeout", timeout.value);// Ustaw animację
this.setData("animation", this.strToAnimation(animation.value));this.stop();
this.load();
this.start();
};
settings.appendChild(save);// Koniec
return settings;
}
}/* API statusu */
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}');
}
};/* Wrapper GUI */
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;
}
};
- Po tym kliknij w menu „Plik” i z pojawiającego się listy wybierz „Zapisz jako”.
- W oknie „Zapis” otworzy się poprawna lokalizacja, więc nie musisz jej zmieniać.W polu „Typ pliku” wskaź „Wszystkie pliki *.*”.
- Jako nazwę pliku wpisz „animated-status.plugin.js” i potwierdź zapisanie.
- Wróć do poprzedniego katalogu, upewnij się, że znajduje się tam plik JavaScript, a dokument tekstowy można usunąć, ponieważ pozostał pusty.
- Otwórz menu „Plugins” i sprawdź, czy stworzony właśnie plugin jest dostępny. Przesuń suwak, aby go aktywować.
- Wszystkie pozostałe działania wykonuje się przez „Settings”, o czym będzie mowa w następnym kroku.













Krok 3: Konfiguracja zmieniającego się statusu
Ostatni etap — konfiguracja zmieniającego się statusu za pomocą dodanego pluginu. Teraz trzeba skonfigurować sam plugin, podając tylko jeden parametr. Jego uzyskanie odbywa się w kilku krokach, dlatego omówimy to osobno.
Uzyskanie tokena autoryzacyjnego
Token autoryzacyjny jest potrzebny pluginowi, aby wykonywać automatyczne działania zmiany statusu. Aby go uzyskać, potrzebna będzie konsola dewelopera i już ustawiony zwykły status.
- Kliknij na swoją awatarę, aby otworzyć menu działań ze statusami.
- Wybierz ostatnią opcję — „Ustaw status użytkownika”.
- Wpisz dowolny tekst i zapisz zmiany.
- Ponownie otwórz menu ze statusami i naciśnij Ctrl + Shift + I, aby wyświetlić konsolę dewelopera.
- W niej przejdź do zakładki „Network”.
- Z listy nazw wybierz „science” i otwórz zakładkę „Headers”.
- Przewiń prawie do końca listy parametrów, gdzie znajdź linię „authorization” i skopiuj jej wartość.
- Przejdź do „Plugins”, otwórz ustawienia potrzebnego pluginu i wklej token w przeznaczone do tego pole.








Dodawanie statusów do zmiany
Pozostaje tylko wybrać czas, po którym będą zmieniać się statusy, i wpisać ich wymaganą liczbę, co odbywa się w następujący sposób:
- W menu ustawień pluginu ustaw opóźnienie w milisekundach.Wpisz opóźnienie nie mniejsze niż 3000, aby uniknąć ewentualnej blokady konta.
- Jeśli chcesz dodać emotikony do statusu, najpierw znajdź dowolną stronę, na której są ich obrazy, i skopiuj je.
- Użyj podwójnych cudzysłowów —
""
, wewnątrz których wstaw statusy w osobnych linijkach. Obsługiwany jest zarówno cyrylica, jak i łacina, o emotikonach już wiesz. Naciśnij „Zapisz”, aby zapisać zmieniający się status. - Wróć na swoją stronę i sprawdź zmiany.
- Należy poczekać podaną liczbę sekund, aby status automatycznie zmienił się na inny.




