Skocz do zawartości

Znajdź zawartość

Wyświetlanie wyników dla tagów 'sp' .



Więcej opcji wyszukiwania

  • Wyszukaj za pomocą tagów

    Wpisz tagi, oddzielając je przecinkami.
  • Wyszukaj przy użyciu nazwy użytkownika

Typ zawartości


Kategorie

  • Error'y w kompilatorze
  • Warning'i w kompilatorze
  • Fatal error'y w kompilatorze

Forum

  • Go-Code.pl - Ogólne
    • Informacje
    • O serwisie
  • Sourcemod Scripting
    • Baza wiedzy
    • Masz problem?
    • Pytania na temat kodowania
  • Pluginy Sourcemod
    • Wszystko o pluginach
    • Duże modyfikacje
    • Dodatki
  • Konfiguracja serwera
    • Baza wiedzy
    • Pytania
    • Problemy
  • Counter-Strike: Global Offensive
    • Nowości
    • Artykuły, poradniki, tutoriale
    • Pytania
    • Problemy
  • Hostingi serwerów
    • Oferty firm
    • Opinie o hostingach
    • Pytania
  • Poza tematyką forum, OFF-TOPIC
    • Życie społeczności
    • Biznes
    • Zareklamuj swoją sieć/serwer
    • RoundSoundy
  • Archiwum
    • Przestarzałe tematy
    • Kosz

Szukaj wyników w...

Znajdź wyniki, które zawierają...


Data utworzenia

  • Od tej daty

    Do tej daty


Ostatnia aktualizacja

  • Od tej daty

    Do tej daty


Filtruj po ilości...

Dołączył

  • Od tej daty

    Do tej daty


Grupa podstawowa


Imię


Lokalizacja


Zawód


O mnie


Strona WWW

Znaleziono 3 wyniki

  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 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
×
×
  • Dodaj nową pozycję...