←  Nowości

AMXX.pl: Support AMX Mod X i SourceMod

»

Surf
SurfXP SQL Professional 401 LVL

  • +
  • -
O'Zone's Photo O'Zone 09.07.2013

opis

Widziałem wczoraj prośbę o przerobienie pluginu SurfXP z Nvault na SQL. Miałem dzisiaj godzinkę wolnego czasu, więc przeznaczyłem ją na coś pożytecznego i oto efekt.

Plugin jest zmodyfikowaną wersją tego SurfXP: http://amxx.pl/topic...sional-401-lvl/

Poza dodaniem obsługi SQL poprawiłem jeden ważny błąd, który mógł powodować nieprawidłowe działanie pluginu, a nawet crashe serwera.

Pozwolę sobie przytoczyć część wypowiedzi Kot-CSHH, by przedstawić zawarte w pluginie zmiany w opozycji do standardowej wersji:

- Więcej LVL,
- Max HP = 200,
- Usunięto zakaz używania zoom,
- Dodano komendę na dodawanie expa,
- Dodano menu,
- Dodano motd z listą broni*.
- Dodano zapis SQL
*UWAGA: Motd musicie sobie zrobić sami. Nie daje gotowego. Nazwę pliku z motd trzeba nazwać "bronie.txt"

cvary

surfxp_db_host "127.0.0.1" - Host bazy danych
surfxp_db_user "dbuser" - Nazwa użytkownika bazy danych
surfxp_db_pass "dbpass" - Hasło użytkownika bazy danych
surfxp_db_database "dbname" - Nazwa bazy danych

komendy

/level - pokazuje aktualny poziom
/xp - pokazuje aktualną ilość expa
/nowylevel - pokazuje expa ilość brakującego do kolejnego poziomu
/bronie - pokazuje listę broni(w motd)
/menu - wyświetla główne menu
/info - wyświetla informacje na temat pluginu

komendy admina

amx_addexp "nick" "ilość expa" - dodaje wybraną ilość expa dla wybranego gracza (gracz nie może mieć Immunitetu), Flaga G

wymagane moduly

Amxmodx
Amxmisc
Fun
Hamsandwich
Cstrike
Fakemeta
Sqlx

instalacja

Wrzucamy SurfXPSQL.sma do addons/amxmodx/scripting.
Wrzucamy SurfXPSQL.amxx do addons/amxmodx/plugins.

Modele dodajemy do nowego folderu, który tworzymy w cstrike/models.

Dopisujemy SurfXPSQL.amxx do addons/amxmodx/configs/plugins.ini.

Dopisujemy cvary do addons/amxmodx/configs/amxx.cfg.

Wypakowujemy archiwum cstrikeTUTOR.rar w dowolne miejsce.
Wrzucamy foldery gfx i resource do cstrike.

konfiguracja

Poniższa konfiguracja jest opcjonalna, plugin będzie działał bez niej.


Szukamy

1.

//precache_model("models/FOLDER/v_NAZWAMODELU.mdl")

Usuwamy // i zamieniamy "FOLDER" na folder gdzie znajdują się nasze modele oraz "NAZWAMODELU" na nową nazwę modeli

2.

if(Weapon_Id == CSW_KNIFE && PLEVEL[ id ] >= 3 ) // TU WPISUJEMY ZA JAKA BRON MA PODMIENIAC MODEL ORAZ OD KTOREGO LVL

    {

        set_pev(id, pev_viewmodel2, "models/FOLDER/v_NAZWAMODELU.mdl")



        }

Gdzie jest napisane "KNIFE" wpisujemy broń, którą ma podmieniać model, oraz na który LVL. Niżej znów jest "FOLDER" oraz "NAZWAMODELU", w tym przypadku robimy to samo co w pkt. 1

3.

    if(get_user_weapon(attacker) == CSW_KNIFE && PLEVEL[ attacker ] >= 3) // TU WPISUJEMY ZA JAKA BRON MA PODMIENIAC MODEL ORAZ OD KTOREGO LVL

    {

        SetHamParamFloat(4, damage * 1.5) // TU WPISUJEMY O ILE WIECEJ RAZY OBRAZENIA

        return HAM_HANDLED

    }

Tam gdzie jest napisane KNIFE robimy to samo co w pkt. 2, oraz poniżej wpisujemy o ile razy ma być większe DMG.

Jeśli nadal masz kłopoty z dodaniem nowych broni, zajrzyj do tego poradnika: http://amxx.pl/topic...-broni/?hl=surf

download

 

Attached Files

Quote

  • +
  • -
O'Zone's Photo O'Zone 11.07.2013

Postanowiłem, że będę rozwijał ten plugin. Jeśli macie jakieś propozycje, to chętnie ich wysłucham.

Proszę także o zgłaszanie wszelkich znalezionych błędów.

 

Z nudów dodałem kilka rzeczy.

Lista zmian:

//CHANGELOG:
//2.0
//* Poprawiono przyznawanie bonusów na spawnie
//* Dodano prosty HUD wyświetlający aktualny poziom, doświadczenie i doświadczenie potrzebne do następnego poziomu
//1.9
//* Dodano moduł tutor zastępujący wcześniejszy, który był wbudowany w plugin
//* Dodano komendy odejmowania expa i poziomu
//1.8
//* Dodano komende ustawiania poziomu
//* Zabezpieczono komendy przed ustawianiem zbyt duzego poziomu i wpisaniem ujemnego expa/poziomu
//1.7
//* Poprawiono kolejny ważny błąd, tym razem w Hamsandwich
//* Dodano komendę dodawania poziomu i expa

Proszę jakiegoś moderatora o zaktualizowanie pluginu w pierwszym poście.

Attached Files


Edited by O'Zone, 11.07.2013 17:43.
Quote

  • +
  • -
Kot-CSHH's Photo Kot-CSHH 12.07.2013

Gigantyczny + dla ciebie, na pewno pomożesz dużej ilości osób posiadających serwer Surf XP, największy problem z poprzednim silnikiem było to, że kasowały się lvl. Dzięki wielkie!

 

@PS. Czy mógłbyś dodać dodawanie LVL w bazie danych SQL?

 

@Edit x2: widzę, że przerobiłeś mój silnik xD


Edited by Kot-CSHH, 12.07.2013 19:26.
Quote

  • +
  • -
O'Zone's Photo O'Zone 12.07.2013

W tej drugiej wersji dodane są następujące komendy (wpisuje się je w konsoli w grze):

cmd_addexp <player> <level> - pozwala na dodawanie wybranej ilości expa graczowi
cmd_remexp <player> <level> - pozwala na odjęcie wybranej ilości expa graczowi
cmd_addlvl <player> <level> - pozwala na dodawanie wybranej ilości poziomów graczowi
cmd_remlvl <player> <level> - pozwala na odjęcie wybranej ilości poziomów graczowi
cmd_setlvl <player> <level> - pozwala na ustawienie wybranego poziomu graczowi

Oczywiście gracz, na którego ma zadziałać komenda, musi być na serwerze.


Edited by O'Zone, 12.07.2013 20:39.
Quote

  • +
  • -
Kot-CSHH's Photo Kot-CSHH 12.07.2013

W tej drugiej wersji dodane są następujące komendy (wpisuje się je w konsoli w grze):

cmd_addexp <player> <level> - pozwala na dodawanie wybranej ilości expa graczowi
cmd_remexp <player> <level> - pozwala na odjęcie wybranej ilości expa graczowi
cmd_addlvl <player> <level> - pozwala na dodawanie wybranej ilości poziomów graczowi
cmd_remlvl <player> <level> - pozwala na odjęcie wybranej ilości poziomów graczowi
cmd_setlvl <player> <level> - pozwala na ustawienie wybranego poziomu graczowi

Oczywiście gracz, na którego ma zadziałać komenda, musi być na serwerze.

 

Wiem, zauważyłem w kodzie, jak dodawałem bronie, tylko zauważyłem jeden błąd: mianowicie te hud z LVL, jak mam 401 LVL, to nie widzę hud oraz kolega coś mówił, że tutor po 378 lvl (chyba) nie działa. Nie sprawdzalem tego, bo nie zainstalowałem u siebie tutora.

Quote

  • +
  • -
Kot-CSHH's Photo Kot-CSHH 12.07.2013

Srr, że piszę post pod postem, ale chyba znalazłem błąd, mianowicie po zmianie mapy nikt nie ma LVL, tak jakby nie łączyło z bazą danych, moja konfiguracja jest następująca:

 


surfxp_db_host "localhost" - Host bazy danych
surfxp_db_user "cokezero_surf" - Nazwa użytkownika bazy danych
surfxp_db_pass "****" - Hasło użytkownika bazy danych
surfxp_db_database "cokezero_surf" - Nazwa bazy danych

 

 

 

Chyba, że coś źle robię.

 

Quote

  • +
  • -
O'Zone's Photo O'Zone 13.07.2013

Jeśli dane bazy są dobre, to dane powinny zapisać się prawidłowo.

Czy aby na pewno host twojej bazy danych to localhost?

 

Bug z niewyświetlającym się hud na maksymalnym lvlu jest bardzo stary i do teraz w większości expmodów nie jest naprawiony, ale w tym od teraz tak :D

 

 

Drobny błąd z mojej strony dotyczący komend, podałem nazwy publiców, a nie same komendy. Niestety nie mogę już zedytować postu, więc podam poprawne tutaj (różnica jest tylko w tym, że zamiast cmd jest amx).

amx_addexp <player> <level> - pozwala na dodawanie wybranej ilości expa graczowi
amx_remexp <player> <level> - pozwala na odjęcie wybranej ilości expa graczowi
amx_addlvl <player> <level> - pozwala na dodawanie wybranej ilości poziomów graczowi
amx_remlvl <player> <level> - pozwala na odjęcie wybranej ilości poziomów graczowi
amx_setlvl <player> <level> - pozwala na ustawienie wybranego poziomu graczowi

@Mały update

//2.1
//* Poprawiono błąd z brakiem HUD na maksymalnym poziomie
//* Dodano brakujące elementy tabeli expa, było ich tylko 396, stąd lvl od razu wskakiwał na 401

Attached Files


Edited by O'Zone, 13.07.2013 00:05.
Quote

  • +
  • -
Kot-CSHH's Photo Kot-CSHH 13.07.2013

Ojoj podawałem zły host :| ale już poprawnie skonfigurowałem, mój błąd tkwił w tym, że wpisywałem localhost, a na unixstorm host to nazwa domeny, czyli w moim przypadku cs-hh.pl.

Quote

  • +
  • -
O'Zone's Photo O'Zone 13.07.2013

@Kolejny update:

//2.4
//* Dodano sklep (/sklep)
//* Dodano nową tabelę expa (na poprzedniej razem ze sklepem exp leciał za szybko)
//* Zwiększono maksymalną ilość HP do 300
//2.3
//* Dodano top15 graczy z największym expem (/xptop15)
//* Dodano możliwość używania komend na say_team
//2.2
//* Dodanie cvarów pozwalających na zmianę ilości expa za zabójstwo
//* Dodanie do HUD KillStreaku i drobne skrócenie kodu
//* Zmiana działania KillStreaku - po osiągnięciu KillStreaku 5 exp leci x2, po osiągnięciu 10 exp leci x3

Nowe cvary:

surfxp_lower_killxp "10" - Ilość expa za zabicie gracza z niższym lvlem
surfxp_equal_killxp "15" - Ilość expa za zabicie gracza z takim samym poziomem
surfxp_higher_killxp "20" - Ilość expa za zabicie gracza z wyższymm lvlem
surfxp_hs_xpbonus "8" - Bonus expa za zabicie z Headshotem

Attached Files

Quote

Pr0-Sc0uT's Photo Pr0-Sc0uT 14.07.2013

O'Zone dodaj do surfa języki że wkleja się do data/lang :D 

To by się przydało...

Quote

  • +
  • -
Kot-CSHH's Photo Kot-CSHH 17.07.2013

Proponuję dodać dla admina, menu, w którym będzie dodaj lvl, odejmij lvl itp.

Quote

  • +
  • -
Kot-CSHH's Photo Kot-CSHH 17.07.2013

Srr, że double post ale nie mogłem edytować, mógłbyś też dodać większy exp za pełen serwer, np. x2 lub x1.5

Quote

Pr0-Sc0uT's Photo Pr0-Sc0uT 18.07.2013

Kot dodaj natywy do pluginu a potem poszukaj plugin od coda czy diablo za pełny serwer większy exp :D

Quote

wafelek123's Photo wafelek123 02.01.2014

moze mi ktos pomoze pisze mi caly czas wczytywanie plikow na serwer nie wiem czemu

Quote