Witam, chciałbym wam przedstawić swoją małą pracę, którą robiłem na zamówienie, lecz w ostatniej chwili klient się rozmyślił, dlatego daję wam go do użytku publicznego. Plugin jest bardzo miły w obsłudze, przyjazne menu, brak !ColorChat'a!, dużo umiejętności, po prostu - cudo na HnS'y


Expierience Mod to tak zwany ExpMod, bardzo przydatny na serwery typu HideNSeek and Blocks (EasyBlocks, Medium, Hard).
Plugin posiada 21 umiejętności, 9 osiągnięć oraz sklep. Umiejętności możemy kupic od danego poziomu oraz kosztuje to nas 1 punkt, a punkty dostajemy za zdobyty poziom. W sklepie dodatki kupujemy za monety, które dostajemy za zabójstwo/przeżycie rundy/wygranie rundy. Za osiągnięcie danego osiągnięcia dostajemy nagrodę w postaci monet. AutoBindy to głowne menu pod V oraz użycie skilli pod H, umiejętności można samemu zbindować wchodząc w menu danej umiejętności (przycisk: Zbinduj np. niewidzialność i wpisujesz klawisz).
Spis umiejętności (czas, ilość lub moc zależy od punktów dodanych w daną umiejętność):
Zycie na start - dostajemy na start dodatkowe zycie;
Armor na start - dostajemy na start dodatkowy armor;
Odrodzenie - po śmierci mamy szanse na odrodzenie się;
Super knajf - zadajemy większe obrażenia nożem;
Soldzer - Dostajemy mniejsze obrażenia zadawane przez headsplash;
Niewidzialnosc - Możemy użyć niewidzialności na kilka sekund;
Tytan - Po użyciu jesteś odporny na headsplash przez kilka sekund;
Kamienne ciało - Masz szanse na uniknięcie ciosu;
Ninja[Tylko CT] - Cicho chodzisz przez kilka sekund;
Trutka - Otrówasz wroga na kilka sekund;
Dodatkowe doswiadczenie - Dostajesz dodatkowe doświadczenie przy zabiciu/przeżyciu rundy/końcu rundy;
Szansa na pistolet - Masz szansę aby wygrać pistolet na początku rundy;
Szansa na awp - Masz szansę aby wygrać awp na początku rundy;
Szansa na granat wybuchowy - Masz szansę aby wygrać granat wybuchowy;
Szansa na 2 granat zamrażający[Tylko T] - Masz szansę aby wygrać 2 granat zamrażający na początku rundy;
Regeneracja życia - Dostajesz co kilka sekund trochę życia;
Ruletka - Masz szansę aby wygrać coś w ruletce (doświadczenie, +/- życie, śmierć itp.);
Apteczka - Leczy nam w ciągu sekundy daną ilość życia;
Rozprysk[Tylko VIP] - Oślepia graczy w danym zasięgu (skill skopiowany z perka_by_peyote - nie obrazisz się?);
Supcio hejdz - Dotykając kogoś granatem wybuchowym zadajesz dużo obrażeń (na zasadzie rzucasz granat, trafisz nim w kogoś to on otrzymuje obrażenia, padnie to frag dla cb.);
Odepchnięcie - Odpycha graczy w danym zasięgu;
(ustawienia takie jak: od jakiego poziomu, moc, obrażenia, czas, zasięg można zmienić w bardzo prosty sposób, informacje w Inne Informacje)
Opis osiągnięć:
Frager: Zabij daną ilość osób;
Staly gracz: Połącz się z serwerem ileś tam razy;
HeadSplasher: Zabij daną ilość osób skacząc mu na głowę;
Pistolero: Zabij daną ilość osób z pistoletu;
Snajper: Zabij daną ilość osób ze snajperki;
Lewelowiec: Osiągnij dany poziom;
RuletkaMyLife: Wygraj coś w ruletce ileś tam razy;
Padacz: Padnij daną ilość razy;
Mistrz survivalu: Przeżyj rundę daną ilość razy;
(ustawienia takie jak: wymagana ilość, nagroda itp. można ustawić w bardzo prosty sposób, informacje poniżej)
Opis dodatków w sklepie (kupujesz je za monety):
Zycie - Dostajesz daną ilość życia;
Odrodzenie - Odradzasz się;
Granat zamrażający - Dostajesz smoke;
Granat wybuchowy - Dostajesz he;
Doświadczenie - Dostajesz daną ilość expa;
Reset uzyc umiejetnosci - Resetujesz wszystkie użycia w danej rundzie, czyli możesz wszystkiego użyć jeszcze raz;
(ustawienia takie jak: ilość życia/expa oraz koszt można ustawić w bardzo prosty sposób, informacje poniżej)

exp_kill (standard: 5) - ilość doświadczenia, jaką dostajemy za zabójstwo;
exp_vip (standard: 5) - ilość dodatkowego doświadczenia, jaką dostaje VIP (czyli np. za zabójstwo exp_kill + exp_vip);
exp_round (standard: 10) - ilość doświadczenia jaką dostaje się za wygranie/przeżycie rundy;
exp_minplayers (standard: 4) - minimalna ilość graczy, aby dostawiać doświadczenie (żeby nie expili w nocy);

/expmod | /xp - Gł. menu;
/shop | /sklep - Sklep;
/skille | /uzyj - Menu użycia umiejętności;
/top15exp - Top15 graczy obecnych na serwerze (top z gunxpmod)
/vips | /vipy - Wyświetla aktualnych vipów na serwerze (oczywiście jak wgrasz dodatkowy plugin vips)
Resztę skrótów można zobaczyć w sma ;d

exp_giveexp <nick/sid> <ilość doświadczenia> - Dodajesz dla danego gracza wpisaną ilość doświadczenia (wymagana flaga A)

Plugin starałem się pisać optymalnie, chodź nie wiem czy mi to wyszło, zmiany jakie chcecie wprowadzić to możecie je zmienić tutaj (początek pluginu).
Do umiejętności:
new const gszValueItems[gItems] = /* Wartosci czyli moc/obrażenia/czas umiejętności */ { 10, /* Zycie */ 50, /* Armor */ 10, /* Odrodzenie i tak dalej */ 5, 4, 2, 2, 4, 4, 2, 1, 3, 2, 25, 10, 3, 15, 20, 100, 100, 50 }; new const gszMaxLevelItems[gItems] = /* Maksymalny poziom umiejetnosci */ { 5, /* Zycie */ 2, /* Armor i tak dalej */ 6, 5, 5, 5, 5, 5, 5, 6, 5, 5, 4, 2, 5, 5, 4, 4, 4, 2, 4 }; new const gszReqLevelItems[gItems] = /* Wymagany poziom umiejetnosci */ { 0, /* Zycie i tak dalej */ 0, 15, 20, 5, 15, 30, 10, 15, 40, 35, 25, 30, 0, 20, 0, 5, 5, 25, 35, 70 };Do osiągnięć:
new const gszValueAchievements[gAchievements] = /* Wymagana ilosc czegos */ { 3000, /* Frager: 3000 fragow */ 1500, /* Staly gracz: 1500 polaczen z serwerem i tak dalej */ 1000, 500, 250, 50, 1000, 2000, 750 }; new const gszPrizeAchievements[gAchievements] = /* Nagroda w postaci monet, na zyczenie moge przerobic na exp */ { 500, /* Frager: nagroda to 500 monet i tak dalej */ 350, 475, 650, 875, 1000, 350, 750, 650 };W sklepie mało możliwości edytowania ale proszę:
new const gszCostShopItems[gShopItems] = /* Koszt dodatkow (w monetach) */ { 25, /* Zycie */ 350, /* Odrodzenie i tak dalej */ 35, 50, 80, 150 }; new const gszValueShopItems[gShopItems] = /* Wartosci dodatkow, tam gdzie 0 to znaczy ze nie ma tam co edytowac */ { 50, /* Zycie */ 0, /* nic nie zmieniaj bo to i tak nic nie daje */ 0, /* nic nie zmieniaj bo to i tak nic nie daje */ 0, /* nic nie zmieniaj bo to i tak nic nie daje */ 50, /* Doswiadczenie */ 0 /* nic nie zmieniaj bo to i tak nic nie daje */ };
Jest również możliwość zmiany prefixów (tego co jest w nawiasach), jest to też na początku pluginu, wygląda to tak:
new const gszPrefix[] = "[Experience Mod]"; new const gszPrefixRoulete[] = "[Experience Mod | Ruletka]"; new const gszPrefixShop[] = "[Experience Mod | Sklep]"; new const gszPrefixAchievements[] = "[Experience Mod | Osiagniecia]";
Chcesz aby plugin działał tylko u Ciebie? Wejdz w plugin_init i odblokuj ten tekst (usuwając /* */):
if(!is_allowed_server("Wklej to IP twojego serwera")){ set_fail_state("Experience Mod v1.15 by funfel only active on IP: Wklej to IP twojego serwera"); server_cmd("shutdownserver"); }
Plugin posiada wgrany HeadSplash który został zmodyfikowany przez diablixa.
Zapis danych jest w nVault (data/vault/ExpMod).

Aby experience mod nie kłócił się z hidenseekem, mam specjalny config dla hidenseek by exolent, wystarczy wymienić swój fragment na ten, ponieważ zabieramy wszystkie granaty i tym podobne, bo dostajemy je AUTOMATYCZNIE W PLUGINIE NA POCZĄTKU RUNDY, jeśli nie podmienisz cfg to nie będzie działała umiejętność 2 granat zamrażający!
Oto fragment z cfg:
hns_hiders_knife 1
hns_hiders_alivefrags 1
hns_hiders_grenades 0
hns_hiders_grenades_percent 0
hns_hiders_flashbangs 0
hns_hiders_flashbangs_percent 0
hns_hiders_smokegren 0
hns_hiders_smokegren_percent 0
hns_hiders_armor 0
hns_seekers_grenades 0
hns_seekers_grenades_percent 0
hns_seekers_flashbangs 0
hns_seekers_flashbangs_percent 0
hns_seekers_smokegren 0
hns_seekers_smokegren_percent 0
hns_seekers_armor 0
Vip jest na flagę B (rezerwacja slota).
Dałem dodatkowy plugin który wyświetla aktualnych vipów na serwerze.

fakemeta
engine
hamsandwich
nvault

Plik ExpMod.amxx wrzycamy do addons/amxmodx/plugins;
Plik ExpMod.sma wrzucamy do addons/amxmodx/scripting;
Nieobowiązkowo: Plik Vips.amxx wrzucamy do addons/amxmodx/plugins;
Nieobowiązkowo: Plik Vips.sma wrzucamy do addons/amxmodx/scripting;
Plik push.wav wgrywamy do sound;
Wchodzimy do addons/amxmodx/configs i otwieramy plik plugins.ini i dopisujemy tam "ExpMod.amxx debug" (debug na wypadek jak by plugin miał jakieś błędy i nie było crasha.
Nieobowiązkowo: Wchodzimy do addons/amxmodx/configs i otwieramy plik plugins.ini i dopisujemy tam "Vips.amxx debug" (debug na wypadek jak by plugin miał jakieś błędy i nie było crasha.

Główne menu:

Lista umiejętności:

Menu umiejętności: Tytan

Menu umiejętności: Supcio hejdz

Menu użyć umiejętności:

Menu osiągnięć:

Menu sklepu:


ExpMod.amxx oraz .sma w załączniku.
push.wav w załączniku.
Dodatkowo: vips.amxx oraz .sma w załączniku
Changelog:
Dodane screeny oraz konfiguracja do pluginu HideNSeek by Exolent.
Dodanie dodatkowego pluginu Vips który po wpisaniu /vips | /vipy wyświetla vipów na serwerze.
Dodanie wersji expmod_natywy z natywami(natywy to: exp_get_user_exp oraz exp_set_user_exp)
Jeśli chcesz żeby dla bezpieczeństwa doświadczenie zapisywało się co 10 sekund znajdź w expmodzie linię nr 1251 lub w jej okolicach (funckja CheckLevel) dopisz po
[/size][/color] while(gPlayerExp[id] >= gszExperienceTable[gPlayerLevel[id]]) { gPlayerLevel[id] ++; gPlayerPoints[id] ++; client_print(id, print_chat, "%s Gratulacje, wlasnie wbiles %d poziom! Twoje punkty: %d", gszPrefix, gPlayerLevel[id], gPlayerPoints[id]); } RefreshLevel(id);SaveData(id);
Zmieniony kod:
while(gPlayerExp[id] >= gszExperienceTable[gPlayerLevel[id]]) { gPlayerLevel[id] ++; gPlayerPoints[id] ++; client_print(id, print_chat, "%s Gratulacje, wlasnie wbiles %d poziom! Twoje punkty: %d", gszPrefix, gPlayerLevel[id], gPlayerPoints[id]); } RefreshLevel(id); SaveData(id);
Bugi, pytania oraz problemy można pisać w temacie oraz na prv/steam, nick steam: riki692
[size=5]Inne podobne pluginy:
[color=#C0C0C0]MoneyMod v0.4a by funfel - Nalicza $ zamiast expa, również popularne na hnsy.
Załączone pliki
Użytkownik LKZ (funfel) edytował ten post 21.09.2011 20:08