Opis:
Co tu dużo mówić, zwyczajny xpmod(nabijamy poziomy :D). A tak na serio, to liczenie poziomu jest zaczerpnięte z Call of Duty Mod - QTM_Peyote. Cały mod ma własną walutę (Monety), status w HUD (aktualny poziom, procent doświadczenia, stan posiadanych monet). Doświadczenie/monety możemy zdobywać za: kill'a, kill'a z HS, kill'a z noza, zemstę, asystę, podłożenie/rozbrojenie bomby, uratowanie zakładnika/zakładników, wygranie rundy.
Natywy:
xpmod_add_xp - dodaje graczowi określona liczbę doświadczenia xpmod_get_xp - zwraca zdobyta przez gracza ilość doświadczenia xpmod_take_xp - zabiera graczowi określoną liczbę doświadczenia, jeśli operacja się powiedzie zwróci true a jeśli nie to zwróci false xpmod_add_coins - dodaje graczowi określona liczbę monet xpmod_get_coins - zwraca zdobyta przez gracza ilość monet xpmod_take_coins - zabiera graczowi określoną liczbę monet, jeśli operacja się powiedzie zwróci true a jeśli nie to zwróci false xpmod_get_lvl_xp - zwraca potrzebna ilość doświadczenia do awansu z podanego poziomu (parametr) na następny xpmod_check_lvl - sprawdza czy gracz ma wymagana ilość doświadczenia do awansu xpmod_load_data - ląduje dane gracza, w wersji nVault z pliku, a w wersji SQLx z bazy danych xpmod_save_data - zapisuje dane gracza, w wersji nVault do pliku, a w wersji SQLx do bazy danych
Cvary:
// zdobywanie doswiadczenia xpmod_kill_xp "10" // ilosc doswidczenia zdobywana podczas morderstwa innego gracza, jesli ustawimy 0 wylaczymy zdowywanie doswiadczenia xpmod_kill_hs_xp "15" // ilosc doswidczenia zdobywana podczas morderstwa innego gracza strzalem w glowe, jesli ustawimy 0 wylaczymy zdowywanie doswiadczenia xpmod_kill_knife_xp "20" // ilosc doswidczenia zdobywana podczas morderstwa innego gracza nozem, jesli ustawimy 0 wylaczymy zdowywanie doswiadczenia xpmod_vengeance_xp "5" // ilosc doswidczenia zdobywana gdy zemscimy sie na graczu, jesli ustawimy 0 wylaczymy zdowywanie doswiadczenia xpmod_assist_xp "5" // ilosc doswidczenia zdobywana gdy asystujemy przy morderstwie, jesli ustawimy 0 wylaczymy zdowywanie doswiadczenia xpmod_bomb_xp "40" // ilosc doswidczenia zdobywana gdy podlozymy bombe, jesli ustawimy 0 wylaczymy zdowywanie doswiadczenia xpmod_host_xp "10" // ilosc doswidczenia zdobywana gdy uratujemy zakladnika, jesli ustawimy 0 wylaczymy zdowywanie doswiadczenia xpmod_team_win_xp "5" // ilosc doswidczenia zdobywana przez team wygrywajacy runde, jesli ustawimy 0 wylaczymy zdowywanie doswiadczenia // zdobywanie monet xpmod_kill_coins "0" // ilosc monet zdobywana podczas morderstwa innego gracza, jesli ustawimy 0 wylaczymy zdowywanie monet xpmod_kill_hs_coins "1" // ilosc monet zdobywana podczas morderstwa innego gracza strzalem w glowe, jesli ustawimy 0 wylaczymy zdowywanie monet xpmod_kill_knife_coins "2" // ilosc monet zdobywana podczas morderstwa innego gracza nozem, jesli ustawimy 0 wylaczymy zdowywanie monet xpmod_vengeance_coins "0" // ilosc monet zdobywana gdy zemscimy sie na graczu, jesli ustawimy 0 wylaczymy zdowywanie monet xpmod_assist_coins "0" // ilosc monet zdobywana gdy asystujemy przy morderstwie, jesli ustawimy 0 wylaczymy zdowywanie monet xpmod_bomb_coins "4" // ilosc monet zdobywana gdy podlozymy bombe, jesli ustawimy 0 wylaczymy zdowywanie monet xpmod_host_coins "1" // ilosc monet zdobywana gdy uratujemy zakladnika, jesli ustawimy 0 wylaczymy zdowywanie monet xpmod_team_win_coins "0" // ilosc monet zdobywana przez team wygrywajacy runde, jesli ustawimy 0 wylaczymy zdowywanie monet // ustawienia moda xpmod_min_players "4" // minimalna ilosc graczy na serwerze, aby moc zdobywac doswiadczenie i monety za podkladanie/rozbrajanie bomb, uratowanie zakladnika i wygrana runde xpmod_max_lvl "100" // maksymalny poziom jaki mozemy zdobyc w grze xpmod_ratio_xp "25" // mnoznik poziomu, im wiekszy tym ciezej sie zdobywa poziomy xpmod_save_type "1" // rodzaj zapisu danych graczy, 0 - zapis wylaczony, 1 - nick gracza, 2 - steam gracza, 3 - ip gracza, 4 - nick gracza + ip xpmod_assist_dmg "25" // minimalna ilosc jaka musimy zadac graczu, aby byc liczonym do asysty xpmod_prefix "XPMOD" // prefix wiadomosci wyswietlanych przez moda // dane bazy danych, jesli uzyjemy wersji z zapisem do bazy danych xpmod_sql_host "localhost" // definuje serwer na ktorym znajduje sie baza danych, cvar dostepny tylko na wersji z zapisem danych do bazy xpmod_sql_user "root" // definuje urzytkownika przypisanego do bazy danych, cvar dostepny tylko na wersji z zapisem danych do bazy xpmod_sql_pass "" // definuje haslo urzytkownika, cvar dostepny tylko na wersji z zapisem danych do bazy xpmod_sql_name "xpmod" // definuje nazwe bazy danych, cvar dostepny tylko na wersji z zapisem danych do bazy
Changelog:
v0.9.0(nieudostępniona): pierwsza działająca wersja moda v0.9.1 - v0.9.5(nieudostępnione): naprawa błędów, ogólne poprawki, optymalizacja v0.9.6: podział na dwie wersje z różny zapisem danych graczy [nVault/SQLx]
Uwagi:
Jeśli wybierzecie wersję z zapisem do bazy, trzeba pamiętać aby podać adres serwera gry lub wstawić znak % w ?(nie pamiętam jak się to nazywało, ale chodziło o to żeby serwer miał pozwolenie na połączenie się z bazą danych). Po każdej zmianie jakiegokolwiek cvara trzeba zatrzymać serwer, a następnie uruchomić ponownie(nie wystarczy restart mapy). Jeśli mod nie będzie wczytywał/zapisywał danych gracza(SQLx), wtedy w konsoli serwera pojawią się odpowiednie komunikaty.
Pliki:
Biblioteka Mod'a:
xpmod.inc 2,1 KB 158 Ilość pobrań
Silnik Mod'a (zapis nVault, do pliku na serwerze):
xpmod_core_nvault.sma 21,93 KB 177 Ilość pobrań
xpmod_core_nvault.amxx
Silnik Mod'a (zapis SQLx, do bazy danychy):
xpmod_core_sqlx.sma 25,98 KB 169 Ilość pobrań
xpmod_core_sqlx.amxx
Propozycję:
Jeśli ktoś będzie miał, jakieś fajne i przemyślane propozycję, które mogły by ulepszyć tą modyfikację proszę żeby pisały posty w tym temacie.