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
 

Pekawu - zdjęcie

Pekawu

Rejestracja: 27.09.2011
Aktualnie: Nieaktywny
Poza forum Ostatnio: 20.05.2012 02:23
-----

#366238 [ROZWIĄZANE] Leczenie z AWP problem

Napisane przez Fili:P w 17.02.2012 20:04

W bf2 nie jest zaincludowany moduł fun, więc używaj fakemety lub fakemety util, oczywiście jeżeli chcesz to możesz zaincludować, daje niżej kod:
Spoiler

  • +
  • -
  • 1


#318451 Przeróbka bf2 1.1.0 - grawitacja

Napisane przez Fesher w 07.11.2011 22:11

Mam problem, ponieważ chciałbym zmienić zastosowania 2 odznak lecz mi to nie wychodzi. Chodzi mi o to żeby niewidke z nożem zamienić na mniejszą grawitacje i zamiast darmowego scouta na ładowanie hp gdy ma się AWP. Jeżeli to nie problem czy mógłby mi ktoś od razu przerobić w tych plikach.
Z góry dzięki ;D

Juz sam poradzilem sobie z problemem po prostu zle skompliwalem ;D

Do zamkniecia
  • +
  • -
  • 1


#318953 Nowy poziom odznak

Napisane przez Fili:P w 07.11.2011 13:25

Cześć w tym poradniku pokaże jak dodać nowy poziom odznak do BF2 moda, czyli kiedy mamy przykładowo odznaki Profesjonalista w ..., Expert w ..., to w tym poradniku dodamy kolejny taki poziom. Też miałem kiedyś z tym problem i sam analizując kod go rozwiązałem. Było nawet nieźle kiedy się to wspomina, ale wolę wam pokazać co i jak. W tym poradniku edytujemy: [BattleField2] Battlefield 2 : Rank Mod PL v1.1.0 - AMXX.pl: Support AMX Mod X . No więc zaczynamy:

Otwieramy const.inl:

Szukamy:

#define LEVEL_NONE 0
#define LEVEL_BASIC 1
#define LEVEL_VETERAN 2
#define LEVEL_EXPERT 3
#define LEVEL_PROFESIONAL 4


I zamieniamy na:


#define LEVEL_NONE 0
#define LEVEL_BASIC 1
#define LEVEL_VETERAN 2
#define LEVEL_EXPERT 3
#define LEVEL_PROFESIONAL 4
#define LEVEL_NOWY 5


LEVEL_NOWY to identyfikator nowego poziomu odznak.
Szukamy:


new const gBadgeName[MAX_BADGES][5][] =
{
{ "","Podstawowa walka Nozem","Weteran w walce Nozem","Expert w walce Nozem","Profesjonalista w walce Nozem"},
{ "","Podstawowa walka Pistoletem","Weteran w walce z Pistoletem","Expert w walce z Pistoletem","Profesjonalista w walce z Pistoletem"},
{ "","Podstawowa walka Bronia Szturmowa","Weteran w walce z Bronia Szturmowa","Expert w walce z Bronia Szturmowa","Profesjonalista w walce z Bronia Szturmowa"},
{ "","Podstawowa walka Bronia Snajperska","Weteran w walce z Bronia Snajperska","Expert w walce z Bronia Snajperska","Profesjonalista w walce z Bronia Snajperska"},
{ "","Poczatkujacy w walce Bronia Wsparcia","Weteran w walce Bronia Wsparcia","Expert w walce Bronia Wsparcia","Profesjonalista w walce Bronia Wsparcia"},
{ "","Podstawowe obeznanie w Materialach Wybuchowych","Weteran w obeznaniu w Materialach Wybuchowych","Expert w obeznaniu w Materialach Wybuchowych","Profesjonalista w obeznaniu w Materialach Wybuchowych"},
{ "","Podstawowa walka z Shotgunem","Weteran w walce z Shotgunem","Expert w walce z Shotgunem","Profesjonalista w walce z Shotgunem"},
{ "","Podstawowa walka z SMG","Weteran w walce z SMG","Expert w walce z SMG","Profesjonalista w walce z SMG"}
};


I zamieniamy na:

new const gBadgeName[MAX_BADGES][6][] =
{
{ "","Podstawowa walka Nozem","Weteran w walce Nozem","Expert w walce Nozem","Profesjonalista w walce Nozem","Mistrz w walce Nozem"},
{ "","Podstawowa walka Pistoletem","Weteran w walce z Pistoletem","Expert w walce z Pistoletem","Profesjonalista w walce z Pistoletem","Mistrz w walce Pistoletem"},
{ "","Podstawowa walka Bronia Szturmowa","Weteran w walce z Bronia Szturmowa","Expert w walce z Bronia Szturmowa","Profesjonalista w walce z Bronia Szturmowa","Mistrz w walce z Bronia Szturmowa"},
{ "","Podstawowa walka Bronia Snajperska","Weteran w walce z Bronia Snajperska","Expert w walce z Bronia Snajperska","Profesjonalista w walce z Bronia Snajperska","Mistrz w walce z Bronia Snajperska"},
{ "","Poczatkujacy w walce Bronia Wsparcia","Weteran w walce Bronia Wsparcia","Expert w walce Bronia Wsparcia","Profesjonalista w walce Bronia Wsparcia","Mistrz w walce Bronie Wsparcie"},
{ "","Podstawowe obeznanie w Materialach Wybuchowych","Weteran w obeznaniu w Materialach Wybuchowych","Expert w obeznaniu w Materialach Wybuchowych","Profesjonalista w obeznaniu w Materialach Wybuchowych","Mistrz w obeznaniu w Materialach Wybuchowych"},
{ "","Podstawowa walka z Shotgunem","Weteran w walce z Shotgunem","Expert w walce z Shotgunem","Profesjonalista w walce z Shotgunem","Mistrz w walce z Shotgunem"},
{ "","Podstawowa walka z SMG","Weteran w walce z SMG","Expert w walce z SMG","Profesjonalista w walce z SMG","Mistrz w walce z SMG"}
};


W moim przypadku dodaję poziom Mistrz.

Szukamy:
new const gInvisAlphaValue[5] =
{
190, //Basic Shotgun Combat
150, //Veteran Shotgun Combat
100, //Expert Shotgun Combat
80,
50
};

I zamieniamy na:
new const gInvisAlphaValue[6] =
{
220,
190,
150,
100,
80,
50
};


Otwieramy check.inl:

Szukamy:

case LEVEL_EXPERT:
{
if ((wroundstats[0]>4) && (wroundstats[2]>1) && (kills>199))
{
g_PlayerBadges[id][BADGE_KNIFE]=LEVEL_PROFESIONAL; //Profesjonalista Knife Badge
#if defined KOLOROWY_SAY
ColorChat(id,TEAM_COLOR,"[BF2]^x03 Zdobyles odznake:^x04 %s",gBadgeName[BADGE_KNIFE][LEVEL_PROFESIONAL]);
#else
client_print(id,print_chat,"[BF2] Zdobyles odznake: %s",gBadgeName[BADGE_KNIFE][LEVEL_PROFESIONAL]);
#endif
badgegained=true;
}
}

I dopisujemy pod:

case LEVEL_PROFESIONAL:
{
if ((wroundstats[0]>4) && (wroundstats[2]>1) && (kills>199))//warunek zdobycia odznaki
{
g_PlayerBadges[id][BADGE_KNIFE]=LEVEL_NOWY;
#if defined KOLOROWY_SAY
ColorChat(id,TEAM_COLOR,"[BF2]^x03 Zdobyles odznake:^x04 %s",gBadgeName[BADGE_KNIFE][LEVEL_NOWY]);
#else
client_print(id,print_chat,"[BF2] Zdobyles odznake: %s",gBadgeName[BADGE_KNIFE][LEVEL_NOWY]);
#endif
badgegained=true;
}
}


Nie zmieniłem warunku zdobycia odznaki, więc wymagania na LEVEL_NOWY są takie same jak na LEVEL_PROFESIONAL. Taką operację wykonujemy na każdej odznace, lecz w ten sposób.
1. Kopiujemy cały case LEVEL_EXPERT z konkretnej odznaki.
2. W skopiowanym case zamieniamy nazwe case LEVEL_EXPERT na case LEVEL_PROFESIONAL .
3. Wewnątrz skopiowanego case zamieniamy wszystkie LEVEL_PROFESIONAL na LEVEL_NOWY (czyli na naszą nazwę w const.inl).

Dobrze jeżeli już zedytowaliśmy każdy poziom w odznace to przejdźmy dalej.
Otwieramy menu.inl:

Szukamy:

public badgelevelmenu(id)
{
if (!get_pcvar_num(gPcvarBF2Active))
return PLUGIN_CONTINUE;

new menu = menu_create("\rBF2: Wybierz Poziom", "menu_handler");

menu_additem(menu, "\wZaden", "0", ADMIN_LEVEL);
menu_additem(menu, "\wPodstawowy", "1", ADMIN_LEVEL);
menu_additem(menu, "\wWeteran", "2", ADMIN_LEVEL);
menu_additem(menu, "\wExpert", "3", ADMIN_LEVEL);
menu_additem(menu, "\yProfesjonalista", "4", ADMIN_LEVEL);
menu_additem(menu, "\wWstecz", "5", ADMIN_LEVEL);

menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);

menuselection[id]=MENU_LEVEL;

menu_display(id, menu, 0);

return PLUGIN_CONTINUE;
}


I zamieniamy na:

public badgelevelmenu(id)
{
if (!get_pcvar_num(gPcvarBF2Active))
return PLUGIN_CONTINUE;

new menu = menu_create("\rBF2: Wybierz Poziom", "menu_handler");

menu_additem(menu, "\wZaden", "0", ADMIN_LEVEL);
menu_additem(menu, "\wPodstawowy", "1", ADMIN_LEVEL);
menu_additem(menu, "\wWeteran", "2", ADMIN_LEVEL);
menu_additem(menu, "\wExpert", "3", ADMIN_LEVEL);
menu_additem(menu, "\wProfesjonalista", "4", ADMIN_LEVEL);
menu_additem(menu, "\yMistrz", "5", ADMIN_LEVEL);
menu_additem(menu, "\wWstecz", "6", ADMIN_LEVEL);

menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);

menuselection[id]=MENU_LEVEL;

menu_display(id, menu, 0);

return PLUGIN_CONTINUE;
}


Otwieramy save.inl:
Szukamy:

for (new i = 0; i < MAX_BADGES; i++)
{
g_PlayerBadges[id][i] = clamp(g_PlayerBadges[id][i], 0, 4);
}

I zamieniamy na:

for (new i = 0; i < MAX_BADGES; i++)
{
g_PlayerBadges[id][i] = clamp(g_PlayerBadges[id][i], 0, 5);
}


Otwieramy badgepowers.inl:
Szukamy:

if ( sniperlevel )
{
if ( random_num(1, (5-sniperlevel)) == 1 )
{
new weaponName[32];
new weaponID = get_user_weapon(id);

if ( !get_pcvar_num(gPcvarFreeAwp) )
{
fm_give_item(id, "weapon_scout");
}
else
{
fm_give_item(id, "weapon_awp");
}

if ( weaponID )
{
get_weaponname(weaponID, weaponName, charsmax(weaponName));
engclient_cmd(id, weaponName);
}

givenitem = true;
}
}

I zamieniamy na:
if ( sniperlevel )
{
if ( random_num(1, (6-sniperlevel)) == 1 )
{
new weaponName[32];
new weaponID = get_user_weapon(id);

if ( !get_pcvar_num(gPcvarFreeAwp) )
{
fm_give_item(id, "weapon_scout");
}
else
{
fm_give_item(id, "weapon_awp");
}

if ( weaponID )
{
get_weaponname(weaponID, weaponName, charsmax(weaponName));
engclient_cmd(id, weaponName);
}

givenitem = true;
}
}


Szukamy:

if ( explosionlevel )
{
if ( random_num(1, (5-explosionlevel)) == 1 )
{
fm_give_item(id, "weapon_hegrenade");
givenitem = true;
}
}

I zamieniamy na:
if ( explosionlevel )
{
if ( random_num(1, (6-explosionlevel)) == 1 )
{
fm_give_item(id, "weapon_hegrenade");
givenitem = true;
}
}


Niestety nie testowałem tego na bazie danych, lecz jedynie na nvault. Mam nadzieję że nie będzie problemów.

Pozdrawiam i mam nadzieję że poradnik wam się spodobał.
  • +
  • -
  • 6


#238018 Grawitacja na nożu zamiast niewidzialnośći

Napisane przez Misiaczek ;c w 17.04.2011 11:48

Tutorial? Pisany na podstawie BF 1.0.5/1.0.6, lecz prawie tak samo zmienia sie to w 1.5.3/1.5.3a/1.5.5

1.0.5/1.0.6

Otwórz Plik: cons.inl

Zamień to:
new const gInvisAlphaValue[4] =
{
150, //Basic Shotgun Combat
100, //Veteran Shotgun Combat
70, //Expert Shotgun Combat
40
};

Na To:
/*new const gInvisAlphaValue[4] =
{
150, //Basic Shotgun Combat
100, //Veteran Shotgun Combat
70, //Expert Shotgun Combat
40
};*/


Otwórz Plik: badgepowers.inl

Zamień to:

public set_invis(id)
{
if ( !get_pcvar_num(gPcvarBadgesActive) || !get_pcvar_num(gPcvarBadgePowers) ) return;
if ( !is_user_alive(id) ) return;

new shotgunlevel = g_PlayerBadges[id][BADGE_SHOTGUN];

if ( shotgunlevel && get_user_weapon(id) == CSW_KNIFE )
{
fm_set_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransTexture, gInvisAlphaValue[shotgunlevel-1]);
g_invis[id] = true;
}
else
{
fm_set_rendering(id);
g_invis[id] = false;
}
}
Na To:

public set_invis(id)
{
if ( !get_pcvar_num(gPcvarBadgesActive) || !get_pcvar_num(gPcvarBadgePowers) ) return;
if ( !is_user_alive(id) ) return;

new shotgunlevel = g_PlayerBadges[id][BADGE_SHOTGUN];

if ( shotgunlevel && get_user_weapon(id) == CSW_KNIFE )
{
new Float:grav
switch(shotgunlevel)
{
case 1: grav = 0.875 //700
case 2: grav = 0.75 //600
case 3: grav = 0.625 //500
case 4: grav = 0.5 //400
}
fm_set_user_gravity(id, grav)
g_invis[id] = true;
}
else
{
fm_set_user_gravity(id, 1.0)
g_invis[id] = false;
}
}



1.5.3/1.5.3a/1.5.5

Otwórz Plik: cons.inl

Zamień to:
new const gInvisAlphaValue[4] =
{
150, //Basic Shotgun Combat
100, //Veteran Shotgun Combat
70 //Expert Shotgun Combat
};

Na To:
/*new const gInvisAlphaValue[4] =
{
150, //Basic Shotgun Combat
100, //Veteran Shotgun Combat
70 //Expert Shotgun Combat
};*/


Otwórz Plik: badgepowers.inl

Zamień to:

public set_invis(id)
{
if ( !get_pcvar_num(gPcvarBadgesActive) || !get_pcvar_num(gPcvarBadgePowers) ) return;
if ( !is_user_alive(id) ) return;

new shotgunlevel = g_PlayerBadges[id][BADGE_SHOTGUN];

if ( shotgunlevel && get_user_weapon(id) == CSW_KNIFE )
{
fm_set_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransTexture, gInvisAlphaValue[shotgunlevel-1]);
g_invis[id] = true;
}
else
{
fm_set_rendering(id);
g_invis[id] = false;
}
}
Na To:

public set_invis(id)
{
if ( !get_pcvar_num(gPcvarBadgesActive) || !get_pcvar_num(gPcvarBadgePowers) ) return;
if ( !is_user_alive(id) ) return;

new shotgunlevel = g_PlayerBadges[id][BADGE_SHOTGUN];

if ( shotgunlevel && get_user_weapon(id) == CSW_KNIFE )
{
new Float:grav
switch(shotgunlevel)
{
case 1: grav = 0.875 //700
case 2: grav = 0.75 //600
case 3: grav = 0.625 //500
}
fm_set_user_gravity(id, grav)
g_invis[id] = true;
}
else
{
fm_set_user_gravity(id, 1.0)
g_invis[id] = false;
}
}


Po ów zmianach Zapisujemy pliki i wykonujemy kompilacje lokalną Dołączona grafika

Jak coś jeszcze związane z BF2 potrzeba pisać na PW to może skrobnę "Tutorial" Dołączona grafika
  • +
  • -
  • 10


#276752 BF2 Web Staty

Napisane przez speedkill w 02.08.2011 17:12

Siemka , dziś udostępnie wam Web Staty do BF2 ;]
oto ss :
widok z wyszukiwania :
Dołączona grafika
Statystyki wszystkich :
Dołączona grafika
Statystyki jednego gracza :
Dołączona grafika
Teraz żeby w naszych statach wyświetlały się prawidłowo obrazki musimy
dopisać nazwę swojej strony gdzie wrzuciliśmy nasze staty
Więc otwieramy index.php (teraz część żeby obrazki działały ;] )
i dopisujemy nasz adres strony w liniach :
12 , 13 , 14 , 24 (Adres strony podajemy bez index.php )
Teraz żeby góra działała prawidłowo edytujemy linie
17 , 18 , 19 i Podajemy co tam chcemy np. link do forum
Teraz część dla ludzi którzy mają więcej odznak niż 24 i mają większy poziom niż Expert
Otwieramy index.php znajdujemy linie :
echo "<td>".$odznaki.'/24</td></tr>';
i za 24 dajemy np. 32 , 48
Teraz żeby dopisać poziom większy niż Expert
Idziemy na dół naszego indexu
i znajdujemy takie coś :
<td width="100"><font size="4" style="text-shadow: 1px 1px 10px #60F; font-weight: bold; color: #FFFFFF;"><b><center>0</td>
<td width="150"><font size="4" style="text-shadow: 1px 1px 10px #F90; font-weight: bold; color: #F90;"><b>Brak Odznaki</td>
<tr>
<td width="100px"><font size="4" style="text-shadow: 1px 1px 10px #60F; font-weight: bold; color: #FFFFFF;"><b><center>1</td>
<td width="150px"><font size="4" style="text-shadow: 1px 1px 10px #F90; font-weight: bold; color: #F90;"><b>Początkujący</td>   
<td>
<td width="100px"><font size="4" style="text-shadow: 1px 1px 10px #60F; font-weight: bold; color: #FFFFFF;"><b><center>2</td>
<td width="150px"><font size="4" style="text-shadow: 1px 1px 10px #F90; font-weight: bold; color: #F90;"><b>Weteran</td>
<td
<td width="100px"><font size="4" style="text-shadow: 1px 1px 10px #60F; font-weight: bold; color: #FFFFFF;"><b><center>3</td>
<td width="150px"><font size="4" style="text-shadow: 1px 1px 10px #F90; font-weight: bold; color: #F90;"><b>Expert</td>
Jeśli chcemy do profesjonalisty to zamieniamy na :
<td width="100"><font size="4" style="text-shadow: 1px 1px 10px #60F; font-weight: bold; color: #FFFFFF;"><b><center>0</td>
<td width="150"><font size="4" style="text-shadow: 1px 1px 10px #F90; font-weight: bold; color: #F90;"><b>Brak Odznaki</td>
<tr>
<td width="100px"><font size="4" style="text-shadow: 1px 1px 10px #60F; font-weight: bold; color: #FFFFFF;"><b><center>1</td>
<td width="150px"><font size="4" style="text-shadow: 1px 1px 10px #F90; font-weight: bold; color: #F90;"><b>Początkujący</td>   
<td>
<td width="100px"><font size="4" style="text-shadow: 1px 1px 10px #60F; font-weight: bold; color: #FFFFFF;"><b><center>2</td>
<td width="150px"><font size="4" style="text-shadow: 1px 1px 10px #F90; font-weight: bold; color: #F90;"><b>Weteran</td>
<td
<td width="100px"><font size="4" style="text-shadow: 1px 1px 10px #60F; font-weight: bold; color: #FFFFFF;"><b><center>3</td>
<td width="150px"><font size="4" style="text-shadow: 1px 1px 10px #F90; font-weight: bold; color: #F90;"><b>Expert</td>
<td width="100px"><font size="4" style="text-shadow: 1px 1px 10px #60F; font-weight: bold; color: #FFFFFF;"><b><center>4</td>
<td width="150px"><font size="4" style="text-shadow: 1px 1px 10px #F90; font-weight: bold; color: #F90;"><b>Profesjonalista</td>
Jeśli mamy wyżej niż profesjonalista to wystarczy skopiować i zmienić nazwę i cyfrę ;]
Teraz żeby nasze Statystyki działały prawidłowo musimy podać dane do bazy mysql w pliku config
tu macie opis jak to zrobić :
/*------------------------------------------------
				Info:
   $dbuser wpisz tam login do logowania do bazy mysql
   $dbpassword hasło do bazy mysql
   $dbname - Nazwa bazy danych
   $dbhost - host serwera mysql
   $dbtable - Tabela gdzie znajdują się odznaki itp ( domyślnie to bf2ranks )
   $dbtable2 - Druga tabela żeby odczytać wszystkie odznaki zabójstwa itp (domyślnie to bf2ranks2 )
   $ile - ile ma się wyświetlić graczy w ranku 

------------------------------------------------------*/
<?
$dbuser 		= "uzytkownik"; 
$dbpassword 	= "haslo";
$dbname 		= "nazwa bazy";
$dbhost 		= "host bazy danych";
$dbtable2	      = "bf2ranks2"; // nazwa tabeli pierwszej
$dbtable 		= "bf2ranks"; // nazwa tabeli drugiej
$ile  		= "150";
?>
Teraz jeśli nie pasują wam kolory tych belek wystarczy zrobić pasek i nazwać go trow.png i wrzucić do folderu img
są to przerobione diablo web stats
To chyba wszystko ;]
Pozdrawiam speedkill
ps. Nie bijcie za kod :)

Załączone pliki


  • +
  • -
  • 9


#346684 BF2 v.2.0.0 bug z odznakami z Shotugna

Napisane przez Kłusownik w 08.01.2012 18:39

Jeśli masz na serwer wgrany plugin który ochrania graczy po odrodzeniu to jest jego wina.
Ja miałem ten mod u siebie i miałem ten sam problem jak był ten plugin.
Po usunięciu tego pluginu problem zniknął.

Jestem zlecającym wykonanie tego moda i miałem go na serwie przez ok 2 miechy więc jeśli by był ten problem ciągle to bym wiedział o tym :)


#355238 Zmiana mocy dla odznak z Snajperki i Shotguna

Napisane przez Drzanas w 29.01.2012 15:50

Co do tego drugiego to proszę http://amxx.pl/topic...iewidzialnosci/
  • +
  • -
  • 1


#57507 Kompilacja lokalna

Napisane przez R3X w 15.04.2009 21:20

Kompilacja lokalna

1. Lokalna?
Nie będę tłumaczył samego zagadnienia kompilacji - chodzi o zrobienie z pliki .sma pliku .amxx, który jest wykorzystywany przez serwer.

Lokalna oznacza, że przeprowadzamy ją na swoim komputerze. Webcompiler sprawdza się znakomicie w przypadku pojedynczego pliku .sma. Większe pluginy są często podzielone na fragmenty tak, aby praca z ich kodem była przyjemniejsza - stąd oprócz .sma dostajemy pliku .inl lub .inc.

.inl - te pliki trafiają do tego samego folderu co .sma
.inc - te natomiast do scripting/include/

Są wyjątki, ale taka zasada obowiązuje w większości przypadków. Tak czy inaczej pliki te są dołączane do .sma w trakcie kompilacji dyrektywami #include, więc zmiana w .inl czy .inc po kompilacji będzie odczuwalna w .amxx.

2. Proces

Musimy zaopatrzyć się w AMXX-Studio: Podstawowe pliki - Nieoficjalny polski support AMX Mod X , w dniu pisania tutka byłby to plik:

AMX Mod X Studio
* v1.4.3



Uruchom studio.

Należy wskazać położenie kompilatora amxxpc.exe (znajdziesz go w paczce Base amxmodx/scripting/) i określić miejsce tworzenia pliku .amxx. Całkiem możliwe, że już przy pierwszym uruchomieniu ścieżka do kompilatora będzie poprawna, wtedy ustaw tylko folder wyjściowy.

Dołączona grafika

dalej Compiler -> Compiler Settings

Dołączona grafika

Teraz otwórz plik .sma (File->Open) i naciśnij F9. Jeżeli nie otrzymasz żadnych błędów tylko coś jak to:

Dołączona grafika


w podanym wcześniej folderze powinieneś odnaleźć skompilowany kod w pliku .amxx.

3. Posłowie
Każdy programista pluginów sobie poradzi, ten tekst skierowany jest głównie do ludzi zajmujących się Pawnem okazjonalnie.
  • +
  • -
  • 17


#43112 BF2 Rank Mod PL v1.5.5

Napisane przez Abes Mapper w 14.02.2009 06:09

BF2 Rank Mod PL v1.5.5
by pRED*
Lang PL by MisieQ

Dołączona grafika
Jest to system rang znany z popularnej gry Battlefield 2
Im więcej wrogów zabijesz, tym większą masz rangę.
Można otrzymać Specjalne Odznaki które są w 3 poziomach: Podstawowy, Weteran, Expert.
Dla każdego poziomu gdy się korzysta z danej broni, można otrzymać różne bonusy.
Są także medale ;)
Zapis rankingu jest na nick/steamid/ip ustawiane za pomocą cvaru "csstats_rank" w amxx.cfg

Dołączona grafika
Skopiuj i wklej do amxx.cfg

//////////////////////// Battlefield 2: Rank Mod ////////////////////////

bf2_active 1 //(1|0) - Wlacz/wyłącz Plugin (Standardowo 1 - Wlaczony)
bf2_badges 1 //(1|0) - Wlacz/wyłącz system odznak (Standardowo 1 - Wlaczone)
bf2_badgepowers 0 //(1|0) - Wlacz/wyłącz moce dla odznak (Standardowo 0 - Wylaczone)
bf2_awp 0 //(1|0) - AWP/Scout. Co ma dostac gracz jesli posiada odznake za bron snajperska (Standradowo 0 - Scout)
bf2_ffa 0 //(1|0) - Wlacz/wyłącz atakowanie druzyny dla zdobycia fragow i uzycia odznak (Standardowo 0 - Wylaczone)
bf2_xpmultiplier 0.1 //(dziesietna) - Wielkosc jaka ma byc do nastepnej rangi. (z 0.1 to jest: 15 trzeba zabic aby miec range 1, 20 000 zabic aby byc w top randze) (Standradowo 0.1)
bf2_xpminplayers 2 //(int) - Minimalna ilosc graczy, wymagana aby zdobywac pkt za wybuch/rozbrojenie bomby oraz za kradziez flag (jesli gramy w tryb CTF) (Standradowo 2)
bf2_reset_days 21 //(int) - Liczba dni gdy gracz nie gra po ktorych kasuje sie jego :xP: (Uwaga: obecnie dziala tylko z zapisem nVault) (Standradowo 21)
bf2_icon_time 1.5 //(dziesietna) - Czas w jakim maja sie wyswietlac ikony nad graczami (info o randze) jak na nich nacelujesz (Standradowo 1.5)
bf2_help_url "" //(znaki) - strona na ktorej umieszczone sa pliki pomocy (opcjonalnie) nie dodawaj na koncu /
bf2_statustext 1 //(int) - Enable/Disable the points, # of bagdges, and rank info that replaces player name info in hud (Standradowo 1 - Wlaczone)
bf2_hud_options "abcde" //(flagi) - Ustawienia hud gracza, nie dziala jesli Opcja PlayerName jest wlaczona (Standradowo "abcde")
//flag a - Wyswietl Zdrowie/Pancerz/Bron dla druzyny
//flag b - Wyswietl Range dla druzyny
//flag c - Wyswietl Range dla wrogow
//flag d - Nie wyswietlaj informacji jesli wrog jest niewidzialny (dana odznaka umozliwia niewidzialnosc)
//flag e - Wyswietl graficzna Range nad glowami graczy

//Integracja z CS FLAGS
bf2_flag_kills 2 //(int) - Ile punktow za przejecie flagi
bf2_flag_round_kills 0 //(int) - Ile punktow za wygrana runde
bf2_flag_match_kills 0 //(int) - Ile punktow za wygrany mecz

///////////////////////////////////////////////////////////////////////////


Dołączona grafika

say:
/bf2menu - pokazuje menu główne
bf2menu - j/w
/bf2 - j/w
bf2 - j/w
/menu - j/w
menu - j/w
/ranks - pokazuje dostępne rangi do zdobycia
/odznaki1 - pokazuje liste odznak i wymagan cz.1
/odznaki2 - pokazuje liste odznak i wymagan cz.2
/odznaki3 - pokazuje liste odznak i wymagan cz.3
/gracze - pokazuje jacy gracze grają na serwerze i jaką mają range
/hud - odświeża hud
/pomoc - pokazuje okienko z pomocą
/bf2helpmenu - pokazuje menu z pomocą
/bf2adminmenu - pokazuje menu admina
/bf2stats - pokazuje twoje statystyki broni

konsola:
bf2_resetstats - resetuje twoje staty


Dołączona grafika

bf2_addbadge <gracz> <odznaka> <level> - możliwość dania graczowi odznake. Odznaki w granicach 0-5 a level w granicach 0-3
bf2_addkills <gracz> <zabicia> - możliwość dodania fragów dla gracza.
bf2_resetserverstats - kasowanie całego rankingu na serwie (dla tego pluginu)

Dołączona grafika

1.Zapis rankingu i wszelkiego rodzaju :xP: zależy od cvaru w amxx.cfg

// Rank mode
// 0 - na nick
// 1 - na SteamID
// 2 - na IP
//
csstats_rank 0

W takim przypadku będzie zapisywało na nick.

2. Możemy edytować poziomy rang. Są one w const.inl

new const RANKXP[MAX_RANKS]=
{
0,
150,
500,
800,
2500,
5000,
8000,
20000,
50000,
60000,
75000,
90000,
115000,
125000,
150000,
180000,
200000
}


Z tego co widzę to po prostu jeżeli chcemy inny rank np.: zamiast 15 dać 34 i zamiast 50 dać 56 to trzeba dodać na końcu zero - 0
Czyli będzie to mniej więcej tak:

new const RANKXP[MAX_RANKS]=
{
0,
340,
560,
[...]


3. Pliki pomocy są na hostingu AMXX.pl więc będą na AMEN :D
Oczywiście możemy wrzucić wszystko na swój hosting i trzeba jedynie zmienić w cvarze.
Cvar można także zostawić pusty i wszystko załaduje się z addons/amxmodx/configs/bf2 lecz w mniej rozbudowanym kodzie.

4. Możemy także edytować flage admina. Znajduje się to w bf2rank.sma:

#define ADMIN_LEVEL ADMIN_BAN


Nie zapomnijcie o ponownym skompilowaniu pluginu!


Dołączona grafika
W bf2webdocs.rar znajduje się folder bf2webdocs, należy go wypakować na hosting jeżeli chcemy mieć na swoim czyli tak aby było np.: www.jakas-strona.pl/bf2webdocs
Jeżeli strona http://misieq.silema...t.pl/bf2webdocs działa to nie wgrywaj nigdzie tego bf2webdocs
W BF2 Rank Mod 1.5.5 PL znajduje się folder cstrike, jego chyba wiadomo gdzie wypakować. (przykład: C:/Program Files/Valve)
Na koniec trzeba tylko otworzyć plugins.ini i dopisać: bf2rank.amxx

Dołączona grafika

CStrike
CSX
FakeMeta
Fun
Hamsandwich
nVault or MySQL (zależy jaką forme zapisu wybierzesz)



Jeżeli ktoś zauważy jakieś błędy językowe bądź inne to proszę pisać :)

Załączone pliki


  • +
  • -
  • 57