Skocz do zawartości

1#AMXX - AmxModX Studio, kompilacja lokalna.


delphi

Rekomendowane odpowiedzi

Wstęp

Witam, jako że mam trochę czasu wolnego to postanowiłem napisać serię poradników z zakresu programowania/pisania pluginów AMXX. Nie jest to łatwy temat jeśli ktoś nie miał wcześniej kontaktu z żadnym językiem programowania, ale postaram się wszystko tłumaczyć jak najjaśniej, bądź po prostu "na chłopski rozum". Następne poradniki będę pisał jeśli pojawi się jakiekolwiek zainteresowanie, bo nie ma sensu, żebym tracił czas jeśli nikomu to się nie przyda. Zaczniemy od podstaw czyli konfiguracji środowiska pracy, ściągnięcia kompilatora i nauki kompilacji lokalnej. W następnych poradnikach omówię podstawowy program, oraz coś napiszemy.

Mam nadzieje, że pojawi się zainteresowanie i przekazanie mojej wiedzy na ten temat się komuś przyda.

 

Potrzebne programy

Potrzebne jest nam przede wszystkim IDE (ang. integrated development environment - zintegrowane środowisko programistyczne) - innymi słowy potrzebny jest nam program lub zestaw programów, w którym/ych będziemy pracować. Praktycznie w każdym języku programowania możemy napisać program/skrypt w notatniku. Jednakże jest to dosyć słaba opcja, ponieważ są specjalnie przystosowane aplikacje dla danego języka, które mają wiele udogodnień - zaczynając od kolorowania składni, kończąc na "podpowiedziach"  do komend, czy uzupełnianiu kodu, automatyczna poprawa błędów.

 

Osobiście polecam do tego AmxModX Studio. Już po samym uruchomieniu widać, że jest on przystosowany do pisania pluginów. Po ściągnięciu od razu możemy uruchomić program (bez instalacji).

Potrzebujemy również kompilatora. W językach takich jak C++, C czy Pawn potrzebujemy programu, który właśnie zamieni kod źródłowy na program/plugin wykonywalny. W tym celu ściągniemy potrzebne oprogramowanie:

dla systemu windows,

dla systemu linux.

 

Po ściągnięciu obu programów, rozpakowujemy je i czytamy dalej.

 

Konfiguracja i pierwsze uruchomienie

Uruchomiamy program AMXX_Studio.exe. Najważniejsze co musimy zrobić to wybrać ścieżkę do naszego kompilatora.

Klikamy F12, bądź wybieramy z górnego baru Tools -> Settings. Następnie wybieramy zakładkę compiler. Tam wybieramy ścieżkę dla naszego kompilatora do języka Pawn.

 

9IbGyG5.png

 

Zatwierdzamy te ustawienia i to tyle! Nasz program jest już skonfigurowany do działania. Teraz gdy już mamy skonfigurowane nasze IDE, pokażę na czym polega kompilacja lokalna.

 

Po rozpakowaniu naszej paczki (w moim przypadku dla windowsa) ukaże nam się następująca struktura. 

 

tiwNf6J.png

 

Najważniejsze są dla nas foldery include oraz compiled.

Do folderu include wrzucamy wszystkie pliki, które można "zaincludować". Są to biblioteki i funkcje, które są potrzebne do działania pluginu. Bez tych plików (z rozszerzeniem .inc) nie skompilujemy naszego pluginu. Jedną z takich bibliotek, które nie są załączone standardowo jest colorchat.inc - który jest bardzo często używany wśród programistów.

 

W folderze compiled znajdują się już nasze skompilowane programy. To tam pojawią się wszystkie pluginy z rozszerzeniem .amxx - oczywiście tylko jeśli uda się skompilować plugin.

W przypadku niepowodzenia po prostu nic się tam nie pojawi.

 

Jak kompilować? Otóż jest to bardzo proste. Nasz plik .sma wrzucamy do głównego folderu tam gdzie jest plik compile.exe. Po wrzuceniu naszego pliku źródłowego włączamy po prostu ten program i obserwujemy wynik kompilacji. Jeśli wszystko się uda to nasz plugin będzie już gotowy do użycia w folderze compiled.

 

Pluginy nie mogą ulec dekompilacji (no w zasadzie mogą, ale nie jest to dokładne i nie zawsze może się udać. Szybszym sposobem jest przepisanie tego pluginu na nowo.) dlatego ważne jest, aby nie bieżąco zapisywać pliki .sma i nie usuwać ich! Kompilacja polega na zmianie rozszerzenia .sma na .amxx. Dlatego ważne jest, aby na serwer wrzucać również pliki źródłowe (których serwer i tak nie interpretuje), aby w razie poprawy danego pluginu można było zobaczyć jego aktualne działania bez konieczności pisania jego od nowa.

 

Z podstawowych rzeczy to byłoby tyle. Mam nadzieje, że komuś się przyda. Jeśli zobaczę, że jest jakiekolwiek zainteresowanie to na dniach napiszę następną część, w której opiszę jak zbudowany jest plugin, powiem o typach zmiennych oraz o operatorach arytmetycznych, logicznych, porównania etc.

 

  • Lubię to! 5

dx7pGVB.jpg

Odnośnik do komentarza
Udostępnij na innych stronach

  • Wspierający

E no świetne, kiedy nauczysz mnie pisać plugin jakis fajny!?

Odnośnik do komentarza
Udostępnij na innych stronach

Gość
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ę...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.