Skocz do zawartości

Ranking

Popularna zawartość

Treść z najwyższą reputacją w 04/05/20 uwzględniając wszystkie działy

  1. PanMaruda

    Skrypt na Przytulanie

    on sneak toggle: if player is not sneaking: loop all players in radius 1.5 around player: if loop-player is sneaking: play wolf hearts on player play wolf hearts on loop-player send "przytuliles %loop-player%"
    2 punkty
  2. Robiąc porządki na swoim komputerze, znalazłem moją starą wtyczkę służącą do weryfikowania statusu kont graczy w grze Minecraft. Odświeżyłem, przetestowałem i działa, tak więc postanowiłem, iż ją wystawię Działa ona na serwerze BungeeCord od wersji 1.8 (choć wskazane nowsze wersje), ponadto może być zintegrowana ze Spigotem, Spongem, czy Cauldronem (za dodatkową opłatą dopiszę rozszerzenie, w cenie jest tylko bardzo proste API). Konfiguracja Całość jest prosta i przyjazna: balancing: enabled: false premium: - "premium-1" - "premium-2" - "premium-3" cracked: - "cracked-1" - "cracked-2" - "cracked-3" messaging: false cracked-uuid: false forward-skin: true messages: error: "&cNastapil blad, zglos sie do administracji!" opisując: balancing - w tej sekcji mamy możliwość włączenia load balancing’u dla naszego serwera (enabled: false), stosownie dla graczy niezautoryzowanych (cracked) i zautoryzowanych (premium); messaging - zdefiniowanie, czy kanał do informowania o graczach premium ma być włączony (patrz: omówienie API); cracked-uuid - czy niezależnie od stanu autoryzacji, gracze mają mieć UUID jak gracze niezautoryzowani (przydatne dla zachowania spójności danych w bazach danych, w przypadku gdyby wtyczka była dogrywana do działającego już serwera) forward-skin - czy ma przenosić własną skórkę dla graczy premium API Wtyczka sama w sobie ma na celu udostępnienie bardzo prostego API, pod które można podpiąć każdy plugin, dla którego działania niezbędne są zachodzące procesy w moim rozszerzeniu (tj. weryfikacja autentyczności kont graczy). Informacje są wysyłane tylko dla graczy zweryfikowanych, więc jeśli informacja nie dotarła, oznacza to, że: dane rozszerzenie musi założyć, iż gracz jest niezweryfikowany jeżeli gracz był wcześniej zautoryzowany jako prawidłowy, to może oznaczać, że API Mojangu (producenta gry) jest obecnie niedziałające W jednym i w drugim przypadku zachęcam, by odpowiednio te wyjątki przetwarzać. Cała informacja jest wysyłana na poziomie łączenia ze serwerem, przed przetwarzaniem pierwszych wydarzeń, stosownych dla używanego oprogramowania serwerowego. BungeeCord Dla BungeeCord wystawione są tylko dwie klasy: HolterEvent i PremiumVerificationEvent: package pl.kacperduras.holter.api; import java.util.UUID; import net.md_5.bungee.api.plugin.Event; public class HolterEvent extends Event { private final String username; private final UUID uuid; public HolterEvent(String username, UUID uuid) { this.username = username; this.uuid = uuid; } public String getUsername() { return username; } public UUID getUUID() { return uuid; } } package pl.kacperduras.holter.api; import java.util.UUID; public class PremiumVerificationEvent extends HolterEvent { public PremiumVerificationEvent(String username, UUID uuid) { super(username, uuid); } } Starczy stworzyć zwykłego Listenera, z nasłuchiwaniem wydarzenia PremiumVerificationEvent i przetwarzać dane zgodnie z logiką poszczególnej aplikacji. Przykład: import net.md_5.bungee.api.plugin.Listener; import net.md_5.bungee.event.EventHandler; import pl.kacperduras.holter.api.PremiumVerificationEvent; public class HolterExampleListener implements Listener { @EventHandler public void premiumAuthorizationEvent(PremiumVerificationEvent event) { // do something... } } Pozostałe silniki Z tej opcji zalecam korzystać przy serwerach o mniejszej skali, do przetwarzania większej ilości danych zalecam stosowanie integracji BungeeCord Dla nich udostępniony jest mechanizm Plugin Messaging Channel, którego dokładniejszy opis możesz znaleźć tutaj. Wystarczy w konfiguracji włączyć opcję messaging i nasłuchiwać kanału o nazwie Holter. Dane będą wysyłane w formacie: <nick użytkownika>:<uuid użytkownika> przykład: _an0:6477d13c-835e-4701-ae79-238324166a85 Dodatkowe informacje Wtyczka przetwarza dane zgodnie ze specyfikacją udostępnioną przez Mojang, dzięki czemu nie ma możliwości zablokowania serwera przez nadmierny limit zapytań. Z powodzeniem sprawdzi się na mniejszą, jak i większą skalę. Cena 30 zł, mile widziany przelew bankowy lub PayPal. W przypadku płatności typu PaySafeCard doliczam opłatę 20zł za wypłatę środków od operatora. Inne formy płatności dostępne po wcześniejszym zapytaniu. Zachęcam do zakupu
    2 punkty
  3. piratjsk

    Skript - pętle

    Poradnik przedstawiający pętle w Skript. Skript - pętle Poznajemy pętle, ich rodzaje i przykładowe zastosowania. I. Wstęp Czym są pętle? Jak je dzielimy? Pętle są wyrażeniami, dzięki którym możemy zapętlić w dany sposób/daną ilość razy jakiś kod. Pętle dzielimy na dwie grupy: - pętle skończone (wykonujące określoną ilość razy dany kod) - pętle nieskończone (wykonujące dany kod przez cały czas działania skryptu) wyjątkiem jest pętla while, która może być skończona lub nieskończona. II. Pętle skończone Czym się charakteryzują? Do czego można ich użyć? Pętle skończone można podzielić na dwie grupy: - pętle ze zdefiniowaną ilością zapętleń: loop 13 times: # kod loop {zmienna} times: # kod loop 4*5+2^30 times: # kod W pętlach tych możemy się odwoływać do zmiennej loop-number, która przechowuje numer zapętlenia. - pętle zapętlające daną grupę obiektów loop {lista::*}: # kod loop all players: # kod loop all sheeps in player's world: # kod loop players in radius 4 of player: # kod loop inventory of clicked block: # kod loop inventory of arg: # kod loop worlds: # kod loop all dropped items: # kod Każda z tych pętli może zawierać inne zmienne: po zapętleniu listy zmiennych: loop-index - nazwa zmiennej, loop-value - wartość zmiennej, po zapętleniu graczy: loop-player - gracz, po zapętleniu owiec: loop-sheep (lub loop-entity) - owca, po zapętleniu ekwipunku: loop-item - przedmiot, po zapętleniu światów: loop-world - świat. Pętle te wykonają dany kod dla każdego obiektu z zapętlonej grupy. Pętle w pętli Jeśli tworzymy kilka pętli w sobie nawzajem i posiadają one zmienne o takich typach, aby się do nich odwołać musimy zdefiniować numer pętli w formacie: nazwa_zmiennej-numer_pętli np. loop-number-2. loop 30 times: loop 4 times: loop-number-1 is 3: send "3 zapętlenie pierwszej pętli, wyświetli się 4 razy" loop-number-2 is 4: send "4 zapętlenie drugiej pętli, wyświetli się 30 razy" loop-number-1 is 30: send "ostatnie zapetlenie pierwszej pętli, wyświetli się 4 razy" III. Pętle nieskończone Czym się charakteryzują? Do czego można ich użyć? Pętle nieskończone, jak sama nazwa wskazuje, wykonują dany kod nieograniczoną ilość razy. Jako jedyne stanowią samodzielne jednostki (nie muszą być zawarte w komendach, zdarzeniach). every <czas>: # kod every 1 tick: # kod every 5 hours: # kod Dany kod będzie wykonywany w nieskończoność co zdefiniowany czas np. co 5 godzin. IV. Pętla while Czym się charakteryzuje? Do czego można jej użyć? Ciekawą pętlą jest pętla while, gdyż może być zarówno skończona jaki i nieskończona. while <warunek>: # kod Słownie można opisać ją tak: dopóki warunek jest spełniony wykonuje dany kod. while 1 is 1: # kod Powyższa pętla będzie wykonywała dany kod w nieskończoność. W praktyce jednak nie ma sensu tworzyć nieskończonej pętli while gdyż będzie ona działała tak samo jak pętle every. Jedyną różnicą jest ta, że jeśli kod w pętli nie będzie zawierał polecenia wait to nieskończona pętla while "zlaguje" serwer gdyż będzie on bez najmniejszej przerwy wykonywał kod w pętli "nie mając czasu" na żadne inne działanie. Tak więc tworzenie nieskończonych pętli while - niewskazane! Przy używaniu tej pętli warto zastosować zabezpieczenie przed nieskończonością, mianowicie: set {_limit} to <limit powtorzen> while <warunek>: # kod remove 1 from {_limit} {_limit} is 0: exit loop V. Przykłady Przykładowe zastosowania różnych pętli. - Pętla every 5 seconds oraz zapętlenie wszystkich graczy na serwerze: every 5 seconds: loop all players: {vampire.%loop-player%} is true sunlight level at the loop-player is greater than 10 ignite the loop-player for 5 seconds Działanie: jeśli zmienna {vampire.%gracz%} ma wartość true i gracz przebywa w słońcu - będzie się palił. - Zapętlenie wszystkich graczy: command /ac [<text>]: trigger: loop all players: loop-player has permission "jestem.adminem": send arg to loop-player Działanie: wysyła wiadomość do wszystkich graczy posiadających uprawnienie jestem.adminem. - Pętla while: on right click on sign: line 1 is "[sklep]" line 2 constains "S" and "K" and ":" set {_i} to 1 while {_k} or {_s} is not set: line 2 of clicked block constains "S %{_i}%:": set {_s} to {_i} line 2 of clicked block constains ":%{_i}% K": set {_k} to {_i} add 1 to {_i} {_i} is 9999: exit loop send "Cena kupna: %{_k}%, Cena sprzedaży: %{_s}%" Działanie: pętla while jest tu wykorzystana do pobrania kwoty kupna i sprzedaży z tabliczki o wzorze: linia 1: [sklep] linia 2: S <cena sprzedaży>:<cena kupna> K Pętla będzie wykonywana tak długo, aż zmienne {_s} i {_k} będą zapisane lub gdy osiągnie 9999 powtórzeń.
    1 punkt
  4. jaku49

    Jeden serwer - wiele wersji [1.7 - 1.21]

    Czy zastanawiałeś się kiedyś na stworzeniem serwera, na który będą mogli wchodzić gracze na różnych wersjach? Dobrze trafiłeś, w dzisiejszym poradniku przybliżę Ci serię plug-in’ów Via, a dokładnie ViaVersion, ViaBackwards oraz ViaRewind. ViaVersion – dodaje wsparcie dla nowych wersji, gdy serwer stoi na starszej (np. 1.12 wtedy gracze mogą dołączyć z wersji od 1.12 do najnowszej, aktualnie 1.21) ViaBackwards – dodaje połączenia „wstecz” dla serwerów stojących na nowych wersjach (np. 1.21), czyli gracze mogą dołączyć na wersjach 1.9 – 1.19. Plugin jest kompatybilny z wersją 1.21. ViaRewind – dodaje połączenia dla graczy z wersji 1.7 oraz 1.8, gdy serwer stoi na wyższych wersjach. Plugin jest kompatybilny z wersją 1.21. Jeśli chcesz, aby serwer był dostępny dla graczy z wersji 1.7 – 1.21, najlepiej postawić go na wersji 1.8, ale jest tego wada, a są nią stare pluginy i liczne błędy. Gdy serwer będzie uruchomimy na wersji 1.21, a będziemy chcieli, aby gracze mogli dołączyć z starszych wersji, musisz użyć ViaBackwards (wsparcie dla nowszych od 1.9) oraz ViaRewind (wsparcie do wersji 1.7 i 1.8). Oczywiście nie trzeba wspominać, że to rozwiązanie pobiera trochę pamięci RAM. Nie zaleca się również stosować komendy /reload, ponieważ spowoduje ona wysokie obciążenie serwera i serwer może się wyłączyć. Istnieje również dodatek dodający wsparcie dla wersji 1.7 czyli ViaRewind działa on w porozumieniu z ViaBackwards. /viaver list – lista graczy na odpowiednich wersjach, /viaver dontbugme – włącza informacje o aktualizacji pluginu, /viaver autoteam – włącza kolizje między graczami, /viaver pps – wyświetla ilość wysyłanych pakietów przez danego gracza, /viaver debug – nie należy używać, ale służy do wyświetlania wszystkich wysyłanych przez gracza pakietów w konsoli. Instalacja plug-inów przebiega w standardowy sposób, należy wkleić pliki .jar wtyczek do folderu /plugins. https://www.spigotmc.org/resources/viaversion.19254/ https://ci.viaversion.com/view/ViaBackwards/job/ViaBackwards-DEV/ https://ci.viaversion.com/view/ViaRewind/job/ViaRewind/ Poradnik jest własnością jaku49 (kubix03), był również publikowany na konkurencyjnym forum oraz blogu o tematyce Minecrafta.
    1 punkt
  5. Z dedykacją dla wszystkich tych, którzy wmawiają sobie i innym, że do wysłania na chat klikalnego tekstu lub podpowiedzi po najechaniu potrzebują skryptu json.sk albo jakichś magicznych efektów ze starożytnego dodatku. Ten poradnik pokazuje i tłumaczy w jaki sposób osiągnąć takie efekty jedynie przy pomocy czystego pluginu Skript (od bodajże wersji 2.0). Interaktywny chat: zaznaczam, iż wszystkie poniższe akcje odnoszą się jedynie do efektów które wysyłają wiadomość do gracza (broadcast oraz message); wszystkich akcji jakich możemy użyć jest cztery i dzielą się one na dwie grupy, zapisujemy je dość prosto według poniższego formatu: '<nazwa: treść akcji>tekst do którego będzie się ona odnosić' [GRUPA PIERWSZA] akcje aktywowane po najechaniu na tekst: tooltip - wyświetla dodatkowy tekst (tzw. podpowiedź) w ramce nad wybraną wiadomością, przykładowo: '<tooltip:Wiadomość po najechaniu>Najedź na tą wiadomość' [GRUPA DRUGA] akcje aktywowane po kliknięciu na tekst: url - przenosi gracza do domyślnej przeglądarki i otwiera mu stronę z podanego linku (w większości przypadków wymaga to dodatkowego potwierdzenia przez użytkownika - w celach bezpieczeństwa - czy na pewno chce otworzyć daną stronę, przykładowo: '<url:https://www.youtube.com/watch?v=JnHPN1WsjBo>Kliknij tutaj aby posłuchać' command - wykonuje komendę jako gracz: jeżeli treść akcji zaczyna się od ukośnika - wtedy jest ona traktowana jako komendą wykonywana przez gracza, przykładowo: '<command:/help>Kliknij mnie aby otrzymać pomoc' jeżeli treść nie zaczyna się od ukośnika - wtedy jest ona traktowana jako zwykła wiadomość wysyłana przez gracza na chat, przykładowo: '<command:Dzień dobry>Kliknij tutaj aby się przywitać' suggest command - wpisuje graczowi podaną treść w jego pole tekstowe pod chatem, przykładowo: '<suggest command:Jestem twoją wklejoną wiadomością>Kliknij tutaj, aby wkleić wiadomość do swojego pola tekstowego' Formatowanie i kolorowanie tekstu: myślę że każdy, kto teraz czyta to zdanie doskonale wie jak korzystać z kolorów w minecraft przy użyciu paragrafu (§) lub spójnika (&) - więc nie będę ich tutaj przytaczał, skupię się na osobnej Skriptowej wersji kolorowania i formatowania wiadomości; tak jak powyżej, poszczególne kolory \ efekty dodajemy zapisując je w nawiasach ostrych: '<efekt\kolor>' kolory - wiem, że z tej opcji nikt nigdy nie skorzysta skoro możemy to robić dużo szybciej i krócej przy użyciu spójnika, ale i tak warto o tym wspomnieć, przykładowo: '<red>Ta wiadomość będzie czerwona' lista wszystkich głównych kolorów wraz z ich aliasami: [ 0 ] black - czarny [ 1 ] blue (dark blue) - niebieski [ 2 ] green (dark green) - zielony [ 3 ] cyan (cyanaqua, dark cyan, dark aqua, dark turquoise, dark turquois) - turkusowy [ 4 ] red (dark red) - czerwony [ 5 ] purple (dark purple) - fioletowy [ 6 ] orange (orange, gold, dark yellow) - pomarańczowy [ 7 ] grey (light grey, gray, light gray, silver) - szary [ 8 ] dark grey (dark gray) - ciemny szary [ 9 ] light blue (indigo) - jasny niebieski [ a ] light green (lime, lime green) - jasny zielony [ b ] light cyan (light aqua, turquoise, turquois, light blue) - błękitny [ c ] light red (pink) - jasny czerwony [ d ] light purple (magenta) - jasny fioletowy [ e ] yellow (light yellow) - żółty [ f ] white - biały formatowanie - tak, tak - to też niepotrzebnie piszę, ale co tam, przykładowo: '<bold>Ta wiadomość będzie pogrubiona' lista wszystkich opcji formatowania: [ k ] magic (obfuscated) - mrugające znaki (zwykle zwane - matrixem) [ l ] bold (b) - pogrubienie [ m ] strikethrough (strike, s) - przekreślenie [ n ] underlined (underline, u) - podkreślenie [ o ] italic (italics, i) - pochylenie kolory RGB (hexadecymalne) - nowością w minecraft (dostępną od wersji 1.16) jest wsparcie dla kolorów RGB w formacie hexadecymalnym, jak z nich korzystać i skąd je brać: swoje własne kolory możemy wybierać z np. generatorów online (https://htmlcolorcodes.com/color-picker/) - nas interesuje zawsze wartość z kratką (hashtag), wpisujemy ją identycznie jak wszystkie powyższe kolory - w nawiasy ostre. (kratka również musi być podana), przykładowo: '<#00FF00>Ta wiadomość będzie zielona' Warto wiedzieć: we wszystkich powyższych przykładach, efekt (kolor lub formatowanie) będzie odnosiło się do całej wiadomości; jeżeli jednak będziemy chcieli się go pozbyć, możemy to zrobić na dwa sposoby: korzystając z opcji resetowania tekstu '<reset>', '<r>' lub '&r', przykładowo: '<red>Ta wiadomość będzie czerwona <reset>Ale ta będzie już w domyślnym kolorze białym' wstawiając za tekstem kolejne formatowanie, przykładowo: '<bold>Ta wiadomość będzie biała i pogrubiona <red>Ale ta będzie czerwona i niepogrubiona' jeżeli efekty (kolory lub formatowanie) następują po sobie to się na siebie nakładają, przykładowo: '<tooltip:Wiadomość><red><bold>Ta wiadomość będzie czerwona, pogrubiona i pokaże tekst po najechaniu na nią' tooltip - czyli podpowiedzi opisane na początku poradnika - mogą składać się z wielu linijek. Jeżeli chcemy taki efekt uzyskać musimy każdą nową linijkę oddzielić wyrażeniem nowej linii '%new line%' lub w skrócie '%nl%', przykładowo: '<tooltip: 1 linijka %nl% 2 linijka %nl% 3 linijka %nl% i tak dalej>Mamy tutaj długą podpowiedź' wewnątrz efektów (np. w podpowiedziach) możemy również używać kolorów i formatowania, przykładowo: '<tooltip: <yellow><bold>Żółta podpowiedź>&4&lNajedź tutaj kursorem, aby zobaczyć żółtą podpowiedź' jeżeli wewnątrz naszego efektu (koloru lub formatowania) chcemy umieścić wyrażenie lub zmienną - to jak najbardziej możemy to zrobić, ale: skript podczas wysyłania wiadomości najpierw stara się ją formatować (tj. ustawia kolory, efekty i wszystko co powyżej opisałem), a dopiero po nich wstawia do naszego tekstu zmienne, co skutkuje niepokolorowaną wiadomością wysłaną na chat, przykładowo: set {_pogrubienie} to "bold" send "<%{_pogrubienie}%>nasza wiadomość" niestety, na chacie naszym oczom ukaże się: <bold>Nasza wiadomość z pomocą przychodzi nam wyrażenie '[un] formatted %text%' - sprawia ono, że plugin ponownie (po wczytaniu zmiennych) sprawdza wiadomość w poszukiwaniu formatowania tekstu - dzięki temu możliwe jest umieszczanie zmiennych w tekście (np. z nickami graczy, kolorami rgb lub kolorami pobranymi przez skripta), przykładowo: set {_hex} to "##00FF00" send formatted "<%{_hex}%Ta wiadomość zawiera działającą zmienną z kolorem zielonym" Tylko gdzie pizza zapytacie - a ja na to: *pstryk* średnia hawajska dla wszystkich.
    1 punkt
  6. PanMaruda

    MOTD w skript

    Dzień dobry, ten poradnik będzie już drugim, w którym przedstawię Skripta jako niezależny i rozbudowany plugin. Bedzie on dotyczył tworzenia MOTD serwera, czyli 'baneru' wyświetlanego na liście wyboru serwerów. Od wersji pluginu 2.3 (czyli jakoś mniej więcej od minecraftowej 1.12.2) trafiło do niego wydarzenie 'serwer list ping' wykonywane w momencie wysłania przez gracza lub inny serwer prośby o ten właśnie baner. Wprowadzono również kilka wyrażeń, które pozwalają dowolnie modyfikować zwracaną wtedy wartość. Skript tym samym uniezależnił się od specjalnych dodatków, czy całkiem osobnych pluginów na zarządzanie MOTD. Zatem do sedna, co możemy zmieniać: Otóż odpowiedź jest prosta - wszystko. Zanim jednak zacznę - chciałbym tylko zaznaczyć, iż cześć z poniższych wyrażeń może wymagać silnika PaperSpigot do poprawnego działania. on server list ping wydarzenie, tak jak już powyżej napisałem wykonuje się podczas prośby o MOTD wysyłanej przez gracza lub inny serwer (może być ono anulowane, o ile silnik to PaperSpigot - wtedy serwer będzie się wyświetlał jako offline ale gracz wciąż będzie mógł na niego wejść). Wszystkie poniższe wyrażenia dostępne będą tylko i wyłącznie w tym wydarzeniu. IP[( |-)address] to wyrażenie zwraca adres IP pingującego (tj. Gracza lub serwera), można go użyć np. do stworzenia prywatnego MOTD, przykład: on quit: #przy wyjściu gracza z serwera przypisujemy jego nick do jego adresu ip set {ip::%ip of player%} to displayname of player on server list ping: #gdy gracz pinguje serwer, sprawdzamy czy jego ip ma przypisany nick, jeżeli tak to go wyświetlamy set motd to {ip::%ip%} ? "Domyślne MOTD" [the] [(default)|(shown|displayed)] (MOTD|message of [the] day) to wyrażenie odpowiada za ustawianie 'message of the day (MOTD)' serwera - czyli tych dwóch linijek opisu, przykład: on server list ping: #zrobmy dwa losowe motd - jedno oraz dwulinijkowe - użyję do tego wyrażenia %new line% (%nl%) z dodatku SkQuery aby rozpocząć nową linię chance of 50%: set motd to "&6Zwykłe motd" else: set motd to "&5Magiczne motd %nl% &dw dwóch linijkach" [the] [((real|default)|(fake|shown|displayed))] max[imum] player[s] [(count|amount|number|size)] to wyrażenie zwraca ilość graczy online - nie może być zmieniane, np. on server list ping: set motd to "Online: %real max players%" [the] [((real|default)|(fake|shown|displayed))] max[imum] player[s] [(count|amount|number|size)] taka opcja uprawnia nas do ustawienia fałszywej liczby graczy online, przykład: on server list ping: #pobierzmy liczbę graczy z serwera i zwiększmy ją o 20% set {_fake} to rounded down ((online player count) * 1.2) set fake max players to {_fake} [the] [(sent|required|fake)] protocol version [number] to wyrażenie zarządza wyświetlaną wersją serwera (https://wiki.vg/Protocol_version_numbers), przykład: on server list ping: #ustawmy wersję serwera jako 702 (20w07a) - czyli w momencie pisania poradnika - najnowszy snapshot wersji 1.16 #gdy wersja minecrafta gracza będzie zgodna z ową wersją wtedy serwer pokaże się jako dostępny set the protocol version to 702 [the] [(shown|custom)] version [(string|text)] wyświetlana wersja serwera (tekst) - pokazywana jest tylko wtedy gdy nie ma zgodności między wersjami (czyt. punkt powyżej). tej opcji można użyć by stworzyć 'lewe motd', czyli napis po lewej stronie ikony, przykłady: on server list ping: set protocol version to 702 #tak jak powyżej ustawiamy wersję na snapshot 1.16, jeżeli wersja gracza nie będzie zgodna, wtedy nad motd wyświetli się poniższa wiadomość set version string to "&d&lTylko wersja 1.16 20w07a" on server list ping: set protocol version to 0 #stwórzmy obiecane motd po lewej stronie ekranu - wydłużamy wiadomość pustymi spacjami, aby tekst przesunął się odpowiednio w lewo set version string to "&dMagiczny tekst po lewo od ikony &6heh" [the] [custom] [(player|server)] (hover|sample) ([message] list|message) tym wyrażeniem ustawiamy własny tekst (własną listę), który pokazuje się po najechaniu na tekst wersji (patrz powyżej). Domyślnie zobaczymy tam listę kilku losowych graczy z serwera, przykład: on server list ping: add "Serdecznie zapraszam" to {_hover::*} add "na nasz wspaniały" to {_hover::*} add "i niesamowity serwer" to {_hover::*} add "&6&lSurvival 1.16" to {_hover::*} #stworzyliśmy sobie listę, teraz wystarczy podmienić ją na domyślną set hover list to {_hover::*} hide [all] player [related] info[rmation] [(in|on|from) [the] server list] ten efekt sprawia, że lista graczy (patrz punkt powyżej) jest wyłączana (show|reveal) [all] player [related] info[rmation] [(in|to|on|from) [the] server list] ten efekt sprawia, że lista graczy (patrz punkt powyżej) jest włączana hide %players% (in|on|from) [the] server list ten efekt ukrywa konkretnych graczy z listy, przykład: on server list ping: set {_gracz} to ("Maruda" parsed as player) hide {_gracz} from server list [the] [((default)|(shown|sent))] [server] icon ta opcja służy do zmiany wysyłanego logo serwera, przydatny będzie tutaj efekt load [the] server icon (from|of) [the] [image] [file] %text% tym wyrażeniem wczytujemy do pamięci ikonkę z danego pliku, przyklad: on server list ping: #pamiętajmy że jego wymiar musi mieć 64x64 load server icon from "ścieżka/do/naszego/obrazka.png" set server icon to last loaded server icon A jeżeli kiedyś zapytacie czy dobrze jest robić motd skryptem, to ja wtedy odpowiem że moim zdaniem to nie ma tak że dobrze, albo że niedobrze. Gdybym miał powiedzieć co cenię w motd najbardziej, powiedziałbym że asynchroniczność... Yyy... asynchroniczność, która dodała mi pomocne tps kiedy serwer sobie nie radził, kiedy był zlagowany i co ciekawe to właśnie przypadkowe osoby wchodzące na serwer wpływają na nasz procesor. Chodzi o to, że kiedy wyznaje się pewne wartości, czasem pozornie uniwersalne...
    1 punkt
  7. szybka odpowiedź nawet nie zdążyłem edytować pytania xD
    1 punkt
  8. on join: set join message to ""
    1 punkt
  9. xAxee

    Czemu to nie działa

    add 1 to {x}
    1 punkt
  10. xAxee

    Czemu to nie działa

    no bo w evencie on load nie ma żadnego event-playera zmień event lub zmien playera
    1 punkt
  11. Misio12320

    zadanko z pp

    Serduszka Do kosza. Już zrobiłem
    1 punkt
  12. maxcom1

    zadanko z pp

    co to superki?
    1 punkt
  13. tool of %player% Odsyłam do dokumentacji Skripta: https://skriptlang.github.io/Skript/index.html
    1 punkt
  14. Dowolny tego typu skrypt + dodanie wypłaty wszystkiego w postaci jednej linijki kodu
    1 punkt
  15. Hydorax

    Efekty Potionów w SKRIPT

    Witajcie :hi: W tym Mini Poradniku postaram się wyjaśnić, jak używać efektów potionów w SKRIPT. :p Jest to mój pierwszy TUT, więc proszę o wyrozumiałość i zbytnie niekrytykowanie mojej pracy 1.Zacznijmy od tego, iż wiele ludzi używa tego sposobu : command /dragi: trigger: give player 1 sugar named "&7Bialy proszek" on rightclick holding a sugar: if name of player's tool is "&7Bialy proszek": if player has permission "Dragi": Send "&8Wlasnie wciagnales kreske. Za chwilke odczujesz tego efekty :]" to the player wait 3 second execute console command "/effect %player% 1 40 2" execute console command "/effect %player% 4 30 2" execute console command "/effect %player% 9 40 2" wait 1 second execute console command "/effect %player% 17 20 1" execute console command "/effect %player% 20 15 1" wait 10 second execute console command "/effect %player% 15 10 1"Można go w łatwy sposób zastąpić skryptowym effectem : trigger: give player 1 sugar named "&7Bialy proszek" on rightclick holding a sugar: if name of player's tool is "&7Bialy proszek": if player has permission "Dragi": Send "&7Wlasnie wciągnąles kreske. Za chwilke odczujesz tego efekty :]" to the player wait 3 second apply speed potion of tier 1 to the player for 40 second apply slow 2 to the player for 30 second apply nausea 2 to the player for 40 second wait 3 second apply hunger 1 to the player for 20 second apply wither 1 to the player for 15 second wait 10 second apply blindness 1 to the player for 10 second2. Jak używać ? W dokumentacji SKRIPT znajdziemy taki effect: apply [potion of] %potions% [potion] [[[of] tier] %number%] to %living entities % [for %time span%] Rozłóżmy go na części i przeanalizujmy do :) 1) Część : [potion of] %potions% [potion] odwołuje się do nazwy potionu, przedrostek [potion of] oraz przyrostek [potion] nie są potrzebne do prawidłowego działanie efektu, lecz można je dopisać, aby poprawić wizualną stronę skryptu. Użycie: apply potion of speed ... apply speed potion... apply speed... 2) Część: [[[of] tier] %number%] odwołuje się do mocy potionu, przedrostek [[of] tier] nie jest potrzebny do prawidłowego działania efektu, lecz można je dopisać, aby poprawić wizualną stronę skryptu. Użycie: apply speed of 1... apply speed of tier 1... apply speed 1 3) Część: to %living entities% odwołuje się do żywych istot, w naszym wypadku do gracza (Nie jestem pewien czy efekt działa na zwierzęta i moby, gdyż kilka prób, które wykonałem zakończyły się fiaskiem) Użycie: apply speed 1 to the player... 4) Część: [for %time span%] odwołuje się do czasu, jaki dany efekt ma trwać. Przedrostek [for] w tym wypadku jest niezbędny do prawidłowego działania efektu. Użycie: apply speed 1 to the player for 40 second 3. Usuwanie efektu potionu ? Aby usunąć efekt potionu musimy się odwołać do efektu : remove %potions% from player Użycie: remove speed from player nausea remove slow from player remove nausea from player Zastosujmy ten efekt do wyżej napisanego kodu na narkotyki: trigger: give player 1 sugar named "&7Bialy proszek" on rightclick holding a sugar: if name of player's tool is "&7Bialy proszek": if player has permission "Dragi": Send "&7Wlasnie wciągnąles kreske. Za chwilke odczujesz tego efekty :]" to the player wait 3 second apply speed potion of tier 1 to the player for 40 second apply slow 2 to the player for 30 second apply nausea 2 to the player for 40 second wait 3 second apply hunger 1 to the player for 20 second apply wither 1 to the player for 15 second wait 10 second apply blindness 1 to the player for 10 secondcommand /czysc: trigger: remove nausea from player remove speed from player remove nausea from player remove blindness from player remove wither from player send "&7Twoje Efekty zostaly wyczyszczone" 4. Lista Efektów Potionów: 1. Szybkość - Speed 2. Spowolnienie - Slowness 3. Szybkość kopania - Haste 4. Wolne kopanie - Mining Fatigue 5. S iła - Strength 6.Natychmiastowe leczenie - Instant Health 7.Natychmiastowe obrażenie - In stant Damage 8.Wysokie skoki - Jump Boost 9.Nudności - Nausea 10.Regeneracja - Regeneration 11.Ochrona - Resistance 12.Ochrona przed ogniem - Fire Resistance 13.Oddychanie pod wodą - Water Breathing 14.Niewidzialność - Invisibility 15. Ślepota - Blindness 16. Widzenie w ciemnośc i - Night Vision 17.Głód - Hunger 18.Osłabienie - Weakness 19.Trucizna - Poison 20.Efekt wither'a - Wither 21.Dodatkowe serca - Health Boost 22.Więcej złotych serc - Absorption 23.Zaspokaja głód - Saturation Mam nadzieję, że poradnik przyda się osobom rozpoczynającym zabawę z SKRIPT'EM i nie tylko c: Pozdrawiam no i cześć :hi2: ~Hydorax
    1 punkt
  16. PanMaruda

    Jak to poprawić żeby ustawiało opis

    command /OpisEdit [<text>]: trigger: if player has permission "SuperScript.OpisEdit": if arg 1 is set: send "{@p1} &4&l%player% &7&lUstawil opis na: &6%arg 1%" set {motd} to arg else: send "{@p1} Dopisz Prefix" Else: message "{@p1} Nie posidasz permisji" on server ping: set motd to {motd}
    1 punkt
  17. CountingDogs

    Wersja Skripta

    Jeśli chcesz pisać skrypty pod wersję 1.0-1.7.10 to nie, dużo nie tracisz, bo i tak tylko pod tę wersje piszesz skrypty, jednak tracisz trochę ponieważ te wersje nie są już tak popularne i skrypt nie umożliwi Tobie tyle co najnowsze wersje pluginu Skript. Znajdź sobie taką wersję jaką chcesz https://github.com/SkriptLang/Skript/releases Tutaj masz najnowsze wersje tego pluginu i powtórzę, poszukaj takiej wersji pluginu na jaką chcesz pisać skrypty.
    1 punkt
  18. mc.Kiroksiewicz.PL [1.14.x-1.15.x] Adres serwera » mc.Kiroksiewicz.PL Strona serwera » https://kiroksiewicz.pl Discord » https://discord.gg/CcS2Uf4 Wersja Serwera » 1.14.x - 1.15.x Typ serwera » Survival + Działki Autoryzacja » NON PREMIUM + PREMIUM Jest to serwer zarówno dla graczy non premium oraz premium, swoim bytem przypomina istniejącą wcześniej Kwadratową Masakrę (Sezon 1). Serwer opiera się na działkach oraz zdobywaniu pieniędzy, wbijaniu topki, rozwoju swojej działki do perfekcji. Nie mniej jednak możemy żyć jako pustelnik, odłączony od reszty, gdzieś ukryty w kopalni czy innej dżungli. Na serwerze występuje system Sklepów (na spawnie), Magicznych Skrzyń oraz Smoczych Monet, czyli waluty Premium. Nie jest to serwer PayToPlay, Smocze Monety możemy uzyskać poprzez kupno ich na stronie (http://kiroksiewicz.pl) bądź wylosowaniu ich z Magicznej Skrzynki, którą możemy dostać za kopanie Stone. Jest dużo innych dodatków, feature'ów oraz systemów (chociażby własny sklep na działce). Zapraszamy do gry, serwer świeżo wystartował.
    1 punkt
  19. PanMaruda

    Konsola forumowa

    [CraftserveAgent] Disabling CraftserveAgent v20191204-2021
    1 punkt
  20. Norbi

    naprawa

    command /repair [<text&gt]: executable by: players aliases: fix trigger: if player has permission "sk.repair": if arg 1 is "all": if player has 5 enchanted golden apple: repair all items in player's inventory send "&a[Naprawa] &7Naprawiono wszystkie itemy." remove 5 enchanted golden apple from player else: send "&c[Naprawa] &7Nie masz: &f5xENCHANTED_GOLDEN_APPLE" else: if player has 64 diamonds: repair player's tool send "&a[Naprawa] &7Naprawiono trzymany item." remove 64 diamonds from player else: send &c[Naprawa] &7Nie masz: &f64xDIAMONDS&7." else: send "&c[Naprawa] &7Nie masz uprawnienia: &fsk.repair"
    1 punkt
  21. bludis

    Piła

    Nie rozumiem, spróbuj bardziej wytłumaczyć albo zwizualizuj to za pomocą filmu, screanów.
    0 punktów
  22. boleknowak

    Konsola forumowa

    [SkriptoCore] Deleting mcskriptpl and adding @knugi to game.
    0 punktów
Ten Ranking jest ustawiony na Warszawa/GMT+02:00
  • Najwięcej postów w tygodniu

    Quexsu
    Quexsu
    6 postów
    Grabsky
    Grabsky
    1 post
    Nicku
    Nicku
    1 post
    mervi_X
    mervi_X
    1 post
    Fendi
    Fendi
    1 post
    kinimod5021
    kinimod5021
    1 post
    bug128
    bug128
    1 post
  • Najwięcej tematów w tygodniu

    Quexsu
    Quexsu
    1 temat
    mervi_X
    mervi_X
    1 temat
    bug128
    bug128
    1 temat
  • Aktywni użytkownicy

    Nikt jeszcze nie otrzymał reputacji w tym tygodniu.

×
×
  • Dodaj nową pozycję...