Profile członków i multikonta na Discordzie: jak zapisywać nicki z gry i alty
Żeby zapisywać na Discordzie profile członków, nicki z gry (IGN) albo alty, zrób jedną tabelę z wierszem na członka (IGN, ranga, alty i pole z członkiem Discorda), którą członkowie wypełniają komendą slash. Potem każdy może znaleźć profil po członku, nicku albo nazwie alta. CordBase, który sami tworzymy, robi to w planie Free.
Gildie zwykle trzymają takie informacje w przypiętej wiadomości, notatkach oficerów albo w arkuszu, którego nikt nie otwiera, a pytanie „czyim altem jest Kaelmage?” pada na czacie co tydzień. Ten poradnik przenosi listę na Discorda. Najpierw jedno zastrzeżenie: nie ma formularza zapisu. Członkowie uruchamiają /profile add i wybierają opcje do wypełnienia.
Co będziesz mieć na końcu
- Komendę
/profilez akcjamiadd,query,view,updateidelete. - Wiersz na członka: IGN, członek Discorda, ranga, alty, rola i notatki.
- Wyszukiwanie po członku, po IGN albo po nazwie alta.
- Uprawnienia określające, kto może dodawać, edytować i usuwać profile.
Krok 1: utwórz tabelę
Żaden gotowy szablon nie ma kolumn na IGN ani alty. Najbliżej jest Spis członków, ale jego pierwszą kolumną tekstową jest strefa czasowa, a to właśnie ją przeszukuje wybierak row. Dlatego tę tabelę zbuduj od zera.
- Zaloguj się przez Discorda na cordbase.gg, wybierz serwer i dodaj bota, gdy panel o to poprosi.
- Utwórz nową tabelę o nazwie „Profile”. Nazwa komendy uzupełni się jako
profile. - Dodaj poniższe kolumny, w tej kolejności. Na koniec zapisz.
- IGN: Tekst, wymagana. Daj ją na początek. Opcja
rowpodpowiada wartości z pierwszej kolumny tekstowej, więc członkowie znajdą profil, wpisując IGN. - Member: Użytkownik, wymagana. Członkowie wybierają siebie z listy członków Discorda.
- Rank: Lista wyboru, z twoimi rangami jako opcjami (na przykład Officer, Raider, Trial).
- Alts: Tekst. Wybierz jeden format i się go trzymaj, np.
Name (Class), Name (Class). - Role: Lista wyboru, z opcjami Tank, Healer i DPS albo tym, czego używa twoja gra.
- Notes: Tekst.
Kolejność ma znaczenie, bo wyniki query pokazują tylko pierwsze cztery kolumny, a kolumny dodane później lądują na końcu. Klucz i typ kolumny są zablokowane po utworzeniu tabeli, ale możesz dodawać kolumny i zmieniać etykiety (zobacz dokumentację tabel).
Krok 2: ustaw uprawnienia
Uprawnienia są na stronie edycji tabeli, więc otwórz ją po zapisaniu. Dopóki tabela nie ma ustawionej żadnej roli, każdy członek może uruchomić każdą akcję, łącznie z usuwaniem. Ustaw role tak:
- Daj roli, którą mają wszyscy członkowie (na przykład
@Member, bo@everyonenie da się wybrać), poziom Zapis. Członkowie mogą wtedy używaćaddiupdate. - Daj roli oficera poziom Admin, który dokłada
delete. - Jeśli dane mają wpisywać tylko oficerowie, daj członkom Odczyt, a oficerom Zapis.
Gdy ustawisz choć jedną rolę, członkowie bez żadnej z ról z listy w ogóle nie mogą korzystać z tabeli. Osoby z uprawnieniem Administrator na Discordzie zawsze mają pełny dostęp.
Wyjaśnijmy, co oznacza Zapis: obejmuje każdy wiersz, nie tylko własny. Każdy z Zapisem może edytować cudzy profil i nic nie powstrzyma jednego członka przed dodaniem dwóch profili.
Krok 3: członkowie dodają swój profil
/profile add ign:Kaelith member:@Mara rank:Raider role:Healer alts:Kaelmage (Mage), Kaelstab (Rogue)
Discord najpierw prosi o wymagane opcje (IGN i Member), a potem członkowie dodają dowolne opcjonalne. Nic nie prowadzi ich przez pola, więc przypnij dokładną komendę na kanale. Żeby zmienić profil, zacznij pisać w opcji row i wybierz go z listy:
/profile update row:Kaelith alts:Kaelmage (Mage), Kaelstab (Rogue), Kaeltank (Warrior)
Aktualizacja zastępuje całą wartość, więc wpisz pełną listę altów razem z nowym. Tryby „Zwiększ (dodaj do obecnej)” i „Zmniejsz (odejmij od obecnej)” istnieją tylko dla kolumn liczbowych, a ta tabela żadnej nie ma.
Krok 4: wyszukuj ludzi
/profile view row:Kaelithpokazuje wszystkie kolumny, a do tego kto utworzył wiersz i kiedy był ostatnio aktualizowany./profile query member:@Maraznajduje profil członka Discorda./profile query alts:Kaelmageznajduje właściciela alta. Filtry tekstowe dopasowują każdy wiersz zawierający dany tekst, bez względu na wielkość liter./profile query rank:Officer limit:25wyświetla do 25 oficerów. Filtry można łączyć, więcrank:Raider role:Healerteż działa.
Query wyświetla najpierw najnowsze wiersze, domyślnie 10, najwyżej 25. Odpowiedzi pojawiają się na kanale, więc wyszukuj tam, gdzie inni mogą je zobaczyć.
Wariant: jeden wiersz na postać
Jeśli chcesz, żeby każdy alt miał własną klasę, poziom albo sprzęt, zrób tabelę z jednym wierszem na postać: IGN, Member, Class i kolumna tak/nie Main. Dodanie alta to wtedy zwykłe add, a /profile query member:@Mara limit:25 wyświetla wszystkie postacie Mary. Kosztem są wiersze: tabela w planie Free mieści 100, a alty je zużywają.
Kiedy lepiej sprawdzi się coś innego
Arkusz jest lepszy, jeśli potrzebujesz sortowania, formuł albo zbiorczej edycji przez oficerów. CordBase nie ma importu CSV ani synchronizacji z Google Sheets.
Kanał forum z jednym postem na członka pasuje do profili ze zrzutami ekranu i długimi opisami, które ludzie czytają, a nie przeszukują. Tabela trzyma krótki tekst, nie obrazy.
Jeśli chcesz, żeby dane postaci były pobierane z gry i aktualne bez niczyjego wpisywania, użyj narzędzia, które odczytuje skład gildii z gry. CordBase nigdy nie odczytuje danych z gry i nie ma API.
Limity, o których warto wiedzieć
- Free: 2 tabele po 100 wierszy. Pro (8 USD/mies.) podnosi to do nielimitowanej liczby tabel i 10 000 wierszy na tabelę oraz dodaje zapisane widoki i zbiorczą edycję.
- Do 25 kolumn na tabelę. Tabela nie ma kolumny liczbowej, więc nie ma akcji
leaderboard. Jeśli jej chcesz, dodaj kolumnę Liczba, np. z poziomem. - Brak formularzy zapisu i pytań krok po kroku dla członków, brak też sprawdzania, czy IGN istnieje i należy do danego członka.
- Każdy członek może uruchomić
/delete-my-data, żeby usunąć wiersze, które utworzył przez bota, na wszystkich serwerach.
Często zadawane pytania
Czy bot może przeprowadzić członków przez kolejne pola?
Nie. Nie ma formularza ani pytań krok po kroku. Członkowie uruchamiają /profile add, a Discord pokazuje jedną opcję na kolumnę. Wypełnić trzeba tylko kolumny oznaczone jako wymagane (tutaj IGN i Member), resztę można pominąć.
Czy mogę ograniczyć członków do edycji tylko własnego profilu albo do jednego profilu na osobę?
Nie da się tego ustawić uprawnieniem. Uprawnienia działają na całą tabelę, więc każdy z dostępem Zapis może zmienić dowolny wiersz, a członek może dodać więcej niż jeden. Jeśli chcesz ścisłej kontroli, daj członkom Odczyt, a oficerom Zapis, i używaj /profile view, żeby sprawdzić, kto utworzył wiersz.
Jak członkowie mogą sprawdzić, do kogo należy alt?
Uruchom /profile query alts:<name>. Filtr dopasowuje każdy profil, którego tekst w kolumnie alts zawiera tę nazwę, bez względu na wielkość liter. Działa tylko dla altów, które ktoś wpisał do kolumny alts, bo CordBase nie odczytuje danych z gry.