Skocz do zawartości
  • 0

Szukam skryptu na cenzure


Pytanie

13 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0

Jest tego pełno w necie ale masz:
 

options:
	badwords: "tutaj", "podaj", "słowa", "które", "chcesz", "zastępować" or "gwiazdkami"
	count: 3

on join:
	{swears.%player's name%} = 0

on chat:
	if message contains {@badwords}:
		set {_count} to {@count}
		replace all {@badwords} with "&e*&6*&e*&6*&e*&6*&r" in message
		message "&6-----------------------------------------&r"
		message "&c&lWulgaryzmy oraz słowa niecenzuralne"
		message "&c&lsą zakazane! Otrzymujesz ostrzeżenie &6%{swears.%player's name%}%/%{_count}% &c!"
		message "&6-----------------------------------------&r"	
		if {swears.%player's name%} is not set:
			{swears.%player's name%} = 0
		set {swears.%player's name%} to {swears.%player's name%} + 1
		if {swears.%player's name%}>{_count} :
			kick player due to "&4Wulgaryzmy są zakazane!"
			set {swears.%player's name%} to 0
		wait 500 seconds
		if {swears.%player's name%} >= 1:
			set {swears.%player's name%} to {swears.%player's name%} - 1
			

w moim skrypcie gracz moze przeklnąć 3 razy za 4 dostaje kicka
w badwords podajesz słowa które chcesz cenzurować 

Wady:
jeżeli słowo cenzurowane to "które" to skrypt kara również za słowo "którekolwiek" co może powodować lekkie problemy

Odnośnik do komentarza
https://skript.pl/temat/53981-szukam-skryptu-na-cenzure/#findComment-328036
Udostępnij na innych stronach

  • 0
options:
	badwords: "tutaj", "podaj", "słowa", "które", "chcesz", "zastępować" or "gwiazdkami"
	count: 3

on join:
	{swears::%player's name%} = 0

on chat:
	if message contains {@badwords}:
		set {_count} to {@count}
		replace all {@badwords} with "&e*&6*&e*&6*&e*&6*&r" in message
		message "&6-----------------------------------------&r"
		message "&c&lWulgaryzmy oraz słowa niecenzuralne"
		message "&c&lsą zakazane! Otrzymujesz ostrzeżenie &6%{swears::%player's name%}%/%{_count}% &c!"
		message "&6-----------------------------------------&r"	
		if {swears::%player's name%} is not set:
			{swears::%player's name%} = 0
		set {swears::%player's name%} to {swears::%player's name%} + 1
		if {swears::%player's name%}>{_count} :
			kick player due to "&4Wulgaryzmy są zakazane!"
			set {swears::%player's name%} to 0
		wait 500 seconds
		if {swears::%player's name%} >= 1:
			set {swears::%player's name%} to {swears::%player's name%} - 1

Poprawiona wersja 😜

Pamiętaj o ":" zamiast "." :O

Edytowane przez Vector
Odnośnik do komentarza
https://skript.pl/temat/53981-szukam-skryptu-na-cenzure/#findComment-328071
Udostępnij na innych stronach

  • 0

Celowo dałem "." a nie ":"

Moja wersja była testowana i w 100% sprawna

Nie rozumiem dlaczego chcesz zapisywać zmienną zwykłą typu liczba:

 {swears.%player's name%} (zapisujemy pojedynczy argument np "3")  

w zmiennej grupowej 
{swears::%player's name%} (Zapisujemy do nich kilka rzeczy np lokalizacje gracza składającą się z: x, y, z)

Edytowane przez Saanjuk
Odnośnik do komentarza
https://skript.pl/temat/53981-szukam-skryptu-na-cenzure/#findComment-328074
Udostępnij na innych stronach

  • 0
22 godziny temu, Saanjuk napisał:

{swears::%player's name%} (Zapisujemy do nich kilka rzeczy np lokalizacje gracza składającą się z: x, y, z)

No nie, mylisz się,

do zmiennej {swears::%player%::*} zapisujesz coś jak tablicę, czy tam jak wolisz - "kilka rzeczy".

Do takiej zmiennej przypisujesz jedną rzecz, ale z tą różnicą, że potem możesz prosto zapętlić lub usunąć {swears::*} 

Odnośnik do komentarza
https://skript.pl/temat/53981-szukam-skryptu-na-cenzure/#findComment-328100
Udostępnij na innych stronach

  • 0

Co nie zmienia faktu że mój kod jest w 100% poprawny ponieważ:

{swears.%player%} podczas całej pracy skryptu przyjmuje pojedynczą wartość 0 lub 1 lub 2 lub 3 lub 4 przy czym przy 4 wywala gracza i resetuje mu licznik przez co {swears.%player%} = 0

Odnośnik do komentarza
https://skript.pl/temat/53981-szukam-skryptu-na-cenzure/#findComment-328106
Udostępnij na innych stronach

  • 0
53 minuty temu, Saanjuk napisał:

Co nie zmienia faktu że mój kod jest w 100% poprawny ponieważ:

{swears.%player%} podczas całej pracy skryptu przyjmuje pojedynczą wartość 0 lub 1 lub 2 lub 3 lub 4 przy czym przy 4 wywala gracza i resetuje mu licznik przez co {swears.%player%} = 0

To, że skrypt działa nie oznacza, że jest napisany wydajnie. Zmienne grupowe oszczędzają miejsce jak i mniej obciążają serwer, a dodatkowo manipulacja takimi danymi jest łatwa (modyfikowanie, usuwanie, wyświetlanie etc.) A przy działaniu skryptu nie ma żadnej różnicy między swears.%player% a swears::%player%, bo zmienna jest zapisana identycznie, a korzystanie z zmiennych grupowych jest efektywniejsze

Odnośnik do komentarza
https://skript.pl/temat/53981-szukam-skryptu-na-cenzure/#findComment-328110
Udostępnij na innych stronach

  • 0

@Vector w twoim kodzie czat wypluwa:
 

Wulgaryzmy oraz słowa niecenzuralne
są zakazane! Otrzymujesz ostrzeżenie<none>/3!"

co za tym idzie nie wyrzuci gracza po określonej liczbie wiadomości z cenzurowanym słowie

W moim wypluwa:

 

Wulgaryzmy oraz słowa niecenzuralne
są zakazane! Otrzymujesz ostrzeżenie 1/3!"

więc jak coś po kimś poprawiasz to chociaż się upewnij że działa

@edit:
Tylko przy pierwszym użyciu, zwracam honor do kieszeni


Oto ostateczny kod (z jakiegoś powodu trzeba ustawiać swears::%player% na 1 a nie na 0:
 

options:
	badwords: "tutaj", "podaj", "słowa", "które", "chcesz", "zastępować" or "gwiazdkami"
	count: 3

on join:
	if {swears::%player's name%} is not set:
		set {swears::%player's name%} to 1

on chat:
	if message contains {@badwords}:
		set {_count} to {@count}
		replace all {@badwords} with "&e*&6*&e*&6*&e*&6*&r" in message
		message "&6-----------------------------------------&r"
		message "&c&lWulgaryzmy oraz słowa niecenzuralne"
		message "&c&lsą zakazane! Otrzymujesz ostrzeżenie &6%{swears::%player's name%}%/%{_count}% &c!"
		message "&6-----------------------------------------&r"	

		set {swears::%player's name%} to {swears::%player's name%} + 1
		if {swears::%player's name%}>{_count} :
			kick player due to "&4Wulgaryzmy są zakazane!"
			set {swears::%player's name%} to 1
		wait 500 seconds
		if {swears::%player's name%} >= 1:
			set {swears::%player's name%} to {swears::%player's name%} - 1


skrypt zawierał również błąd który popełniłem przy projektowaniu go:
jeżeli gracz otrzymał 2 ostrzeżenia po czym zrobił reloga jego ostrzeżenia były resetowane do 0 przez co po 500sek od 1 wulgaryzmu miałby -1  a następnie po 500 sek od 2 wulga -2

Edytowane przez Saanjuk
usunięcie "komendy" testowej ze skryptu
Odnośnik do komentarza
https://skript.pl/temat/53981-szukam-skryptu-na-cenzure/#findComment-328113
Udostępnij na innych stronach

  • 0
W dniu 13.12.2022 o 17:25, Vector napisał:
on join:
	{swears::%player's name%} = 0

pozostałości tutaj z jakichś normalnych języków programowania, w skript musisz dać set {zmnienna} to wartosc, to co ty napisales to warunek sprawdzjacy czy zmienna to 0

Odnośnik do komentarza
https://skript.pl/temat/53981-szukam-skryptu-na-cenzure/#findComment-328121
Udostępnij na innych stronach

  • 0

@CoFFeIN04napisałem wyraźnie trzeba dać na 1 nie na 0


inaczej skrypt nie jest w pełni funkcjonalny ponieważ przy pierwszej próbie napisania daje ostrzeżenie "0" a nie ostrzeżenie "1"


co do samego "=" zamiast set {} to .. jakbyś nie zauważył to właśnie to zrobiłęm więc nie wiem po co ten wywód

Edytowane przez Saanjuk
Odnośnik do komentarza
https://skript.pl/temat/53981-szukam-skryptu-na-cenzure/#findComment-328125
Udostępnij na innych stronach

  • 0

Poprawiona wersja powyższego skryptu przez słabą optymalizacje (tworzenie zmiennych przy wejściu gracza, wiadomości o ostrzeżeniu, które mogłyby się "rozjeżdżać" jak i nie wykorzystywanie sekcji options, a tylko tworzenie kolejnych niepotrzebnych zmiennych tymczasowych, a dodatkowo brak wykorzystania możliwości usuwania niepotrzebnych zmiennych po wykonanym skrypcie)

Odnośnik do komentarza
https://skript.pl/temat/53981-szukam-skryptu-na-cenzure/#findComment-328130
Udostępnij na innych stronach

  • 0

Z początku dałem minusa ponieważ sk wydawał się nie działać - oazało się że zerwało połączenie ftp podczas wgrywania pliku

Optymalizacja zawsze na propsie
Nie rozumiem tylko usuwania wszystkich ostrzeżeń gracza (usuwania zmiennej)  po 60 sek... moim zdaniem to zdecydowanie za mało ponieważ gracz może używać 3 wulgaryzmów  na minute bez żadnych konsekwencji czyli średnio 1 na 20 sekund więc aby zostać ukaranym to trzeba juz naprawde chcieć być ukaranym

poprawiony kolejny raz skrypt:


po 5 min warn jest zdejmowany 

Edytowane przez Saanjuk
Odnośnik do komentarza
https://skript.pl/temat/53981-szukam-skryptu-na-cenzure/#findComment-328160
Udostępnij na innych stronach

  • 0
W dniu 15.12.2022 o 19:09, Saanjuk napisał:

Z początku dałem minusa ponieważ sk wydawał się nie działać - oazało się że zerwało połączenie ftp podczas wgrywania pliku

Optymalizacja zawsze na propsie
Nie rozumiem tylko usuwania wszystkich ostrzeżeń gracza (usuwania zmiennej)  po 60 sek... moim zdaniem to zdecydowanie za mało ponieważ gracz może używać 3 wulgaryzmów  na minute bez żadnych konsekwencji czyli średnio 1 na 20 sekund więc aby zostać ukaranym to trzeba juz naprawde chcieć być ukaranym

poprawiony kolejny raz skrypt:


po 5 min warn jest zdejmowany 

dziekuje bardzo za skrypt

Odnośnik do komentarza
https://skript.pl/temat/53981-szukam-skryptu-na-cenzure/#findComment-328524
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...