xAxee 1968 Opublikowano 1 sierpnia 2020 Udostępnij Opublikowano 1 sierpnia 2020 (edytowane) AxAutoUpdateCześć, chciałbym przedstawić skrypt do fajnego zarządzania aktualizacjami skryptów oraz ich automatycznego aktualizowania. Skrypt jest głównie przeznaczony dla osób które piszą skrypt i chcą aby ich skrypt automatycznie aktualizował się użytkownikom Działanie Skrypt co godzinę sprawdza czy wersje wszystkich zarejestrowanych skryptów są aktualne, jeżeli nie i aktualizowanie nie jest zablokowane, nowa wersja pobiera się sama. Jeżeli jednak aktualizowanie jest zablokowane to wysyła wiadomość do konsoli serwera i wszystkich operatorów. Aby skrypt wykrywał wersję skryptu trzeba gdzieś w kodzie umieścić jego wersje między #$ i $# np: #$ Version: 1.0 $# oraz wywołać np przy ładowaniu skryptu funkcje AxUpdate_register(nazwa, link, skrypt) z odpowiednimi argumentami np: on load: AxUpdate_register("AxUpdate", "https://code.skript.pl/0uFoPX6y/raw", script) Jeżeli chcesz dać użytkownikom wolną rękę aby nie musieli pobierać tego skryptu ale jeżeli pobiorą to wasz skrypt będzie się automatycznie aktualizował, starczy że ustawisz te zmienne na dane twojego skryptu przy ładowaniu set {AxUpdate::<nazwa>::link} to "<link>" set {AxUpdate::<nazwa>::status} to true set {AxUpdate::<nazwa>::name} to "<nazwa>" set {AxUpdate::<nazwa>} to script np: on load: set {AxUpdate::mHelix::link} to "https://code.skript.pl/yyY0eOdW/raw" set {AxUpdate::mHelix::status} to true set {AxUpdate::mHelix::name} to "mHelix" set {AxUpdate::mHelix} to script Wymagania- Skript min. 2.2- SkUtilities Główna komendaupdate:Zamienniki: autoupdateSkładnia: /update <list/unregister/update/on/off>* <name> list #Wyświetla wszystkie zarejestrowane skrypty oraz podaje różne informacjeunregister <name> #Odrejestrowuje skryptupdate <name> #Pobiera nowy albo resetuje kod skryptuon <name> #Włącza automatyczne pobieranie nowych wersjioff <name> #Wyłącza automatycznie pobieranie nowych wersji UprawnieniaAutoUpdate #Uprawnienie do głównej komendy ŚrodowiskoSkript 2.2 SkUtilities 0.9.2 Serwer Spigot 1.8.8 InformacjaSkrypt aktualizuje się automatycznie SS Spoiler Komenda główna argumenty - update/on/off Argument - list Przykłady Spoiler Przykład bez zarejestrowania Lista skryptów które mają wsparcie tego skryptu Spoiler mGUI, mHelixAxCooldown, AxNameMc, AxOzn, AxShop Jeżeli chcesz aby twój skrypt znalazł się na tej liście napisz do mnie! Zmiany i wydania1.0 Napisanie i wydanie skryptu Wszelkie błędy / poprawki / pomysły proszę zgłaszać na pw albo pod tematem w odpowiedzi Edytowane 12 września 2020 przez xAxee Ziemnianioczek, Maksiu_Kozak, PanMaruda i 4 innych 2 5 Cytuj Odnośnik do komentarza https://skript.pl/temat/40795-axautoupdate-skrypt-u%C5%82atwiaj%C4%85cy-automatyczn%C4%85-aktualizacje/ Udostępnij na innych stronach Więcej opcji udostępniania...
Gość Trevier Opublikowano 2 sierpnia 2020 Udostępnij Opublikowano 2 sierpnia 2020 Wow! Naprawdę fajny skrypt! Cytuj Odnośnik do komentarza https://skript.pl/temat/40795-axautoupdate-skrypt-u%C5%82atwiaj%C4%85cy-automatyczn%C4%85-aktualizacje/#findComment-254229 Udostępnij na innych stronach Więcej opcji udostępniania...
Shateq 45 Opublikowano 4 sierpnia 2020 Udostępnij Opublikowano 4 sierpnia 2020 Miałeś dobry pomysł by to umieścić w Skripcie. Kozacki skrypt!! Leci plusik. xAxee 1 Cytuj Odnośnik do komentarza https://skript.pl/temat/40795-axautoupdate-skrypt-u%C5%82atwiaj%C4%85cy-automatyczn%C4%85-aktualizacje/#findComment-254468 Udostępnij na innych stronach Więcej opcji udostępniania...
PanMaruda 624 Opublikowano 29 sierpnia 2020 Udostępnij Opublikowano 29 sierpnia 2020 function AxUpdate_getVersion(content: text) :: text: set {_start} to index of "##$" in {_content} set {_end} to index of "$##" in {_content} set {_version} to subtext of {_content} between character {_start} to {_end}-1 return {_version} wydaje mi się że lepiej byłoby zrobić to w postaci listy linijek (tak jak jest domyślnie w file contents) (dla powyższego kodu) załóżmy że skrypt będzie miał 30 linijek - okej, ujdzie. Ale jeżeli będzie to już powiedzmy 1030 linijek (a takie się zdarzają) to wtedy serwer złapie laga (może nawet kilkunastu sekundowego) a teraz jeżeli zrobimy w pętli (i dodatkowo doradzimy użytkownikom żeby wersję wpisywali na samej górze skryptu) - to nie ważne czy skrypt będzie miał 30 czy 1030 linijek - wtedy wszystko będzie trwało mniej więcej tyle samo function AxUpdate_getVersion(content: strings) :: text: loop {_content::*}: set {_start} to index of "##$" in loop-value set {_end} to (index of "$##" in loop-value) - 1 return (subtext of loop-value between character {_start} to {_end}) + weźmy pod uwagę że jeżeli nie będzie wpisanej wersji, to ta funkcja zwróci nulla (tak samo moja jak i twoja) a jeżeli zwróci nulla to i tak skrypt bez podanej wersji będzie uznany za nową wersję, bo przyrównujesz if {_ver1} is {_ver2}: #to zaaktualizuje skypt if "1.0.0" is "1.0.1": #ale to też go zaaktualizuje if "1.0.0" is null: Mam też propozycję dot. rozwoju skryptu (o ile taki przewidujesz) - byłoby fajnie gdyby gdzieś w folderze Skripta zapisywała się kopia starych wersji każdego skryptu (na wszelki wypadek) + do tego może jakaś komenda do przywracania tego starego skryptu Cytuj Odnośnik do komentarza https://skript.pl/temat/40795-axautoupdate-skrypt-u%C5%82atwiaj%C4%85cy-automatyczn%C4%85-aktualizacje/#findComment-258847 Udostępnij na innych stronach Więcej opcji udostępniania...
xAxee 1968 Opublikowano 29 sierpnia 2020 Autor Udostępnij Opublikowano 29 sierpnia 2020 (edytowane) @PanMaruda dzięki za sugestie, funkcje do sprawdzania wersji już poprawiłem. Co do tego nulla to zastanawiam się jak to rozwiązać, pewnie zostawię tak jak jest, no bo ktoś w każdej chwili może zakończyć wsparcie. Owszem skrypt będzie przez dłuższy czas rozwijany, więc na dniach (pewnie jutro) pokaże się aktualizacja z ty zapisywaniem wersji Edytowane 29 sierpnia 2020 przez xAxee Cytuj Odnośnik do komentarza https://skript.pl/temat/40795-axautoupdate-skrypt-u%C5%82atwiaj%C4%85cy-automatyczn%C4%85-aktualizacje/#findComment-258980 Udostępnij na innych stronach Więcej opcji udostępniania...
Karciello 0 Opublikowano 20 stycznia 2021 Udostępnij Opublikowano 20 stycznia 2021 (edytowane) Witaj, chciałem Twojego skryptu użyć jako możliwość autoupdatów, jeżeli użytkownik by chciał takowe, lecz przy próbie aktualizacji skryptu, wyskakuje error skutility: [21:24:02 ERROR]: [skUtilities] v0.9.2: File: '/home/servers/841212/plugins/Skript/scripts/AxAutoUpdate.sk' Input length = 1 (SExprFileContents.class) [21:24:03 ERROR]: [skUtilities] v0.9.2: File: '/home/servers/841212/plugins/Skript/scripts/KxSprawdzanie.sk' Input length = 1 (SExprFileContents.class) da sie to jakoś naprawić? Paper Spigot 1.16.4 (Paper-336) skUtilities v0.9.2 SkRayFall v1.19.23 SkQuery v4.1.4 Skellet v1.9.11 Edytowane 20 stycznia 2021 przez xAxee Wstawiam w code Notatka dodana przez xAxee Cytuj Odnośnik do komentarza https://skript.pl/temat/40795-axautoupdate-skrypt-u%C5%82atwiaj%C4%85cy-automatyczn%C4%85-aktualizacje/#findComment-281141 Udostępnij na innych stronach Więcej opcji udostępniania...
xAxee 1968 Opublikowano 11 lutego 2021 Autor Udostępnij Opublikowano 11 lutego 2021 Ten temat został przeniesiony. Cytuj Odnośnik do komentarza https://skript.pl/temat/40795-axautoupdate-skrypt-u%C5%82atwiaj%C4%85cy-automatyczn%C4%85-aktualizacje/#findComment-287272 Udostępnij na innych stronach Więcej opcji udostępniania...
FixeQ 2 Opublikowano 15 października 2023 Udostępnij Opublikowano 15 października 2023 Ja np. Pozmieniałem nazwy i tak zrobiłem usunąłem komendę i jest jeden skrypt Oczywiście napiszę że AutoUpdate to od xAxee żeby nie było że jakieś prawa autorskie (Wszystko działa) Cytuj Odnośnik do komentarza https://skript.pl/temat/40795-axautoupdate-skrypt-u%C5%82atwiaj%C4%85cy-automatyczn%C4%85-aktualizacje/#findComment-338119 Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Dołącz do dyskusji
Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.