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
 

Budyn - zdjęcie

Budyn

Rejestracja: 16.11.2008
Aktualnie: Nieaktywny
Poza forum Ostatnio: 04.03.2018 16:39
-----

#355242 ScreenShot'y Zapis SQL

Napisane przez byCZUS w 29.01.2012 16:13

ScreenShot SQL!
by byCZUS & Gh0st

opis

Witam, jakiś czas temu napisałem sobie plugin do ss'ów, w którym można zmienić typ robionego screena (BMP / TGA).
Po zrobieniu danej ilości screenów plugin automatycznie banuje(zależne od cvarów). Po włączeniu zapisu SQL i wpisaniu poprawnych danych tabela zostaje stworzona automatycznie.

Można sobie wyłączyć zapis SQL dodając // przed
#define SQL_ZAPIS


instalacja

Standardowa, jeżeli chodzi o amxx.
Skrypt php wgrywamy na stronę i edytujemy plik data.php, ustawiamy dane do SQL !

komendy admina

amx_ss <authid, nick or #userid> [screens] [type 0/1]
amx_screen <authid, nick or #userid> [screens] [type 0/1]


Aby screeny zostały zrobione wystarczy wpisać amx_ss nick, jeżeli nie podamy ilości zostanie zrobione 5 ss'ów BMP.

cvary

ss_hostname "" - hostname bazy danych, jeżeli wybrany zapis SQL
ss_username "" - użytkownik bazy danych, jeżeli wybrany zapis SQL
ss_password "" - hasło bazy danych, jeżeli wybrany zapis SQL
ss_database "" - nazwa bazy danych, jeżeli wybrany zapis SQL
ss_mscreens "10" - maksymalna ilość screenów
ss_interval "1.0" - co ile robione są screeny
ss_sitemap "http://amxx.pl" - strona wyświetlana w konsoli
ss_banplayer "1" - 0/1 Czy ma banować gracza
ss_bantime "0" - jeżeli banować to czas (0 perm)
ss_banreason "Wrzuc screeny na forum" - powód bana

inne informacje

NOWY TYP BANOWANIA (BMP + TGA jednocześnie)

Warto też dodać sobie do addons/amxmodx/configs/clcmds.ini takie coś

"3 Screeny BMP" "amx_ss #%userid% 3 0" "bd" "u"
"3 Screeny TGA" "amx_ss #%userid% 3 1" "bd" "u"
"5 Screenow BMP" "amx_ss #%userid% 5 0" "bd" "u"
"5 Screenow TGA" "amx_ss #%userid% 5 1" "bd" "u"


Pozwoli nam to łatwiej robić screeny danemu graczowi :] (Komendy gracza) w amxmodmenu

Teraz czas na demo jak to wszystko wygląda z poziomu przeglądarki Screeny

Dodam, że początkowo skrypt długo może się ładować bo sprawdza mapy na gametrackerze jeżeli je znajdzie to zostaną pobrane i wczytywane już będą z naszej strony (folder maps). Dodatkowo, obrazki są skalowane do odpowiedniej wielkości by mniej ważyły.

Szczególne podziękowania dla Gh0st za napisanie skryptu PHP !

Masz propozycje ? Napisz !!

No to aktualizacja, ver 1.2

Wypieramy Amxbans ScreenShot !

1.0 - Pierwsze wydanie.
1.1 - Dodano: menu w amxmodmenu, ułatwia pracę !

screenshot
Dołączona grafika
Dołączona grafika
Dołączona grafika

Zachęcam do downloadu :D I testowania, jeżeli występują błędy proszę pisać :]

To co wyświetla się w Ilość screenów można zmieniać w
new const menu_ss[][] = {
{ 3, BMP }, { 5, BMP }, // Ilosc, Typ
{ 3, TGA }, { 5, TGA }
};


download
W paczce są stare pliki sma !

Załączone pliki


  • +
  • -
  • 37


#113645 Generowanie statusu serwera

Napisane przez mgr inż. Pavulon w 21.02.2010 16:05

Żeby otrzymać bannerek z danymi serwera podobny do tego: Dołączona grafika możemy skorzystać z biblioteki GD2 dostępnej w PHP oraz klasy PQ której użyjemy do pobrania danych o serwerze. Aby otrzymać przyjazne linki wykorzystamy również mod_rewrite aby zamiast rozszerzenia .php mieć np .png

GD2 musi być zainstalowane na serwerze, PQ jest w załączniku

Pobieramy i wypakowujemy załącznik: Załączony plik  server.zip   227,7 KB  2379 Ilość pobrań

np do głównego katalogu.
server
├── base.png
├── cache
├── cs.png
├── cs.ttf
├── digit.ttf
├── impact.ttf
├── index.php
├── key.png
├── lucon.ttf
├── ocr.ttf
├── SNS
│   ├── class_PQ.php
│   └── PQ
│       ├── gamespy.php
│       ├── halflife.php
│       ├── oldhalflife.php
│       ├── PQ_PARENT.php
│       └── quake3.php
└── steam.png

Nadajemy katalogowi cache prawa do zapisu i odczytu (chmod 777).

Standardowe ustawienia umożliwiają generowanie statusu dla IP podanego w parametrze $_GET['ip'] lub $_GET['ip'] i $_GET['port'].
Więc jeżeli mamy domenę amxx.pl i wypakowaliśmy pliki do głównego katalogu to dostęp do skryptu będziemy mieli poprzez kilka linków (mod_rewrite):

amxx.pl/server/index.php
amxx.pl/server/index.png
amxx.pl/server/index.jpg
amxx.pl/server/status.png
amxx.pl/server/status.jpg

i do nich doklejamy parametr ip (lub ip i port) tj.
?ip=IP_SERWERA:PORT
lub
?ip=IP_SERWERA&port=PORT_SERWERA
Czyli otrzymujemy przykładowo
amxx.pl/server/index.png?ip=127.0.0.1:27015

Jeżeli chcemy tworzyć status tylko jednego serwera to zamieniamy:
	if (strpos($_GET['ip'], ':'))
{
$ipp = explode(":", $_GET['ip']);
if (count($ipp)==2)
{
$conf_ip = $ipp[0];
$conf_port = $ipp[1];
}
} else {
$conf_ip = ($_GET['ip'])?$_GET['ip']:'localhost';
$conf_port = ($_GET['port'])?$_GET['port']:'27015';
}

na:
	$conf_ip = 'IP_SERWERA';
$conf_port = 'PORT_SERWERA';

I nie musimy już podawać parametru ?ip= w linkach.

Stan serwera jest cache'owany (zapisywany) na 30 sekund (standardowo - $cachetime) aby zapobiec częstemu łączeniu się z serwerem.
Jako baza służy nam grafika o rozmiarach 350x20px w formacie .png (standardowo - $ext) i nazwie base.png (standardowo - $base) znajdująca się w tym samym katalogu co index.php
Do wyboru jest kilka czcionek (tablica $fonts) w formacie TTF (załączone).

Dodatkowo wszystko mniej więcej opisane w pliku index.php.


Oczywiście wymagane są otwarte porty i odblokowana funkcja fsock_open do pobrania statusu serwera.


p.s.
nie jest to jakoś super zrobione, ale każdy może sobie dopracować i zrobić wg własnego uznania ;)
  • +
  • -
  • 32