Jump to content
  • Chmurka
  • Boróweczka
  • Jabłuszko
  • Limonka
  • Czekoladka
  • Węgielek

Search the Community

Showing results for tags 'smx'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Nasze Sprawy
    • Nowości
    • Dyskusje
    • Propozycje
    • Przywitaj się!
  • Sourcemod Scripting
    • Artykuły, poradniki, tutoriale
    • Pytania na temat kodowania
    • Problem z kodem pluginu
    • Prośby o przerobienie pluginu
    • Gotowe funkcje
    • Koduj z Magnetem
  • Konfiguracja pluginów
    • Artykuły, poradniki i tutoriale
    • Szukam pluginu
    • Duże modyfikacje
    • Zbiór pluginów
    • Extensions
    • Gotowe paczki serwerowe
  • Konfiguracja serwera
    • Artykuły, poradniki, tutoriale
    • Pytania
    • Problemy
    • Ochrona
    • Metamod
  • Counter-Strike: Global Offensive
    • Nowości
    • Artykuły, poradniki, tutoriale
    • Pytania
    • Problemy
    • Pliki
    • Wasza twórczość
    • Publikacje serwerów
  • Hostingi serwerów
    • Oferty firm
    • Opinie o hostingach
    • Pytania
  • Plac zabaw
    • Luźne rozmowy
    • Szukam ekipy
    • Rynek
    • Opinie o ludziach
    • RoundSoundy
  • Archiwum
    • Przestarzałe tematy
    • Kosz

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


O mnie

Found 4 results

  1. Podstawową rzeczą jaką musi umieć każdy kto zanurzy się w środowisku sourcemoda, to oczywiście kompilowanie kodów źródłowych z formatu .sp na kod maszynowy w formacie .sp. Przykładem kodu źródłowego może być: public void OnPluginStart() { HookEvent("round_start", RoundStart); } A przykładem kodu maszynowego: FFPS/ ­= ´ / / ¤ Ó Ó @ H [ ` ' » • . P( 9 h( F , Q (1 Ä ^ ě4 Q k =9 u M9 ` .code .data .publics .pubvars .natives .names .dbg.files .dbg.symbols .dbg.lines .dbg.natives .dbg.strings .dbg.info .tags xÚí[{t\ĹyżűĐölÉ& o`‚#˲F Ĺ’Öf’-´˛l§Ú«Ý+íâÝ{—{ďĘRžNJˇ”:©›ăś’Ňă6¦p“đJë¤Nˇ MˇR'qhĆMbZ7uJß|ß˝{×ŇPzÚÓţSŤ~3ż™;3ßĚ73ß<´g©a$Ćúiƒ›1ř§î#â.+ŔÝ&q±˙^ Do czego potrzebna jest kompilacja? Maszyna (serwer) nie rozumie kodu źródłowego, jest to kod przeznaczony tylko i wyłącznie dla programisty. Aby nasz serwer mógł go zrozumieć potrzebny jest kompilator. Jak skompilować plugin? Pobieramy sourcemoda na windowsa z tego tematu, lub jeśli temat jest przestarzały, z tej strony. Pobiera nam się plik sourcemod-jakieścyferki-windows.zip. Rozpakowujemy go programem 7zip, winrar lub innym. W powstałym folderze wchodzimy do \addons\sourcemod\scripting\. Tam kasujemy prawie wszystkie pliki i foldery, aż zostanie nam to: Aby skompilować jakikolwiek plugin w pliku nazwa.sp, musimy go wrzucić do tego folderu tak, żeby był razem z plikiem compile.exe: Teraz włączamy plik compile.exe. (Nawiasem mówiąc, błędy wyskakujące podczas kompilacji można sprawdzić tutaj) Utworzy nam się folder compiled a w nim nasz skompilowany plugin z rozszerzeniem .smx. UWAGA! Zaznaczam, że jest to poradnik do kompilacji na systemie windows. To znaczy, że jeśli TY jako osoba używasz innego systemu operacyjnego na swoim komputerze, poniższy sposób jest nieadekwatny. UWAGA2! Wszystkie serwery na hostingach stoją na maszynach zawierających system oparty na linuxie. Nie ma to jednak związku z naszą kompilacją, gdyż wykonujemy ją u siebie na komputerze a na serwer wrzucamy plik .smx którego nie obchodzi na jakim systemie stoi serwer. Wspominam o tym tylko i wyłącznie dlatego, że komuś może się pomylić i szukać sposobu kompilacji tylko i wyłącznie na linuxie bo jego serwery stoją na linuxie
  2. Opis Ten temat zawiera poradnik jak można dodać licencję na swój plugin sourcemod. Plugin będzie komunikował się z bazą danych na zewnętrznym serwerze, sprawdzał czy IP serwera, ID pluginu oraz specjalny hash pluginu są wpisane do SQL, jeśli tak, plugin będzie działał poprawnie, jeśli nie, plugin automatycznie się sam wyłączy. Aby w pełni zrozumieć poradnik powinieneś mieć podstawowe pojęcie o PHP, SourceModzie oraz bazach danych. Jeśli czegoś nie wiesz, śmiało pytaj w tym temacie, na pewno poszerzysz swoją wiedzę. Ostrzeżenie Poradnik jest w praktyce niepotrzebny, ponieważ jak dobrze pamiętamy, każda publikacja pluginu sourcemod zgodnie z licencją GNU General Public License (klik aby poczytać) włącznie ze skompilowanym plikiem .smx (którego w teorii nie da się odczytać ani zmodyfikować) musi zawierać kod źródłowy w pliku .sp. Więc nawet jeśli nałożymy na nasz plugin licencję to każdy będzie mógł ją zmodyfikować/usunąć. Ten temat znajduje się tutaj tylko i wyłącznie w celach edukacyjnych. Kod SM Pokrótce omówię poniższy kod, pomimo tego, że zawiera dość dobre komentarze*. Główną funkcję CheckValidity (); umieszczamy w kodzie innego pluginu w OnPluginStart ();. Sprawdza ona czy plugin poprawnie znajduje się w bazie danych. Jeśli się znajduje, URL zwraca odpowiedź w postaci hashu, który musi się zgadzać z tym wpisanym w plugin. Jeśli się nie zgadza, plugin się wyłącza. pluginDatabaseID - uzupełnij tą zmienną o numer ID pluginu z bazy danych (o bazie danych później) validDatabaseResponse - uzupełnij tą zmienną o unikalny ciąg znaków(hash) z bazy danych databaseURL - uzupełnij tą zmienną o URL, który będzie się komunikował z bazą danych Ten kod możemy umieścić bezpośrednio w kodzie innego pluginu lub jako plik .inc. Życzę miłego czytania komentarzy, widzimy się na dole gdzie wyjaśnię jak będzie wyglądał kod PHP po stronie URL Kod PHP Kod PHP będzie przyjmował argumenty "ip" oraz "pl" oznaczające po kolei IP serwera na którym jest plugin oraz ID pluginu. Sprawdzi czy są poprawne (pod względem składni), po czym połączy się z SQL i zapyta, czy dane znajdują się w bazie danych. Jeśli się znajdują, URL wyrzuci na ekran unikalny hash pluginu, by plugin mógł porównać go sobie ze swoim hashem wpisanym na sztywno. Sprawdza to funkcja ReturnQueryHTTP w sourcepawnie w moim kodzie. Tabela z licencjami Tabela z licencjami powinna wyglądać mniej więcej tak: | id | ip | plugin_id | plugin_hash | | | | | | |tutaj id ze | tutaj ip |tutaj id plugi-| tutaj hash | |standardową | serwera |nu | unikalny dla | |autoinkreme-| | | każdego smx | | ntacją | | | | id - zawiera standardowy integer z autoinkrementacją niepotrzebny do działania pluginu na licencję ip - ip serwera na którym ma działać dana licencja plugin_id - jest to ID pluginu (nie pojedynczego pliku) w bazie danych. Na przykład plugin nazwany "fajerwerki" będzie miał id 10 i niezależnie jaki użytkownik będzie miał na niego licencję, to plugin zawsze będzie miał id 10. Swoisty identyfikator pluginu plugin_hash - unikalny 32 znakowy ciąg znaków dla każdego osobnego pliku smx który znajduje się i w bazie i w pluginie, musisz go wpisywać ręcznie * - Pamiętajmy co do komentarzy - jeśli Twój kod zawiera ich za dużo, staje się nieczytelny. Nie papuguj kodu powyżej i nie pisz wszędzie swoich komentarzy. Staraj się pisać kod zgodnie z zasadami Clean Code ** - Regex czyli wyrażenia regularne. Jest to świetne i bardzo przydatne zagadnienie w informatyce ogółem, polecam się zagłębić
  3. Opis Plugin rozszerza standardowe informacje o zabiciu innej osoby w prawym górnym rogu ekranu. Wszystko widać jak na screenie Screenshot Download ExtendedPlayerDeathInfo.sp ExtendedPlayerDeathInfo.zip - pamiętajmy wrzucić wszystkie pliki na serwer Źródło https://forums.alliedmods.net/showthread.php?t=315338
  4. Opis Plugin uniemożliwia wpisywanie przez zwykłego gracza komend "sm plugins" oraz "sm meta", które odsłaniają poniekąd "wrażliwe" dane techniczne serwera. Dla osoby z flagą ADMFLAG_ROOT wpisanie tych komend nadal jest możliwe. Dodatkowo plugin loguje próby wpisania komend do pliku: logs/sbp-dzisiejsza_data.log Wymagania Dynamic Hooks LUB P Tools and Hooks Zależnie od pobranej wersji Download Github - https://github.com/Bara/BlockSMPlugins Bezpośrednio: BlockSMPlugins - DHooks.7z BlockSMPlugins - PTaH.7z Źródło https://github.com/Bara/BlockSMPlugins

Nasza historia

Na początku byliśmy małą grupą internetowych znajomych, którzy stwierdzili, że potrzebne jest solidne forum, na którym znajdą się ludzie z dużą wiedzą programistyczną ukierunkowaną na CS:GO. Pomysł powstał na początku 2018 roku, a parę miesięcy później, 19 kwietnia, powstała ta strona internetowa. Jako alternatywna odpowiedź na inne tego typu miejsca, poważnie podeszliśmy do tematu, najpierw tłumacząc angielską dokumentację SourceMod'a na język polski, a potem pisząc rozległe poradniki i wypełniając forum najpotrzebniejszymi rzeczami dla właścicieli serwerów i programistów. Cała nasza Ekipa jest dumna z pracy jaką w to włożyliśmy i cieszymy się że zbierają się wokół nas zarówno ludzie znający tematy sourcepawn'a i konfiguracji, jak i również nowe twarze w tym "biznesie", którym z chęcią niesiemy wiedzę oraz pomoc w rozwiązywaniu problemów.

Największe modyfikacje serwerowe

×
×
  • Create New...