Skocz do zawartości

Fendi

Użytkownik
  • Ilość zawartości

    1771
  • Rejestracja

  • Ostatnia wizyta

  • Wygrane w rankingu

    78

Treść opublikowana przez Fendi

  1. Chatgpt to najgorsze mozliwe ai od skryptow. Lepsze zrozumienie ma zdecydowanie claude. Chociaz najlepiej nauczyc go skladni na takim 1m tokenowym gemini. Po co ktoś chcialby takie gnioty od ai, skoro tu masz wybitnie napisany juz gotowy skrypt, bez zabawy z pisaniem na pw?
  2. command /autograf [<text>]: permission: autograf.command permission message: &cBrak permisji! trigger: if player's tool is air: send "&cMusisz trzymać coś w ręku!" to player stop set {_item} to player's tool if player has permission "group.default": set name of {_item} to "&7Autograf" set lore of {_item} to "&7" and "&7Autograf od:&r %player%" and "&7" force {_item} to glint set player's tool to {_item} send "&aUtworzono autograf!" to player stop if arg-1 is not set: send "&cUżycie: /autograf <autograf>" to player stop set name of {_item} to colored arg-1 set lore of {_item} to "&7" and "&7Autograf od:&r %player%" and "&7" force {_item} to glint set player's tool to {_item} send "&aUtworzono autograf!" to player Ale zaktualizuj to lepiej bo ta wersja serwera boli. Sam skript wspiera tylko 1.21 od wyzszych wersji
  3. Fendi

    Antylogaut na Boss bara

    options: combat_time: 20 seconds prefix: &7[&bCombat&7] function combatTimer(p: player): if {-combat::%{_p}'s uuid%} is not set: set {-combat::%{_p}'s uuid%} to {@combat_time} from now set {_bar} to boss bar with id "CL_%{_p}%" with title "" with color purple with progress 100 set bar style of {_bar} to segmented 20 add {_p} to {_bar} while {-combat::%{_p}'s uuid%} is set: if {-combat::%{_p}'s uuid%} > now: set {_diff} to (seconds of (difference between {-combat::%{_p}'s uuid%} and now)) + 1 set bar title of {_bar} to "{@prefix} &cJesteś podczas walki %{_diff}%s !" set bar progress of {_bar} to {_diff}*5 else: delete {-combat::%{_p}'s uuid%} delete boss bar with id "CL_%{_p}%" wait 5 ticks send action bar "{@prefix} &aCzas walki się skończył!" to {_p} else: set {-combat::%{_p}'s uuid%} to {@combat_time} from now function checkCombat(p: player) :: boolean: if {-combat::%{_p}'s uuid%} > now: return true else: delete {-combat::%{_p}'s uuid%} delete boss bar with id "CL_%{_p}%" return false on damage of player: if attacker is a player: combatTimer(attacker) combatTimer(victim) on join: delete {-combat::%player's uuid%} delete boss bar with id "CL_%player%" on death: victim is a player delete {-combat::%victim's uuid%} delete boss bar with id "CL_%victim%" on quit: if checkCombat(player) = true: kill player send "&c%player% zlogał podczas walki!" to all players delete {-combat::%player's uuid%} delete boss bar with id "CL_%player%" zmodyfikuj pod siebie
  4. Fendi

    PYTANIE

    masz skript-reflect?
  5. Film pokazowy na yt nie działa Do reszty albo pare screenów, albo nic. Praktycznie nie wiadomo co sie kupuje Czym sklepy/aukcje różnią się np od https://www.spigotmc.org/resources/zauctionhouse.63010/ ? Mają chociaż wszystkie funkcje jak tam? Cena dość podobna (jak ktoś chce to nawet za darmo to sobie ogarnie) funkcji tam jest multum. Realnie jak masz zakres -1.21.4 to z czego to wynika? CommandAPI nie chce ci sie aktualizować? Jeżeli w ogole uzywasz jak teraz wiekszosc z tych "lepszych" pluginów. Z takich rzeczy jak myślę co mogłoby ci się wywalić to może atrybuty? Ale to też pikuś ogarnąć. Mam 2 serwery na 1.21.8 i 1.21.11 i już nie mogę twojego pluginu uzywać? Niewymagająca oznacza że jej w ogole nie masz zaimplementowanej, czy że jej nie trzeba? Bo baze danych domyślnie wlasnie lepiej uzywac W przypadku zapisu na yml. W jaki sposób robisz zapis? Wszystko po dysku na sync czy Asynca coś tykasz? Wszystkie dane na raz? Kolejkowanie? Przy wyjsciu? Co pare min? Nie pisze tego złośliwie, w żaden sposób nie zachęcasz mnie do użycia tego. Brak wiekszego wsparcia Brak jakiegoś pokazu nawet dla zwykłego użytkownika planującego serwer na aternosie. (filmik yt) Brak jakiegoś bardziej technicznego opisu który przynajmniej ja lubie. Opisy bardzo bardzo skromne. Skoro dajesz coś za darmo, a do testu a musze sie zalogować to juz mi sie odechciewa. Szybko bym sobie pobral, zdekompilował i sprawdził czy faktycznie: Bo aktualnie nawet te platne pluginy auctionhaouse mimo ze maja duzo funkcji to sa tragicznie napisane. A taki skrypcik ma to co trzeba i nic więcej. Ceny ciut śmieszne patrząc na to że odpowiedniki do zabawy czatem mamy darmowe, a ty je dajesz za 40-50zł. Gdyby tu chociaż było jakieś połączenie całego ekosystemu z velocity to może ..
  6. Fendi

    Szukam pracy jako Budowniczy

    jakies preview? z kwotami jakie za to bierzesz?
  7. Fajne, chociaż ja osobiście czekam aż ktoś calkiem przepisze system zapisywania zmiennych, bo trzymanie wszystkiego w jednym miejscu bez specjalnej kontroli zapisu jest troche ew
  8. Jaki ten serwer chcesz? Opisz coś bardziej Dam ci taką rade, że z takiego ogłoszenia często zgłosi ci się paro osób co napisało kilka skryptów w ai i nie mają pojęcia jak działa minecraft. Skuteczniej jest szukać samemu osób które mają faktyczną wiedzę i np prezentują to w różnych miejsach.
  9. Z tego co pamietam to na poczatku tak dawalem, tylko ze z jakiegos dziwnego powodu to nie działało. Może i to był chwilowy błąd na wersji na jakiej wtedy to robiłem. Ale skoro działa uniwersalnie to nie widze sensu tego zmieniac. Poza tym i tak to nic nie zmienia. Skbee to najpopularniejszy dodatek, praktycznie kazdy serwer go ma. NBT, atrybuty, kawałki adventure API. To co ja z tego dodatku biore to tylko pierdola. Reflect tak samo Nie wiem po co sie o takie pierdoly przywalasz.
  10. Fendi

    potrzebuje skryptu

    Łączenie się z prawdziwą walutą nie powinno odbywać się w skrypcie. Taka mechanika powinna być dobrze zabezpieczona. A ciężko tu zrobić dobry system zapisywania danych. Jeżeli ktoś doładuje sobie kase, a serwer dostanie crasha to kasa ci zniknie, czemu? Bo skript zapisuje swoje zmienne co jakies tysiąc albo 5 tysięcy zmian w nich albo przy zdrowym wyłączeniu serwera. Opcją na ominięcie tego jest zapisywanie od razu do pliku yml. Tylko że dysk jest cholernie wolny i takie updatowanie plików zapycha trochę główny wątek. Przy małych serwerkach to raczej nie zrobi różnicy ale przy większych już tak. Jeszcze kiedy ten plik zrobi się wiekszy. Odpowiedzią na to jest ASYNC, który w skripcie nie istnieje, można go wykorzystać poprzez skript-reflect ale działa to trochę głupio i nie do konca tak jakbyśmy chcieli. Wtedy co jakiś czas można w osobnym wątku sprawdzać czy dane jakiegoś gracza sie zmieniły i wykonać zadanie podmiany jego danych na dysku bez wchodzenia w główny wątek
  11. nie zrobisz tego placehoderami, nie w latwiejszy sposob niz to co ci wyslalem Do unikalnych kolorów nazw tez trzeba uzyc pakietów
  12. Z góry powiem ze nie powinienes uzywac set {open::%player%} to true Dlaczego? Bo wymusza to zapis danych na dysku, a całkowicie tego nie potrzebujesz. I masz 2 opcje. Uzycie zmiennej efemerycznej ktora jest jedynie w ramie i znika po restarcie serwera. Wygląda ona tak: (polecam ogolnie nauczyc sie z tego korzystac wszedzie bo daje to ogromną przestrzeń na optymalizacje) {-open::%player%} Albo użyć metadaty. command /menu: trigger: mmomenu(player) function mmomenu(p: player): set metadata tag "MMO_MENU_REOPEN" of {_p} to false set {_menu} to chest inventory with 6 rows named " &l&3 MMO&l&a Menu" set slots (all integers from 0 to 53) of {_menu} to light blue stained glass pane named " " set slot 10 of {_menu} to emerald block named "&l&aPoziomy" set slot 12 of {_menu} to lime candle named "&l&aExp" with lore "&3Sprawdź ile Expa dostaniesz za daną czynność" set slot 49 of {_menu} to barrier block named "&l&cZamknij" open {_menu} to {_p} function mmoexp(p: player): set {_menu} to chest inventory with 6 rows named " &l&3 MMO&l&a Menu - &aExp" set slots (all integers from 0 to 53) of {_menu} to light blue stained glass pane named " " set slot 49 of {_menu} to barrier block named "&l&cZamknij" open {_menu} to {_p} set metadata tag "MMO_MENU_REOPEN" of {_p} to true on inventory click: if name of event-inventory contains "Menu": cancel event if clicked slot is 12: mmoexp(player) else if clicked slot is 49: set metadata tag "MMO_MENU_REOPEN" of player to false close player's inventory on inventory close: if name of event-inventory contains "Menu - Exp": if metadata tag "MMO_MENU_REOPEN" of player is true: wait 1 tick mmomenu(player) A tutaj ci poprawiłem wszystko od razu. Porównaj sobie co było źle I na przyszlość w zmiennych uzywaj player's uuid zamiast player. Jest tak poprawniej
  13. Możesz do tego wykorzystać glowing aby osoby z klanu swiecily sie na dany kolor z uzyciem pakietow, dzieki czemu inne osoby nie beda widziec tego podswietlenia https://docs.skunity.com/snippets/1329122039558049813
  14. Napewno :)? Pierwszym błędem jest Przed skriptem 2.10 by to przeszło, jednak w tej wersji usunięto aliasy, teraz trzeba konkretnie podać o jaką motyke chodzi, albo uzyc specjalnej skladni aby skrypt wiedzial ze chodzi o jakąkolwiek. Na ten moment parser mówi że ta linijka jest błędna. (można też wykorzystać tagi) A ta linijka raczej potwierdza mi ze zostało to zrobione przez ai. Na początek: coś takiego nie istnieje, modulo to funkcja matematyczna, a nie składnia. Użyłem 3 popularnych AI dla eksperymentu w jaki sposób one to zrobią. Grok: ChatGPT: Claude: Co ciekawe wszystkie 3 popełniły dosłownie ten sam błąd co ty. Zatem skąd ten błąd? Wpisałeś że wymagasz jedynie skripta 2.13.2 a skbee jest tylko opcjonalny do działania skryptu. Natomiast po sprawdzeniu składni nie istnieje takie coś w oficjalnej dokumentacji: Istnieje jedynie FUNKCJA matematyczna Która przedstawiana jest w taki sposob: mod(d: number, m: number) Co ma sie nijak z number mod number Zatem czemu AI wypluwa takie odpowiedzi? 1. Bazuje na bardzo starych danych 2. Jest głupie 3. Jest głupie 4. Skquery SkQuery to bardzo stary dodatek który wprowadził kilka fajnych składni, ale dla skripta 2.2 Teraz jest on całkowicie zbędny i mało który serwer na najwyższych wersjach go używa. Większość danych o skryptach które posiada AI jest własnie z wersji 2.2, która była używana 2014-2018 (miej wiecej). Zaniża to bardzo poziom wiedzy sztucznej inteligencji w dziedzinie skryptów dlatego to widać bardzo łatwo. Jedyne ai które mogłbym pochwalić to gemini które sprostał zadaniu i prawidlowo wypisał działanie matematyczne modulo. Ale tez może dlatego ze mam dostep do silniejszego platnego modelu. Zatem. Czy napewno autorem jesteś ty, a nie AI?
  15. najpewniej zaczynasz ze skryptami to ci coś powiem Na początek https://wiki.skript.pl/Zmienne Jest ich kilka rodzajów, w tym poradniku nie ma najnowszej dodanej w 2.12 ephemeral (z - przed nazwą np {-gra}) Łącznie są {zmienna} - zmienna globalna, powinno sie w niej zapisywać pojedyncze dane, zapisuje sie na serwerze, nie powinno sie jej uzywac jak nie trzeba {_zmienna} - zmienna tymczasowa, zmienna bardzo szybka, przechowuje to co sie dzieje w danej komendzie/evencie. Nie zapisuje sie {zmienna::*} -zmienna grupowa globalna, zapisuje grupę danych obiektów, np jak chcemy każdemu graczowi przypisać jakis level to przypisujemy do tego kazdego gracza {level::%player%} {_zmienna::*} - zmienna grupowa tymczasowa, to samo co wyżej, ale na czas trwania eventu/komendy bez zapisywania na serwerze {-gra} - zmienna sesyjna, zmienna bardzo bardzo pomocna, jest czymś pomiędzy tymi wczesniejszymi, zapisuje sie w ramie do czasu restartu serwera Ty użyłeś {maszynadoszycia}, zmiennej globalnej zwykłej, przechowujesz jeden obiekt więc teoretycznie okej. Ale co z nią robisz? Dosłownie po 2 linijkach jej już nie potrzebujesz, nie używasz w dalszych mechanikach. Tutaj najbardziej będzie pasować {_zmienna}, skoro nie uzywasz zmiennej poza tym eventem, to nie musi byc zapisywana na serwerze, musi byc tylko przechowana na czas całej komendy. Taką rzeczą która może troche ufajnić skrypt to argumenty komendy. Poradnik do tego znajdziesz tutaj -> https://skript.pl/temat/41229-komendy-w-skript/ Uzywając: Sprawisz że w środku komendy wartość arg-1 (argument pierwszy komendy) Przyjmie wartość gracza którego wpiszesz. Np /dajmaszyna maciek123 Wtedy zamieniasz osobe player (Czyli osobe wykonującą komende) na arg-1 command /dajmaszyna [<player>]: permission: op permission message: &4&lCo ty szpącisz? trigger: set {_maszynadoszycia} to basalt named "&e&lMaszyna do szycia" with lore "&7Naprawisz nią armor" give {_maszynadoszycia} to arg-1 send message "&1&lOtrzymałeś maszyne do szycia od %player%!" to arg-1 I osoba wpisana w arg-1 otrzyma ten przedmiot Podsumowując: player - osoba która wpisuje komende arg-1 - osoba która została wpisana w komendzie
  16. Ale ja już tak, więc oto moja opinia: Chujowe, a nie profesjonalne Co do zmiany? Jakie błędy?: - brak tab completerów - jezeli /kodadmin wykona konsola, wiadomosci beda chcialy wyslac to do gracza to player Command Sender - jest to zła, nieprofesjonalna praktyka, profesjonalnie byłoby użyć refleksji do tego pluginu, pobrać klase->metode i wtedy dać graczowi dany obiekt - brak większej konfiguracji, co jak ktoś chcialby dać wiecej nagród, albo o innej nazwie? Dlaczego ma sie dostosowywać pod skrypt przy tak basicowych rzeczach? - słaby efekt dźwiękowy, bez odpowiedniego wyważenia pitcha, lokacji - zapisywanie grupy graczy do zwykłych zmiennych to tragiczna praktyka, od tego są zmienne grupowe - drzewka ifów
  17. https://skripthub.net/docs/?id=6650 mozna sprawdzic attack cooldown
  18. https://skripthub.net/docs/?id=6650 mozna sprawdzic attack cooldown
  19. Fendi

    remove held item

    remove (1 of player's tool) from player's tool
  20. enchant {_miecz} with "sharpness %{_ench}%" parsed as enchantment type a tak?
  21. nie, nie chce mi sie go nigdzie wklejac dostales odpowiedz, wystarczy pare razy ta sama linijke zmienic w praktycznie takich samych miejsach tu nie ma nic trudnego
  22. https://skripthub.net/docs/?id=1125 Bo nie ma czegos takiego Tak wyglądają przykłady enchant the player's tool with sharpness 5 enchant the player's tool at level 30 disenchant the player's tool
  23. tu nie ma co sie resetowac, nie zapisujesz zadnych danych
  24. nie, nie kojarze mam calkowicie wywalone na te wszystkie anarchiopodobne serwery boxy czy inne gowna pewnie da, reflectem autor ma wygasnieta strone na gicie to nie zobacze src moge zdekompilowac ale mi sie aktualnie nie chce To wina twoich konfiguracji albo slabo napisanych skryptow ktore z niewiadomych mi przyczyn cos takiego powoduja, wróżbą jeszcze nie jestem aby zgadnąć czemu akurat tobie tak sie dzieje
  25. on damage: victim is a player attacker is a player set {_ochrona} to 1 set {_ostrosc} to 1 loop victim's helmet, victim's chestplate, victim's leggings, victim's boots: if loop-value is enchanted with protection: add level of protection of loop-value to {_ochrona} if attacker's tool is enchanted with sharpness: add level of sharpness of attacker's tool to {_ostrosc} set {_dmg} to {_ostrosc} / {_ochrona} if "%active potion effects of attacker%" contains "strength": set {_effect} to amplifier of strength of attacker + 1 set {_dmg} to {_dmg} * {_effect} set damage to {_dmg}
×
×
  • Dodaj nową pozycję...