Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Dziku - zdjęcie

Dziku

Rejestracja: 29.01.2012
Aktualnie: Nieaktywny
Poza forum Ostatnio: 08.01.2016 19:28
-----

#624553 Warn gniewny jasnowidz o_O

Napisane przez sebul w 10.03.2014 13:18

Ten wyżej Pan już powinien bana dostać za bycie *****.

Według Ciebie to nie jest jednoznaczne? Na usunięcie warna raczej nie masz co liczyć.


  • +
  • -
  • 5


#624100 [ROZWIĄZANE] Warn za Reputacje

Napisane przez 1337 w 09.03.2014 00:23

Ok, w takim razie sprecyzujemy to w regulaminie, niestety wystawione przed sprecyzowaniem warny pozostaną, a nowe nie dojdą, żeby nie robić zamieszania na forum.

 

 

Czytać nawet nie potrafisz?




#623213 Modele z League of Legends i inne pliki

Napisane przez White w 07.03.2014 11:12

Kiedyś miałem ambitny plan zrobienia LOL Moda, ale niestety trudno jest zebrać ekipę. Może komuś się do czegoś te pliki przydadzą.

 

Modele:

40991556033207368992.jpg

download.png

http://www42.zippyshare.com/v/50085378/file.html

Dźwięki:

download.png

http://www11.zippyshare.com/v/97599337/file.html

Skonwertowane obrazki z gry League of Legends do formatu .jpg w wersji wiosna/zima:

download.png

http://www39.zippyshare.com/v/77992164/file.html

  • +
  • -
  • 15


#622960 NPC Roshan & Rubick z Dota 2

Napisane przez White w 06.03.2014 10:21

86043728929933631125.jpg

download.png

 

Załączone pliki


  • +
  • -
  • 7


#620547 Canvas

Napisane przez R3X w 26.02.2014 21:56

Canvas

 

w ramach eksperymentu i `for the lolz` pracuję nad własnym rendererem wewnątrz serwera hlds. Canvas, czyli płótno. O co chodzi?

 

Plugin oddaje do dyspozycji API, dzięki któremu stworzymy płótno o dowolnych (niestety ograniczonych) rozmiarach. Na tym płótnie możemy rysować ustawiając odpowiednio kolor każdego z pikseli. Rysowaniem zajmuje się Program, rejestrując go podajemy nazwę publicznej funkcji, która będzie wołana co ramkę serwera i w ten sposób możemy aktualizować stan płótna.

 

Aktualnie płótna można dodawać i konfigurować jedyne z menu dostępnego pod komendą

amx_canvas

Można tam dodawać płótna, zmieniać wymiary, rozmiar i program.

 

Interakcja

Samo rysowanie to mało. Oczywiście, że chciałoby się mieć wpływ na to co jest rysowane będąc graczem. Podstawowa interakcja to pozostawanie w zasięgu. Główny plugin pozwala zarejestrować callbacki wołane gdy gracz wchodzi i wychodzi z zasięgu płótna. Pozwala to np. zmienić wyświetlany kolor, gdy ktoś patrzy.

 

Bardziej zaawansowany jest interfejs związany z klawiaturą. Jeśli zdecydujemy się zablokować kamerę gracza na płótnie, wysyłane będą forwardy (również dostępne jako rejestrowalne callbacki) gdy gracz naciska, puszcza lub przytrzymuje klawisz. Na razie nie ma żadnych blokad. Sterując mini-grą gracz będzie biegał i strzelał. Wkrótce się to zmieni :)

 

W planach jest także interfejs dotykowy, tzn gdyby jeden piksel był większy niż gracz to możliwe będzie precyzyjne określenie na którym z pikseli gracz stoi. Z tym wiąże się mnóstwo pomysłów do zrealizowania.

 

Innym typem interakcji może być strzał w piksel. Umożliwiłoby to np. grę w kółko i krzyżyk, gdzie gracze na przemian strzelają w pole gdzie chcą postawić swój znak.

 

Inicjalizacja

Głównie z powodów technicznych narodziła się idea inicjalizacji. Narysowanie dwustu pikseli na raz zawiesiło mi serwer na dobre kilka sekund, a chwilę potem dostawałem channel overflow. Jako obejście wybrałem liniowe rysowanie pikseli w pierwszych chwilach życia płótna. Podstawowy initializer rysuje po 4 piksele na ramkę, od pierwszego do ostatniego. Potem będzie więcej opcji.

 

Ograniczenia

Silnik hl pozwala klientowi rysować ~256 bytów. Każdy piksel płótna jest bytem, więc teoretycznie możemy osiągnąć kwadrat 16x16. Jednak kto pierwszy ten lepszy, więc od tej puli należy odjąć wszystko co jest narysowane na mapie + miejsce na nowe obiekty jak wypadające po śmierci bronie czy rzucone granaty. Będąc sam na serwerze bez zamiaru strzelania się z kimś używałem płótna 28x8. Gdyby ktoś chciał umieści płótno na żywym serwerze wątpię czy udałoby się to zrobić dla rozmiarów większych niż w sumie 100-150 (np. 15x10 ).

 

Demo

Podczas prac robiłem krótkie filmiki z postępów. Oto lista: http://www.youtube.c...hKwIexxiDB238rI

 

Źródło

https://github.com/e...iks/amxx-canvas

 

Na razie nie ma sensu robić paczki. Wersja jest dość wczesna. Da się już coś zrobić, ale raczej również jako ekperyment. 

 

 


  • +
  • -
  • 26


#577629 Zabezpieczanie serwera przed hackiem upload

Napisane przez GwynBleidD w 14.10.2013 16:04

Jak działa hack?




Jak wiadomo, serwery z przed ery SteamCMD są narażone na atak polegający na "wpychaniu" na serwer dodatkowych plików, które infekują serwer. Hack ten jednak nie potrafi bezpośrednio modyfikować plików, może tylko stworzyć nowe. Ale już stworzony przez niego plik, np plugin może dokonać całkowitego spustoszenia. Jednak jako zabezpieczenie przed hackiem wystarczy uniemożliwić tworzenie nowych plików.

Warunki




UWAGA!! Aby ten sposób zabezpieczenia serwera działał prawidłowo, hosting na którym mamy serwery musi spełnić co najmniej 2 warunki. Inaczej metoda ta nie zadziała.

Warunek 1: umożliwienie zmiany praw dostępu (CHMOD) na pliki i foldery w katalogu serwera.

Warunek 2: nie przywracanie domyślnych praw dostępu, gdy jest to niepotrzebne.

Dodatkowo jest jeszcze 1 warunek, bez którego się można obyć, ale wrzucanie nowych plików do zabezpieczonych folderów będzie mocno utrudnione.

Ten warunek to: oddzielne konto użytkownika dla uruchamiania serwera i dla użytkownika FTP, dodatkowo oba te konta muszą mieć wspólną, unikalną grupę.

Sprawdzanie warunków




No jakoś musimy sprawdzić, czy wszystko jest spełnione. W dalszej części poradnika będę posługiwał się WYŁĄCZNIE programem FileZilla, nie napiszę osobnego opisu dla Total Commandera (bo jest przestarzały i się do FTP nie nadaje) ani dla innych programów (bo ich nie znam... no prócz mc, ale kto go używa, ten sam sobie poradzi).

Wchodzimy więc przez FileZillę na serwer i przechodzimy do cstrike/addons/amxmodx/configs. Tworzymy tutaj nowy plik o dowolnej nazwie, teraz klikamy F5, aby widok katalogu się odświeżył i klikamy prawym przyciskiem myszy na nowo utworzony plik, z menu wybieramy Prawa pliku... (File Permissions...). Widzimy tutaj 9 "oczek" do zaznaczenia oraz wartość numeryczną. Krótki opis:

pierwszy wiersz dotyczy właściciela pliku, tj nas samych (użytkownik FTP), drugi wiersz dotyczy praw dostępu do pliku dla użytkowników, którzy należą do grupy do której należy również ten plik (plik posiada użytkownika, który jest jego właścicielem oraz ma przydzieloną grupę użytkowników). Trzeci wiersz dotyczy całej reszty użytkowników.

Prawo odczytu (pierwsza kolumna) to wiadomo, możliwość odczytu pliku.

Prawo zapisu (druga kolumna) to odpowiednio możliwość zapisu pliku (ale nie tworzenia lub usuwania!)

Prawo wykonania (trzecia kolumna) to możliwość uruchomienia pliku, np serwera HLDS.

Dla folderów prawa są troszkę inne

Prawo odczytu umożliwia zobaczenie jakie pliki są wewnątrz katalogu

Prawo zapisu pozwala na tworzenie, usuwanie oraz zmianę nazwy plików (prawa odczytu i zapisu dla pliku nie mają tu znaczenia!) wewnątrz katalogu

Prawo wykonania umożliwia przejście do katalogu (dla FTP jest wymagane do odczytu katalogu, tak jak prawo odczytu).

Te numerki na dole służą do szybkiej zmiany (jeśli wiesz co który oznacza lub ktoś dał Ci w postaci numerków jakie prawa ma mieć dany plik).

Jeśli we wszystkich oczkach masz prostokąt, a w polu na dole 3 litery x, prawdopodobnie na tym hostingu nie da się zmieniać praw dostępu. Zabezpieczenie więc nie zadziała. 2ga możliwość, nie wcisnąłeś F5 po utworzeniu pliku [:)]

Teraz odznacz prawo zapisu dla wszystkich użytkowników (oczko ma być puste, ptaszek oznacza zaznaczony, prostokąt - zostaw poprzednią wartość, przydatne przy masowej zmianie praw dla wielu plików) i zanotuj jaką wartość numeryczną to daje. Kliknij OK i ponownie wciśnij F5 w widoku katalogu. Teraz przejedź w bok suwakiem aż ujrzysz kolumnę o nazwie "Prawa dostępu" (File permissions). Sprawdź, czy wartość w nawiasie jest dokładnie taka, jaką zanotowałeś z pola wartości numerycznej. Jeśli się nie zgadza, hosting nie spełnia odpowiednich wymogów.

Teraz zostaw ten plik na 24 godziny, wyłącz i włącz serwer poprzez panel w tym czasie kilka razy. Jeśli po 24 godzinach plik nadal posiada ustawione przez Ciebie prawa dostępu, wszystko jest ok, zabezpieczenie zadziała! Jeśli się zmieniły, przykro mi.

Dodatkowy warunek




Mamy jeszcze jedną rzecz do zrobienia: sprawdzić, czy hosting używa osobnych użytkowników dla FTP i do uruchamiania serwera. Zanotuj wartości z pola Właściciel/Grupa utworzonego pliku, teraz przejdź do głównego folderu w FTP i sprawdź, czy takie same wartości posiada plik hlds_run. Jeśli pierwsza wartość jest taka sama jak druga, niestety użytkownik jest ten sam, warunek niespełniony. Jeśli pierwsza wartość jest inna, a druga taka sama: użytkownik FTP jest inny niż użytkownik do uruchamiania serwera, warunek jest spełniony. Jeśli 2 wartość jest inna, oznacza to, że użytkownicy mogą nie należeć do tej samej grupy, jednak pewności nie ma.

Katalogi do zabezpieczenia




Teraz przedstawię które katalogi należy zabezpieczyć, należy wykonać na każdym z nich czynności opisane niżej.

/cstrike
/cstrike/addons/metamod
/cstrike/addons/amxmodx/configs
/cstrike/addons/amxmodx/configs/maps
/cstrike/addons/amxmodx/plugins

Katalog /cstrike/addons/amxmodx/configs/maps może nie istnieć, należy go utworzyć.

Dodatkowe operacje




Te czynności wykonujemy wyłącznie, gdy dodatkowy warunek został spełniony. Należy się upewnić, że katalogi które chcemy zabezpieczyć są własnością użytkownika FTP. Sprawdzamy w kolumnie Właściciel/Grupa czy wartości są takie same, jak dla utworzonego przez nas wcześniej pliku. Jeśli są, to nic nie trzeba robić, jeśli nie są, musimy przejąć folder.

Aby to zrobić, najprościej jest:

    Skopiować katalog wraz z całą zawartością na dysk

    Usunąć katalog z FTP

    Kopię z dysku ponownie wrzucić na serwer

Po wykonaniu tych czynności, możemy zabezpieczyć katalog.

Zabezpieczanie katalogu




Aby katalog został zabezpieczony, należy po prostu usunąć prawo zapisu do niego. W przypadku, gdy dodatkowy warunek na naszym hostingu został spełniony, usuwamy zapis dla grupy (2 wiersz), ale zostawiamy dla właściciela. Gdy nie został spełniony, usuwamy dla właściciela (1 wiersz).

Wady rozwiązania




Gdy dodatkowy warunek nie został przez hosting spełniony, rozwiązanie posiada 1 dodatkową wadę. Gdy chcemy do zabezpieczonego katalogu przez FTP dodać jakikolwiek plik, należy na chwilę usunąć zabezpieczenie, tj dodać prawo zapisu do pliku.

Wadą tego rozwiązania bez względu na spełniony dodatkowy warunek jest to, że pluginy na serwerze nie będą mogły stworzyć nowych plików, np pliku konfiguracyjnego z domyślną zawartością. Więc jeśli wgrywamy jakiś plugin, który powinien sobie taki plik utworzyć (albo kilka) należy wyłączyć przy 1 uruchomieniu pluginu nasze zabezpieczenie.

Problemy z Deaglesem



Są takie pluginy niestety, które chcą na siłę coś zapisywać w katalogu z konfiguracją serwera. Jednym z nich jest Deagle's map manager... No cóż, powinien on trzymać te pliki w katalogu data, a nie w configs, ale już trudno... da się z tym jednak szybko uporać, wystarczy utworzyć w configs katalog dmap i przerzucić tam wszystkie pliki konfiguracyjne deaglesa, prócz maps.ini (tworzy on plik mapvault.dat z konfiguracją edytowaną przez komendy, jego też trzeba tam przerzucić). Na katalog dmap ustawiamy możliwość zapisu, tak samo na pliki wewnątrz. Pluginu nie trzeba edytować, gdy widzi on katalog dmap, domyślnie zaciąga sobie z niego konfigurację :)

Rozwiązanie NIE WPŁYWA na stabilność serwera! Nie zwiększa się awaryjność serwera, jak przy filewatcherze.
  • +
  • -
  • 10


#618621 Osoby roku 2013 - Wyniki

Napisane przez DDoS w 21.02.2014 03:20

Wielkie Gratulację dla ludzi którzy siedzą w tym już parę lat i nadal zamieszają siedzieć w tym :) 

Mam nadzieje że nigdy nie zrezygnujecię z prowadzanie / ulepszania amxx.pl 

Przyznam sie szczerze że na scriptingu AMXX znam sie bardzo mało może z 6 % dopiero, gdyż dopiero sie uczę lecz właśnie biorę przykład od was, z waszych pluginów, itp. Znając życie nigdy nie do równam wam ani w 50% lecz jak te forum amxx.pl będzie stało cały czas i będziecie w nim to myślę że jeszcze nie jednego sie od was nauczę, i będę pomagał innym tak jak WY! :)

 

DarkGL - Ciebie to właśnie najbardziej z tego amxx.pl podziwiam gdyż trochę już tutaj siedzisz na tym forum amxx.pl i podziwiam to jak i doceniam to jak sie starasz żeby na tym amxx.pl było jak najlepiej i jak sie starasz pomagać innym. :)

 

Pozdrawiam wszystkich co lubię / starają sie / nadal chcę pomagać na amxx.pl.




#580388 COD MOD Podfrakcje

Napisane przez MAGNET w 26.10.2013 09:45

Musisz utworzyc jeszcze pliki konfiguracyjne cod_frakcje2 i cod_frakcje3 .
Pierwsze menu bedzie czytalo z cod_frakcje. Jesli wybierzesz np. Amerykanow, niech silnik czyta klasy z cod_frakcje2, a jesli Rosjan - cod_frakcje3. Oczywiscie musisz utworzyc funkcje, ktora bedzie te klasy z configu czytala. Jeslli chcesz wiecej frakcji to analogicznie tworzysz cod_frakcje4 etc.
  • +
  • -
  • 1


#239474 Tabelka Serwerów Online - Nowy Wygląd v.2

Napisane przez Dj ^^ d(-.-)b w 20.04.2011 21:34

Tak jak zapowiadałem w tym temacie Tabelka Serwerów Online - Nowy Wygląd - Status serwerów - AMXX.pl: Support AMX Mod X - strona 2 tak jest :) Prezentuje wam nowy status :)

Dołączona grafika

Który posiada:

  • Pokazuje ile graczy gra na serwerze np. 18/21
  • Pokazuje jaka mapa teraz jest grana np. de_dust2
  • Pokazuje czy dany serwer jest włączony czy też nie np. ONLINE Dołączona grafika lub OFFLINE Dołączona grafika
  • Możliwość połączenia się na serwer poprzez np. HLSW Dołączona grafika lub STEAM Dołączona grafika
  • Przekierowanie na HLTV z serwera jeśli takowe posiada Dołączona grafika
  • Zlicza sloty z wszystkich serwerów ( prócz tych ukrytych slotów ) i pokazuje daną ilość graczy na serwerach na ilość slot wszystkich serwerów np. 126 / 181 przy czym 126 to jest liczba graczy a 181 to liczba wszystkich slot ( nie wlicza ukrytych).

Jak dodać na stronę główną naszego forum taki status ?

Oto kod:


<!-- tabelka serwery -->

<iframe scrolling="no" frameborder="0" style="width: 100%; height: 280px; border: none" src="TUTAJ DAJESZ LINK DO TEGO STATUSU">Twoja przeglądarka nie obsługuje ramek!</iframe>


<!-- Koniec tabelki serwery -->



Instalacja:

Ściągamy załącznik następnie rozpakowujemy go później wrzucamy na serwer FTP naszego WWW i już :)

Pliki do edycji to index.php tam zmieniamy Nazwę serwera, adres IP, hlsw, steam , hltv
kolejny plik do edycji to p.php tam tylko zmieniamy adresy IP SERWERÓW

Oczywiście jeżeli pomogłem i przyda się ten status komuś niech podziękuje w tym temacie, jeśli ktoś coś czegoś nie będzie wiedział również niech napisze w tym temacie !


Zakaz rozpowszechniania bez zgody autora ! Wystarczy się spytać na PW czy można skopiować na swoją stronę



Pozdrawiam

Załączone pliki

  • Załączony plik  status.rar   16,57 KB  4287 Ilość pobrań



#475920 [ROZWIĄZANE] Klasa wyszkolenie sanitarne

Napisane przez Maniek974 w 06.11.2012 18:06

Zobacz tak
Wklejka #863912 – Wklej.org
  • +
  • -
  • 1


#475939 [ROZWIĄZANE] Klasa wyszkolenie sanitarne

Napisane przez Droso w 06.11.2012 18:52

if(informacje_przedmiotu_gracza[id][0] != 16 && klasa_gracza[id] != Snajper)
;)
Dlaczego?
if(informacje_przedmiotu_gracza[id][0] != 16 || klasa_gracza[id] != Snajper)
Taki kod zadziałałby tylko jak masz i klase snajper i ten item. || - lub && - i
  • +
  • -
  • 1


#475614 [ROZWIĄZANE] Klasa wyszkolenie sanitarne

Napisane przez Jamdzam w 05.11.2012 18:52

to musi dzialac :D

u mnie na COD modzie dziala daj SMA to ci to wgram
  • +
  • -
  • 1


#462389 [ROZWIĄZANE] jedno zaproszenie na runde

Napisane przez Gość w 28.09.2012 17:48

Zrobiłeś to dobrze, ale w złym miejscu.
sprawdzasz, czy może być wykonane kolejne zaproszenie już po wysłaniu zaproszenia, co nie ma większego sensu.

menu_display(id, menu);
Ta komenda powinna być obwarowana tym warunkiem, tj.
if(prosba[id]){
menu_destroy(menu);
ColorChat(id,GREEN,"[Cs-Mordownia] Mozesz wyslac tylko jedno zaproszenie w ciagu rundy !");
} else {
menu_display(id, menu);
}
Ponadto if(prosba[id]!=false) jest tożsame z if(prosba[id]) i pierwsze sprawdzanie jest zdeczka niepotrzebne,
bo ostatecznie warunek logiczny z nawiasu w if i tak zamieniany jest albo na true, albo na false. To nie PHP, żeby w ten sposób sprawdzać ;)

Jeśli dalej masz problem, podaj całe SMA, to szybko poprawię, póki jestem online i mam AMXX-Studio pod ręką, wystarczy ten warunek przenieść przed wyświetlenie menu.


#384325 [ROZWIĄZANE] Respekt

Napisane przez pfkers w 21.03.2012 19:48

new gVault

w plugin_init()

gVault = nvault_open("respekt");

Gdzies na koncu

public Zapiszrespekt(id)
{
	new name[31];						   //Pobieramy nazwe gracza
	get_user_name(id, name, 31);		  //do tablicy 'name'
	
	new vaultkey[64], vaultdata[256];	 //Tworzymy zmienne dla klucza oraz danych
	format(vaultkey, 63, "%s-pkt", name);   //Formatujemy nasz klucz
	format(vaultdata, 255, "%i",  doswiadczeniezdobycia_monety[id], monety_gracza[id]); //Formatujemy zapisywane dane, # - sluzy jako spacja miedzy tablicamy danych
	nvault_set(gVault, vaultkey, vaultdata); //Zapisujemy klucz oraz dane do bazy
	return PLUGIN_CONTINUE;
}


public Wczytajrespekt(id)
{
	new name[31];
	get_user_name(id,name,31);
	
	new vaultkey[64], vaultdata[256];
	format(vaultkey, 63, "%s-pkt",name);
	format(vaultdata, 255, "%i",, doswiadczeniezdobycia_monety[id], monety_gracza[id]);
	nvault_get(gVault, vaultkey, vaultdata,255);  //Wczytujemy klucz i dane
	
	replace_all(vaultdata, 255, "#", " "); //Zamieniamy # na spacje.
	
	new doswmonety[32], monety[32]; //Tworzymy nowe tablice do ktorych wyciagniemy wartosci zapisanych danych

	parse(vaultdata,doswmonety, 31, monety, 31); //Wyciagamy z bazy dane do utworzonych wczesniej tablic
	

	doswiadczeniezdobycia_monety[id] = str_to_num(doswmonety);
	monety_gracza[id] = str_to_num(monety);
	
	
	return PLUGIN_CONTINUE;
}

w


public client_connect(id)

Wczytajrespekt(id)

no i

public client_disconnect(id)

Zapiszrespekt(id)

I tak jak dodawales ten respekt do vaulta coda to dodaj tutaj a tam usun.. otworzy ci oddzielny vault ktory bd zapisywal monety na nick.. wiec problem sie rozwiaze.. bo inaczej to nie mam pojecia .. sam tak zrobilem i dziala dobrze.. a mysle ze to bd jedyne rozwiazanie bo nikt sie nie interesuje tematem :P


#369277 [ROZWIĄZANE] Podwójne wyświetlanie killi

Napisane przez sebul w 23.02.2012 07:53

http://amxx.pl/topic...m-przy-smierci/
  • +
  • -
  • 1